An accessible yet serious guide to Java programming for everyone
About This Video
A Java course for everyone - accessible yet serious, to take you from absolute beginner to an early intermediate level. What's Covered :
Programming Basics: What programming is, and a carefully thought-through tour of the basics of any programming. Installing and setting up an IDE and writing your first program. The Object-Oriented Paradigm: Classes, Objects, Interfaces, Inheritance; how an OO mindset differs from a functional or imperative programming mindset; the mechanics of OO - access modifiers, dynamic dispatch, abstract base classes v interfaces. The underlying principles of OO: encapsulation, abstraction, polymorphism. Threading and Concurrency: A deep and thorough study of both old and new ways of doing threading in Java: Runnables, Callables, Threads, processes, Futures, Executors. Reflection, Annotations: The how, what and why - also the good and bad. Lambda Functions: Functional constructs that have made the crossover into the mainstream of Java - lambda functions, aggregate operators. Modern Java constructs: Interface default methods; properties and bindings too. Also detailed coverage of Futures and Callables, as well as of Lambda functions, aggregation operators. JavaFX as contrasted with Swing. Packages and Jars: The plumbing is important to understand too. Language Features: Serialisation; why the Cloneable interface sucks; exception handling; the immutability of Strings; the Object base class; primitive and object reference types; pass-by-value and pass-by-object-reference. Design: The MVC Paradigm, Observer and Command Design Patterns. Swing: Framework basics; JFrames, JPanels and JComponents; Menus and menu handling; Trees and their nuances; File choosers, buttons, browser controls. A very brief introduction to JavaFX.