Computer Sience MOC
Map of Contents: Computer Science
The primary purpose of this note is to organise and categorise my knowledge into sections, assigning specific topics to each section, so that I am able to easily identify and share information as needed.
For this Map of content I've taken the CS2023 curriculum and split it into practical and theoretical, as one of my main issues with the escolar system is that you follow a path without really knowing when you'll be able to apply it and if you really like it.
If you're looking to get things moving ASP. You should have a look at DIY in Tech
Introduction
• Overview of computer science as a field of study
• Historical developments and evolution of computing
Theoretical
These are the foundation an will greatly help you to move with ease between projects and have a general understanding of how the modern computation really works. Think of this section of the why.
Algorithms and Data Structures
• Analysis and design of algorithms
• Sorting and searching algorithms
• Fundamental data structures (e.g., arrays, linked lists, trees, graphs)
Software Engineering
while programming is the skill that governs our ability to write a program, software engineering is distinct in two dimensions: time and people.
- Testing
- Communication
- Teamwork
- Design
- Mantenance
- Tools
Computer Architecture and Organisation
• Basic components of a computer system
• CPU architecture and instruction set
• Memory hierarchy and storage technologies
Mathematical and Statistical Foundations
Networking and Communication
• Networking fundamentals and protocols
• Network architectures (e.g., client-server, peer-to-peer)
• Internet and network security
Operating Systems
• Fundamentals of operating systems
• Process management and scheduling
• Memory management and file systems
Computer Graphics and Visualisation
• Principles of computer graphics
• 2D and 3D rendering techniques
• Visualisation methods and tools
Security
Ethical and Social Implications of Computing
• Ethical considerations in computer science
• Privacy, security, and cyberethics
• Social impact of technology
2. Impact of Technology on society and daily life
Practical
This section is where you can have an overview of the actual technologies and abstractions that as developers use on our daily basis, most likely you'll have a bird's eye around everything and then choose a specialisation. Think of this as the How we create things.
Databases
• Introduction to databases and data models
• Relational database management systems (RDBMS)
• Query languages (e.g., SQL) and database design
Foundations of Programming Fundamentals
• Introduction to programming languages and paradigms
• Variables, data types, operators, and control structures
• Functions, recursion, and modular programming
Artificial Intelligence
• Introduction to artificial intelligence (AI) and machine learning
• Problem-solving techniques and search algorithms
• Neural networks and deep learning
5. Artificial Intelligence MOC and Machine Learning
6. Natural Language Processing and Computer Vision
7. Deep Learning
Specialised Platform Development
- Web development MOC
- Android Development MOC
- iOS MOC
- Multiplatform Development
- Internet of Things MOC
- Robotics