Skip to content

Mur3ph/jvm-engineering-planner

Repository files navigation

Java Resources & Certificate

Keeping up-to-date

Each Java/Java EE version has new features. You should have a book that at least covers "Java 5" (JRE 1.5). Then you can learn the new features of Java 6, 7, 8, and so on. You don't need to learn lambdas right form the beginning, so this should work just fine. Books released before September 2004 are probably too old to learn modern Java. They do not cover enums, varargs, generics, and annotations.

This is different for other technologies. It doesn't make much sense to learn HTML4 and CSS2 now. With MDN, Jenkov, vogella and w3schools you can just learn HTML5 and CSS3. Instead of learning JavaScript you can learn TypeScript, which is already where ECMASCript 6 is heading, with class based OOP, arrow functions, constants, and block scoped variables.

Java resources

  1. Google News on Java
  2. Java Code Geeks
  3. Java on Oracle Technology Network(OTN)
  4. Java Magazine (New release every 2 months)
  5. Java World
  6. The Java™ Tutorials
  7. JVM and Java Language Specification, Oracle
  8. Java Group FAQ
  9. Java EE
  10. Code for OpenJDK
  11. Code for OpenJDK: FileInputStream()
  12. GNU Classpath
  13. Scanner
  14. Object Ordering
  15. History of Java
  16. Fundamentals of Java

Java 7

  1. Java 7
  2. Java 7: API
  3. The Java® Virtual Machine Specification
  4. Enhancements up to Java 7

Java 8

  1. Java 8 Documents

Java 9

  1. Java 9 Documents

Java 10

  1. Java 10 Documents
  2. Inference Cheat Sheet

Data Structures

  1. List of Data Structures
  2. Java Collections Framework
  3. Java Collections Images
  4. Collection Interface
  5. Set Interface
  6. List Interface
  7. Map Interface
  8. Queue Interface
  9. Deque Interface
  10. SortedSet Interface
  11. SortedMap Interface

Algorithms

  1. Java Algorithm Tasks/Tests
  2. List of Software Engineering Algorithms
  3. 7 algorithms and data structures every programmer should know about

Data Formats

  1. JSON
  2. XML
  3. SQL
  4. NoSQL

Design Patterns

  1. Strategy Pattern(Dependency Injection)
  2. Observer Pattern(Event Listener)
  3. Builder Pattern( While Writing Unit Tests )
  4. Factory Pattern(Web framewroks)
  5. Facade(REST)
  6. Singleton
  7. The Big Ball of Mud :)
  8. Flyweight

Monitoring and Performance tools

  1. JConsole (Packaged with JDK)
  2. Apache JMeter
  3. Java Performance Optimization
  4. Java Mission Control (JMC)
  5. VisualVM

Integration

  1. Apache Ant
  2. Apache Maven
  3. Gradle
  4. Jenkins (Continues Integration & Continues Delivery)
  5. Jar-to-Exe
  6. Deployment

Servers

  1. Apache Tomcat
  2. Wildfly
  3. NGINX
  4. Windows IIS
  5. Linux
  6. UNIX

Object Relational Mapping tools (ORM)

  1. Hibernate
  2. JOOQ
  3. JPA
  4. JDBC
  5. SimpleORM
  6. Eclipse Link
  7. Java Group database soucrces

Frameworks (A framework is simply a set of libraries that are used to develop code on a particular platform or on multiple platforms)

  1. Spring (Boot, MVC, Security, Data etc.)
  2. Android
  3. Netty (Non-blocking I/O (NIO) client-server framework)
  4. Neuroph (Java Neural Network framework)
  5. Play
  6. Vaadin
  7. AngularJS
  8. ReactJS
  9. JQuery
  10. MOA: Machine learning Java Framework

Spring

  1. Spring Framework

Android

  1. Android Developers
  2. Platform Architecture

AngularJS

  1. Angular
  2. AngularJS
  3. Angular: Conceptual Overview

Stacks (A stack is a set of technologies, usually including a framework, that are commonly used together to create a full application)

  1. MEAN (MongoDB, Express.js, AngularJS, and Node.js)

Frontend UI

  1. JavaFX
  2. Getting started with JavaFX
  3. JSF
  4. ThymeLeaf
  5. HTML
  6. CSS
  7. JavaScript
  8. Bootstrap
  9. D3.JS

Java Code Challenges

  1. Java Challengers #1: Method overloading in the JVM

Java tutorials and courses

  1. Mkyong
  2. Java 8 Lambda Expressions
  3. Java Enums
  4. Top 10 Java 9 Tutorials and Courses
  5. Introduction to Java (MIT)

Coding Projects & Ideas

  1. Coding Dojo

Java websites

  1. Java World
  2. Java Code Geeks
  3. InfoQ | Java
  4. Javalobby
  5. The Server Side
  6. Jaxenter | Java
  7. The Spring Blog
  8. DeveloperWorks: Java technology
  9. Voxxed

Java developers

  1. Eugen Paraschiv
  2. Nicolas Frankel
  3. Javin Paul
  4. Thorben Janssen
  5. Adam Bien
  6. Arun Gupta
  7. Mark Reinhold

Interesting Articles

  1. The Technical Skills You Need to Have as a Software Developer
  2. 7 Things to Know Getting Started With Spring Boot
  3. Spring Boot as a Windows Service in 5 Minutes
  4. Build a Basic CRUD App With Angular 5.0 and Spring Boot 2.0
  5. The Top Software Testing Tools: The Ultimate List of Lists
  6. How Java 10 will CHANGE the Way You Code
  7. Which programming language is most useful for finding a job?
  8. How to Get an Interview at (Almost) Any Company
  9. Which programming language is most useful for finding a job?
  10. How to Get an Interview at (Almost) Any Company
  11. JVM Architecture 101: Get to Know Your Virtual Machine
  12. The Difference Between Containers and Virtual Machines
  13. What is the JVM? Introducing the Java virtual machine
  14. Automated Testing Java Applications
  15. Java Collections in Java 9-10
  16. 5 Things Every Java Programmer Should Learn

Books

  1. Effective Java 2nd & 3rd Edition, Joshua Bloch
  2. Clean Code, by Robert Cecil Martin
  3. Clean Architecture, by Robert Cecil Martin
  4. Refactoring - Improving the Design of Existing Code by Martin Fowler
  5. Compilers: Principles, Techniques, and Tools ("Dragon Book"), Alfred Aho et al
  6. The Java Programming Language, Gosling, Arnold, Holmes
  7. Apress Spring Persistence with Hibernate, Manning
  8. Security Engineering, Ross Anderson
  9. Database Systems
  10. Growing Object-Oriented Software, Guided by Tests (Beck Signature)
  11. Code Complete by Steve McConnell
  12. The Software Craftsman: Professionalism, Pragmatism, Pride by Sandro Mancuso
  13. The Clean Coder by Uncle Bob Martin
  14. Working Effectively with Legacy Code by Michael Feathers
  15. The Complete Software Developer's Career Guide by John Sonmez
  16. CODE: The Hidden Language of Computer Hardware and Software

Video

  1. Derek Banas: Playlists
  2. Derek Banas: Java Video Tutorial
  3. Derek Banas: Design Patterns
  4. Derek Banas: UML
  5. Derek Banas: Code Refactoring
  6. Derek Banas: OO Design
  7. Derek Banas: How to Make Video Games
  8. 12 Java YouTube Channels You Should Follow In 2018
  9. Spring Boot/Security Database Authentication

Certification Books:

  1. A Programmer's Guide To Java Certification, Mughal/Rasmussen
  2. SCJP Sun Certified Programmer for Java 5 Study Guide, Sierra
  3. SCJD Exam with J2SE ,--Andrew Monkhouse, Terry Camerlengo
  4. SCJP Sun Certified Programmer for Java 6 - Sierra & Bates
  5. OCA/OCP Java SE 7 Programmer - Sierra & Bates
  6. Oracle Certification Program

Releases

No releases published

Packages

No packages published

Languages