Описание
Курс “Програмиране с Java” започва от базови концепции за езика – променливи, условни оператори, цикли, масиви и стрингове; преминава през обектно-ориентираното програмиране (object-oriented programing) и завършва с нишки, работа с XML/JSON и бази данни.
Материалът се надгражда постепенно, с много примери, упражнения, задачи за самоподготовка и консултации с лектора. Обучението завършва с практически проект за изготвяне на приложение подобно на реалните такива.
Начало на обучението:
Курсът стартира на 18.09.2024 г.
Форма на обучение:
Онлайн формат, два пъти седмично от 18:00 до 20:00ч. Възползвайте се от най-доброто на дистанционното обучение – пестенето на време. Съчетайте го с отличната възможността да получите отговори на въпроси, които ви вълнуват на живо от лекторите в курса в удобно за вас време.
Продължителност на курса:
Материалът ще бъде преминат в рамките на 6 месеца, по 12 часа седмично, разделени в лекции и време за самоподготовка.
Необходими ли са предишни познания:
“Програмиране с Java” е специално създаден за абсолютно начинаещи, без предишен опит с програмиране.
Кариерно ориентиране:
Персонална консултация с лектора на обучението и експерт от DevStyleR Academy за възможностите за кариерно развитие в ИТ сферата, съвети от бизнес практиката и как да се държите на интервю за работа.
Сертификати:
Всички, участници завършили курса, ще получи сертификат за преминато обучение, а при постигнат хорариум от часове и Свидетелство за професионална квалификация.
Цена:
Записаните до 21 август могат да се възползват от преференциална цена от 980 лева, след това цената е 1400 лева.
Какво ще научите:
- Как да програмите с Java – един от най-разпространените езици за програмиране за web services и web applications
- Как да използвате различни структури от данни за лесна обработка на информация
- Какви са принципите и основните компоненти на обектно-ориентираното програмиране
- Как да създавате йерархии от класове с композиция, наследяване и полиморфизъм
- Как да четете и записвате данни в текстови и бинарни файлове и да ползвате сериализация и десериализация за обмен на информация
- Как да четете и записвате данни в XML и JSON
- Как да свържете приложението с SQL тип база данни и да създавате, променяте и изтривате записи
- Как да ползвате регулярни изрази и lambdas
- Как да създавате producer/consumer приложения, използвайки multithreading и concurrency
Програма на курс “Програмиране с Java”
Introduction to Java
- My first Java program
- Compiling the Application
- Executing the Application
- IDE – IntelliJ Idea CE, Eclipse
Primitive data types
- Integer types
- Floating-point types
- Boolean type
- Char
- String
- Variables. Using variables
- Literals
Operators and expressions
- Arithmetic operators
- Comparison operators
- Logical operators
- Other operators
- Expressions
Input / Output – using console
- Printing to the console
- Reading from the console
Conditional statements
- if and if-else statements
- Nested if statements
- switch-case statement
Loops
- while loops
- do … while loops
- for loops
- Nested loops
Arrays
- Declaring and creating arrays
- Accessing array elements
- Inputting and outputting arrays
- Processing arrays with for loops
- Multidimensional arrays
- Searching arrays
- Sorting arrays
Strings and string manipulation
- Class String
- Basic operations with strings – comparison, concatenation, extracting substring, searching
- More operations with strings – replacing substrings, deleting substrings
Classes and objects
- Instance Variables, set Methods and get Methods
- Default and Explicit Initialization for Instance Variables
- Defining a method with a parameter
- Initializing objects with constructors
- Constructors with default arguments
- No-Argument Constructors
- Controlling Access to Members
- The this Reference
Object oriented programming: composition
- Composition
- enum Types
- Garbage Collection
- static class members
- static Import
- final Instance Variables
- Package Access
Object-oriented programming: inheritance
- Superclasses and Subclasses
- protected members
- Relationship between Superclasses and Subclasses
- Constructors in Subclasses
- Class Object
Object-oriented programming: polymorphism and Interfaces
- Polymorphism examples
- Abstract Classes and Methods
- Allowed Assignments Between Superclass and Subclass Variables
- final Methods and Classes
- Creating and Using Interfaces
Exception handling
- Exception handling overview
- Java Exception Hierarchy
- Stack Unwinding and Obtaining Information from an Exception
- Chained Exceptions
- Declaring New Exception Types
- Assertions
The StringBuilder
- StringBuilder Constructors
- StringBuilder Methods length, capacity, setLength and ensureCapacity
- StringBuilder Methods charAt, setCharAt, getChars and reverse
- StringBuilder append Methods
- StringBuilder Insertion and Deletion Methods
Regular Expressions
- Regular Expressions, Class Pattern and Class Matcher
- Replacing Substrings and Splitting Strings
- Classes Pattern and Matcher
Files, Input/Output Streams, NIO and XML Serialization
- Files and Streams
- Using NIO Classes and Interfaces to Get File and Directory Information
- Sequential Text Files
- Creating a Sequential Text File
- Reading Data from a Sequential Text File
- Updating Sequential Files
- Serialization
- Creating a Sequential File Using XML Serialization
- Reading and Deserializing Data from a Sequential File
- FileChooser and DirectoryChooser Dialogs
Generic Collections: part 1
- Collections Overview
- Type-Wrapper Classes
- Autoboxing and Auto-Unboxing
- Interface Collection and Class Collections
- Lists
- ArrayList and Iterator
- LinkedList
- Collections Methods
- Method sort
- Method shuffle
- Methods reverse, fill, copy, max and min
- Method binarySearch
- Methods addAll, frequency and disjoint
- Class PriorityQueue and Interface Queue
- Sets
- Maps
Generic Collections: Part 2
- Collections Overview
- Synchronized Collections
- Unmodifiable Collections
- Abstract Implementations
- Overloading Generic Methods
- Generic Classes
- Wildcards in Methods That Accept Type Parameters
Lambdas and Streams
- Streams and Reduction
- Mapping and Lambdas
- Filtering
- Method References
- IntStream Operations
- Functional Interfaces
- Lambdas
- Stream<Integer> Manipulations
- Stream<String> Manipulations
- Creating a Stream<String> from a File
- Streams of Random Values
- Infinite Streams
- Lambda Event Handlers
Working with structured data
- Basic XML concepts
- Reading XML
- Parsing XML
- Writing XML
- JSON introduction
- Reading JSON
- Parsing JSON
- Writing JSON
Concurrency
- Thread States and Life Cycle
- Creating and Executing Threads with the Executor Framework
- Thread Synchronization
- Producer/Consumer Relationship without Synchronization
- Producer/Consumer Relationship: ArrayBlockingQueue
- Producer/Consumer Relationship with synchronized, wait, notify and notifyAll
Working with databases in Java
- What is Database?
- Introduction to SQL queries
- Connect to database
- CRUD actions – create, read, update and delete data