Software Engineering
Introduction to Software Engineering54Software Design53Software Implementation52Software Maintenance and Evolution53Software Quality Concepts50Software Testing Techniques53Software Quality Management54Software Project Planning59Software Project Execution and Control50Software Project Management Tools and Techniques56Software Architecture52Software Security59Software Engineering Research52
Algorithms and Data Structures
Definition and Overview of Algorithms53Data Structures: Basic Concepts53Algorithm Analysis Techniques56Sorting Algorithms: Bubble Sort, Insertion Sort, Selection Sort54Searching Algorithms: Linear Search, Binary Search58Advanced Sorting and Searching Algorithms51Trees: Binary Trees, Binary Search Trees54Hash Tables53Graphs: Representation and Traversal55Greedy Algorithms57Dynamic Programming52Divide-and-Conquer Algorithms59Heaps and Priority Queues50Suffix Trees and Tries49Computational Geometry Algorithms59
Object-Oriented Programming
What is Object-Oriented Programming?54Classes and Objects53Inheritance56Polymorphism58Interfaces and Abstract Classes55Design Patterns50Exception Handling52Generics54Concurrency51Object-Oriented Design Principles54Java Syntax and Data Types54Java Classes and Objects55Java Inheritance and Polymorphism56Java Interfaces and Abstract Classes53Java Collections Framework56OOP Project 1: Simple Calculator50OOP Project 2: Library Management System57OOP Project 3: E-commerce Website57OOP Project 4: Game Development56OOP Project 5: Data Analysis Application54
Operating Systems
Definition and Overview of Operating Systems50Types of Operating Systems52Operating System Structures52Process Concepts and Scheduling51Inter-Process Communication57Deadlocks and Resource Management55Memory Allocation and Paging55Virtual Memory50Cache Management50File System Concepts and Organization53File Access Methods50File System Implementation56Device Management and Device Drivers55Interrupt Handling57I O Scheduling55Security Threats and Vulnerabilities57Access Control and Authentication58System Auditing and Intrusion Detection53Concepts and Architectures of Distributed Systems54Inter-Process Communication in Distributed Systems57Fault Tolerance and Recovery in Distributed Systems56Characteristics and Scheduling of Real-Time Systems58Real-Time Operating System Design52Applications of Real-Time Operating Systems55
Artificial Intelligence
Definition and History of AI50Types of AI53Applications of AI42Supervised Learning49Unsupervised Learning58Reinforcement Learning55Text Representation and Preprocessing53Machine Translation56Natural Language Understanding57Image Processing and Analysis54Object Detection and Recognition50Image Generation and Manipulation52Robot Kinematics and Dynamics54Robot Perception and Control52Robot Learning and Autonomy50
Computer Networks
Definition and Overview of Computer Networks56Network Applications58Network Hardware52Data Link Layer Concepts56Ethernet57Wireless LANs52Network Layer Concepts53Routing Protocols54Network Address Translation (NAT)55Transport Layer Concepts54TCP52UDP51Application Layer Concepts57Web Technologies54Network Security52
Web Development
Overview of Web Development56Web Standards and Best Practices58Web Development Tools and Technologies54HTML Structure and Semantics55CSS Syntax and Selectors55CSS Layout and Positioning51JavaScript Fundamentals53JavaScript Functions and Objects58JavaScript Event Handling51HTTP and Web Servers53PHP51Node.js55Web Development Project Planning54Web Development Project Implementation54Web Development Project Evaluation54
Linear Algebra
Definition of a Vector Space32Subspaces55Linear Independence and Dependence57Definition and Properties of Linear Transformations50Invertible Linear Transformations47Applications of Linear Transformations54Definition and Properties of Inner Product Spaces58Gram-Schmidt Orthogonalization56Applications of Inner Product Spaces59