|
Week |
Subject |
Related Preparation |
1) |
Orientation
-Course Schedule
-Expectations
|
|
2) |
Introduction to Python
- What is Python
- Brief history and versions
- Documentation
- Setting up the environment
|
-Set up your environment |
3) |
Getting Familiar with Python
- Data types
- Conditionals |
|
4) |
Getting Familiar with Python
- Loops
- Functions |
|
5) |
Getting Familiar with Python
- Exception handling
- Debugging |
|
6) |
Getting Familiar with Python
- Built-in functions and modules |
|
7) |
Getting Familiar with Python
- List, tuples, dictionaries
- File operations |
|
8) |
Midterm |
|
9) |
Getting Familiar with Python
- Regular Expressions
- Pattern and Match Objects
- Regex flags |
|
10) |
Getting Familiar with Python
- Object Oriented Programming
- Method overloading
- Static & In-Class methods
- Accessing attributes |
|
11) |
Advanced Classes
- Documenting the class
- Encapsulation
- Abstract classes
- Class decorators |
|
12) |
Functional Programming
- Lambda function
- Passing functions as parameters
- Map, Reduce, Filter
- Generators
- Coroutines |
|
13) |
Multi-threading & Multi-processing
- Synchronizing threads
- Rlocks & Semaphores
- Global interpreter
- The multiprocessing module |
|
14) |
Working with XML & JSON
- Parsing XML
- Handling unicode
- Parsing XML with element tree
- the Element and ElemantTree classes
- Parsing the JSON object
- Converting Python to JSON |
|
Course Notes: |
1) Kent D. Lee, ""Python Programming Fundamentals"", 2nd edition, Springer
2) Tony Gaddis, ""Starting out With Python"", 4th edition, Pearson" |
References: |
1) Jake VanderPlas, “Python Data Science Handbook: Essential Tools for Working with Data”, 1st Edition, O'Reilly
2) Aurelien Geron, Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems”, 1st Edition,O'Reilly
3) Wesley J Chun, “Core Python Applications Programming”, 3rd Edition, Pearson
4) Miguel Grinberg, “Flask Web Development: Developing Web Applications with Python”, 2nd Edition, O'Reilly" |
|
Program Outcomes |
Level of Contribution |
1) |
Adequate knowledge in mathematics, science and computer engineering; the ability to use theoretical and practical knowledge in these areas in complex engineering problems.
|
|
2) |
Ability to identify, formulate, and solve complex engineering problems; ability to select and apply appropriate analysis and modeling methods for this purpose.
|
|
3) |
Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions; ability to apply modern design methods for this purpose.
|
|
4) |
Ability to develop, select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in computer engineering applications; ability to use information technologies effectively.
|
|
5) |
Ability to design, conduct experiments, collect data, analyze and interpret results for the study of complex engineering problems or computer engineering research topics.
|
|
6) |
Ability to work effectively within and multi-disciplinary teams; individual study skills.
|
|
7) |
Ability to communicate effectively in verbal and written Turkish; knowledge of at least one foreign language; ability to write active reports and understand written reports, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
|
|
8) |
Awareness of the necessity of lifelong learning; ability to access information, to follow developments in science and technology and to renew continuously.
|
|
9) |
To act in accordance with ethical principles, professional and ethical responsibility; information on the standards used in engineering applications.
|
|
10) |
Information on business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; information about sustainable development.
|
|
11) |
Knowledge of the effects of engineering practices on health, environment and safety in the universal and social scale and the problems of the era reflected in engineering; awareness of the legal consequences of engineering solutions.
|
|