- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
De cursus Java Programmeren is bestemd voor developers die in Java willen leren programmeren of personen die Java code willen begrijpen.
Elementaire kennis van en ervaring met programmeren is wenselijk om aan deze cursus te kunnen deelnemen. De principes van Object Oriented Programming met Java worden toegelicht. Voorafgaande kennis hiervan is niet nodig maar bevorderlijk voor de begripsvorming.
De theorie wordt behandeld aan de hand van presentaties en wordt afgewisseld met oefeningen. Demos zorgen voor een verduidelijking van de theorie. Er wordt gewerkt met Java 8. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Java Programmeren.
De cursus Java Programmeren behandelt de fundamentals van het programmeren in Java op basis van versie 8 van het Java platform. Naast de fundamentals van Java komen in de cursus ook de vernieuwingen in Java 8 zoals lambda's, optionals en de stream API aan de orde. Door middel van op elkaar volgende oefeningen in een case study, leren de deelnemers om te programmeren met de variabelen, data types, operatoren en control flow constructies van de Java taal.
In de cursus wordt vervolgens ingegaan op object georiënteerde begrippen als class, object, encapsulation, inheritance en polymorphisme. Aandacht wordt besteed aan fouten en exception handling en er wordt besproken hoe Java software wordt opgedeeld in packages. Ook de splitsing van een programma in verschillende subtaken door middel van threads en de synchronisatie van deze threads is onderwerp van de cursus.
Eveneens zijn geparametriseerde types, generics, en het gebruik daarvan in het Collection Framework onderdeel van het cursusprogramma. Optionele modules, indien de tijd het toelaat, zijn de toegang tot databases met JDBC en Java Beans.
Deze cursus is een goede voorbereiding op het Java 8 OCA, Oracle Certified Associate, examen. In combinatie met de cursus Advanced Java Programming bereidt deze cursus ook voor op het Java 8 OCP, Oracle Certified Professional, examen.
Module 1 : Basic Concepts |
Module 2 : Language Syntax |
Module 3 : Classes and Objects |
History of Java Java Overview Language Editions Java Platform Java Community Process Libraries Java Language Security Application Types Compiling Programs Running Programs Compiler and Interpreter Application Structure Garbage Collection |
Java Comments Types of Variables Primitive Data Types Block Statements Operator Precedence if else Statements switch Statement for and while Loop do while Loop break and continue Arrays Enhanced for Loop Strings Formatted Output |
Class Definition Encapsulation Access Modifiers Creating Objects and Constructors Fields and Methods Using Objects static Modifier this Keyword Parameter Passing Method Overloading Variable Arguments Object References final Modifier Object Destruction |
Module 4 : Inheritance |
Module 5 : Exception Handling |
Module 6 : Packages |
Single Inheritance extends Keyword Overriding Methods Hiding Attributes Calling Base Constructors Polymorphism Abstract Classes Interfaces Implementing Interfaces Default Methods Type Casting Implicit and Explicit Casting Cloning Objects |
Error and Exceptions in Java Checked and Unchecked Exception Hierarchy Multiple Catch Clauses finally Clause try with Resources Exception Information Common Exceptions Throwing and Rethrowing User Defined Exceptions Chained Exceptions Stack Traces Assertions |
Inside Packages Standard Java Packages java.lang Package Packages and Directories Importing Classes Wildcard Import * Full Class Names Using Packages CLASSPATH import static Packages and Visibility Packaging in JAR Runnable JARS |
Module 7 : Threads |
Module 8 : Synchronization |
Module 9 : Special Classes |
Thread Characteristics Benefits and Drawbacks Java Thread Model Thread Class Runnable interface Extending Thread Implementing Runnable Daemon Threads Thread Life Cycle States Sleeping and Yielding Control Using join and interrupt Thread Priorities |
Concurrent Method Activation Synchronization Mechanisms synchronized Modifier Blocking on a Monitor Mutual Exclusion in Java synchronized Block Locking and Statics Deadlock Interthread Communication Condition Synchronization Using wait and notify while Loop and notifyall |
Inner Classes Types of Inner Classes Anonymous Inner Classes Static Inner Classes Lambdas Functional Interfaces Enumerations Enum Types Declaring Enums Enums as Constant Objects Enums are Classes Enum Methods and Fields |
Module 10 : Utility Classes |
Module 11 : Collection Framework |
Module 12 : Generics |
Object Class Wrapper Classes Autoboxing and Unboxing Overriding equals Math Class Date and LocalDate Regular Expressions Scanner Class System Class Locale Class Localizing Dates and Numbers Localizing Currencies |
Framework Branches Implementation Classes Collection and Map Interface Iterator Interface List Interface ArrayList and LinkedList Class Set and SortedSet Comparable Interface Comparator Interface Collections and Streams map, filter and foreach Method collect Method |
Generics Explained Need and Benefits of Generics Generics in Collections Generic Characteristics Type Erasure Bounded Type Parameter Generics and Subtyping Inheritance Relationships Wildcards Bounded Wildcards Raw Types Generic Methods |
Module 13 : Stream I/O |
Optional Module : JDBC |
Optional Module : Java Beans |
I/O Basics and Classes Byte and Character Streams Standard I/O Streams Stream Types Data Sink Streams Processing Streams Buffered Streams Data Conversion Streams Serialization Serializable Classes Object Streams |
JDBC Overall Architecture JDBC Drivers JDBC URL's Class forName Making Connections Executing a Statement Retrieving Results Transactions Prepared Statements Object Relational Gap Object Relational Mapping |
Software Components Java Beans Properties Getters and Setters Beans Terminology Bean Component Model Bean Event Pattern Event Firing Event Class Event Listener Interface Dispatching Events |
Al onze cursussen zijn klassikale cursussen waarbij de cursisten aan de hand van een ervaren trainer met diepgaande materie kennis door de stof worden geleid. Theorie wordt steeds afgewisseld met oefeningen.
We doen ook maatwerk en passen dan de cursusinhoud aan op uw wensen. Op verzoek gaan we ook in op uw praktijkcases.
De cursustijden zijn in pricipe van 9.30 tot 16.30. Maar we zijn hierin flexibel. Soms moeten mensen namelijk kinderen naar de opvang brengen of halen en komen andere tijden hun beter uit. In goed overleg kunnen we dan andere cursustijden afspreken.
Wij zorgen voor de computers waarop de cursus gehouden kan worden. Op deze computer is de voor de cursus benodigde software al geinstalleerd. U hoeft geen laptop mee te nemen om aan de cursus te kunnen deelnemen. Als u liever op uw eigen laptop werkt kunt u hem desgewenst meenemen. De benodigde software wordt dan aan het begin van de cursus geinstalleerd.
Onze cursussen worden over het algemeen gegeven met Open Source software zoals Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda en Netbeans. Het digitale cursusmateriaal krijgt u na de cursus mee naar huis.
De cursus is inclusief lunch die we in een restaurantje op loopafstand van het cursuslokaal gebruiken.
De cursussen worden op diverse plaatsen in het land gepland. Een cursus gaat op een locatie door als er zich minimaal 3 mensen voor die locatie inschrijven. Als er inschrijvingen voor verschillende locaties zijn gaat de cursus door op onze hoofdlocatie is Houten net onder Utrecht. Een cursus op onze hoofdlocatie gaat ook door bij 2 inschrijvingen en regelmatig ook bij 1 inschrijving. Overigens doen we ook cursussen op de locatie van de klant als men daar prijs op stelt.
De intellectuele eigendomsrechten van de gepubliceerde cursus inhoud, ook wel aangeduid als infosheet, behoren toe aan SpiralTrain. Het is niet toegestaan de cursusinformatie, de infosheet, te publiceren in schiftelijke dan wel digitale vorm zonder de uitdrukkelijke toestemming van SpiralTrain. Onder de cursus inhoud dient te worden verstaan de beschrijving van de cursus inhoud in zinnen alsmede de indeling van de cursus in modules en onderwerpen in de modules.