This course covers all the basic knowledge needed for programming in python. The course is designed based on the assumption that students want to work in the software industry, but it's also useful for academic purposes.
All available resources for this course will be added to the following table.
|0||October 14, 2021 (Introduction)||Course Introduction, How to Become a Programmer, Judge Systems, Typing with 10 Fingers||-||1||-|
|1||October 15, 2021 (Basic Concepts and Data Types)||What is Python, High Level and Low Level Programming Languages, Compilers and Interpreters, Python 2.x vs Python 3.x, Why Python, Python Shell, Python Philosophy, Python Enhancement Proposals (PEPs), PyCharm Integrated Development Environment, Python Installation and Setup, Computer Keyboard Keys Explanations, Mono-space Fonts, Python Basic Syntax, Code Comments, Variables, Static Typing and Dynamic Typing, ||py_basics_v3.html||-||-|
|2||October 22, 2021 (Control Structures and More Data Types)||ًRunning Python Files with Command Line and Pycharm, Strings with Triple-quotes or Single Quotes or Double Quotes, Special Characters in Strings and Escaping Characters, Raw Strings, String Formatting, ||py_dtypes_v2.html||1, 2, 3||1, 2, 3|
|3||October 29, 2021 (Functions and Code Internal Quality)||Problem Solving, Quick Review on ||-||1, 2, 3, 4, 5, 6||1, 2-1, 2-2, 3, 4-1, 4-2, 5, 6-1, 6-2|
|4||November 5, 2021 (Big-Oh Analysis and Debugging)||Problem Solving, Big-Oh Analysis, Stacks and Queues, Indexed Lists and Linked Lists, Debugging In PyCharm, Profiling in PyCharm, PyCharm Keyboard Shortcuts, Lambda Functions, Recursive Functions, ||-||1, 2, 3, 4||1-1, 1-2, 2, 3, 4|
|5||November 12, 2021 (Modules, Packages, Virtual Environments)||Problem Solving, Modules Concepts, The ||py_modules.html py_libs.html||1, 2, 3||1, 2-1, 2-2, 3|
|6||November 19, 2021 (Object-Oriented)||Problem Solving, Object-Oriented Concepts, Defining Classes and Creating Objects in Python, Instance Variables and Class Variables, Instance Objects, Method Objects, Self Input, Constructor, ''__dict__'' Variable, Class Method and Static Method, Inheritance, ''super()'' Function, ''help()'' Function, Base objects, Multiple Inheritance, ||py_oop.html||-||-|
|7||November 26, 2021 (Exceptions Handling and Regular Expressions)||Problem Solving, Errors in Python, Handling Exceptions, Raising Exceptions, User-defined Exceptions, Defining Clean-up Actions, Predefined Clean-up Actions, Iterators and Iterables, ||py_errors.html, py_regex.html||1, 2, 3||1, 2|
|8||December 3, 2021 (Software Engineering and Version Control)||Some Basic Terms in Software Engineering, Cohesion and Coupling Levels, What is Version Control, Centralized & Distributed Version Control Systems, Most Preferred Version Control Systems, Online VCS Hostings, What is Git, States (Modified, Staged, Committed), Addition & Deletion in Git, Basic Git Commands, Git History Graph, The Anatomy of a GIT Commit, Merge Methods (Fast-forward, Recursive), Automatic Merging, Resolving a Merge Conflict Using the Command Line, Merging & Resolving Conflicts in IDE, Working with Remotes, SSH and HTTPS Protocols for Clone URLs||coh_coup.html||-||-|