Module Outline
Semester : 02
From (Feb 2017) to (June 2017)
Java Programming I BPROG1203
MODULE DETAILS
Course Location : Cyberjaya
Department : Faculty of Information and Communication Technology
Program Name : B Sc (Hons) in Business Information Technology
B Sc (Hons) in Information Communication Technology
B Sc (Hons) in E-Commerce
B Sc (Hons) in Software Engineering with Multimedia
B Sc (Hons) in Mobile Computing
Semester : 2
Credits : 3
Status : CS / MJ
Contact hours : 4 hours (2 hours lecture + 2 hours labs)
No. of weeks : 14 Teaching weeks + 2 Final examination weeks + 1 Week midterm break
Teaching Pattern : Lectures and Laboratories
Pre-requisite : BPROG1101 C++ Programming I
No. of assignments : 2
Lecturer’s Name : Samaneh Mazaheri
Contact Number :
E-mail :
Portfolio :
Venue : Refer to your respective timetable
Day : Refer to your respective timetable
Time : Refer to your respective timetable
Prepared by : Checked by :
Signature : Date Signature : Date
This document comprises the following:
Essential Information
Specific Module Information
Module Rules & Regulations
Grades
Plagiarism
Module Introduction
Module Aims & Objectives
Learning Outcome
Specific Generic Learning Skills
Syllabus + Lecture Outline
References
Assessment Schedule
Assessment Criteria
Learning Activities
Specific Criteria
Other documents as follows will be issued to you on an ongoing basis throughout the semester:
Handouts for Assignments
Submission Requirements + Guidelines
R 01 - 06121 2 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
1.0 ESSENTIAL INFORMATION
All modules other than electives are 'significant modules'
As an indicator of workload one credit carries and additional 2 hours of self study per week. For
example, a module worth 3 credits require that the student spends an additional 6 hours per
week, either reading, completing the assignment or doing self directed research for that
module.
Submission of ALL assignment work is compulsory in this module. A student cannot pass this
module without having to submit ALL assignment work by the due date or an approved
extension of that date.
All assignments are to be handed on time on the due date. Students will be penalised 10
percent for the first day and 5 percent per day thereafter for late submission (a weekend or a
public holiday counts as one day). Late submission, after the date Board of Studies meeting
will not be accepted.
Due dates, compulsory assignment requirements and submission requirements may only be
altered with the consent of the majority of students enrolled in this module at the
beginning/early in the program.
Extensions of time for submission of assignment work may be granted if the application for
extension is accompanied by a medical certificate.
Overseas travel is not an acceptable reason for seeking a change in the examination schedule.
Only the Head of School can grant approval for extension of submission beyond the
assignment deadline.
Re-submission of work can only receive a 50% maximum pass rate.
Supplementary exams can only be granted if the level of work is satisfactory AND the semester
work has been completed.
Harvard referencing and plagiarism policy will apply on all written assignments.
2.0 SPECIFIC MODULE INFORMATION
Attendance rate of 80% is mandatory for passing module.
All grades are subject to attendance and participation.
Absenteeism at any scheduled presentations will result in zero mark for that presentation.
Visual presentation work in drawn and model form must be the original work of the student.
The attached semester program is subject to change at short notice.
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
3.0 MODULE RULES AND REGULATIONS:
Assessment procedure:
These rules and regulations are to be read in conjunction with the UNIT AIMS AND
OBJECTIVES
All assignments/projects must be completed and presented for marking by the due date.
Marks will be deducted for late work and invalid reasons.
All assignments must be delivered by the student in person to the lecturer concerned. No other
lecturer is allowed to accept students’ assignments.
All tests/examinations are compulsory.
Students must sit the test/examination on the notified date.
Students are expected to familiarize themselves with the test/examination timetable.
Students who miss a test/examination will not be allowed to pass.
Any scheduling of tutorials, both during or after lecture hours, is TOTALLY the responsibility of
each student. Appointments are to be proposed, arranged, confirmed, and kept, by each
student. Failure to do so in a professional manner may result in penalty of grades. Tutorials
WITHOUT appointments will also NOT be entertained.
Note that every assignment is given an ample time frame for completion. This, together with
advanced information pertaining deadlines gives you NO EXCUSE not to submit assignments
on time.
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
4.0 GRADES
All modules and assessable projects will be graded according to the following system. With respect
to those units that are designated 'Approved for Pass/Fail' the grade will be either PA or F:
Grade Numeric Grade Description
80 – 100 A
75 - 79 A- Pass with Distinction
70 – 74 B+
65 – 69 B Pass with Credit
60 – 64 B-
55 – 59 C+
50 – 54 C Pass
45 – 59 C-
40 – 44 D, PX, PC
0 – 39 F Fail
EXP Exempted
PC Pass Conceded
PP Pass Provisional with extra work needed
PX Pass after extra work is given and passed
X Ineligible for assessment due to unsatisfactory attendance
D Deferred
W Withdraw
DNA Did Not Attend Module
DNC Did Not Complete Module
5.0 PLAGIARISM, COPYRIGHT, PATENTS, OWNERSHIP OF WORK: STUDENT MAJOR
PROJECT, THESES & WORKS
See LIMKOKWING, HIGH FLYERS HANDOUT, pg 10.
R 01 - 06121 2 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
6.0 MODULE INTRODUCTION
This module is designed to introduce the features of the Java programming language to students
who have a basic understanding of C++. The course focuses on developing Java applications and
applets, and understanding Object Oriented Programming. Basic programming concepts studied
include: control structures, arrays, methods, classes and objects. Advanced topics such as Object
Oriented concept, interface components, and applet also are covered. The module teaches
students how to write Java applications and applets on the Java 2 Platform, Standard Edition
(J2SE).
7.0 MODULE AIMS AND OBJECTIVES
In this course, students will be:
Exposed on how to identify, explain, and use object-oriented programming in Java
Guided on how to write, compile, and execute simple Java programs
Exposed to define, describe, and explain general coding and formatting rules in Java
Guided on how to use of arrays, conditionals, and loops in a Java program
Taught on how to develop and use applets and class libraries
Exposed to define, describe, and use methods and objects in Java
Guided on how to describe and use graphical user interface (GUI) and Graphics 2D in Java
8.0 LEARNING OUTCOME
At the end of this course, student will able to:
Use object-oriented programming in Java.
Use Java editor to type, compile, and execute a Java source file.
Use primitive variables & constants.
Use if statements, loops, and arrays with console programs.
Write user-defined methods
Compile and execute a project that makes use of two or more classes and understand the role
object variables and methods.
Write a graphical user interface (GUI) and Graphics 2D Java application.
Develop, compile and execute an applet within a web page.
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
9.0 SPECIFIC GENERIC LEARNING SKILLS
Upon completion of the module, student will acquire skills in:
Dealing with object oriented concept.
Creating organized and meaningful source files for Java application and Applet
Compiling and troubleshooting compilation errors
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
10.0 UNIT SYLLABUS + LECTURE OUTLINE:
Week: 1
LECTURE 1: INTRODUCTION TO JAVA
Lecture Synopsis:
1.1 History of Java
1.2 Java Class Libraries
1.3 Typical Java Development Environment
1.4 Test-Driving a Java Application
Week: 2
LECTURE 2: INTRODUCTION TO JAVA APPLICATIONS
Lecture Synopsis:
2.1 Introduction
2.2 A First Program in Java: Printing a Line of Text
2.3 Modifying Our First Java Program
2.4 Displaying Text with printf
2.5 Another Java Application: Adding Integers
2.6 Memory Concepts
2.7 Arithmetic
2.8 Decision Making: Equality and Relational Operators
Week: 3
LECTURE 3: INTRODUCTION TO CLASSES AND OBJECTS
Lecture Synopsis:
3.1 Introduction
3.2 Classes, Objects, Methods and Instance Variables
3.3 Declaring a Class with a Method and Instantiating an Object of a Class
3.4 Declaring a Method with a Parameter
3.5 Instance Variables, set Methods and get Methods
3.6 Primitive Types vs. Reference Types
3.7 Initializing Objects with Constructors
3.8 Floating-Point Numbers and Type double
Week: 4
LECTURE 4: CONTROL STATEMENTS: PART 1
Lecture Synopsis:
4.1 Introduction
4.2 Algorithms
4.3 Pseudocode
4.4 Control Structures
4.5 if Single-Selection Statement
4.6 if … else Double-Selection Statement
4.7 while Repetition Statement
4.8 Formulating Algorithms: Counter-Controlled Repetition
4.9 Formulating Algorithms: Sentinel-Controlled Repetition
4.10 Formulating Algorithms: Nested Control Statements
4.11 Compound Assignment Operators
4.12 Increment and Decrement Operators
4.13 Primitive Types
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
Week: 5
LECTURE 5: CONTROL STATEMENTS: PART 2
Lecture Synopsis:
5.1 Introduction
5.2 Essentials of Counter-Controlled Repetition
5.3 for Repetition Statement
5.4 Examples Using the for Statement
5.5 do … while Repetition Statement
5.6 switch Multiple-Selection Statement
5.7 break and continue Statements
5.8 Logical Operators
5.9 Structured Programming Summary
Week: 6
LECTURE 6: METHODS: A DEEPER LOOK
Lecture Synopsis:
6.1 Introduction
6.2 Program Modules in Java
6.3 static Methods, static Fields and Class Math
6.4 Declaring Methods with Multiple Parameters
6.5 Notes on Declaring and Using Methods
6.6 Method-Call Stack and Activation Records
6.7 Argument Promotion and Casting
6.8 Java API Packages
6.9 Scope of Declarations
6.10 Method Overloading
Week: 7
MID-TERM BREAK
Week: 8
MID TERM EXAMINATION WEEK
Week: 9
LECTURE 7: ARRAYS
Lecture Synopsis:
7.1 Introduction
7.2 Arrays
7.3 Declaring and Creating Arrays
7.4 Examples Using Arrays
7.5 Enhanced for Statement
7.6 Passing Arrays to Methods
7.7 Multidimensional Arrays
7.8 Variable-Length Argument Lists
7.9 Using Command-Line Arguments
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
Week: 10
LECTURE 8: GUI COMPONENTS: PART 1
Lecture Synopsis:
8.1 Introduction
8.2 Simple GUI-Based Input/Output with JOptionPane
8.3 Overview of Swing Components
8.4 Displaying Text and Images in a Window
8.5 Text Fields and an Introduction to Event Handling with Nested Classes
8.6 Common GUI Event Types and Listener Interfaces
8.7 How Event Handling Works
8.8 JButton
8.9 Buttons That Maintain State
8.9.1 JCheckBox
8.9.2 JRadioButton
Week: 11
LECTURE 9: GUI COMPONENTS: PART 1 (CONT.)
Lecture Synopsis:
8.10 JComboBox and Using an Anonymous Inner Class for Event Handling
8.11 JList
8.12 Multiple-Selection Lists
8.13 Mouse Event Handling
8.14 Adapter Classes
8.15 JPanel Subclass for Drawing with the Mouse
8.16 Key-Event Handling
8.17 Layout Managers
8.17.1 FlowLayout
8.17.2 BorderLayout
8.17.3 GridLayout
8.18 Using Panels to Manage More Complex Layouts
8.19 JTextArea
Week: 12
LECTURE 10: GRAPHICS AND JAVA 2D
Lecture Synopsis:
9.1 Introduction
9.2 Graphics Contexts and Graphics Objects
9.3 Color Control
9.4 Font Control
9.5 Drawing Lines, Rectangles and Ovals
9.6 Drawing Arcs
9.7 Drawing Polygons and Polylines
9.8 Java 2D API
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
Week: 13
NO CLASS
Week: 14
REVISION
Week: 15
REVISION
Week: 16
FINAL EXAMINATION WEEK
11.0 REFERENCES
(Harvey & Paul) Deitel & Associates, Java How To Program, 7th Edition, Prentice Hall, 2007
Savitch & Carrano, Java: Introduction to Problem Solving and Programming, 5th Edition,
Prentice Hall, 2008
Lewis, DePasquale & Chase, Java Foundations: Introduction to Program Design and Data
Structures, 1st Edition, Addison Wesley Higher Education, 2008
Joyce Farrell, Java Programming, 4th Edition, Course Technology, 2007
Reges & Stepp, Building Java Programs: A Back to Basics Approach, 1st Edition, Addison
Wesley Higher Education, 2008
Liang, Introduction to Java Programming-Comprehensive Version, 6th Edition, Prentice Hall,
2007
John Flynt, Java Programming for the Absolute Beginner, 2nd Edition, Course Technology,
2006
Liang, Introduction to Java Programming: Fundamentals First, 6th Edition, Prentice Hall, 2007
Gary B. Shelly, Thomas J. Cashman, Joy L. Starks, Michael Mick, Java Programming:
Comprehensive Concepts and Techniques, 3rd Edition, Course Technology, 2006
Richard Johnson, An Introduction to Java Programming and Object-Oriented Application
Development Course Technology, 2006
Kenneth Lambert, Martin Osborne, Fundamentals of Java: Introductory, 2nd Edition, Course
Technology, 2003
12.0 ASSESSMENT SCHEDULE
Assignment description Issue date Due date %
Group Assignment Week 6 Week 10 20%
Tutorial Every Next 20%
Session Session
Mid-term Exam Week 8 Week 7 20%
Final Exam Week 16 Week 17 40%
10
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology
TOTAL 100%
13.0 ASSESSMENT CRITERIA
Coursework: Group Assignment 1 : 20%
Tutorial : 20%
Midterm Examination : 20%
Examination: Final Examination : 40%
14.0 LEARNING ACTIVITIES
Programming Development Skill:
Every week the students are required to attend the lab classes without fail. In every class, the
students will be given a set of questions (programs) that has to be completed before the end of
the class (2 hour duration).
The questions given in the lab will solely concentrate on the topics that have been previously
taught in the lecture class.
The questions will vary from basic to advanced mode of that particular topic.
On successful completion of all their exercises, the student can expect to complete their major
assignment without any hassle.
15.0 SPECIFIC CRITERIA
All assignments needing citation must follow the following style
http://libweb.anglia.ac.uk/referencing/files/Harvard_referencing.pdf
11
R01 – 061212 All Rights Reserved
No part of this document may be reproduced without written approval from Limkokwing University of Creative Technology