• Türkçe
  • English
Course Code: 
ACM 321
Course Period: 
Autumn
Course Type: 
Core
P: 
2
Lab: 
2
Credits: 
3
ECTS: 
6
Course Language: 
İngilizce
Course Objectives: 
Object oriented programming, (OOP) is organized around "objects" rather than "actions" and data rather than logic. Students will be exposed to the concepts, fundamental syntax, and the thought processes behind object-oriented programming and given the tools and basic knowledge about object-oriented programming techniques in languages such as Java. Labwork and Project development will be stressed.
Course Content: 

A detailed description of object program development: Introduction of object oriented programming concepts. Approaches to modular program design. Basic concepts of objects: Objects, classes, hierarchy between classes, inheritance and abstract classes, function and operator overloading, virtual functions, virtual base classes and polymorphism, single and multiple inheritance and object hierarchies, object-oriented program development, applications of Java.

Course Methodology: 
1: Lecture, 2: Question-Answer, 3: Discussion, 4: Lab Work
Course Evaluation Methods: 
A: Testing, B: Laboratory C: Homework D: Project

Vertical Tabs

Course Learning Outcomes

Learning Outcomes Program Learning Outcomes  Teaching Methods Assessment Methods
IT graduates use up to date object-oriented software development tools, to design software development designs for a specific purpose. 5 3,4 A,B,C,D
Develops appropriate software for the user’s needs. 2 1,2,3,4 A,B,C
Has the knowledge and skill to offer the software that has been developed by effectively using graphical effects in different hardware settings to the end user. 2,4,5 3,4 A,B,C
IT graduates use up to date structured programming software development tools, to design software development designs for a specific purpose. 4,5 1,2,4 A,C
Uses inheritance (is-a) composition (has-a) and polymorphism concepts to develop object oriented Java applications. Uses threads and methods effectively for modular software design. 5 1,2,3,4 A,B,C
Uses arrays, error catching, input/output, reading from and writing to files effectively. 2,4,5 1,3 A,B,C

Course Flow

Week Topics Study Materials
1 Introduction to programming and logistical issues in Object Oriented Programming) OOP. ACM 111
2 Introduction to Java programming concepts; the operating system; tools for programming; input and output. ACM 222
3 Introduction to Classes and Objects   
4 Control Statements ACM 222
5 Methods ACM 222
6 Arrays ACM 222
7 MIDTERM EXAMINATION  
8 OOP-Inheritance  
9 Recursion Inheritance
10 Classes and Objects: Event-driven programming  
11 OOP- Polymorphism  
12 Files and Streams  
13 Information encapsulation and Project Work  
14 REVIEW AND MIDTERM II  

Recommended Sources

Textbook John Lewis , William Loftus, Java Software Solutions: Foundations of Program Design Pearson (7th Edition)
Additional Resources P. J. Deitel and H. M. Deitel, Java How to Program, 9th edition. Pearson Education. http://docs.oracle.com/javase/tutorial/

http://www.java.com/en/download/manual.jsp.

 

Material Sharing

Documents Presentations and Laboratory Sheets from Lewis Loftus
Assignments Homework Sheets
Exams Old exam questions are furnished

Assessment

IN-TERM STUDIES NUMBER PERCENTAGE
Mid-terms 2 50
Quizzes 4 10
Assignment and Labwork 10 10
Project and Presentation 1 30
Total   100
CONTRIBUTION OF FINAL EXAMINATION TO OVERALL GRADE   40
CONTRIBUTION OF IN-TERM STUDIES TO OVERALL GRADE   60
Total   100

ECTS

ECTS ALLOCATED BASED ON STUDENT WORKLOAD BY THE COURSE DESCRIPTION
Activities Quantity Duration
(Hour)
Total
Workload
(Hour)
Course Duration (Including the exam week: 16x Total course hours) 15 3 45
Hours for off-the-classroom study (Pre-study, practice) 15 3 45
Mid-terms 2 2 4
Quizzes 4 1 4
Homework 10 2 20
Final examination 2 (Including reparation) 2 4
Total Work Load     138
Total Work Load / 25 (h)     5.52
ECTS Credit of the Course     6
2