Курс «Язык программирования Java»

Java бояться – в IT не ходить

Записаться

Длительность


6 месяцев (стандартный)

4 месяца (интенсив)

Количество часов


112 часов

Стоимость


3050 грн/мес

Уровень после курса


Junior Java Developer

Для кого этот курс

  • Хочу стать Java Developer и ничего об этом не знаю. Опыт: 0 лет
  • Учу Java самостоятельно и пробую кодить, нужно систематизировать знания. Опыт: до 1,5 года
  • Интересуюсь программированием, хочу творчески и интеллектуально развиваться

Почему Java

Кроссплатформенность — программа на Java будет работать на ПК, смартфоне, в автомобиле и кофемашине — везде, где нужно

Распространенность — базовый язык программирования в странах с развитым рынком IT

Постоянный рост – можете стартовать с простых программ и усложнять задачи до бесконечности: desktop-приложения, корпоративное ПО, web-сервисы, игры, мобильные приложения, ATM- и SIM-card приложения

Доступность — интуитивно понятный синтаксис, обработка ошибок, открытый код. После Java вы легко освоите любой другой язык

База — множество литературы, библиотек, готовых алгоритмов. Большинство проблем уже решены и описаны вашими предшественниками

Высокая зарплата — специалисты Java нужны в крупнейших компаниях и в среднем на рынке им платят больше

Особенности курса
Main Academy

Полный 112-часовой курс Java охватывает основы языка программирования Java и технологии Java Standard Edition Platform. Курс подходит как новичку в программировании, так и уже работающим программистам

Курс разработан экспертами IT-обучения и практикующими программистами. Его утвердили как полную подготовку Junior Java Developer в ведущих IT-компаниях Украины.

Занятия проходят в небольших группах под руководством опытного инструктора Java Developer. Каждая порция теоретического материала сразу закрепляется на практике — и студенты быстро учатся самостоятельно писать код

Курс включает в себя теоретические лекции, тесты, сертификационный экзамен, практическое программирование и курсовой проект, максимально приближенный к многоуровневому реальному проекту – в результате вы готовы творить как настоящий Java Developer

Ваш результат после курса

Выучите синтаксис языка, научитесь писать программу с чистого листа и код, за который не стыдно

Детально разберетесь в объектно-ориентированном программировании на Java

Сможете самостоятельно находить выходы из сложных ситуаций при реализации запутанных бизнес-логик

Впишете в портфолио свой первый проект на Java

Будете быстро читать код, находить ошибки в нем — и свои, и чужие

Построите солидный фундамент для успеха и трудоустройства в IT

Приобретёте знания, необходимые для сдачи Oracle Certification Exam 1Z0-808

Чему мы научим

Часть 1. Java Basics & OOP

1.1. What is Java

1.2. History of Java. Fundamentals of Java

1.3. Understanding Java’s Object-Oriented Programming

1.4. Cross-Platform. Java Virtual Machine, Byte-code, JRE

1.5. Java Platforms and Technologies

1.6. Java and Other Programming Languages

1.7. Java Specifications: JLS and JVM

2.1. JDK Tools and Utilities

2.2. Overview of IDE

2.3. Create Simple Console Application

2.4. Structure of Simple Console Application

2.5. The main() Method

2.6. String Output and Input to Console

2.7. Java Code Conventions

3.1. Brief Overview of Data Types in Java

3.2. Difference Between Primitive and Reference Data Types

3.3. Pointers in Java

4.1. Signed and Unsigned Number Representations

4.2. Representation of Entire Unsigned Integers in Binary, Octal and Hexadecimal Number Formats

4.3. Twos-complement Number Representation

4.4. Floating Point Representation

4.5. The Integer Types

4.6. The char Type

4.7. The float and double Types

4.8. The boolean Type

4.9. Variables and Identifiers

4.10. Brief Overview of Operators in Java

4.11. Main Arithmetic and Logical Operators

4.12. Short-Circuit Logical Operators

4.13. Increments and Decrements

4.14. Bit Shift Operators

4.15. Bitwise Operators

4.16. Ternary Operator

4.17. Operator Precedence

4.18. Type Casting

5.1. Identifiers and Literals

5.2. Local Variables: Initialization and Lifetime

5.3. Declaring a Variable as a Constant

5.4. The if-then and if-then-else Statements

5.5. Loops: The while, do-while and for Statements

5.6. The switch Statement

5.7. The goto Keyword

5.8. The break and continue Statement

5.9. Program Exit

6.1. One Dimensional Arrays. Length of Array

6.2. Working with Arrays and Array Elements

6.3. Multidimensional Arrays

6.4. Resize an Array

6.5. The Arrays Class

6.6. Array Manipulations: copying, equal check, search element, sort

7.1. Overview of Class Declarations. Class Fields and Methods

7.2. Access Modifiers

7.3. Encapsulation

7.4. Creating Objects

7.5. null Literal

7.6. this Keyword

8.1. Methods Declaration

8.2. Passing Arguments to a Method

8.3. Methods with Variable Arguments

8.4. Overloading Methods

8.5. final Modifier for Method Arguments

9.1. Constructors Declaration

9.2. Default Constructors

9.3. Constructors Overloading

9.4. Calling One Constructor from Another

10.1. The static Keyword

10.2. The static Fields

10.3. The static final Fields

10.4. The static Methods

10.5. The static Methods Restrictions

10.6. Using static Fields and Methods

11.1. Class Fields Initialization

11.2. Non-static Initialization Block

11.3. Static Initialization Block

11.4. Order of Initialization Block Execution

11.5. Initialization of final Variable

12.1. The Package

12.2. Package Import

12.3. Adding Class to Package

12.4. Static Import

12.5. Package Organization

12.6. The jar Utility

12.7. Executable jars

13.1. The Inheritance

13.2. Inheritance and “is-a” Relationship

13.3. Method Overriding

13.4. Fields hiding

13.5. Class Object

13.6. Object Methods: toString(), equals(), hashCode(), e.t.c.

13.7. The “super” Keyword

13.8. Covariant Return Types

13.9. Constructors Chaining

13.10. Initialization Order and Inheritance

13.11. Polymorphism. Early Binding & Late Binding

13.12. Type Cast and Conversion

13.13. The instanceof Keyword

13.14. Objects Cloning

13.15. final Class and final Methods

13.16. The protected Access Modifier

14.1. Abstract Classes

14.2. Abstract Methods

14.3. Interfaces

14.4. Interfaces and Multiple Inheritance

14.5. Interface Comparable and Comparator

15.1. The String Class

15.2. Operations with Strings

15.3. Immutable String in Java

15.4. The StringBuilder and StringBuffer

15.5. String Pool in Java

15.6. The StringTokenizer Class

15.7. The Regular Expressions in Java

15.8. The Scanner Class

16.1. The Scanner Class

16.2. Wrapper Classes

16.3. Autoboxing and Unboxing

16.4. Wrapper Classes are Immutable

16.5. Caching Integer Objects

17.1. The Exceptions. Java Exceptions hierarchy

17.2. Checked and Unchecked Exceptions

17.3. The try-catch-finally Block

17.4. Multiple catch Blocks

17.5. The throw and throws Keywords

17.6. Call Stack and Exception Propagation

17.7. Rules of Exceptions in Method Overriding

17.8. Creating Exception Classes

17.9. Assertions

18.1. The Nested Classes Classification

18.2. Creating Instances of Static and Non-static Nested Classes

18.3. Inner Class Access to Outer Class Fields and Methods

18.4. The Nested Classes and JVM

18.5. Local Inner Classes

18.6. Anonymous Inner Classes

18.7. Using Anonymous Class for Array Sorting. Interface Comparator

18.8. Inner Classes and Multiple Inheritance

19.1. The Enums and Operations with it

19.2. Enum as Type. Enums Methods Overriding

19.3. Enums Restrictions

20.1. The Generics

20.2. Declaring and Using Generic Types

20.3. Declaring and Using Generic Methods

20.4. Bounded Type Parameters

20.5. Generics and JVM

20.6. Generic Arguments in Methods

20.7. Restrictions on Generics

20.8. Generic and Inheritance

20.9. Wildcards, extends and super Keywords

21.1. Java Collection Framework. Interfaces

21.2. The Collection Interface

21.3. The Iterators

21.4. The List Interface

21.5. The Queue and Deque Interfaces

21.6. The Set Interface

21.7. The Map Interface

21.8. The Collections Class

22.1. The Collections Class

22.2. The Overload Resolution

22.3. The Overload Resolution: Type or Class

22.4. The Overload Resolution: Type Cast or Boxing-Unboxing

22.5. The Overload Resolution and Varargs

22.6. Examples of Overload Resolution

23.1. Introduction to Concurrent Programming

23.2. Creating Threads

23.3. Important Methods in the Thread Class

23.4. The States of a Thread

23.5. The Thread Scheduler. Thread Priority

23.6. Thread Interruption. The interrupt() Method

23.7. Threads Pool

23.8. The Daemon Threads

23.9. Thread Synchronization

23.10. The volatile Keyword

23.11. Synchronized Blocks

23.12. Synchronized Methods

23.13. The ReentrantLock Class

23.14. Atomic Variables

23.15. The Wait/Notify Mechanism

23.16. Deadlocks

23.17. Semaphore

23.18. CountDownLatch

23.19. Concurrent Collections

24.1. The Fork-Join Framework

24.2. The Math Class

24.3. BigInteger and BigDecimal Classes

24.4. Random Numbers

24.5. The System Class

24.6. The Properties Class

24.7. Creating a Locale

24.8. Date and Time

24.9. Numbers and Currencies

24.10. The Runtime Class

25.1. Object-Oriented Concepts

25.2. Is-a Relationship and Has-a Relationship

25.3. Inheritance, Aggregation, Composition and Association

25.4. Key Indicators of Code Quality: Coupling, Cohesion

25.5. JavaBeans Conventions

25.6. Design Patterns

25.7. Singleton, Builder, Strategy, Decorator, Observer, Factory Patterns

25.8. MVC

Часть 2. Java OOP & SE

26.1. The Сoncept of Input-Output Streams

26.2. Byte Streams and Character Streams

26.3. The main I/O Stream Classes

26.4. The RandomAccessFile Class

26.5. Principles of Handling IO Errors

26.6. A try-catch with Resources

26.7. The “File” Class. File Operations

27.1. Java – Serialization

27.2. Serializing an Object

27.3. The transient Modifier

27.4. Complex Objects Serialization

27.5. Serialization with Inheritance

27.6. Custom Serialization in Java

27.7. Java Externalizable Interface

28.1. An Introduction to Relational Data Bases

28.2. An Introduction to SQL

28.3. The CRUD Operations

28.4. The JDBC

28.5. The DriverManager and Connection

28.6. The ResultSet

28.7. PreparedStatement

28.8. The Database MetaData

28.9. The DatabaseTransactions

28.10. Connecting to a database project in IntelliJ IDEA

29.1. An Introduction to Swing

29.2. Swing – Controls

29.3. Event Handling

29.4. Layout Managers

29.5. Creation and Use Menu

29.6. Dialog Windows. Standard and Custom

30.1. Loading Classes

30.2. Class Loaders In Java

30.3. Class Loaders Runtime Hierarchy

30.4. The Java Reflection

30.5. The “Class” Class

30.6. Retrieving Class Objects

30.7. Discovering Class Members

30.8. Dynamic invocation of methods

30.9. Using Java Reflection for Access to Private Members

31.1. Annotations Basics

31.2. Annotation Types Used by the Java SE

31.3. Custom Annotations in Java

32.1. Lambda Expressions

32.2. Functional Interfaces

32.3. Static Methods and default Methods in Interfaces

32.4. Method References :: Operator

32.5. Streams

32.6. New Date/Time API in Java 8

33.1. TCP/IP Networking Basics

33.2. Java Socket’s and ServerSocket’s

33.3. UDP Networking Basics

33.4. UDP DatagramSocket

33.5. Using URLConnection and InetAddress

34.1. Class Proxy

34.2. Known Use Cases

35.1. The Software Development Life Cycle

35.2. Java Build Tools, Maven Essentials

35.3. The Unit Testing, JUnit Essentials

35.4. Basic Annotation Supported in JUnit 4

35.5. Assert Statements Supported in JUnit 4

35.6. Creating a JUnit Tests

36.1. Creating GitHub repository

36.2. Committing your changes

36.3. Reverting

36.4. Pushing to a remote repository

36.5. Pulling from a remote repository

36.6. Resolving Conflicts

36.7. Branches

37.1. Java Garbage Collection Basics

37.2. Eligible Objects for Garbage Collection

37.3. Object Finalization

37.4. The Resurrected Objects

37.5. The Weak Reference

38.1. Basic Security Architecture

38.2. Security Manager

38.3. The Java Sandbox

39.1. Issuance and Explanation of Tasks

39.2. Consultancy

39.3. Protection of Project

Сертификационный экзамен – 2 часа

Как всего за 5 шагов стать
Junior Java Developer

Записаться на курс и посетить вводное занятие

(убедитесь, что вам подходит этот курс)

Пройти курс «Язык программирования Java»

(очень много учиться, перенимая знания и опыт нашего инструктора)

Выполнять все практические и теоретические задания

(это действительно очень важно)

Во время обучения работать с нашим консультантом по трудоустройству

(составлять резюме, проходить собеседования, искать свою нишу)

Защитить курсовой проект и сдать сертификационный экзамен

(вы можете претендовать на позицию Junior Java Developer в IT-компании)

Записаться на курс

Хочу учиться

Отзывы

  • Ангелина Гороховская


    Main Academy — это не просто курсы, а место, где студент может ощутить атмосферу IT-компаний, ведь ваш преподаватель — это опытный специалист.Каждое занятие было действительно полезным и продуктивным. Огромное спасибо за багаж знаний и чудесную атмосферу!

  • Юлия Кордубайло


    Очень хороший учебный курс, качественно составленная программа. При низком уровне знаний английского языка после курса намного легче читать техническую литературу. Отдельное спасибо преподавателю, Денису Годованному, за идеально подобранный баланс в преподавании. Легкая подача сложного материала, если виделось непонимание в глазах студентов сразу начинал объяснять вопрос более доходчиво, под другим углом.

  • Володимир Верхотуров


    Курс був дуже корисним. Дякую за можливість для навчання учасникам АТО.

Наша учебная модель

Сертификация и требования рынка


Мы использовали Европейскую рамку компетенций для IT-профессионалов (e-CF), сертификационные требования от Oracle и Microsoft. Каждая программа разработана экспертами отрасли под заказ Main Academy и утверждена в ведущих IT-компаниях Украины

Обширный практикум


Наша цель – дать максимум знаний и навыков для успешной работы. Поэтому студенты выполняют множество лабораторных индивидуально и в команде, разрабатывают реальный проект, который станет первым в портфолио

Offline & Online


Основа обучения – занятия с инструктором в аудитории. Только такой формат гарантирует результат. При этом постоянно открыт онлайн-доступ к разработанным нами учебным материалам, заданиям, тестам

Отбор и подготовка инструкторов


Практикующие профессионалы сдают вступительный экзамен, обучаются по нашим программам подготовки инструкторов и проходят финальную сертификацию

Карьерный сервис


Учим проходить собеседования, быть конкурентными на рынке и презентовать свои преимущества в резюме. Компании-партнеры запрашивают информацию о наших студентах и отбирают нужных специалистов

Единый стандарт качества для всех филиалов


Main Academy учит студентов во всех регионах Украины. Благодаря единым методикам, программам, сертификации инструкторов студенты в каждом филиале получают гарантированное качество обучения

Записаться на курс


Полная стоимость: 18300 грн

*возможна оплата частями

Действует система скидок:

приведи друга, предпокупка и т.д.**

**детали уточняйте у менеджеров

пн, ср, пт – 19:00-21:30

вт, чт – 19:00-21:30

сб, вс – 10:00-14:00

Записаться на курс
«Программирование под Java»

Хочу учиться

Узнайте свой уровень подготовки

Рекомендуем Вам пройти тест чтобы определить уровень базовой подготовки. Таким образом Вы сможете определить для себя оптимальный путь развития

Проверьте себя

Учим
с нуля

Развиваем
профессионалов

Готовим
к карьере в IT

Комплексное
IT-образование