This is the first part of fundamental training program ‘Java from Zero to First Job’. As it’s declared in the course name, it’s created for people who want to learn programming from scratch. You need to know how to turn on your computer, no other knowledge is required for this course 🙂 The rest will be covered in lessons.
Before starting creation of this course, our team attentively investigated feedbacks for existing courses on Udemy platform and tried to focus on the feedbacks for the top-rated courses to understand what can be improved in this course and make it even more better from the quality standpoint. After analysis, we understand what will help students to learn Java in more efficient way. In this course:
– High concentration of useful material in each lesson
Sometimes you can notice that watching of 5 minutes of our lesson is equivalent to watching of other 30 minutes lesson.
This is because time spent for preparation for the lesson (script for the lesson, lesson structure) and video editing (to cut boring pieces of the lesson, or time when program loads) sometimes 10 times as much (sometimes even 20) as final lesson duration after video editing.
Only your homework and coding exercises including EXAM task might take approximately 20 hours to implement.
Also each topic is separated from another. In case some concept will be explained in the next lesson and you don’t need to worry about understanding this in scope of this lesson – instructor will make announcement when specific topic will be covered.
Go and try it yourself! We will appreciate your feedback.
– Relevant knowledge
After our team investigated other Java courses on Udemy we realized that most of them has nothing in common with real life. Information which is shared there is very old and significantly out of date. For example, instructor teaches framework which is not used already for 15 years. Or instructor do a stress on the programming design which is not used anymore at all!
Instructor of this course is consultant in the top-rated IT outsourcing company and helps to bring cutting-edge solutions in IT for all his clients. Feel free to check LinkedIn page of instructor and check skills endorsement. More than 18 thousand people acrooss all over the world (BTW most of them are from top 100 companies of the world) evaluated skills of Andrii Piatakha.
With this course you can be sure that you will spend your time learning the right things from the one of the best IT consultants in the world.
– Sequence of lessons
After the years of teaching offline, and based on the feedbacks of students who are passing online courses we realized how important the sequence of lessons while teaching Java. The same issue is with the books where information is completely unstructured what makes things even more complex. For example, how students can learn object oriented programming from the first lesson if they don’t know yet the java syntax basics? Or how student can implement hometask if he/she doesn’t aware of java methods specifics, or doesn’t know yet how to read program input?
So in this course you can be sure, that you will not get hometask to implement without having enough information to implement it. The program which is in this course is proven by many students who completed it offline and now work as software engineers in outsourcing companies and as a freelancers.
– Interview practice tests
Being an IT consultant in different companies, tutor of this course was in charge ot driving interview process in companies to make sure, that company selects the best people. That’s why the first interview is always test. In case test is completed, candidate is invited to have a conversation. That’s why, in this course we want to prepare you to complete tests sucessfully!
Specially for our students, we prepared tests which could be used to evaluate your knowledge during the interview process.
2 tests. 90 questions each (180 interview tests in total). 120 minutes each.
You can read explanation to answers! That also can help you to learn material better. Don’t wait, try it now!
– Q&A support
The significant difference between online and offline learning process is instructor’s availability. If you are in the one room with tutor he always can help you to get understanding specific concept or to help fix your code on your computer.
In this course, we are supporting students with answers to any questions flagged in Q&A section. In case there will be recurring questions – separate video lessons will be created to show how to address issue.
So with this course you are not just getting video materials, code exercises, source code, access to free mobile application without limits (which is still pretty cool, huh? 🙂 ) , but you also get tutor support and answers to your questions along with this course.
– Open source code
We hide nothing from our students! Including the source code for the hometask solutions and source code of examples which were shared during the lesson. Having the source code you can just copy and paste it to run it on your local computer to understand how things work better.
– Free mobile App without limits for our students
Knowing Java is one skill. Be able to pass interview in company – that is another skill 🙂 Nowadays a lot of companies use tests to select candidates on the first level of interview. We developed application to practice skills specifically for such purposes.
In this course we will provide you link to download our FREE mobile app for android. (soon it will be also available for iOS platforms)
Instructor of this course come up with hundreds tests which are used to test knowledge of candidates. With this application you will be well-prepared for the interview.
Also, only for our students – there is no limit on attempts to pass certification. In the course we will tell you how to set up special bonus code which will remove restrictions for our students inside the app.
– Coding exercises
To learn programming it is not enough just watching videos and reading books. You also need to have a lot of practice. In this training course you will have different practical tasks which will help you learn and understand Java better.
One of the key tasks where you can practice your knowledge is implementation of backend system for online store. Also you have a lot of tasks that use domain specific terminology: accounts, transactions, users, carts, menu, services etc. So that means you are learning programming without abstract concepts like it is written in the books or in other courses. You learn domain specific terminology and during the lessons we investigate specific extracts from code that can give you clear vision how you can apply the knowledge in real life.
As you can see from curriculum, in this part of fundamental training program you will learn how to install JDK on your computer, you will learn a lot about IDE where you can write you programs, you will learn Java syntax, primitive types of data, loops, control statements, arrays, operations with primitive and reference types of data, String, Enum, how to write methods in Java, different number systems, tips and tricks, practical coding exercises, debugging tools, Object-Oriented Programming, Git , Java Collections Framework, Collections, Maps, functional programming, lambda functions, method references and lots more.
So don’t wait! Take a look at lessons’ preview if you still have doubts!
Buy this course today, and you will get all updates for FREE!
Right now our team keep working on the next lessons for this course. We are preparing for you a lot of other topics and coding exercises! Our goal – to create web application together with you. Buy this course today, and you will receive all updates for free! Isn’t that cool? 🙂
For those who successfully passed this training course, or for students who was recognized for asking amazing questions, there is a special offer from IT-Bulls company! The creator of this course is IT-Bulls company CEO and Founder. We always in search of talents to run our amazing startups together with you. Probably you always dreamed about running your own startup? In this course you will be able to find the team who will teach you how to do that and (in particular cases) will be glad to help with implementation!
Hope you enjoy this course! And remember, we appreciate all your feedbacks! Your feedbacks will help us to become even more better! Your feedbacks will help us to create to best Java course ever!
See you on the lessons! 🙂
Basics
-
1How to use captions
This video course has manually created captions, but not auto-generated.
In the lessons you are going to hear domain-specific terminology. In case something will be unclear, or you would like to know just how to spell new word - you can always turn on captions.
In this short lesson we will review how you can use captions during the training course.
-
2Why Java and why this course? What is JDK, JRE and JVM?
From this lecture you will learn:
• Java History
• Why Java
• What you can implement with Java
• This training course structure
• Opportunities after this course
• What is JVM
• What is JRE
• What is JDK
-
3Communication plan
From this lecture you will learn:
• How to communicate during this course• Where to ask questions
• How to ask questions
• Communication channels
-
4Unlimited access to 'Learn IT' application for students
From this lecture you will learn:
• Where to find good tests to verify your knowledge
• How to get unlimited access to Learn IT application (only for my students from Udemy)
Primitive Data Types, Variables and Arrays
-
5JDK Installation
From this lecture you will learn:
• How to chose JDK version
• Difference between openjdk and oraclejdk
• How to install jdk on computer
• How to configure environment variables
-
6First application: Hello World App
From this lecture you will learn:
• What are console applications
• How to compile .java files to bytecode
• Basic Syntax
• How to create ‘Hello World’ app on Java
• What are compilation errors
• How to execute our programs on JVM
-
7Hello World: .bat or .sh
-
8Homework Solution: .bat file creation
In the lesson we will solve homework together with and we will write batch script from scratch to compile your source code and run Hello World application.
-
9Integrated Development Environment, Eclipse Overview
From this lecture you will learn:
• What is IDE
• What are the most popular IDE for Java development
• Eclipse for Java EE developers: Overview
• Eclipse Java Project
• What is a package
-
10Comments in Java source code
From this lecture you will learn:
• What are comments
• What are types of comments in Java source code
• Java Doc
• Tips and best practices
Eclipse: Tips and Tricks
-
11Primitive types and variables
From this lecture you will learn:
• What data types exists in Java
• What are primitive types
• Integers
• Floating-point numbers
• Characters
• Boolean
• Primitive types conversion
• What are variables
• 'var' variables
• Java keywords
-
12Number Systems
From this lecture you will learn:
• Number Systems
• Binary number system
• Octal number system
• Hexadecimal number system
• How to convert from one system to another
• Binary, octal and hexadecimal literals in Java
-
13Ararys
From this lecture you will learn:
• Arrays: overview
• One-dimensional arrays
• How to access elements in arrays
• Default values for elements in array
• ArrayIndexOutOfBoundsException
• Array literal
• Multidimensional arrays
•‘ null’ values
• java.util.Arrays
• import statement
• How to investigate JDK source code
Operators and Operations with primitive types
-
14Packages: creation and package presentation in eclipse
From this lecture you will learn:
- how to create packages in eclipse
- how to configure package presentation in eclipse
- what is flat and hierarchical package presentation
- how to create nested packages
- how to create package during class creation
-
15Plugins: how to install free plugins, eclipse marketplace, workspace styles
From this lecture you will learn:
- What are eclipse plugins?
- How to install free plugins?
- Eclipse marketplace
- How to change style of the workspace
-
16Code Refactoring in Eclipse
From this lecture you will learn:
• How to rename multiple items at once
• Code formatting
• Configure formatting rules
• Extract variable from expression
• Extract method from multiple statements
• Import optimization
Strings in Java
-
17Operators in Java
From this lecture you will learn:
• What are operators?
• Type of operators
• Arithmetic operators
• Assignment operators
• Relational operators
• Logical operators
• Bitwise operators
• Ternary operator
• Operator precedence
-
18Operations with integers and floating-point numbers, BicDecimal type
From this lecture you will learn:
• Dividing of integers specifics
• Subtraction of floating-point numbers specifics
• BigDecimal type
• How to control precision of arithmetic operations
-
19Math class, NaN, Infinity
From this lecture you will learn:
• java.lang.Math class overview
• How to perform basic mathematical operations
• Rounding
• Random number generation
• NaN - what is not a number?
• Infinity - what is 'infinity'?
• How to find max and min value?
• How to find square root?
-
20Type of the expression in Java
From this lecture you will learn:
• What is expression
• What is statement
• Type of the expression in Java
• Concatenation with String
-
21Compare primitive and reference types & Java Memory Model
From this lecture you will learn:
• How to compare primitives
• How to compare reference types
• Java Memory Model: Heap and Stack in Java
• Integer pool
• equals() method
• How to compare arrays
-
22Read user input from console
From this lecture you will learn:
• How you can read input from the console
• What is System.in
-
23Simple console integer calculator
-
24Calculate Area of Triangle
-
25Calculate Circle Circumference
-
26Homework review: Operators and Operations
From this lecture you will learn:
• How to run programs with arguments
• Project Explorer VS Navigator view in Eclipse
• How to run JVM with arguments
• How to set up maximum heap size for JVM
• Solutions for coding exercises
Control Statements
-
27String: object creation and main methods overview
From this lecture you will learn:
• java.lang.String class overview
• Main String methods
• How to create String objects
-
28String comparison: How to compare Strings and what is String Pool?
From this lecture you will learn:
• String pool
• String comparison
-
29Escape Sequences in Java
From this lecture you will learn:
• What are escape sequences?
• What escape sequences are available in Java?
• Unicode characters escaping
-
30String Formatting
From this lecture you will learn:
• How to format string
• What are format specifiers?
• How to use Formatter?
• When need to format strings?
-
31Regular expressions in Java
From this lecture you will learn:
• What are regular expressions?
• When to use regular expressions?
• Why we need regular expressions?
• How to write regular expressions in Java?
• Pattern and Matcher objects in Java
• How to find words in String
-
32Format floating-point number
-
33Split Words
-
34Homework review: String
In this lesson you will see one of the way to solve home tasks. Best practices will be shared. POSIX groups will be discussed.
Miscellaneous
-
35'if - else' construction
From this lecture you will learn:
• How to use 'if' statement
• Syntax of 'if' statement
• Nested 'if' statements
• 'if-else-if' ladder
-
36Admin and Guest mode for application
-
37Simple Number Calculator
-
38Homework review: 'if' statement
In this lesson you will find solution for coding exercises from 'if' statement topic
-
39'switch' construction
From this lecture you will learn:
• How to use 'switch' statement
• Syntax of 'switch' statement
• Type of expression to be used in 'switch'
• 'break' statement
• 'default' statement
• 'switch' vs 'if statement
-
40User Activity Selector
-
41Homework review: 'switch' statement
In this lesson you will find solution for 'swtich' statement homework.
Iteration Statements (Loops) in Java
Methods
-
43'while' loop
From this lecture you will learn:
• What are iteration statments in Java?
• When we need to use iteration statements in Java
• Examples of loops in Java
• 'while' loop
-
44'do-while' loop
From this lecture you will learn:
• How to use 'do-while' loop
• Usage of ´do-while´ loop - examples
• When to use 'do-while' over 'while' loop
-
45'for' with condition loop
From this lecture you will learn:
• How to use 'for' with condition loop
• Examples of the use
• Comma in for loop
-
46'for each' loop
From this lecture you will learn:
• How to use 'for each' loop
• Examples of the use
• Shortcut in eclipse to create 'for each' loop
-
47Nested loops
From this lecture you will learn:
• How you can put one loop inside another one
• When you need to use nested loops
-
48Jump Statements - Break and Continue
From this lecture you will learn:
• What are jump statements
• Continues statement
• Break statement
-
49Labels in Java
From this lecture you will learn:
• What is goto statement in programming?
• Labels in Java
• How to use labels in Java
-
50Print digits from new line
-
51Pyramid in console
-
52Print matrix to console
-
53Homework review: Iteration Statements (Loops)
In this lesson we will review solution for coding exercises.
Enumerations in Java
-
54Methods in Java: Overview
From this lecture you will learn:
• What are methods
• How to declare a method
• What is method signature
• What is method overloading
• How to call method
-
55Parameter Passing Mechanism in Java
From this lecture you will learn:
• Passing data by value
• Passing data by reference
• Passing primitive types to method in Java
• Passing reference types to method in Java
-
56Recursive methods
From this lecture you will learn:
• What is recursion
• What are recursive methods
• How to write recursive methods
• When do we need recursive methods
• Pros and cons of recursive methods
-
57Variable Length Arguments
From this lecture you will learn:
• What are variable-length arguments
• Syntax of varargs
• Varargs in the methods
-
58Find max int in array
-
59Draw empty rectangle
-
60Calculate Amount of Words
-
61Filter String array
-
62Rotate Matrix
-
63Extend Array
-
64Greatest Common Divisor
-
65Sum all digits in number
-
66String Processor
-
67Turn each first letter in the word to capital
-
68Convert decimal to Roman numbers and vice versa
-
69Homework review: Methods
In this video we will review coding exercises from this section
Debugging Tools
Practice: EXAM OOP & Object Oriented e-Commerce console applications
-
73Object-oriented programming: Basics
From this lecture you will learn:
• What is OOP
• What is an object
• Class
• Why do we need OOP
• OOP advantages
• OOP VS Functional programming
• Inheritance
• Encapsulation
• Polymorphism
• Abstraction
-
74Classes & Objects
From this lecture you will learn:
• What does class consist of
• Fields
• Initialization blocks
• Constructors
• Methods
• Nested classes
• Getters and setters
• toString() method
• How to create object
-
75Different types of Classes, Abstract keyword and Abstract classes
From this lecture you will learn:
• Concrete classes
• Nested classes
• Final classes
• POJO classes
• Abstract classes
• Anonymous classes
• Abstract keyword
-
76Interfaces
From this lecture you will learn:
• What are interfaces
• What does interface consist of
• Abstract class VS Interface
• Interface VS Class VS Type
-
77Inheritance
From this lecture you will learn:
• What is inheritance
• ‘super’ keyword
• ‘instanceof’ operator
• How to extend classes
• Inheritance rules
-
78Polymorphism and 'final' keyword
From this lecture you will learn:
• What is polymorphism
• Method overriding
• Override VS Overload
• Dynamic binding
• ‘final’ keyword
-
79'static' keyword
From this lecture you will learn:
• What is ‘static’ keyword
• Where we can use ‘static’ keyword
• Static methods
• Static fields
• Static import
• Static VS dynamic binding
-
80Encapsulation
From this lecture you will learn:
• What is encapsulation
• Access modifiers
• Which modifiers to use and when
• Rules during overriding
-
81Object, JNI and Object class overview
From this lecture you will learn:
• What is an object
• Object class overview
• JNI
• ‘native’ keyword
• @Deprecated annotation
-
82SOLID principles overview & Single Responsibility Principle
From this lecture you will learn:
• What are SOLID principles
• SOLID principles in OOP
• Single responsibility principle
-
83Open / Closed Principle
From this lecture you will learn:
• Open / closed principle
• Code examples
-
84Liskov Substitution Principle
From this lecture you will learn:
• Liskov substitution principle
• Code examples
-
85Interface Segregation Principle
From this lecture you will learn:
• Interface segregation principle
• Code examples
-
86Dependency Inversion Principle
From this lecture you will learn:
• Dependency inversion principle
• Code examples