Information Package

Program of Management Information Systems

YBS313

OBJECT ORIENTED PROGRAMMING

Course Code
YBS313
Semester
Fifth Term (Fall)
Theory+Practice
2 + 2
ECTS
5
Course TypeCompulsory Course
Course LevelBachelor's Degree
Year of Study3
SemesterFifth Term (Fall)
ECTS5
Name of Lecturer(s)
Learning Outcomes

At the end of this course, the students;

  1. Gain knowledge and skills regarding the basic concepts of Object-Oriented Programming (OOP), such as entity, class, object, and method.
  2. Design class and object interactions based on OOP concepts in the BlueJ Integrated Development Environment and documentation; develops program snippets using the OOP approach.
  3. Understand data types, data structures, and statement structures (decision, control, and loop) in the Java Programming Language; develops various OOP code snippets using these statements and data structures.
  4. Understand the concepts of inheritance, polymorphism, and encapsulation in the Java Programming Language; designs and develops software projects using these concepts.
  5. Design and develop software projects using the MVC Pattern and graphical user interfaces in Java.
  6. Develop a project with a software team within the scope of a term project, using OOP design, development, and implementation principles, methods, and techniques.
Mode of DeliveryFace to face
PrerequisitesNo
Recommended Optional Programme ComponentsNone
Course DescriptionThis course covers an introduction to Object-Oriented Programming, object-oriented analysis and design, approaches to modular program design, fundamental object-oriented concepts; objects, classes, class hierarchy, inheritance, and abstract classes, functions, virtual functions, virtual base classes and conversions, single and multiple inheritance, and object hierarchies, as well as topics in object-based program development.
Course Contents
WEEK TOPICS
1st Week Object-oriented programming concepts: object-class
2nd Week Basic principles of object-oriented programming: abstraction / encapsulation / inheritance / polymorphism
3rd Week UML (Unified Modeling Language) class and object schemes
4th Week Relationships between classes: aggregation, composition, dependency, generalization relation
5th Week Introduction to Java applications: first Java program, input/output and operations
6th Week Class, object methods, and introduction to string: instance variables, set/get methods, account class example
7th Week Midterm exam
8th Week Control structures: assignment ++ / -- operators, if / if..else / nested if
9th Week Control structures: logical operators, for / while / do-while loop structures
10th Week Arrays
11th Week Object-oriented programming: inheritance
12th Week Object-oriented programming: inheritance
13th Week Object-oriented programming: polymorphism and interface
14th Week Object-oriented programming: polymorphism and interface
Recommended or Required ReadingDeitel, P. J., & Deitel, H. M. (2014). Java How to Program (10th ed.). Pearson. ISBN 978-0133807806
Planned Learning Activities and Teaching Methods
  • Lecture
  • Questions/Answers
  • Experiment
  • Practice
  • Problem Solving
Assessment Methods and Criteria
Quantity Percentage (%)
Mid-term 1 30
Quiz 2 20
Project 1 20
Total(%) 70
Contribution of In-term Studies to Overall Grade(%) 70
Contribution of Final Examination to Overall Grade(%) 30
Total(%) 100
ECTS Allocated Based on Student Workload
Activities Quantity Duration (Hour) Total Workload (Hour)
Midterm exam 1 1.5 1.5
Preparation for Quiz 2 10 20
Individual or group work 14 1 14
Preparation for Final exam 1 22 22
Course hours 13 2 26
Preparation for Midterm exam 1 14 14
Laboratory (including preparation) 13 2 26
Final exam 1 1.5 1.5
Homework 0 0 0
Project 1 10 10
Total Work Load135
Total Work Load / 30 (h)4.5
ECTS Credit of the Course5
Language of InstructionTurkish
Work Placement(s)No
LO1 LO2 LO3 LO4 LO5 LO6
K1
K2
K3 X X X X X X
K4
K5 X X X X X X
K6 X X X X X X
K7
K8
K9
K10
K11