Java
Introduction
- Why is Java widely used for enterprise solutions?
- What is WORA (Write Once, Run Anywhere)?
- How does Java achieve platform independence?
- Weaknesses of Java
- Java Coding Conventions
Core Concepts
- What are JDK, JRE and JVM?
- Bytecode and its significance
- How is Java code compiled and interpreted?
- JIT
- Garbage Collector
OOP Principles
- Inheritance
- Encapsulation
- Polymorphism
- Abstraction
- What is the Diamond Problem?
- Interfaces vs Abstract Classes
Data Types
- Primitive vs Non-Primitive
- Immutable vs Mutable
- Wrapper Classes
- Access Modifiers
- Static vs. Non-Static members
- Enums
- Generics and Wildcards
Exception Handling
- Why an Exception might Occur?
- Difference between Error and Exception
- Checked Exception vs. Unchecked Exception
- Exception Hierarchy
- How to create custom exceptions
Collections Framework:
- HashMap
- HashSet
- TreeMap
- TreeSet
Threading and Concurrency
- Multithreading
- Thread Lifecycle
- Deadlocks
- Thread safety
- Synchronized & Thread Join
- Callable Interface
- Concurrency vs. Parallelism
Others
- Annotations
- Comparator
- String Pooling
- Stream API
- Lambda Expressions
- Aspect Oriented Programming
Data Structures
- Binary Search Tree (BST)
- Balanced BSTs
- Red-Black Tree
- AVL Tree
- B-Tree and B+Tree
- Hash Table
Spring Boot
Prerequisites
- Maven / Gradle
- Understanding REST APIs: Basics of HTTP, JSON, and REST principles.
Introduction
- What is Spring Framework vs. Spring Boot?
- Setting up a Spring Boot Project using Spring Initializr
Basics
- Project Structure in Spring Boot
- How application.properties works
- What @SpringBootApplication Annotation do?
- Application Context
Dependency Injection
- Overview of IoC
- How to Inject Dependency?
- @Autowired
- Constructor Injection
- Setter Injection
- Bean Scopes and Lifecycles
- Circular Dependency
Spring Data JPA
- How database connection works?
- How JPA works?
- Lazy loading vs. Edger Loading
To be continue....
Database
- ACID Properties
- Normalization
- SQL Query (Join, Where, Group By)
- Database Indexing
- RDBMS vs NoSQL
Clean Code
- SOLID Principles
Design Patterns
- Singleton
- Prototype
- Observer
- Strategy
- Factory
- Builder
Networking
- OSI Model
- TCP/IP
- TCP vs UDP
- Domain
- HTTP vs HTTPS
- SSL
- DNS
- What happens when you enter a URL in Browser?
Tools and Resources
- IntelliJ IDEA Premium: Available via GitHub Student Package.
- Recommended YouTube Channels:
