Java SE 7 Programming
- Код курса: SE7
- Длительность: 5 д.
- Цена: 70 000 Р
- Часы в неделю: 40 ак. часов.
Описание курса
Аннотация:
В курсе рассматриваются основные Application Programming Interfaces (API), используемые для создания Java-приложений. Будет изучено создание классов, делающих подклассами другие классы, расширение абстрактных классов, программирование интерфейса. Слушатели научатся правильно использовать исключения (exceptions), структуру Collections, и разрабатывать приложения, обрабатывающие файлы, директории и файловые системы. Также будет рассмотрено написание программ (database programs) с использованием интерфейса JDBC, и корректное написание многопоточных приложений.
Слушатели получают следующие знания:
- Создание Java-приложений с помощью последних технологий JDK 7 Technology и NetBeans Integrated Development Environment (IDE)
- Определение лучших практик использования языка для создания трудоемких Java-приложений
- Обработка файлов, директорий и файловых систем с помощью спецификаций JDK7 NIO.2
- Создание приложений баз данных с помощью стандартных SQL-запросов через JDBC
- Создание высокопроизводительных многопоточных приложений, позволяющих предотвратить взаимоблокировку транзакций
- Выполнение множественных операций над таблицами баз данных, в том числе создание, чтение, обновление, удаление, при помощи JDBC
- Обработка строк с помощью различных регулярных выражений
- Локализация Java-приложений
- Создание приложений, использующих структуру Java Collections
- Реализация техник обработки ошибок при помощи обработки исключений
- Реализация функционала ввода/вывода (I/O) для чтения и записи данных и текстовых файлов, понимание расширенных I/O потоков (advanced I/O streams)
- Создание Java-приложений, используя преимущества таких функциональностей ООП, как инкапсуляция, наследование и полиморфизм
- Исполнение Java-приложений из командной строки
Аудитория:
- Разработчики
- J2EE разработчики
- Java разработчики
- Java EE разработчики
Требования к подготовке слушателей:
- Знакомство с основными концепциями баз данных и синтаксиса SQL
- Опыт программирования
- Знания в рамках курса Java SE 7 Fundamentals или опыт программирования на Java (умение создавать, компилировать, исполнять программы), понимание принципов объектно-ориентированного программирования (ООП)
Описание курса (course topics):
Java Platform Overview
- Introductions
- Course Schedule
- Java Overview
- Java Platforms
- OpenJDK
- Licensing
- Java in Server Environments
- The Java Community Process
Java Syntax and Class Review
- Simple Java classes
- Java fields, constructors and methods
- Model objects using Java classes
- Package and import statements
Encapsulation and Polymorphism
- Encapsulation in Java class design
- Model business problems with Java classes
- Immutability
- Subclassing
- Overloading methods
- Variable argument methods
Java Class Design
- Access modifiers: private, protected and public
- Method overriding
- Constructor overloading
- The instanceof operator
- Virtual method invocation
- Polymorphism
- Casting object references
- Overriding Object methods
Advanced Class Design
- Abstract classes and type generalization
- The static and final modifiers
- Field modifier best practices
- The Singleton design pattern
- Designing abstract classes
- Nested classes
- Enumerated types
Inheritance with Java Interfaces
- Java Interfaces
- Types of Inheritance
- Object composition and method delegation
- Implementing multiple interfaces
- The DAO design pattern
Generics and Collections
- Generic classes and type parameters
- Type inference (diamond)
- Collections and generics
- List, set and Map
- Stack and Deque
String processing
- String manipulation with StringBuilder and StringBuffer
- Essential String methods
- Text parsing in Java
- Input processing with Scanner
- Text output and formatting
- Regular expressions with the Pattern and Matcher classes
Exceptions and Assertions
- Exceptions categories
- Standard Java Exception classes
- Creating your own Exception classes
- Using try-catch and the finally clause
- Using try-with-resources and the AutoCloseable interface
- The multi-catch feature
- Best practices using exceptions
- Assertions
I/O Fundamentals
- I/O using Java
- Reading the console input stream
- Writing to the console
- Using I/O Streams
- Chaining I/O Streams
- Channel I/O
- Reading and writing objects using Serialization
File I/O with NIO 2
- The Path interface
- The Files class
- Directory and File operations
- Managing file system attributes
- Reading, writing, and creating files
- Watching for file system changes
Threading
- Operating system task scheduling
- Recognizing multithreaded environments
- Creating multi-threaded solutions
- Sharing data across threads
- Synchronization and Deadlock
- Immutable objects
Concurrency
- Creating Atomic variables
- Using Read-Write Locks
- Thread-safe collections
- Concurrenct synchronizers (Semaphore, Phaser, and others)
- Executors and ThreadPools to concurrently schedule tasks
- Parallelism and the Fork-Join framework
Database Application with JDBC
- Layout of the JDBC API
- JDBC divers
- Queries and results
- PreparedStatement and CallableStatement
- Transactions
- RowSet 1.1 RowSetProvider and RowSetFactory
- The DAO Pattern and JDBC
Localization
- Advantages of localization
- Defining locale
- Read and set locale using the Locale object
- Resource bundles
- Format messages, dates and numbers