This course is the continuation of the previous course (Algorithm and Problem Solving). It introduces complex flow control, method, array, class design, file and file I/O.
1. 1
DEPARTMENT OF COMPUTER SCIENCE
FACULTY INFORMATION SCIENCE & TECHNOLOGY
SESSION II, 2014/2015
1
Course name
Fundamentals of Programming
2
Course code
DTCP 2023
3
Academic staff
KHIRULNIZAM ABD RAHMAN
khirulnizam@kuis.edu.my
MIT, Computer Science, UKM.
4
Rationale for the inclusion of the course in the programme
To expose students to the principles and practices of java programming. This course is important as it serves as the basic for the latter subjects.
5
Semester and year
Semester 2, Year 1
6
Total student learning time (SLT)
Guided
Quiz, Test, Exam
Independent learning
Total
Lecture
Practical
28
28
6
58
120
7
Credit value
3 (120 / 40)
2 Credit Hours for Lecture (2H X 14 weeks)
1 Credit Hours for Labs (2H X 14 weeks)
8
Pre-requisites
DTCP 1004 Problem Solving and Programming
9
Course learning outcome (CLO)
At the end of the course students should be able to;
CLO1
CLO2
CLO3
CLO4
write and apply complex control structure.
create and invoke methods in programs.
declare, create and apply arrays and classes.
retrieve from and write data into another file.
10
Transferable skills
Skills
How they are developed and assessed?
Communication
Presentation
Critical thinking and problem solving
Assignments, Practical Assessment
Team work
Assignments, Practical Assessment
Life long learning and information management
Assignments, Practical Assessment
Entrepreneurship
Not applicable
Ethics and moral professionalism
Not applicable
Leadership
Assignments, Practical Assessment
Programming
Assignments, Practical Assessment
11
Teaching and learning, and evaluation strategies
Learning methods
Evaluation methods
CLO1
Practical
Assignments, Practical Assessment
CLO2
Lectures
Tests, Final Exam
CLO3
Practical
Assignments, Practical Assessment
CLO4
Practical
Assignments, Practical Assessment
CLO5
Practical
Assignments, Practical Assessment
2. 2
12
Synopsis
This course is the continuation of the previous course. It introduces complex flow control, method, array, class design, file and file I/O.
13
Mode of Delivery
Lectures, Hands-on works in the computer labs
14
Types and assessment methods
Assignments
Practical Assessment (Quizzes / Lab Test/ Exercises)
Tests
10%
30%
20%
60%
Final Exam
40%
TOTAL
100%
15
Mapping of course learning outcomes to the program outcomes
PO1
PO2
PO3
PO4
PO5
PO6
PO7
PO8
CLO1
√
CLO2
√
CLO3
√
CLO4
√
CLO5
√
CLO6
CLO7
16
Titles of the course and the SLT per topic
Refer to DTCP2023 Fundamentals of Programming Course Outline
17
Main references
Liang Y. Daniel. Introduction to Java Programming, Eight Edition, 2011, Pearson
F. Joyce. Java Programming, 6th Edition, 2011, Course Technology
Additional references
Java TM Tutorial, @http://www.javasoft.com/…./tutorial.htm
18
Other information
Refer to Practical Activities
3. 3
Appendix: DTCP 2023 Fundamentals of Programming course outline
Week
Title / Topic
Student Learning Time (Hours)
Guided
(Face to face)
Independent Learning
Total
SLT
Lecture
Tutorial/ Practical
1
1. INTRODUCTION TO JAVA PROGRAMMING CONCEPT
2
2
4
8
2
2. COMPLEX FLOW CONTROL
2.1 Nested if statement
2
2
4
8
3
3. COMPLEX FLOW CONTROL
3.1 Nested if, else loop
3.2 Nested for Loop
2
2
4
8
4
4. METHOD
4.1 Introduction to method
2
2
4
8
5
5. METHOD
5.1 Method definition
5.1.1 Method return type
5.1.2 Method name
5.1.3 Parameter list
5.1.4 Method body
5.1.5 return() statement
2
2
4
8
6
6. METHOD
6.1 Method calling
6.1.1 Argument
6.1.2 Calling method with return type void
6.1.3 Calling method with return type other than void
2
2
4
8
7
7. METHOD
7.1 Method scope
2
2
5
9
8
8. ARRAY
8.1 Advantages of Arrays
8.2 Declaring Arrays
2
2
4
8
4. 4
9
9. ARRAY
9.1 Creating Arrays
9.2 A Simple Application Using Arrays
2
2
4
8
10
10. CLASS DESIGN
10.1 Declaring Java Technology Classes
10.2 Declaring Attributes
2
2
4
8
11
11. CLASS DESIGN
11.1 Declaring Method
11.2 Accessing Object Members
2
2
5
9
12
12. FILE AND FILE I/O
12.1 Creating File objects.
2
2
4
8
13
13. FILE AND FILE I/O
13.1 Manipulating File objects.
2
2
4
8
14
14. FILE AND FILE I/O
14.1 Reading and writing to file stream.
2
2
4
8
Total Contact Hours
28
28
56
Total Independent Learning
58
Quizzes, Mid-term Test, Final Examination
6
Total SLT
120
Equivalent Credit Hours
(120 hours of SLT / 40) = 3
5. 5
Appendix: Practical activities
Practical Activities
Hour
1. Intro to Java programming
2
2. Complex Flow Control
Writing programs using nested if
2
3. Complex Flow Control
Writing programs using nested if, else statement
Writing programs using nested for Loop
2
4. Method
Writing programs using method.
2
5. Method
Writing programs with method definition.
2
6. Method
Writing programs with method call.
2
7. Method
Writing programs with method scope.
2
8. Array
2
9. Array
Writing programs using arrays.
2
10. Class Design
Writing program with a few attributes.
2
11. Class Design
Writing programs with a few methods.
Writing programs to access objects.
2
13. File and File I/O
Writing programs to manipulate File.
2
14. File and File I/O
Writing programs to read and write to file stream.
2
Total
28
Disediakan Oleh:
…………………………..…………….………….
Khirulnizam Abd Rahman
Pensyarah
Jabatan Sains Komputer
21 November 2014
Disemak Dan Disahkan Oleh:
…………………………..………….………………...
Hasnuddin Ab Rahman
Timbalan Dekan (Akademik)
Fakulti Sains & Teknologi Maklumat
21 November 2014