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 
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 
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 
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 
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

DTCP2023 Fundamentals of Programming

  • 1.
    1 DEPARTMENT OFCOMPUTER 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: DTCP2023 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: Practicalactivities 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