Computer Science First Year - Semester 1 Notes
This document contains detailed notes for common Computer Science courses
covered in the first semester of the first year. Use it for reference and study.
Introduction to Programming
- Basics of Programming: Programming languages, compilers, and interpreters.
- Data Types and Variables: Integers, floats, strings, Boolean.
- Control Structures: If-else statements, loops (for, while, do-while).
- Functions: Definition, syntax, and calling functions.
- Simple Input and Output: Using print() in Python or cout in C++.
Computer Hardware
- Introduction to Hardware: Overview of input, output, processing, and storage devices.
- Components of a Computer: CPU, Memory (RAM, ROM), and storage devices.
- Networking Basics: LAN, WAN, Ethernet cables.
- Peripheral Devices: Printers, scanners, external storage.
Discrete Mathematics
- Set Theory: Union, intersection, subsets, and complements.
- Logic and Propositions: Truth tables, logical operators (AND, OR, NOT).
- Functions and Relations: Injective, surjective, bijective functions.
- Algorithms and Complexity: Introduction to Big-O notation.
Introduction to ICT
- History of Computers: Evolution from the first generation to modern systems.
- Computer Networks: Devices like routers and switches.
- Operating Systems: Types (Windows, Linux, macOS).
- Software Applications: Word processors, databases, and spreadsheets.
Communication Skills
- Writing Skills: Academic writing, emails, reports.
- Oral Communication: Presentation techniques.
- Reading Techniques: Skimming and scanning.
- Listening Skills: Active listening in discussions.
Principles of Programming Languages
- Programming Paradigms: Procedural, Object-Oriented, Functional programming.
- Basic Syntax: Code structure in different languages.
- Introduction to Debugging: Using debugging tools.
Introduction to Data Structures
- Types of Data Structures: Arrays, linked lists, stacks, queues.
- Arrays: Declaration, indexing, traversals.
- Linked Lists: Singly and doubly linked lists.
- Algorithms on Data Structures: Searching, sorting.