Description
The aim of this course is to familiarise participants with the Java programming platform and teach them the fundamental concepts and skills to develop Java applications.
Knowledge/skills acquired after completion of the course; the participant will be able to
Write and understand Java programs.
Installing and using the Java Virtual Machine (JVM) and JDK
Understanding and applying the basic principles of programming logic and Java syntax
To master fundamental software design concepts and object oriented programming (OOP) in Java.
Recognize exceptions and deal with them correctly.
Use the standard Java library and Git version control.
Audience
Participants with no previous experience in this field who want to get an introduction to a specific topic. This course offers a broad basis for further development.
Methods
The course is offered through instructor-led lessons as well as self-study. Participants will receive practical exercises and assignments to practice their skills. The emphasis is on hands-on learning, where participants are actively writing code and solving programming issues.
The full-time, instructor-led course covers 15 teaching days. The self-study process includes a total of 30 days of self-study. The exact schedule may vary depending on the specific course program and participant availability.
Contents
• Introduction to the Java ecosystem
• Go through and list the characteristics of Java
• Differences between compiled and interpreted languages
• The operation and role of the JVM
• Installation and maintenance of the JDK (versions 8, 11, and 17) on one or more operating systems
• Basic use of the programming language via the terminal and a word processor
• IDE software installation and walkthrough
Programming logic
• Explanation of sequential logic flow in an application and the basic operations of variables and
operators
• The roles and uses of input and output in an application
• Reading and drawing charts such as flow charts
• Choose the appropriate control structure (if, while, for, switch, etc.) and implement it correctly in Java
• Deploy and call a method in Java
Java syntax
• Define the appropriate data type in terms of usage, and the differences between a primitive data type and
a reference type
• Declaring and initializing local variables and rules (both hard rules and best)
practice (conventions) of identifiers
• Lifecycle and scope of variables in the context of code block structures
• Understanding and correct application of various unary, binary and ternary operators
• Nested loops and using keywords to manage logic flow
• Reading, understanding, designing and implementing a method and its necessary
components (return type, identifier, parameter list, optional items)
• Scope and method and flow of data during invocation, and the use of overloading
• Working with an enumeration or enumeration of data type
• Using arrays as a data structure, including multi-dimensional arrays
• Documenting the written code based on comments and more comprehensive
Javadoc tool
Software design
Recognize the different stages of the software development process (SDLC) and identify them in the
be able to explain the roles and processes involved
• Analyzing complex IT needs to create an appropriate UML diagram yourself
using GRASP
• Apply robust applications in a three-tier structure and responsibilities per layer
be able to identify and assign
OOP with Java
• Understand and apply the pillars of object oriented programming
• Read and write the structure of a Java class to create instances of it with a view to the
pillars of OOP
• Encapsulation of data into object structures via the various access modifiers
• Expansion and reuse of a class via inheritance and the use of abstract classes
• The use and usefulness of an interface and its implementation
• Understanding and applying polymorphism
• Implement a class in accordance with the UML diagram
• Get to know the pillars of SOLID and how they can be applied
Exceptions
• The role of an exception and causing it to affect an application's logic flow
punctuate
• Treatment of exceptions based on a try-catch structure and the role of the final block
• Design, implementation and use of custom exceptions
The default Java library
• The differences between String and StringBuilder, and the story behind String interning
• Java's Wrapper classes and automatic behavior when transforming data types
• Suggesting a date or time in the different structures, and formatting and
transform it via formatters and parsers
Git
• Introduction to version control system and its role in modern software development
• Installation and maintenance of the latest stable version of Git
• Using git in both a local, offline workflow and remote and in-team on an online, free
hosted platform such as GitLab
Certification
Participation certificate: At the end of the training, participants will receive a certificate that they have completed this course.