Türkçe English Rapor to Course Content
COURSE SYLLABUS
OBJECT ORIENTED PROGRAMMING
1 Course Title: OBJECT ORIENTED PROGRAMMING
2 Course Code: END2238
3 Type of Course: Optional
4 Level of Course: First Cycle
5 Year of Study: 2
6 Semester: 4
7 ECTS Credits Allocated: 3
8 Theoretical (hour/week): 1
9 Practice (hour/week) : 0
10 Laboratory (hour/week) : 2
11 Prerequisites: None
12 Recommended optional programme components: None
13 Language: English
14 Mode of Delivery: Face to face
15 Course Coordinator: Dr. Ögr. Üyesi ALKIN YURTKURAN
16 Course Lecturers: Dr. Öğr. Üyesi Alkın YURTKURAN
17 Contactinformation of the Course Coordinator: erdal@uludag.edu.tr
Tel: 0224 294 2080
Endüstri Mühendisliği Bölümü,
Mühendislik Fakültesi
Uludağ Üniversitesi, Görükle, Bursa
18 Website: UKEY
19 Objective of the Course: To provide students with the information needed to understand the fundamentals of programming with Python and to present them with the information required to exercise the higher level concepts of object oriented programming methodology and design.
20 Contribution of the Course to Professional Development Python programming language is the basis of today's most widely used scientific computational programs and provides the most suitable environment for the management of industrial systems in terms of program design with its object-based programming approach.
21 Learning Outcomes:
1 To learn the characteristics that make a programming language object-oriented;
2 To be able to define software requirement specifications;
3 To be able to design use case and class diagrams using UML;
4 To be able to design sequence, colloboration and activity diagrams and user interfaces;
5 To be able to design a software by UML tools;
6 To be able to code programs in Python environment;
7 To be able to create classes and instances in Python;
8 To be able to use collections, arrays, lists, queues;
9 To be able to write codes in Python for GUI applications;
22 Course Content:
Week Theoretical Practical
1 Rationale for Object Oriented Software Development Introduction to Python
2 Identification of Classes and Objects Data types, Strings
3 Modeling with UML Variables, Operators
4 UML Modeling - Use Case Diagrams Numbers, Boolean Logic, Lists
5 UML Modeling - Class Diagrams Tuples, Dictionaries, Modules, Conditionals
6 UML Modeling - Sequence Diagrams Control Loops, functions
7 UML Modeling - Activity Diagrams OOD-Interactions Diagrams (Collaboration Diagrams)
8 UML Model Sample Case: Workflow Management App in Python
9 Classes, Objects, Class and Instances, Variables in Python App in Python
10 Inheritence and Polymorphism in Python App in Python
11 Inheritence in Python App in Python
12 Graphical User Interface in Python, Notebook Application in Python App in Python
13 Exceptions in Python App in Python
14 Case Study in Python
23 Textbooks, References and/or Other Materials: Printed
1. Object Oriented Analysis and Design – Using UML, D. Jeya Mala, S Geetha, McGraw Hill, 2013. ISBN: 1-25-900674-3 (Print) ISBN: 93-329-0095-7 (ebook)
2. How to Code in Python 3, Lisa Tagliaferri, DigitalOcean, New York, 2015, ISBN: 978-0-9997730-0-0
3. Python 3 Object-Oriented Programming, 3rd ed. Dusty Phillips, Packt Publishing, 2018, ISBN: 97-817-8961-5852
4. Class Diagram Tutorial, (Links provided in UKEY)
5. Lecture Notes – Basic Python
6. Lecture Notes – OOP Python
7. Graphical User Interface Package: tkinter – Python Code Examples (loaded in UKEY) https://docs.python.org/2/library/tkinter.html
8. Python Basics: A Practical Introduction to Python 3, D. Amos, Real Python, 2020. ISBN: 9781775093336
9. Python Tutorial, https://docs.python.org/3/tutorial/index.html
10. Python Standard Library, https://docs.python.org/3/library/index.html#the-python-standard-library
Video
1. Tutorial Youtube Videos, Lucidchart. (Links provided in UKEY)
2. Study guidelines and Lecture Videos (Links to be provided in UKEY)
Software
1. Python Programing Environment: Anaconda > Spyder > (Editor, IPython Console, Variable Explorer)
https://www.anaconda.com/distribution/
https://www.spyder-ide.org/
2. Software Modeler using UML: StarUML 3, http://staruml.io/download
3. Software Modeler using UML: Lucidchart, https://www.lucidchart.com/pages/
24 Assesment
TERM LEARNING ACTIVITIES NUMBER PERCENT
Midterm Exam 1 15
Quiz 0 0
Homeworks, Performances 2 25
Final Exam 1 60
Total 4 100
Contribution of Term (Year) Learning Activities to Success Grade 40
Contribution of Final Exam to Success Grade 60
Total 100
Measurement and Evaluation Techniques Used in the Course Multiple choice test and classical written test, Coding assignments
Information
25 ECTS / WORK LOAD TABLE
Activites NUMBER TIME [Hour] Total WorkLoad [Hour]
Theoretical 14 2 28
Practicals/Labs 0 0 0
Self Study and Preparation 12 1 12
Homeworks, Performances 2 10 20
Projects 0 0 0
Field Studies 0 0 0
Midtermexams 1 10 10
Others 1 10 10
Final Exams 1 10 10
Total WorkLoad 100
Total workload/ 30 hr 3
ECTS Credit of the Course 3
26 CONTRIBUTION OF LEARNING OUTCOMES TO PROGRAMME QUALIFICATIONS
PQ1 PQ2 PQ3 PQ4 PQ5 PQ6 PQ7 PQ8 PQ9 PQ10 PQ11 PQ12 PQ13 PQ14 PQ15 PQ16 PQ17 PQ18 PQ19 PQ20 PQ21 PQ22 PQ23 PQ24
LO1 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0
LO2 0 3 0 5 0 0 3 0 0 0 0 4 0 0 0 0
LO3 0 0 0 5 0 0 3 0 0 0 0 0 0 0 0 0
LO4 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0
LO5 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0
LO6 0 0 0 5 0 4 3 0 0 0 0 0 0 0 0 0
LO7 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0
LO8 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0
LO9 0 0 0 5 0 3 0 0 0 0 0 0 0 0 0 0
LO: Learning Objectives PQ: Program Qualifications
Contribution Level: 1 Very Low 2 Low 3 Medium 4 High 5 Very High
Bologna Communication
E-Mail : bologna@uludag.edu.tr
Design and Coding
Bilgi İşlem Daire Başkanlığı © 2015
otomasyon@uludag.edu.tr