Get Started. It's Free
or sign up with your email address
Software Development by Mind Map: Software Development

1. Java

1.1. Language

1.1.1. Version <= 7

1.1.1.1. Fundamentals

1.1.1.1.1. Language Fundamentals

1.1.1.2. Classes and Objects

1.1.1.3. Inheritance

1.1.1.4. Interfaces

1.1.1.5. Inner Classes

1.1.1.6. Generics

1.1.1.7. Exception Handling

1.1.1.8. Threads

1.1.2. Version = 8

1.1.2.1. Lambda Expressions

1.1.2.2. Method References

1.1.2.3. Functional Interfaces

1.1.2.4. Interface Changes

1.1.2.5. Streams and Stream Filter

1.1.2.6. forEach

1.1.2.7. Optional Class

1.1.2.8. Parrallel Sort

1.1.3. Version = 9

1.1.3.1. Java Module System

1.2. Platform

1.2.1. Standard (SE)

1.2.1.1. Standard Libraries / Core Package

1.2.1.1.1. Collections (JCF) - java.util

1.2.1.1.2. Multithreading

1.2.1.1.3. IO and File Operations - java.io

1.2.1.1.4. Math - java.math

1.2.1.1.5. Networking - java.net

1.2.1.1.6. Non-blocking IO - java.nio

1.2.1.1.7. Security - java.security

1.2.1.1.8. Database (SQL) - java.sql

1.2.1.1.9. GUI - java.awt

1.2.1.1.10. Text,Dates,Numbers - java.text

1.2.1.1.11. Remote Method Invocation - java.rmi

1.2.1.2. Extension Packages

1.2.2. Enterprise (JEE)

1.2.2.1. Platform Basics

1.2.2.1.1. Resource Creation

1.2.2.1.2. Injection

1.2.2.1.3. Packaging

1.2.2.2. Web Tier

1.2.2.2.1. Java Server Faces

1.2.2.2.2. Facelets

1.2.2.2.3. Expression Language

1.2.2.2.4. Servlet

1.2.2.2.5. API for Web Socket

1.2.2.2.6. JSON Processing

1.2.2.3. Bean Validation

1.2.2.3.1. Introduction

1.2.2.3.2. Advanced

1.2.2.4. Contexts and Dependency Injection

1.2.2.5. Web Services

1.2.2.5.1. Introduction

1.2.2.5.2. JAX-RS

1.2.2.5.3. JAX-WS

1.2.2.5.4. Alternative to JEE WS

1.2.2.6. Enterprise Beans (EJB)

1.2.2.7. Persistence

1.2.2.7.1. Java Persistence API (JPA)

1.2.2.7.2. JPQL

1.2.2.7.3. 3rd Party Alternates

1.2.2.8. Messaging

1.2.2.8.1. Java Messaging Service (JMS)

1.2.2.9. Security

1.2.2.10. Supporting Technologies

1.2.2.10.1. Transactions

1.2.2.10.2. Batch Processing

1.2.2.10.3. Resource Adapters

1.2.2.10.4. Concurrency Utilities

1.2.2.11. Alternatives to JEE

1.2.2.11.1. TomEE (Open Source)

1.2.3. Development Fundamentals

1.2.3.1. Project Structure

1.2.3.2. Deploying,Packaging

1.2.3.2.1. JAR

1.2.3.3. ClassPath Setup

1.2.3.4. Class Loading

1.2.4. JVM

1.2.4.1. Execution

1.2.4.2. Architecture

1.2.4.2.1. Bytecode - Instruction set

1.3. Development

1.3.1. Tools

1.3.1.1. JDK

1.3.1.2. Maven

1.3.1.3. Gradle

1.3.1.4. Ant

1.3.2. Frameworks and Libraries

1.3.2.1. Developing

1.3.2.1.1. Spring

1.3.2.2. ORM

1.3.2.2.1. Hibernate

1.3.2.3. Templating

1.3.2.3.1. Apache Velocity

1.3.3. Packaging

1.3.4. IDE

1.3.4.1. Eclipse

1.3.4.2. Netbeans

1.3.5. Domain

1.3.5.1. Desktop

1.3.5.2. Server Side

1.3.5.2.1. Web Services

1.3.5.2.2. Server

1.3.5.3. Client Side - Web

1.3.5.3.1. Languages Used

1.3.5.4. Database Programming

1.3.6. Testing

1.3.6.1. Unit Testing

1.3.6.1.1. JUnit

1.3.6.2. Performance Testing

1.4. Design

1.4.1. OOAD

1.4.2. Design Patterns

1.5. Paradigm

1.5.1. Object Oriented

1.5.1.1. OOP Concepts in Java

1.5.2. Aspect Oriented

1.5.3. Function Oriented

2. .