Опубликован: 21.08.2007 | Уровень: для всех | Доступ: свободно
Парадигмы программирования Курс знакомит студентов с разнообразием стилей и языков программирования. Выбор изучаемых парадигм отражает эволюцию языков, используемых при решении задач системной и прикладной информатики от низкоуровневого программирования на стыке с аппаратурой до языков сверх высокого уровня и параллельного программирования.
Особое внимание уделено исторически значимым и концептуальным языкам, в которых видна ключевая идея и практические следствия ее реализации. Курс носит ознакомительный характер и представляет интерес как обзор основных подходов к программированию.

Дополнительные курсы

Microsoft DreamSpark

Бесплатные лицензионные инструменты разработки и дизайна для школьников, студентов, аспирантов и преподавателей.

Специальное предложение для студентов НОУ «ИНТУИТ».

 ...еще >>

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
34 минуты
Многоликое программирование
В данной лекции приведен краткий обзор парадигм программирования и представлены наиболее очевидные особенности применения языков программирования, отражающие расширение класса решаемых задач, прогресс элементной базы и рост квалификации программистов. Рассматриваются ключевые моменты развития парадигм программирования и анализируются закономерности в процессе реализационного освоения новых областей обработки информации
Оглавление
    -
    Тест 1
    36 минут
    -
    Лекция 2
    44 минуты
    Определение языков программирования
    В данной лекции рассматривается задача определения систем программирования. Строится простейшее определение семантики языка программирования в виде интерпретатора, задающего операционную семантику на примере подмножества языка Лисп
    Оглавление
      -
      Тест 2
      36 минут
      -
      Лекция 3
      25 минут
      Ассемблер
      Рассматривается парадигма низкоуровневого программирования на ассемблере. Эта парадигма нацелена на учет основных особенностей компьютерных архитектур. Описаны основные методы адресации памяти. Дано определение языково-ориентированной абстрактной машины. Изучается понятие абстрактной машины (secd) для определения операционной семантики языка программирования по Венской методике
      Оглавление
        -
        Тест 3
        36 минут
        -
        Лекция 4
        22 минуты
        Машинно ориентированное программирование
        В данной лекции рассматриваются подходы к машинно-независимому эффективному программированию. Приведены примеры программирования на языке Форт, отмечены его основные преимущества и недостатки
        Оглавление
          -
          Тест 4
          36 минут
          -
          Лекция 5
          15 минут
          Языки макрообработки текстов
          В данной лекции рассматривается понятие языков макрообработки текста. Изучается устройство ряда макропроцессоров, используемых при обеспечении гибкости кода программ, рассматриваются макропроцессоры нестандартных языков программирования, применявшиеся при факторизации текстов программ, разрабатываемых одновременно на разные архитектуры. Приведены примеры кода программ на языках макрообработки текста
          Оглавление
            -
            Тест 5
            36 минут
            -
            Лекция 6
            20 минут
            Языки управления процессами
            В данной лекции рассматривается понятие языков управления процессами. Приводится обзор технических проблем управления процессами. Рассматриваются базовые средства для решения таких проблем на уровне функционирования операционных систем, исполнения отдельных задач и разработки информационных систем. Рассматриваются языки реализации операционных систем
            Оглавление
              -
              Тест 6
              36 минут
              -
              Лекция 7
              40 минут
              Функциональное программирование
              В данной лекции описаны понятия, касающиеся языков высокого уровня. Рассматриваются общие формы представления информации символьными выражениями и анализируются требования к полноте и эффективности методов их обработки. Вводятся базовые понятия, такие как списки, атомы, данные, значения, функции. Приведены примеры программного кода на языках высокого уровня
              Оглавление
                -
                Тест 7
                36 минут
                -
                Лекция 8
                15 минут
                Стандартное (системное) программирование
                В данной лекции рассматривается системное программирование. Предлагается анализ ограничений на структуры управления и информационные потоки при обработке данных. Приведено обоснование дисциплины программирования на стандартных императивно-процедурных языках. Отмечена проблема сопряжения программ, подготовленных на разных языках. Обсуждены достоинства структурного программирования, повышающего сходимость процесса отладки программ. Приведены примеры программного кода на языках системного программирования
                Оглавление
                  -
                  Тест 8
                  36 минут
                  -
                  Лекция 9
                  18 минут
                  Декларативное программирование
                  В данной лекции рассматривается недетерминизм и зависимость вычислимости выражений от учета границ представления данных. Предлагаются типы данных, такие как варианты, последовательности, множества, приспособленные к декларативному стилю программирования. Описана техника организации недетерминированных вычислений, такая как, вычисления с возвратами, перебор вариантов, откат. Анализируется соответствие точности решения задач и уровня постановки задачи. Показано как представление и обработка недетерминированных программ способствует обеспечению надежности вычислений. Исследуются связь диагностической интерпретации и средств логического программирования
                  Оглавление
                    -
                    Тест 9
                    36 минут
                    -
                    Лекция 10
                    27 минут
                    Объектно-ориентированное программирование
                    В данной лекции рассматривается объектно-ориентированное программирование. Рассмотрены основные принципы объектно-ориентированного программирования и проанализированы схемы их реализации на базе ряда структур данных на примере простой модели объектно-ориентированного языка, встраиваемого в Лисп. Рассмотрена реализация методов обработки объектов заданного класса, которая сводится к отдельной категории функций, вызов которых управляется анализом принадлежности аргумента классу. Приведены примеры программного кода на языках объектно-ориентированного программирования
                    Оглавление
                      -
                      Тест 10
                      36 минут
                      -
                      Лекция 11
                      18 минут
                      Языки параллельного программирования
                      В данной лекции рассматриваются языки параллельного программирования. Сформулированы основные понятия, отмечены достоинства и недостатки языков параллельного программирования, приведены примеры сферы их применения. Приведены части программного кода на языках параллельного программирования
                      Оглавление
                        -
                        Тест 11
                        36 минут
                        -
                        Лекция 12
                        21 минута
                        Функции высших порядков
                        В данной лекции рассматривается аппарат функций высших порядков при организации высококвалифицированных процессов информационной обработки, использующей формализацию и спецификацию данных, таких как синтаксический анализ, кодогенерация, конструирование интерпретаторов и компиляторов по формальному определению реализуемого языка – так называемые синтаксически управляемые методы информационной обработки. Приведены примеры программного кода с использованием функций высшего порядка
                        Оглавление
                          -
                          Тест 12
                          36 минут
                          -
                          Лекция 13
                          32 минуты
                          Оптимизация программ
                          В данной лекции рассматривается оптимизация программ. Рассматривается эффективное обобщение процесса информационной обработки, вытекающее из возможности отложенных действий. Анализируются резервы производительности обобщенных процессов и методы динамической оптимизации вычислений, приводящие к смешанным и параллельным вычислениям. Приведены примеры программ
                          Оглавление
                            -
                            Тест 13
                            36 минут
                            -
                            Лекция 14
                            33 минуты
                            Разработка программ
                            Рассматриваются разные подходы к технологии программирования и создания прототипов программ. Семантическое макетирование информационных систем предлагается как основа проектирования и тестирования программ в процессе их разработки. Анализируется зависимость трудоемкости программирования от субъективной и объективной новизны решаемых задач. Мемо-функции
                            Оглавление
                              -
                              Тест 14
                              36 минут
                              -
                              Лекция 15
                              33 минуты
                              Заключение
                              В данной лекции рассматриваются тенденции современного программирования, еще не получившие языковой поддержки, такие как компонентное программирование и разработка распределенных информационных систем. Большое внимание также уделено компонентному программированию
                              Оглавление
                                -
                                Тест 15
                                36 минут
                                -
                                5 часов
                                -
                                Федор Антонов
                                Федор Антонов

                                Здравствуйте!

                                Записался на ваш курс, но не понимаю как произвести оплату.

                                Надо ли писать заявление и, если да, то куда отправлять?

                                как я получу диплом о профессиональной переподготовке?

                                Илья Ардов
                                Илья Ардов

                                Добрый день!

                                Я записан на программу. Куда высылать договор и диплом?

                                Андрей Гальберг
                                Андрей Гальберг
                                Россия, Екатеринбург, УРФУ, 2008