Computer Sciences program
CS 101
Entry requirements:
Entering grade 7
List of Topics of CS 101:
- Python editor, running code, working with files.
- Operators: Arithmetic, Comparison, Logical, Membership.
- Basic variable types. Type conversion.
- Python variables, objects, and variable names as references to objects.
- Printing and f-strings. Input() and its applications.
- Error handling.
- Definite and indefinite Iteration.
- Conditional statements: if else, if elif else.
- Lists and list operations.
- Copy and deep copy.
- Iterable objects: tuples, sets, and dictionaries. Iterable objects’ methods.
- Nested data structures.
- User defined functions and different types of arguments.
- Nested functions. Local and global variables.
- Anonymous lambda functions; map() and filter() functions.
- List comprehension.
- Random number generation.
- Object-oriented programming introduction and terminology.
- Polymorphism. Inheritance.
- Working with os module. Creating user modules.
- Opening and reading data from text files. Writing text to files. Appending text to files.
- Working with text.
- Numerical Python (NumPy). Array properties. Indexing values.
- Basic operations with arrays: creation, reshaping, manipulation, stacking, element-wise math.
- matplotlib. Creating a simple bar chart for two data series.
- Using numpy to store, record, and retrieve data.
CS 202
Entry requirements:
Entering grades 7 - 9
List of Topics of CS 202:
- Object oriented programming, advanced concepts and techniques.
- Code and performance optimization.
- Programming basic graphics and user interface.
- Introduction to PyGame.
- Numerical and scientific Python applications (numpy and scipy).
- Visualizations in Python (matplotlib).
- Working with data and basic data analysis (pandas).
- Machine leaning (scikit-learn).
- Introduction to networks and graphs (networkx).
- Introduction to databased management (SQLite)
- Introduction to web development.
- Software development version control, GitHub.
- Optional topics include:
- Python C extensions (cython).
- Multiprocessing.
- GPU accelerated computing.