Course logo

Курс «Технологии программирования (Java)» (2016/2017 год, весна)

Даты устных собеседований по теории:

  • 29.05, 14-00, 9-304 (?) -- только для приглашённых студентов
  • 21.06, 10-00 (группа 1), 13-00 (группа 2), 16-00 (группа 3), 9-304 (?) -- для всех, получивших к этому моменту зачёт
  • ...

Информация о курсе

Занятия в рамках цикла "Программирование" (2-й семестр).
Преподаватели:
Глухих М.И.
Ахин М.Х.
Беляев М.А.
Гагарский К.А.
Коренев Д.А.
Петров М.А.
Слушатели:
Студенты, обучающиеся по направлениям бакалавриата "Информатика и вычислительная техника" и "Автоматизация и управление"

Основные задачи курса

Курс предоставляет базовые знания по программированию на языке Java и является продолжением курса "Алгоритмизация и программирование".

Основная литература

  • Хорстманн К., Корнелл Г. Java2. Библиотека профессионала. Том1. Основы. Том2. Тонкости программирования / Пер. с англ.-М.: Вильямс, 2010.
  • Монахов В. Язык программирования Java и среда NetBeans.- СПб.: БХВ-Петербург, 2011.

Дополнительная литература

  • Ноутон П., Шилдт Г. Java 2: наиболее полное руководство / Пер. с англ.- СПб.: БХВ-Петербург, 2008.
  • Монахов В. Язык программирования Java и среда NetBeans.- СПб.: БХВ-Петербург, 2011.
  • Хабибуллин И. Java 7.- СПб.: БХВ-Петербург, 2012.
  • Эккель Б. Философия Java / Пер. с англ.- СПб.: Питер, 2011.
  • Пышкин Е.В. Основные концепции и механизмы объектно-ориентированного программирования. Учеб. пособие.- СПб.:«БХВ-Петербург», 2005.
  • Арнольд К., Гослинг Дж., Холмс Д. Язык программирования Java, 3-е издание. М.: Издательский дом «Вильямс», 2001.
  • James Gosling, Bill Joy, Guy Steele, Gilad Bracha. The Java Language Specification, Second Edition.
  • Joshua Bloch. Effective Java: Programming Language Guide, second edition. ISBN 978-0-321-35668-0, 2008.

Электронные ресурсы

JRE / JDK

Среды разработки (IDE)

Документация

Интересные задачи

Отчетность:

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

Страницы:

ВОПРОСЫ К ЭКЗАМЕНУ

  1. Типы в Java: примитивные / ссылочные, обёртки примитивных типов, массивы, null
  2. Класс Object: equals / hashCode / toString
  3. Видимость в языке Java: public / protected / private / package private
  4. Сравнение классов, абстрактных классов и интерфейсов
  5. Статические и не-статические члены класса
  6. Финальные и не-финальные члены класса
  7. SAM-интерфейсы и лямбды в Java
  8. Виды вложенных классов: статические (static) / внутренние (inner) / локальные (local) / анонимные
  9. Исключения: контролируемые и нет, Throwable / Exception / RuntimeException / Error
  10. Перечисления, поля и методы перечислений
  11. Итераторы и их применение
  12. Разновидности коллекций: Collection / List / Set / Deque
  13. Реализации коллекций: List / ArrayList / LinkedList
  14. Реализации коллекций: Set / HashSet / TreeSet / EnumSet
  15. Реализации коллекций: Map / HashMap / TreeMap / EnumMap
  16. Реализации коллекций: Queue / Deque / ArrayDeque / LinkedList
  17. GUI: общая организация приложения
  18. GUI: легковесные и тяжеловесные компоненты
  19. GUI: механизмы и методы отрисовки
  20. GUI: обработка событий, механизм слушателей
  21. GUI: контейнеры и менеджеры размещения
  22. Runnable и Thread
  23. synchronized и volatile
  24. Object: wait / notify / notifyAll
  25. Коллекции и Concurrency

Архив за предыдущие годы

  • лекции за осень 2016-17 (автор Глухих М.И.) можно посмотреть здесь
  • лекции за год 2015-16 (автор Глухих М.И.) можно посмотреть здесь
  • лекции за год 2014-15 (авторы Пышкин Е.В., Кузнецов А.Н.) можно посмотреть здесь
  • лекции за год 2012-13 (авторы Глухих М.И., Кузнецов А.Н.) можно посмотреть здесь
  • лекции за год 2011 (автор Пышкин Е.В.) можно посмотреть здесь
  • лекции за год 2009 (автор Глухих М.И.) можно посмотреть здесь