ключевые понятия программирования и терминология во множестве языков

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

5
задан markusk 12 April 2010 в 06:11
поделиться

3 ответа

Концепции, методы и модели компьютерного программирования (Питер Ван Рой и Сейф Хариди) : название говорит само за себя. (От того же автора и на основе книги этот классный плакат с ~ 30 наиболее важными парадигмами программирования .) [Примечание: эта книга в просторечии известна как CTM, время от времени вы можете натолкнуться на эту аббревиатуру ко времени.]

Структура и интерпретация компьютерных программ (Гарольд Абельсон и Джеральд Джей Сассман) . SICP, как его называют в просторечии, вероятно, книга о программировании. Период. Не забудьте видеолекцию самих авторов 1986 года или одну из других курсов , основанных на книге.

Основное различие между SICP и CTM заключается в подходе: CTM обучает концепциям программирования, приводя примеры на очень мощном языке программирования (Distributed Oz), который их уже реализует, в то время как SICP обучает концепциям программирования, реализуя их на языке (Scheme, или, скорее, небольшая его часть), в которой их еще нет. IOW: CTM научит объектно-ориентированный объект показывать программы, написанные на языке объектно-ориентированного программирования, SICP, путем реализации системы объектно-ориентированного программирования на схеме.

Концепции дизайна на языках программирования (Франклин А. Турбак и Дэвид К. Гиффорд с Марком А. Шелдоном) больше о теории языков программирования, чем о программировании.Это по-прежнему довольно интересно, хотя напрямую не касается вашего вопроса о концепциях программирования. Но в конце концов: как бы вы программировали без языка программирования?

Concepts of Programming Languages ​​(Роберт В. Себеста) объясняет, ну, ну, в общем, Concepts of Programming Languages, начиная с Plankalkül Конрада Цузе, продолжая с первого настоящих языков программирования, таких как Fortran, Lisp, Cobol, Algol, BASIC, а также C, C ++, Java и Ada. [Опять же, это скорее книга по языку программирования, чем по программированию.]

4
ответ дан 13 December 2019 в 22:04
поделиться

Прагматика языка программирования - довольно доступный, но подробный обзор концепций языков программирования. Он хорошо объясняет основы языка программирования, не будучи излишне академическим или теоретическим.

3
ответ дан 13 December 2019 в 22:04
поделиться

Мне очень понравилось читать Концепции языков программирования Джона К. Митчелла.

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

Затем он рассказывает о многих языках программирования и концепциях, которые пришли из них и представляют интерес, включая LISP (который является основой для Clojure), ML (основа для F# от Microsoft), а также Simula и Smalltalk (два фундаментальных языка ОО) и C++ с Java (практические языки ОО с совершенно разными подходами). В книге также есть несколько заметок о различных подходах к параллелизму (довольно важному в наше время!)

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

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

3
ответ дан 13 December 2019 в 22:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: