Competitive Programming Using Java and System Design
Durations -20 days.
Program Structure
Program Structure:
OOPS Concepts using Java
- Arrays and Strings
- OOPS Concepts, Time and Space Complexity and Algorithms
- Algorithm Analysis
- Searching Algorithms
- Sorting Algorithms
Competitive Problem-Solving Using Collection Frameworks
- Stacks, Queue, Priority Queue
- Linked List, Trees, Graphs
- Stream API
Project Work
- E-Commerce, Banking System
- Reservation System
- CRM
System Designing
- SYSTEM DESIGN INTRODUCTION
- Data Models
- Latency of System, API for a System
DevOps
- Java Integration
- POM.xml structure
- Build lifecycle (compile, test, package, install)
- Code Quality and Security Tools
Cloud Computing
AWS/Azure, Hands on IntegrationExperiential Project Based Learning
- Database management systems
- Java OOPS concepts
- Collection Frameworks
- Exception Handling
Program Outcomes
- Preparing the candidates to crack Interviews
- Providing Code Optimization Technique
- Choosing the Best Data Structures to Solve the problems
- Solving the problems with less time and applying the best algorithms
Tools / Platform:
- Eclipse IDE
- MYSQL 8.0 Workbench
- JDK 11
- Cloud Tools
- VS Code
OOPS Concepts using Java
| Chapter 1: Java Fundamentals Data Types, Variables, Type Casting, Input/Output | Chapter 2: Control Flow Conditional Statements, Nested Loops, Patterns | Chapter 3: Arrays and Strings Traversal, Searching, Sorting on Arrays, String vs StringBuilder vs StringBuffer |
| Chapter 4: Classes and Objects Constructors, Methods, Access Modifiers, Static Members | Chapter 5: Inheritance and Polymorphism Method Overloading, Overriding, super Keyword, Dynamic Binding | Chapter 6: Encapsulation and Abstraction Getters/Setters, Abstract Classes, Interfaces, Packages |
| Chapter 7: Exception Handling Try, Catch, Finally, Throw, Throws, Custom Exceptions | Chapter 8: File Handling and Wrapper Classes File Reader, Buffered Reader, Wrapper Classes | Chapter 9: Inner Classes and Static Concepts Nested Classes, Garbage Collection |
| Chapter 10: Mini Project and Interview Preparation Integration of OOP Concepts, Practice Programs |
Time and Space Complexity and Algorithms
Chapter 1: Algorithm Analysis
Time & Space Complexity, Big O Notation, Best/Worst/Average Case
Chapter 2: Searching Algorithms
Linear Binary Search, Interview Problems Search
Chapter 3: Sorting Algorithms
Bubble, Selection, Insertion, Merge, Quick Sort
Competitive Problem-Solving Using Collection Frameworks
Chapter 1: Stack
Implementation using Array and LinkedList, Applications, Expression Evaluation
Chapter 2: Queue
Simple Queue, Circular Queue, PriorityQueue, Deque
Chapter 3: Linked List
Singly, Doubly, Circular Linked List, Operations, Practice Problems
Chapter 4: Trees and Graphs
Binary Tree, BST, Traversals, Graph Representation (DFS/BFS)
Chapter 5: Collections Framework
ArrayList, LinkedList, Stack, Queue, HashMap, HashSet, TreeSet
Chapter 6: Lambda Expressions and Stream API
Functional Interfaces, Map/Filter/Reduce, Collectors
Chapter 7: Mini Project and Interview Preparation
Real-time Problem-Solving using Collections & Streams
Project Work
Chapter 1: Bookmyshow Design & Implement
Chapter 2: E-commerce Websites
(Amazon, Flipkart)
Chapter 3: Banking System
System Designing
SYSTEM DESIGN INTRODUCTION
Chapter 1: How to approach for system design problem
Chapter 2: How to discuss Requirement/Goal of the system
Chapter 3: How to Design an API For a System
Chapter 4: Data model, system components & system interface
Chapter 5: Consistency, Availability, Latency of System
DevOps
Chapter 1: Introduction to DevOps & Java Integration
Chapter 2: Java Build Automation with Maven/Gradle
Chapter 3: Version Control with Git & GitHub
Chapter 4: Continuous Integration using Jenkins
Chapter 5: Code Quality and Security Tools
Chapter 6: Containerization with Docker for Java
Cloud Computing
Chapter 1: Cloud Deployment
(AWS / Azure / GCP)
Chapter 2: Monitoring and Logging
Chapter 3: Hands-on Integration
