Опубликована: 05.04.2011 | Уровень: для всех | Стоимость: 490.00 руб. | Длительность: 14 дней
Курс представляет первую часть фундаментального учебника "Почувствуй класс. Учимся программировать хорошо с объектами и контрактами". В отличие от традиционного подхода введение в основы программирования начинается с рассмотрения объектов, классов, интерфейсов и контрактов. В этой части курса рассматриваются также основы логики и внутреннее устройство компьютера. В курсе излагаются основы объектно-ориентированного программирования (ООП). В этой вводной части мы начнем наше путешествие в мир программирования с самых его основ: объектов, классов, интерфейсов и контрактов. Будут рассмотрены поддерживающие концепции, включающие логику и внутреннее устройство компьютера, которые каждый программист должен знать.
Данный курс определяет строительные блоки программы, от объектов и классов до интерфейсов, управляющих структур и присваивания. Особое внимание уделяется понятию контракта. Студенты учатся на абстрактном, но вместе с тем точном описании используемых ими модулей и должны применять такой же интерфейс для создаваемых модулей. В лекции 5 вводятся ключевые элементы пропозиционального исчисления и исчисления предикатов. Оба исчисления создают основу дальнейших обсуждений. Возвращаясь к программированию, в последующих лекциях мы рассматриваем создание и структуру объектов. В этих лекциях устанавливается моделирующая мощь объектов и необходимость при построении объектной модели отражения реальной структуры моделируемой внешней системы. После введения концепций структурирования программы разбирается присваивание, ссылки, ссылочное присваивание и интересные задачи, возникающие при работе со связанными списками.

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
2 часа 14 минут
Введение
Оглавление
    -
    Лекция 2
    35 минут
    Индустрия чистых идей
    В первой лекции вводится понятие компьютера, как машины, способной обрабатывать информацию. Рассматривается роль компьютеров в современном мире, различие между данными и информацией.
    Оглавление
      -
      Тест 1
      24 минуты
      -
      Лекция 3
      51 минута
      Работа с объектами
      Материалы второй лекции позволяют написать первые содержательные программы на языке Eiffel, используя мощную программную систему Traffic, поддерживающую изучение данного курса. Подход, использующий с самого начала работу с объектами, интерфейсами и контрактами, отличает этот курс от традиционного изучения основ программирования, начинающих обучение с программ типа "Здравствуй, мир!".
      Оглавление
        -
        Тест 2
        24 минуты
        -
        Лекция 4
        40 минут
        Основы структуры программ
        Предыдущая лекция позволила нам получить первое представление о программах. Теперь мы готовы к введению новых концепций. Давайте ближе познакомимся с некоторыми частями программы, уже использованными, но не получившими пока собственные имена.
        Оглавление
          -
          Тест 3
          24 минуты
          -
          Лекция 5
          1 час 11 минут
          Интерфейс класса
          В предыдущих лекциях мы начали строить некоторое ПО, основываясь на существующих элементах. Теперь мы собираемся сделать нечто большее, рассмотрев, как можно использовать ранее написанные классы. Это даст возможность по-новому взглянуть на понятие класс – фундамент всего дальнейшего программирования. Мы введем в рассмотрение новые концепции – интерфейса и контракта.
          Оглавление
            -
            Тест 4
            24 минуты
            -
            Лекция 6
            2 часа 21 минута
            Логики вполне достаточно
            Первая часть лекции вводит булеву алгебру в форме пропозиционального исчисления, которое имеет дело с базисными высказываниями, включающими специфические переменные. Вторая часть расширяет обсуждение до логики предикатов, позволяющей выражать свойства произвольного множества значений. Помимо классических логических операций рассматриваются полустрогие операции, учитывающие особенности применения булевских операций в программировании.
            Оглавление
              -
              Тест 5
              24 минуты
              -
              Лекция 7
              1 час 45 минут
              Создание объектов и выполняемых систем
              После экскурсии в математические основания вернемся к технике программирования. Обсуждаются вопросы создания объектов и процесс выполнения программной системы.
              Оглавление
                -
                Тест 6
                24 минуты
                -
                Лекция 8
                3 часа 49 минут
                Структуры управления
                В седьмой лекции рассматриваются классические структуры управления – последовательность, выбор, цикл. Ранее введенное понятие контракта позволяет взглянуть на эти структуры с новой точки зрения, рассматривая их корректность, гарантирующую выполнение постусловия. Приводится обоснование идей структурного программирования. В лекции вводится понятие исключительной ситуации и дается введение в обработку исключений.
                Оглавление
                  -
                  Тест 7
                  24 минуты
                  -
                  Лекция 9
                  49 минут
                  Подпрограммы, функциональная абстракция, скрытие информации
                  Управляющие структуры предыдущей лекции — цикл, составной и условный операторы, их варианты — дают нам базисные механизмы планирования порядка выполнения операторов. Если бы они были единственными средствами, то нам пришлось бы задавать поток управления со всеми деталями. Для сложных программ глубина вложенности стала бы главным препятствием на пути понимания программы.
                  Оглавление
                    -
                    Тест 8
                    24 минуты
                    -
                    Лекция 10
                    1 час 57 минут
                    Переменные, присваивание и ссылки
                    Программы используют имена или сущности для обозначения значений периода выполнения. Отличительным свойством большинства программ является то, что некоторые сущности, называемые "переменными сущностями" или просто переменными, могут обозначать значения, изменяющиеся во время выполнения. Предыдущие примеры неявно исходили из этого предположения, хотя базисная операция — присваивание — до сих пор формально еще не введена. Эта концепция, обманчиво простая с первого взгляда, полна удивительных следствий. Мы будем изучать ее в этой главе наряду с несколькими связанными приемами, в частности, с использованием ссылок, определяющих структуру объектов в период выполнения.
                    Оглавление
                      -
                      Тест 9
                      24 минуты
                      -
                      Дополнительный материал 1
                      -
                      Дополнительный материал 2
                      13 минут
                      -
                      5 часов
                      -