IND208 Object Oriented ProgrammingInstitutional InformationDegree Programs Industrial Engineering(English)Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
Industrial Engineering(English)

Preview

Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Course General Introduction Information

Course Code: IND208
Course Name: Object Oriented Programming
Course Semester: Spring
Course Credits:
ECTS
5
Language of instruction:
Course Requirement:
Does the Course Require Work Experience?: No
Type of course: Necessary
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator : Ar.Gör. HÜSEYİN TANSU YILDIRIM
Course Lecturer(s):
Course Assistants:

Course Purpose and Content

Course Objectives: Learning object oriented programming basics with real applications and learning analytic thinking and analysing. Applying these outcomes to the real world problems for their solutions. With professional techniques we can develop high quality software. Using engineering principles and methodologies to gain conceptual and high dimensional programming knowledge.
Course Content: Introduction to OOP, First App Hello world!, Base Data Types and Memory Stacks, Definiton of Variables, Value and Reference Types, Object Class Type conversion,Explicit and Implicit Type conversion, Conversion between reference and value types, Boxing and Unboxing,Convert Class, Operators, Operators Preceedings, Groupig operators, Bitwise Operators, Low level operations, Special Operators If and Switch, Loop Structures, For Loop, While and Do-While Loop, Foreach Loop, Assignin, Arrays, Array Definition, High Dimesional Arrays, Matrix Arrays, Irregular Arrays. Array Class, Methods and Funtions, Basci Array operations with array class, method definitions, Properties of methods, Arrays and methods. Method overloading and sign, Recursive Methods, Main Methods and kinds, Intoduction to Class, Defining Objects, adding method to class, This keyword. Members of Classess, Constructor Methods, Destructor Methods, Properties, Indexers, Static Members, Statik Methods and Contructor Methods Const and Readonly Elements, Structures, Difference of Structures and Classes, Enumerators, Enum Class. Datetime, Datetdiff, Bitconverter and Buffer Classes, Gc Mechanism and GC Class, Base I/O Processes, File and directory Processes, Reading and Writing Files, Binarywriter and Binaryreader Classes, Stream, Standard stream redirection, Basic String Processes, Split and Join, Formatting Text, Regex. Object Oriented Programming, Object Model, Construction of Library files, Inheritance, Access identifiers (public,private...), Versioning, Base and derived Classes Hide names and Overriding, Polymorhism, Abstract Methods and Classes, Sealed Classes, Versioning Techniques, Overloading and Overriding, Interfaces, differences between classes and interfaces. Instantiate interface, Inerface References. Exception management, Throw,Catch,Try,Finally Blocks, Nested Try,Multiple Catch Blocks, Delegates,Multiple Delegates, Delegate and Multicast Delegate Classes, Events, Event Based Programming, Add and Remove tags. Generics, Iterators, Anonymous Methods, Partial Types Var typle local variables, Anonymous Types, Extension Methods, Lambda Expressions, Query Expressions, Dynamic expressions. Database models, Object Models, Accessing databases, Disconnected Access, Dataset Models, select, insert, update delete oparations. Using Stored Procedures, Transaction Management, working with null values.

Learning Outcomes

The students who have succeeded in this course;
1) Learns the basic concepts of object-oriented programming.
2) Gains the ability to use the basic features of current object-oriented programming languages.
3) Gain the ability to solve real-world problems with an object-oriented approach.
4) Gains professional skills on developing software independently.
5) Gains the ability to object-oriented software design and report by UML diagrams.

Course Flow Plan

Week Subject Related Preparation
1) Introduction to OOP, First App Hello world!, Base Data Types and Memory Stacks, Definiton of Variables, Value and Reference Types, Object Class Course Materials
2) Type conversion,Explicit and Implicit Type conversion, Conversion between reference and value types, Boxing and Unboxing,Convert Class, Operators, Operators Preceedings, Groupig operators, Bitwise Operators, Low level operations, Special Operators Course Materials
3) If and Switch, Loop Structures, For Loop, While and Do-While Loop, Foreach Loop, Assignin, Arrays, Array Definition, High Dimesional Arrays, Matrix Arrays, Irregular Arrays. Course Materials
4) Array Class, Methods and Funtions, Basci Array operations with array class, method definitions, Properties of methods, Arrays and methods. Course Materials
5) Method overloading and sign, Recursive Methods, Main Methods and kinds, Intoduction to Class, Defining Objects, adding method to class, This keyword. Course Materials
6) Members of Classess, Constructor Methods, Destructor Methods, Properties, Indexers, Static Members, Statik Methods and Contructor Methods Course Materials
7) Const and Readonly Elements, Structures, Difference of Structures and Classes, Enumerators, Enum Class. Course Materials
8) Midterm 1 / Practice or Review Course Materials
9) Object Oriented Programming, Object Model, Construction of Library files, Inheritance, Access identifiers (public,private...), Versioning, Base and derived Classes Course Materials
10) Object Oriented Programming, Object Model, Construction of Library files, Inheritance, Access identifiers (public,private...), Versioning, Base and derived Classes Course Materials
11) Hide names and Overriding, Polymorhism, Abstract Methods and Classes, Sealed Classes, Versioning Techniques, Overloading and Overriding, Interfaces, differences between classes and interfaces. Instantiate interface, Inerface References. Course Materials
12) Exception management, Throw,Catch,Try,Finally Blocks, Nested Try,Multiple Catch Blocks, Delegates,Multiple Delegates, Delegate and Multicast Delegate Classes, Events, Event Based Programming, Add and Remove tags. Course Materials
13) Generics, Iterators, Anonymous Methods, Partial Types Var typle local variables, Anonymous Types, Extension Methods, Lambda Expressions, Query Expressions, Dynamic expressions. Course Materials
14) Database models, Object Models, Accessing databases, Disconnected Access, Dataset Models, select, insert, update delete oparations. Using Stored Procedures, Transaction Management, working with null values Course Materials
15) Final Exam Course Materials

Sources

Course Notes / Textbooks: Python Object-Oriented Programming - Fourth Edition, Steven F. Lott, Dusty Phillips, Packt Publishing, July 2021
Python 3 Object-Oriented Programming, Dusty Phillips, Packt Publishing, October 2018
References: Python Object-Oriented Programming - Fourth Edition, Steven F. Lott, Dusty Phillips, Packt Publishing, July 2021
Python 3 Object-Oriented Programming, Dusty Phillips, Packt Publishing, October 2018

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Medium 3 Highest
       
Program Outcomes Level of Contribution
1) Adequate knowledge in mathematics, science, and related engineering discipline; ability to use theoretical and practical knowledge in these areas in complex engineering problems. 1
2) An ability to detect, identify, formulate, and solve complex engineering problems; the ability to select and apply appropriate analysis and modelling methods for this purpose. 1
3) An ability to design a complex system, process, device, or product to meet specific requirements under realistic constraints and conditions; the ability to apply modern design methods for this purpose. 1
4) An ability to develop, select and use modern techniques and tools necessary for the analysis and solution of complex problems in engineering applications. 1
5) An ability to use information technologies effectively. 1
6) Ability to design, conduct experiments, collect data, analyse, and interpret results to investigate complex engineering problems or discipline-specific research topics.
7) Ability to work effectively in disciplinary and multidisciplinary teams; ability to work individually.
8) Ability to communicate effectively in oral and written Turkish.
9) Knowledge of at least one foreign language.
10) Ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give clear and understandable instructions.
11) Awareness of the necessity of lifelong learning; ability to access information, follow developments in science and technology and ability to renew themselves. 1

Learning Activity and Teaching Methods

Bireysel çalışma ve ödevi
Course
Grup çalışması ve ödevi
Uygulama (Modelleme, Tasarım, Maket, Simülasyon, Deney vs.)

Measurement and Evaluation Methods and Criteria

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Homework
Bireysel Proje
Grup Projesi

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Attendance 14 % 0
Homework Assignments 1 % 30
Midterms 1 % 30
Final 1 % 40
total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
total % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Activities Number of Activities Aktiviteye Hazırlık Aktivitede Harçanan Süre Aktivite Gereksinimi İçin Süre Workload
Course Hours 14 3 42
Study Hours Out of Class 14 4 56
Homework Assignments 1 13 13
Midterms 1 15 15
Final 1 15 15
Total Workload 141