Концепции Языков Программирования

Введение.

Цель курса. Положение курса в Computer Science.


  1. Другие курсы CS

    • a. Архитектура Вычислительных Машин
    • b. Операционные Системы
    • c. Алгоритмы и Структуры Данных
    • d. Проектирование и Архитектура Программных Систем
    • e. Язык программирования C++
    • f. Язык программирования Java
    • g. Базы Данных
    • h. Теория компиляторов
  2. Концепции ЯП

    • a. Берут начало в Архитектуре ВМ
    • b. Отражают концепции ОС c. Пополняются удачными шаблонами из Архитектуры ПС d. Больше чем любой язык программирования или СУБД
  3. Цель курса a. Глубокое понимание принципов работы программ, разработанных с помощью современных ЯП; b. Обзор концепций, лежащих в основе современных ЯП; c. Сравнение методов решения задач на разных ЯП, с использованием тех или иных концепций; d. Обзор понятий и приёмов, не являющихся частью ЯП, но непосредственно влияющих на разработку ПО.
  4. Зачем изучать Языки Программирования a. Изучать нужно не языки, а модели. Шаблоны, принципы, концепции. Решения конкретных задач, которые можно переиспользовать; b. Концепции перетекают из одного языка в другой, образуя новые семантики или новые концепции; c. Изучение языков «вширь» нередко способствует более глубокому пониманию конкретного (своего) языка «вглубь»; d. Анекдот про Альцгеймера. e. Выбор подходящего инструмента? i. Подходящий фреймворк, скорее всего уже есть для Вашего языка; ii. Знание особенностей конкретных языков позволяет прогнозировать процесс разработки и необходимые дополнительные (накладные) расходы.
  5. Появление новых языков программирования a. Специализированные ЯП i. Инженерия знаний и Domain Specific Languages ii. Пользовательские скрипты b. Архитектура компьютера i. Архитектура фон Неймана не менялась с 1964г. ii. Поиск новой архитектуры, которая позволит раскрыть потенциал функционального программирования c. Тенденции развития технологий i. Поддержка асинхронности, ii. Параллельное и конкурентное программирование.

results matching ""

    No results matching ""