0% found this document useful (0 votes)
2 views8 pages

Java Course Outline Spring 2017

The document outlines the course CS-4110 Java Software Development Paradigm at the University of Lahore, detailing prerequisites, course objectives, and learning outcomes. It covers topics such as Java syntax, object-oriented programming, GUI development, and database connectivity, with a structured assessment criteria. The course aims to equip students with advanced programming skills in Java, preparing them for mobile application development and other programming paradigms.

Uploaded by

gagijew662
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views8 pages

Java Course Outline Spring 2017

The document outlines the course CS-4110 Java Software Development Paradigm at the University of Lahore, detailing prerequisites, course objectives, and learning outcomes. It covers topics such as Java syntax, object-oriented programming, GUI development, and database connectivity, with a structured assessment criteria. The course aims to equip students with advanced programming skills in Java, preparing them for mobile application development and other programming paradigms.

Uploaded by

gagijew662
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

THE UNIVERSITY OF LAHORE

Course Outline
Spring 2017

CS-4110 Java Software Development Paradigm


SCU (2+1) 3 Credit(s)
Co-requisite (s)
Pre-requisite(s) Object Oriented Programming (CS-2130)
Post-requisite Mobile Application Development (CS-4555)
Weekly tuition pattern 2 sessions (2 X 60 min sessions)
Dr Khurram
Teaching Team
Abdul-Wahab

Syllabus Designed By:


Dr. Syed Khuram Shahzad
Mr. Abdul-Wahab

Page 1 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
1- Course Description
Java was introduced at Sun Microsystems, Inc. in 1991. The primary motivation was the
need for a platform-independent (that is, architecture-neutral). In today’s fast time of internet,
students should be familiar with a pure object oriented language like java to develop
professional level business software. Java is taken as a most suitable language to teach
Advance Object Oriented Concepts, The Framework, Syntax and technique is also very
similar to Microsoft Dot Net Language
This course is designed for students with prior knowledge of programming techniques and
object oriented concepts of intermediate level. The course covers the object oriented concepts
using java and provides students enough insight into java SE core libraries, Graphical
facilities I/O, collections and database.

This course is especially designed as a pre course to Android Development Course.


In Mobile Application Development, This course acts as a prerequisite to the Android
Application Development due to Java as a base language for this course. This course also
helps in migration towards .Net Languages as they are also built on the same principles.

2- Objectives

The objective of this course is:-

1. To familiarize students with JAVA language syntax and advance OO programming


aspects using Java software development paradigm.
2. To provide students an understanding of JAVA pre-built libraries, Java Virtual
Machine & Java Runtime Environment, Exception handling and multithreaded
support of java.
3. To teach students event driven programming using J2SE (JAVA Standard Edition).
4. To enable students building database centric GUI Application using advance java
database libraries, JDBC API.
5. Better Modeling of Large Scale System using Object Oriented Paradigm

Page 2 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
3- Student Learning Outcomes
On completion of this unit students should be able:

1. To implement advance OO programing in Java software development paradigm


with better rapid application development skills.
2. Make portable programs exploiting multicore capabilities and background
processes of java.
3. To develop event driven GUI software application using J2SE.
4. To develop database driven application by implementing JDBC API.
5. To demonstrate JAVA features learned into a team project.

4- Course Structure

1. Presentation by lecturer
2. Lab Tasks
3. Group project
4. Quizzes
5. Assignments

5- Course Duration
This course will be held twice a week (60 min sessions) class duration and a Weekly Lab of
120 minutes.

6- Course style
The course will be delivered in a classroom environment and in Lab.

7- Tools and Technologies


J2SE Part will be covered in this Course. Netbeans 8 will be the official IDE of the course
however Jetbrains is an alternative.

8- Text and Other Resources

8.1 Text

1. Herbert Schildts, The Complete Reference Java, 7th Edition, McGrawHill, 2006

Page 3 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
8.2 Other Resources

1. [Link]
2. Deitel and Deitel, Java How to Program
3. Ivor Horton, Beginning Java
4. JDK 7 API Documentation Guide by oracle
5. [Link]
programming-in-java-january-iap-2010/

9- Course Outline
The lecturers are supposed to complete the following topics/sub-topics before the mid/final
term examination as prescribed in the course outline below:

Week Lec Topics / Sub-Topics


Java as pure Object Oriented P rogramming language (Introduction)
Why Java, Features of Java (JVM, JRE, Portability etc)
Java vs .Net vs Android
1
Comparison of C++ & Java in detail
Clarity of Expression
Features deprecated in Java
1
Data Types , Conditional statements(Arithmetic Expression Boolean
Expressions),
Overview of OOP Features (Quick Revision of Abstraction,
2
Encapsulation)
Classes and Objects in Java
toString method and Intro to Object Class
Arrays and Strings in Java
Enhanced For Loop / ForEach Loop
1
Var Args in detail
Understanding Difference of final with const
2 Garbage Collector
Java Portability
2 What is ByteCode
Java Process and JVM
JVM Architecture
Understanding keywords and reserved words, Static data Member and
Static Member Function
3 1
Exploring Built-in libraries Math, String, Random, Calendar, Tokenizer,
Timer etc

Page 4 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
Factory Method Design Pattern
Wrapper Classes
Auto boxing and unboxing
2 String Class , Immutable Objects, String vs StringBuffer
How to create Immutable Objects
Why to create Immutable Objects
This operator, Access controls (private, public, protected, default)
1
Instance of , Singleton
4 Object Class Hierarchy and Finalize method
2 Garbage collection mechanism, stack and heaps memory concepts in
detail
1 Equals Method and Hashcode
enums in Java
5 Java Annotations
2
static imports

Inheritance in Java, Super class and sub class concepts,


1
Using super to call super class constructors and methods
6
Inheritance Hierarchy in Java, Method overriding and Covariant type ,
2
Object Clone method
Understanding Java Dynamic method dispatch
Abstract methods and abstract classes, Final Methods
1
7 Class based Polymorphism
Interfaced Based Polymorphism
2 Interfaces (Definition, implementation, extending interfaces)
Referencing an object
LinkedList , Binary Search Tree
1
Making inner class
8 Principle of Least Privilege
Adapter Classes
2 Nested Classes , Nested Static Classes , Inner Classes , Local Classes ,
Anonymous Classes
MID-TERM EXAMINATION
Exception fundamentals and the need of Exception Handling, Exception
1
Types (checked Vs. unchecked), Try catch finally
10
Multiple catch clauses and nested try statements
2
Throw, throws, finally

Page 5 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
Creating own Custom exceptions
GUI fundamentals (Important aspects to be considered in GUI)
1 AWT Classes (containers, layout and layout manager, controls)
11 Working with frame windows, creating window program
Managing text, fonts, colors, setting controls properties
2
Java Swings (containers, layouts, controls), AWT vs. Swings
Java Support for Event Handling
1 Understanding event handling mechanism, Delegation Event model
Sources of events, event listener interfaces
12
Working with swings (buttons, text fields, menus, combo box, check
2 boxes, radio buttons, tables etc)
Creating Custom Event Listener
Use of ArrayList
Comparable and Comparator Interface
1 The Collection Framework
Collection overview, collection classes
13
Use of array list, comparison with arrays, use of linked lists
Accessing a collection via iterator
2 Storing user defined class objects in collections
Enums
What is Java Data Base Connectivity?, important steps to use JDBC
1
Types of driver for DataBase connectivity, Types of JDBC statement
14 What is MetaData? What is ResultSet? Implementation of connectivity,
2
query execution, and retrieving result
1 Types of Resultset (Updateable & Scrollable ResultSet)
15 Processing the result after retrieving from the ResultSet
2
Binding result set with swing controls (jtable, jtree , jtextbox, jlist etc)
Reading and writing files, Scanner VS buffered reader
1 Input and Output Stream , Final Streams and Processing Streams , XML
16 File
Introduction to Multi-Threading, Need & Benefits of Multi-threading,
2
Issues with Multi-threading, Runnable Interface
FINAL EXAMINATION

Page 6 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
10- Assessment Criteria
No. Assessment Percentage
1. Mid Exam 20%
2. Final Exam 40%
3. Assignments 05%
4. Quizzes 05%
5. Group Project 10%
6 Lab Marks 20 %
Total 100%

11- Attendance Requirements


You are expected to attend all lectures, seminars, tutorials, and lab sessions or any other
classroom activity. Where you fail to attend classes, you cannot expect the lecturer to brief
you on what you have missed. You are responsible for your attendance, not the academic
staff. Attendance at tutorials and lab sessions will be strictly monitored, and failure to attend
will be taken into account.

12- Submission and Collection of Assignment


All assignments should be handed in at the beginning of the class sessions when they are due.
All assignments may be handed back during scheduled classes.

13- General Information


Students are required to be familiar with the university code Conduct, and to abide by its
terms and conditions.

13.1 Copying of Copyright Material By Student


A condition of acceptance as a student is the obligation to abide by the University’s policy on
the copying of copyright material. This obligation covers photocopying of any material using
the University’s photocopying machines, and the recording off air, and making subsequent
copies, of radio or television broadcasts, and photocopying textbooks. Students who
flagrantly disregard University policy and copyright requirements will be liable to
disciplinary action under the Code of Conduct.

13.2 Academic Misconduct


Please refer to the Code of Conduct for definitions and penalties for Academic Misconduct,
plagiarism, collusion, and other specific acts of academic dishonesty. Academic honesty is
crucial to a student's credibility and self-esteem, and ultimately reflects the values and morals
of the University as a whole. A student may work together with one or a group of students
discussing assignment content, identifying relevant references, and debating issues relevant
to the subject. Academic investigation is not limited to the views and opinions of one
individual, but is built by forming opinion based on past and present work in the field. It is
legitimate and appropriate to synthesize the work of others, provided that such work is
clearly and accurately referenced. Plagiarism occurs when the work (including such things as

Page 7 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm
text, figures, ideas, or conceptual structure, whether verbatim or not) created by another
person or persons is used and presented as one’s own creation, unless the source of each
quotation or piece of borrowed material is acknowledged with an appropriate citation.
Encouraging or assisting another person to commit plagiarism is a form of improper
collusion and may attract the same penalties. To prevent Academic Misconduct occurring,
students are expected to familiarize themselves with the University policy, the Subject
Outline statements, and specific assignment guidelines. Students should also seek advice
from Subject Leaders on acceptable academic conduct.

13.3 Guidelines to Avoid Plagiarism


Whenever you copy more than a few words from any source, you must acknowledge that
source by putting the quote in quotation marks and providing the name of the author. Full
details must be provided in your bibliography. If you copy a diagram, statistical table, map,
etc., you must acknowledge the source. The recommended way is to show this under the
diagram. If you quote any statistics in your text, the source should be acknowledged. Again
full details must be provided in your bibliography. Whenever you use the ideas of any other
author you should acknowledge those, using the APA (American Psychological Association)
style of referencing.

Students are encouraged to co-operate, but collusion is a form of cheating. Students may use
any sources (acknowledged of course) other than the assignments of fellow students. Unless
your Subject Leader informs you otherwise, the following guideline should be used: Students
may work together in obtaining references, discussing the content of the references and
discussing the assignment, but when they write, they must write alone.

13.4 Referencing For Written Work


Referencing is necessary to acknowledge others' ideas, avoid plagiarism, and allow readers to
access those others’ ideas. Referencing should:
1. Acknowledge others' ideas
2. Allow readers to find the source
3. Be consistent in format and
4. Acknowledge the source of the referencing format
To attain these qualities, the school recommends use of either the Harvard or American
Psychological Association style of referencing, both of which use the author/date.

13.5 Referencing Standards


APA style referencing
Approval

Course Mentor, Approved by,

Dr Tabassum Naz Dr Nadeem Ahmad


Associate Professor Dean/HOD CS & IT

Page 8 of 8
The University of Lahore
CS-4110 Java Software Development Paradigm

You might also like