Опубликована: 05.04.2011 | Уровень: для всех | Стоимость: 490.00 руб. | Длительность: 14 дней
Курс рассчитан на широкую аудиторию начинающих программистов, от школьников-старшеклассников до студентов старших курсов, а также людей, желающих самостоятельно научиться программировать на языке Java.
Курс может быть интересен даже опытным программистам, которые по каким-либо причинам не отслеживали изменения и нововведения в Java за последние годы. Курс содержит информацию об основных синтаксических конструкциях языка Java, особенностях и типичных ошибках их использования, а также сведения о среде NetBeans 5.5, поддерживающей самые современные средства разработки приложений Java - визуальное проектирование графического пользовательского интерфейса, прямое и обратное проектирование с использованием UML-диаграмм, рефакторинг. Курс подготовлен на основе лекций и материалов практических занятий для студентов 1-6 курсов физического факультета СПбГУ.

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
1 час 50 минут
Общие представления о языке Java
Java и другие языки программирования. Системное и прикладное программирование. Виртуальная Java-машина, байт-код, JIT-компиляция. Категории программ, написанных на языке Java. Алфавит языка Java. Десятичные и шестнадцатеричные цифры и целые числа. Зарезервированные слова. Управляющие последовательности. Символы Unicode. Специальные символы. Идентификаторы. Переменные и типы. Примитивные и ссылочные типы.
Оглавление
    -
    Тест 1
    36 минут
    -
    Лекция 2
    3 часа 20 минут
    Объектно-ориентированное проектирование и платформа NetBeans
    Процедурное и объектно-ориентированное программирование. Инкапсуляция. Работа со ссылочными переменными. Сборка мусора. Проекты NetBeans. Пакеты. Уровни видимости классов. Импорт классов. Базовые пакеты и классы Java. Создание в NetBeans простейшего приложения Java. Компиляция файлов проекта и запуск приложения. Структура проекта NetBeans. Создание в NetBeans приложения Java с графическим интерфейсом. Редактор экранных форм. Внешний вид приложения. Ведение проектов. Редактирование меню экранной формы. Создание нового класса. Документирование исходного кода в Java. Основные компоненты пакетов swing и awt. Технологии Java и .Net.
    Оглавление
      -
      Тест 2
      36 минут
      -
      Лекция 3
      1 час 20 минут
      Примитивные типы данных и операторы для работы с ними
      Булевский (логический) тип. Целые типы, переменные, константы. Основные операторы для работы с целочисленными величинами. Вещественные типы и класс Math. Правила явного и автоматического преобразования типа при работе с числовыми величинами. Оболочечные классы. Упаковка (boxing) и распаковка (unboxing). Приоритет операторов.
      Оглавление
        -
        Тест 3
        36 минут
        -
        Лекция 4
        1 час 38 минут
        Работа с числами в языке Java
        Двоичное представление целых чисел. Позиционные и непозиционные системы счисления. Двоичное представление положительных целых чисел. Двоичное представление отрицательных целых чисел. Дополнительный код. Проблемы целочисленной машинной арифметики. Шестнадцатеричное представление целых чисел и перевод из одной системы счисления в другую. Побитовые маски и сдвиги. Двоичное представление вещественных чисел. Двоичные дроби. Мантисса и порядок числа. Стандарт IEEE 754 представления чисел в формате с плавающей точкой.
        Оглавление
          -
          Тест 4
          36 минут
          -
          Лекция 5
          1 час 3 минуты
          Управляющие конструкции
          Составной оператор. Условный оператор if. Оператор выбора switch. Операторы инкремента ++ и декремента --. Оператор цикла for. Оператор цикла while - цикл с предусловием. Оператор цикла do...while - цикл с постусловием. Операторы прерывания continue, break, return, System.exit.
          Оглавление
            -
            Тест 5
            36 минут
            -
            Лекция 6
            3 часа 44 минуты
            Начальные сведения об объектном программировании
            Наследование и полиморфизм. UML-диаграммы. Функции. Модификаторы. Передача примитивных типов в функции. Локальные и глобальные переменные. Модификаторы доступа и правила видимости. Ссылка this. Передача ссылочных типов в функции. Проблема изменения ссылки внутри подпрограммы. Наследование. Суперклассы и подклассы. Переопределение методов. Наследование и правила видимости. Зарезервированное слово super. Статическое и динамическое связывание методов. Полиморфизм. Базовый класс Object. Конструкторы. Зарезервированные слова super и this. Блоки инициализации. Удаление неиспользуемых объектов и метод finalize. Проблема деструкторов для сложно устроенных объектов. Перегрузка методов. Правила совместимости ссылочных типов как основа использования полиморфного кода. Приведение и проверка типов. Рефакторинг. Reverse engineering - построение UML-диаграмм по разработанным классам.
            Оглавление
              -
              Тест 6
              36 минут
              -
              Лекция 7
              2 часа 51 минута
              Важнейшие объектные типы
              Массивы. Коллекции, списки, итераторы. Работа со строками в Java. Строки как объекты. Классы String, StringBuffer и StringBuilder. Работа с графикой. Исключительные ситуации. Обработка исключительных ситуаций. Иерархия исключительных ситуаций. Объявление типа исключительной ситуации и оператор throw. Объявление метода, который может возбуждать исключительную ситуацию. Зарезервированное слово throws. Работа с файлами и папками.
              Оглавление
                -
                Тест 7
                36 минут
                -
                Лекция 8
                47 минут
                Наследование: проблемы и альтернативы. Интерфейсы. Композиция
                Проблемы множественного наследования классов. Интерфейсы. Отличия интерфейсов от классов. Проблемы наследования интерфейсов. Пример на использование интерфейсов. Композиция как альтернатива множественному наследованию.
                Оглавление
                  -
                  Тест 8
                  36 минут
                  -
                  Лекция 9
                  1 час 1 минута
                  Дополнительные элементы объектного программирования на языке Java
                  Потоки выполнения (threads) и синхронизация. Преимущества и проблемы при работе с потоками выполнения. Синхронизация по ресурсам и событиям. Класс Thread и интерфейс Runnable. Создание и запуск потока выполнения. Поля и методы, заданные в классе Thread. Подключение внешних библиотек DLL."Родные" (native) методы.
                  Оглавление
                    -
                    Тест 9
                    36 минут
                    -
                    Лекция 10
                    1 час 13 минут
                    Введение в сетевое программирование
                    Краткая справка по языку HTML. Апплеты. Сервлеты. Технология JSP - Java Server Pages.
                    Оглавление
                      -
                      Тест 10
                      36 минут
                      -
                      Лекция 11
                      38 минут
                      Встроенные классы
                      Виды встроенных классов. Вложенные (nested) классы и интерфейсы. Внутренние (inner) классы. Локальные (local) классы. Анонимные (anonymous) классы и обработчики событий. Анонимные (anonymous) классы и слушатели событий (listeners).
                      Оглавление
                        -
                        Тест 11
                        36 минут
                        -
                        Лекция 12
                        50 минут
                        Компонентное программирование
                        Компонентная архитектура JavaBeans. Мастер создания компонента в NetBeans. Пример создания компонента в NetBeans - панель с заголовком. Добавление в компонент новых свойств. Добавление в компонент новых событий.
                        Оглавление
                          -
                          Тест 12
                          36 минут
                          -
                          5 часов
                          -