×
Ви дійсно бажаєте відкрити доступ до тестування за курсом Java Professional на 40 днів?
ВІДЕОУРОК № 10. Створення графічного інтерфейсу користувача
У першому уроці на вас чекає огляд технології 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. Ми розглянемо питання розробки як власних модулів для цього середовища, так і самостійних програм - брендованих та забезпечених програмами встановлення. Також ми розглянемо приклади інших додатків, написаних із застосуванням платформи, що розглядається, а також підіб'ємо підсумки навчання і поговоримо про те, що робити далі і де шукати відповіді на свої запитання.