Although Java is considered a relatively easy to use language, it has many sophisticated mechanisms and delicate points that are in many cases not fully utilized, or even known to developers. A proper use of these mechanisms and "under the hood" structures greatly enhances code optimization and fine tuning.
This ultimate course focuses on these fine points and internal mechanisms and provides "behind the scenes" understanding of core Java libraries and the JVM internals.
Tags: Java
By now Test Driven Development (TDD) is a well known and appreciated practice exercised by many development teams around the globe. Unlike what the name suggests, TDD is not a testing technique but a development technique that results in cleaner high quality code. Implementing effective and useful TDD is a complicated task that requires developers to have both discipline and familiarity with a set of test automation tools.
Tags: Java, Agile_Development, QA
Continuous Integration (CI) is an important part of any Agile methodology because it can help developers discover their bugs sooner. Every project can benefit from Continuous Integration which leads to greater productivity, early bug detection and better teamwork due to immediate discovery of integration bugs.
Tags: Java, Agile_Development
Debugging is one of the most painful and time consuming activities performed by programmers during the development cycle. In spite of the fact that debugging is a fundamental and repetitive activity, it is not trivial and, in many cases, programmers lack the knowledge needed to apply effective and efficient debugging techniques. Acquiring such knowledge and mastering the right tools can significantly increase productivity and greatly reduce the time and effort needed during the debugging process.
Tags: Java
Swing is a very powerful GUI framework. You can practically implement any desired GUI using Swing. Although simple tasks are easy to implement using Swing, it is very hard to implement sophisticated high-performance UI. The Achilles heel of Swing is its complexity. This course will cover the design principles behind Swing and the "under the hood" stuff the will make you "dance" Swing. As a Swing dancer, you will find Swing a very powerful tool.
Tags: Java, GUI
Aspect Oriented Programming (AOP) is a programming approach that provides the ability to achieve modularization for crosscutting concerns, i.e., logic that applies to many parts of the application, in a single place and to have that logic applied across the application automatically.
AspectJ is the most popular AOP language/platform for Java and provides a powerful compile-time and load-time solution for building AOP-based logic and adding it to an application.
Tags: Java, Frameworks, AOP
Maven is a project management tool. Maven manages the build process, SCM, testing, reporting, distribution and documentation of your projects.
Maven brings best practices and design patterns into your project management eco-system.
Tags: Frameworks, QA, Project_Management
Design patterns are a must for every developer. Design patterns help the developers write extensible and maintainable code.
Design patterns also provide the developers with common vocabulary for design and allow easy classification of conceptual problems.
The course will focus on the well known GoF patterns and their appliance in the Java language.
Tags: Java, Object Oriented, Design
Java is one of the most popular programming languages.
It is an Object Oriented, portable, fast and rich language. Java provides many services out of the box (e.g. memory management, security) which help developers be more productive.
The course is intended for anyone who wants to enter the ‘Java World’.
The course includes many examples and hands-on exercises through which the material is demonstrated and practiced.
The course is based on Java 6.
Tags: Java, Object Oriented