Course Programming with JAVA 8 from May 24


Програмиране с JAVA 8

Програмиране с JAVA 8

От 24 май 2014 стартира 28-то издание на традиционния съботно-недeлен курс за начинаещи Java разработчици Програмиране с JAVA 8. Курсът включва три модула и е с продължителност 120 уч. ч. Той осигурява необходимите знания и практически умения за програмиране на езика Java и поставя солидна основа в областта на обектно-ориентираната разработка на софтуер. Разглеждат се новостите в Java 8: ламбда изрази и поточно програмиране, както и generics, enumeration types, подобрен for-цикъл за обхождане на колекции, static import, autoboxing, аргументни списъци с променлива дължина, използване на анотации в кода, низове в switch, multi-catch, generics type inference, try с ресурси . Курсът е практически ориентиран на базата на примери и задачи. Той запознава с употребата на готовите приложни библиотеки на Java (Java API) и използването на помощници за автоматично генериране на код в средата за разработка (Eclipse for Java EE) с цел бързо създаване на многослойни клиент-сървър приложения. В 28-то издание на курса ще бъде включен също Test Driven Development (TDD) с JUnit 4.

  • Първият модул запознава с принципите на обектно-ориентираната разработка на софтуер, основните езикови конструкции, примитивни и обектни типове, наследяване, полиморфизъм, абстрактни и вътрешни класове, обработка на изключения, основни библиотеки на Java™ SE 8. Включен е и кратък увод в класови и Use Case диаграми на езикa UML.
  • Вторият модул дискутира практическите детайли при работа с входни/изходни потоци, файлови операции, нишки и разработката на desktop приложения с графичен потребителски интерфейс. Включени са новостите при работа с файлове в Java 7 – New I/O 2 Path, Files, FileSystem, AttributeViews, walking the file tree, WatchService, MIME type inference. Представят се Swing библиотеката от класове и компоненти за изграждане на графичен потребителски интерфейс ( GUI) и Model-View-Controller архитектура, както и новите за Java 7 JLayer компоненти. Разглежда се графичното изграждане на форми и приложения, както и реализация на паралелни процеси с използване на множество нишки (multi-threading) и механизмите за синхронизация между тези процеси. Като специални акценти на курса ще бъдат застъпени бързото и автоматизирано изграждане на GUI приложения и реализацията на фино-гранулярна конкурентност с библиотеката Concurrency Utilities (JSR-166), включително новият за Java 7 Fork/ Join Framework.
  • Третият модул запознава с основите на мрежовото програмиране на Java™ (разработват се чат сървъри и клиенти през TCP/UDP/Multicasting), транзакции и връзки към бази данни през JDBC™, практическа разработка на разпределени приложения от тип клиент/сървър с Java RMI™ и многослойни софтуерни архитектури. Включени са новостите при JDBC 4.1 (Java 7) – try with resources, RowSet, RowSetFactory, FilteredRowSet, CachedRowSet и др. Акцент на курса е запознаването с новостите в Java 5-7, като декларативно програмиране с помощта на анотации в кода и създаване на entity beans чрез помощници – директно от таблици в базата данни с използване на Eclipse for Java EE и Java Persistence API (JPA). Курсът завършва с проект – разработка на цялостно трислойно клиент/сървър приложение в избрана от участниците област.

Курсът е насочен към мотивирани хора с амбиция за бърза професионална реализация като Java разработчици. Преподавателят има дългогодишен опит в провеждането на фирмени обучения за големи международни компании, а също и практически опит в управлението и разработката на бизнес софтуерни проекти (еGovernment, eLearning, GPS Tracking, WebTV, Web 2.0 Mashups, JavaScript Portlets).