Skip to content

Sofia-Saraiva/Semester3-CESAR-School

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎯 Semester 3 - CESAR School

Status

Repository Size Language Count Commit Activity License

🖥️ Software Infrastructure

⏰ General Objective

The general objective of this module is to present the concepts, abstractions, fundamentals, mechanisms, and implementations of modern Operating Systems. We will analyze the main components and explore some advanced topics.

🫵 Specific Objectives

  1. Understand the operation and algorithms of an operating system.
  2. Apply concepts present in operating systems in software development, such as deadlock, synchronization, and parallelization.
  3. Implementation in the Pint-OS operating system.

📜 Topics Covered

1. Processes
2. Threads
3. Concurrency
4. CPU scheduling
5. Synchronization
6. Memory management
7. File systems
8. Storage structure
9. Input/output

🗂️ Object-Oriented Programming

👀 Overview

In this module, we dive into Object-Oriented Programming (OOP) concepts and their practical applications.

📂 Topics Covered

1. Introduction to Object-Oriented Programming
2. Abstraction: classes, objects, methods, and attributes
3. Inheritance
4. Encapsulation: packages and access modifiers
5. Polymorphism: principle of substitution, overloading, overriding, abstract classes, interfaces
6. Overview of UML (Unified Modeling Language) and major object-oriented design patterns
7. Graphical toolkits
8. Overview of test-driven development
9. Exceptions and Object-Oriented Programming
10. Parameterized types and Object-Oriented Programming

📚 Algorithms and Data Structures

🤓 Overview

This module focuses on fundamental algorithms and data structures that are essential for software development.

♟️ Topics Covered

1. Basic data types
2. Composite structures (homogeneous and heterogeneous)
3. Linear structures (Lists, Stacks, Queues)
4. Recursive algorithms
5. Comparison between recursive and iterative algorithms
6. Trees and their generalizations: binary trees, search trees
7. Search algorithms: sequential, binary, and hashing (Hash)
8. Data classification
9. Methods of sorting data in primary and secondary memory

Feel free to explore each section for in-depth information about the topics covered in my Semester 3 at CESAR School!