Programming with Java (IT 524)

2021 Fall
Faculty of Engineering and Natural Sciences
Information Technology(IT)
3
7
Altuğ Tanaltay atanaltay@sabanciuniv.edu,
Click here to view.
English
Doctoral, Master
--
Formal lecture,Workshop
Interactive,Communicative,Case Study
Click here to view.

CONTENT

This is a hands-on course on the Java programming language using the Java Development Kit (JDK), and the use of Java to reinforce the use of object-oriented approach to solve real problems. A general understanding of object- oriented programming concepts is also presented. IT 524 covers more advanced features of the Java Foundation Classes (JFC), distributed programming using the Remote Method Invocation (RMI), CORBA, and the Java Native Interface (JNI) for interfacing Java programs with applications written using some other language such as C, as well as Java security. Topics include Java and Object- Oriented Programming; Language Basics; Java Classes and Objects; Java Statements; Exceptions; Java Threads; Swing Programming; Java Packages; Java File I/O; Distributed Applications; Persistence and Remote Method Invocation; Database Connectivity (JDBC); Java Native Interface; Java Security Model.

OBJECTIVE

Understanding Object Oriented Programming basics and developing Object oriented java applications

LEARNING OUTCOMES

  • Learning outcomes are: Upon completion of this class, students should be able to: Understand the concept of OOP as well as the purpose and usage principles of inheritance, polymorphism, encapsulation and method overloading. Identify classes, objects, members of a class and the relationships among them needed for a speci?c problem. Create Java application programs using soundOOPpractices (e.g., interfaces andAPIs) and proper program structuring (e.g., by using access control identi?es, automatic documentation through comments, error exception handling) Use testing and debugging tools to automatically discover errors of Java programs as well as use versioning tools for collaborative programming/editing. Develop programs using the Java Collection API as well as the Java standard class library Create GUI based applications Create database applications

PROGRAMME OUTCOMES


1. Develop the ability to use critical, analytical, and reflective thinking and reasoning 5

2. Reflect on social and ethical responsibilities in his/her professional life. 2

3. Gain experience and confidence in the dissemination of project/research outputs 1

4. Work responsibly and creatively as an individual or as a member or leader of a team and in multidisciplinary environments. 3

5. Communicate effectively by oral, written, graphical and technological means and have competency in English. 3

6. Independently reach and acquire information, and develop appreciation of the need for continuously learning and updating. 5


1. Design and model engineering systems and processes and solve engineering problems with an innovative approach. 5

2. Establish experimental setups, conduct experiments and/or simulations. 4

3. Analytically acquire and interpret data. 4


1. Identify the communication requirements in the corporate infrastructure, design and implement a capable and expandable solution. 5

2. Apply fundamental programming concepts to produce the source code by enforcing the correct syntax and semantics. 5

3. Customize, debug and test the code. 5

4. Design and implement a database system suitable for the requirements of the project. 5

5. Conduct project planning, management and coordination; prioritize resources and activities for on-time and on-budget project delivery. 5

RECOMENDED or REQUIRED READINGS

Readings

Java How to Program, Sixth Edition, H.M. Deitel, P.J. Deitel, Prentice Hall, ISBN 0-13-129014-2