×
Вы действительно хотите открыть доступ к тестированию по курсу Java Professional на 40 дней?
ВИДЕОУРОК №12. Многопоточность в Java
В первом уроке вас ждет обзор технологии Java. Будут рассмотрены преимущества и недостатки Java в сравнении с конкурирующими технологиями. Также мы рассмотрим структуру простого Java-приложения, сделаем компиляцию и запуск Java-приложения. В завершении первого урока вас ждет знакомство со средой разработки IDE Netbeans.
В этом уроке будут рассмотрены такие понятия, как абстракция, инкапсуляция, пакетирование, классы, атрибуты, методы, конструкторы, пакеты. Вы получите ответы на вопросы, связанные с использованием модификаторов доступа (private и public). Узнаете о вызове методов объекта класса в Java. Также будут даны рекомендации по документированию программ.
В этом уроке мы рассмотрим основные принципы ООП: инкапсуляция, наследование, полиморфизм, поговорим о перегрузка и переопределении методов, использовании модификаторов доступа protected и default (package-friendly), конструкторов, создании нескольких конструкторов класса, процесс создания и инициализации объекта. Также вас ждет знакомство с UML, будет рассмотрено использование EasyUML для Netbeans, кодогенерация на основе диаграммы классов и обратный инжиниринг.
Здесь мы поговорим о некоторых отдельных аспектах создания классов, таких, как создание статических переменных, методов и инициализаторов, финальных классов, методов и переменных, а также – создание перечислений и использование экзотической конструкции статического импорта. А кроме этого мы примем участие в вечной священной войне сторонников создания абстрактных классов и приверженцев имитации множественного наследования с помощью интерфейсов, и увидим, что эти подходы не отрицают друг друга, и их вполне можно совместить.
Здесь мы коснемся очень важного понятия – понятия о рефакторинге – итеративном улучшении кода, приведении его в соответствие со стандартами, политиками и рекомендациями, изменении его внутренней архитектуры, не затрагивающем его внешнего поведения. Естественно мы также поговорим о том, чем в деле рефакторинга нам может помочь наша любимая среда разработки. А под конец урока мы вновь обсудим понятие паттерна проектирования, вспомним существующие паттерны и антипаттерны, назовем некоторые типичные ошибки начинающих разработчиков.
Здесь мы поговорим об ошибках и исключительных ситуациях, от которых не застрахован ни один разработчик, и ни одно приложение, обсудим средства для их обработки, коснемся понятия оценки выражений, а также поговорим о средствам отладки и профилирования кода, которые предлагает IDE Netbeans. Второй важный момент, который мы обсудим – это понятие о тестировании ПО, Unit-тестирование, возможности по организации unit-тестирования и средства тестирования, которые предлагает наша любимая среда разработки.
В этом уроке мы поговорим о таком важном понятии, как коллекции, обсудим основные виды коллекций и интерфейсов, рассмотрим особенности гомогенных и гетерогенных коллекций, а также обсудим проблемы перебора всех элементов коллекции. Второй важный момент, который мы обсудим – это альтернативные библиотеки и дополнения для Java, позволяющие работать с коллекциями максимально эффективно.
В этом уроке мы поговорим об основах ввода-вывода – самом простом способе передать данные в программу при ее запуске, работе с системными свойствами и потоками ввода-вывода, сериализаии и десериализации, а также упомянем пару дополнительных библиотек, которые помогу работать с данными проще и эффективнее. Стоит отметить, что тема ввода-вывода не заканчивается этим уроком – она будет продолжена следующим модулем, где мы обсудит файловый ввод-вывод и работу с консолью.
Этот урок является продолжением предыдущего, в котором мы говорили об основах ввода-вывода. Теперь же мы поговорим о более «приземленных» вещах – консольном вводе-выводе, работе с файлами, библиотеках для построения удобного текстового интерфейса пользователя. Стоит также провести аналогию между частью материала этого урока и следующими двумя уроками, в которых мы также будем говорим о построении пользовательского интерфейса, только теперь уже графическими средствами.
Этот урок является первым в серии уроков, посвященных разработке графических "настольных" приложений. В нем мы поговорим о JFC и Swing, обсудим имеющийся набор интерфейсных элементов и использование различных менеджеров разметки, а также сравним программный и визуальный способы построения графического интерфейса пользователя –средствами Matisse – одного из лучших (если не лучшего) из существующих на рынке конструкторов пользовательского интерфейса для Java. Стоит также отметить, что материал этого урока напрямую связан со уроками 11 и 14, в которых мы поговорим об обработке событий от интерфейсных элементов и о построении приложений на платформе Netbeans
Этот урок продолжает серию уроков, посвященных разработке графических "настольных" приложений. В нем мы поговорим об обработке событий от интерфейсных элементов, категориях событий, которые мы можем обрабатывать, рассмотрим понятие адаптеров событий, способы организации обработчиков, а также кратко обсудим вопрос распараллеливания обработки событий и создания рабочих потоков, который подробнее обсудим в следующем, двенадцатом уроке.
Этот урок посвящен обсуждению важной и очень востребованной ныне темы – созданию многопоточных Java-приложений. Мы рассмотрим понятия потоков, подходы к их созданию, вопросы запуска и управления работающими потоками. Особое внимание будет уделено проблемам при работе нескольких потоков с общими данными, а также использованию методов wait и notify для управления потоками. Материал, рассмотренный в этом модуле, будет использован нами также при создании сетевых приложений и приложений на платформе Netbeans
В ходе изучения материала этого урока мы обсудим некоторые аспекты работы с сетью в Java, а именно определим основные понятия, поговорим о сокетах, об использовании основных классов и интерфейсов пакета java.net, упомянем некоторые альтернативные средства создания сетевых приложений. Стоит отметить, что лабораторная работа этого урока является продолжением лабораторной работы предыдущего модуля. После ее выполнения вы получите полнофункциональный чат-сервер, и не менее функциональный чат-клиент, которые вполне могут стать основой для построения чего-то большего. Кстати, выполнение лабораторной работы продолжится в следующем уроке!
Этот урок является последним, и в ходе его изучения мы поговорим о проблемах разработки больших, профессионально выглядящих графических приложений с использованием готовой инфраструктуры - платформы Netbeans. Мы рассмотрим вопросы разработки как собственных модулей для этой среды, так и самостоятельных приложений - брендированных и снабженных программами установки. Также мы рассмотрим примеры других приложениях, написанных с применением рассматриваемой платформы, а также подведем итоги обучения и поговорим о том, что делать дальше и где искать ответы на свои вопросы.