Структура и интерпретация компьютерных программ. Какой уровень математических способностей требуется?

StackOverflow https://stackoverflow.com/questions/918119

  •  06-09-2019
  •  | 
  •  

Вопрос

К сожалению, я не изучал математику с 16 лет (уровень GCSE), сейчас я 27-летний разработчик C#.Будет ли это бесполезным занятием, пытаясь проработать Структура и интерпретация компьютерных программ (СИКП)?

Какой уровень математики ожидается от читателя?

Это было полезно?

Решение

Начать SICP никогда не поздно.И на самом деле это вообще не требует какой-либо высшей математики, за исключением, возможно, обработки сигналов с частями бесконечных потоков.Однако это можно пропустить, не потеряв слишком много.

Самое главное при чтении SICP — это решение проблем, ИМХО.Некоторые из более сложных из них могут расширять кругозор и заставлять вас Действительно понять тему.Если вы уверены в каком-то решении, вы можете его пропустить.А решения можно найти по адресу - http://eli.thegreenplace.net/category/programming/lisp/sicp/

Опасность чтения SICP заключается в том, что после его изучения вам не захочется использовать какой-либо другой язык программирования, кроме Схема. :)

Другие советы

Проработав все SICP, Я могу с уверенностью сказать вам, что вам не нужно много математического образования, чтобы понять это.SICP — это (раньше?) курс первого или второго семестра в Массачусетском технологическом институте для студентов, практически не имеющих знаний по математике на уровне колледжа/университета.Всякий раз, когда в нем обсуждаются математические темы, он дает достаточную информацию для понимания любому умному читателю.

Судя по тому немногому, что вы о себе рассказываете, сейчас прекрасное время для работы через SICP.Чтение книги, решение (по крайней мере некоторых) упражнений и игра с кодом проектов могут многому вас научить в программировании.Не беспокойтесь о математике – вы справитесь без проблем.Что действительно необходимо, так это искреннее, глубокое любопытство к программированию и немного терпения.

Я заглянул в эту книгу.Мои познания в математике невелики...но есть ключ:

Для понимания подобных вещей, если у вас есть творческий ум и хорошее понимание абстрактный природу структур и математических принципов, с вами все будет в порядке.Моя ментальная арифметика довольно плоха по любым меркам, но я люблю читать о дискретная математика из-за его абстрактной природы.

Я бы не считал себя очень хорошим математиком в числовом смысле, но как разработчику программного обеспечения мне нравится думать, что у меня математический (или механический) склад ума.

Я бы не стал слишком беспокоиться о твоем числовая сила но подробнее о природа математики и личности концепций, лежащих в основе информатики.Если у вас хорошие способности к программированию, возможно, попробуйте улучшить их с помощью комбинаторики/дискретной/конкретной математики (которая, помимо теории счета, во многих случаях позволяет избежать сухие цифры).

Я нашел свою любовь к таким вещам, как изучение компиляторов теории множеств, и я бы не хотел сдавать экзамен по математике на уровне A без особой зубрежки!

Попробуй, Что тебе терять?

(мне 22 года, и у меня такая же ситуация, как и у вас)

Удачи

ПС:Видеолекции мне тоже показались интересными.Вы можете скачать их через торрент

http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/

Это определенно не будет бесплодным занятием, это отличная книга.С другой стороны, это будет довольно сложно, поскольку они ожидают от вас некоторой математической подготовки, если не тонны продвинутых математических знаний.

Вы можете найти Как разрабатывать программы, автор Felleisen et al, немного проще начать, но при этом вы получаете практически тот же подход, используя Scheme и все такое.

Насколько я помню из этой книги, в ней говорится о некоторых матричных вычислениях, которые поначалу могут быть трудными для понимания.Но это всего лишь список списков или массив массивов...поэтому рано или поздно вам придется с этим столкнуться в программировании.

Если была какая-то сложная математика, я думаю, ее можно пропустить.Эта книга использовалась (и, вероятно, до сих пор используется) на уроках информатики первого года обучения в Беркли (многие студенты изучают ее в первом семестре) без какой-либо необходимости понимать математические вычисления, поэтому я думаю, что общего понимания математики достаточно, чтобы понять книга.

В книге говорится о функции как о чёрном ящике...и после прочтения книги я думаю, что она также помогает человеку понять математику в целом.

Раздел «Численное программирование» может потребовать некоторых математических знаний, но вы сможете усвоить остальную часть книги с помощью школьной математики.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top