Semester : Semester I 2010/2011 __________________________________________________________________
Lecturer : Norazah Binti Yusof
Synopsis :

This course equips the students with theory and practice on problem solving techniques by using two approaches, namely the structured approach and the object oriented approach. The first part of the course provides students with basic skills to program in Linux platform and advanced concepts in programming techniques including advanced files, pointers and structured data. The second part of the course is to provide students with object-oriented techniques such as class, objects, overloading, aggregation and inheritance.

This work, SCJ1023 Programming Technique II by Norazah binti Yusof is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License

Lesson 1

Introduction to Linux

• What is Kernel?
• What is X-Windows?
• What is Linux Shell/Console?
• How to use shell?
• Linux Basic Command
• The shell prompt
• What is a directory?
• What is a file?

Lesson 2

Software Engineering Principles In Software Development

• What is Software Engineering?
• Relationship of Software Engineering and
Computer Science
• What is Problem Solving?
• What is a solution?
• The system development method

Lesson 3

C++ Programming In Linux Environment

• What is vi editor?
• What is emacs editor?
• What is GCC?
• Four stages of compilation

Lesson 4


• What is a pointer?
• What is a pointer variable?
• What is address operator in C++?
• What is dereferencing in C++?
• Accessing variables through pointer
• Relationship between Arrays and Pointers
• Array Access
• Comparing Pointers
• Pointers as Function Parameters

Lesson 5

String and String Manipulation

• What is ASCII?
• What is a string?
• C-String as pointer-based string
• C-String library
• String library

Lesson 6

Structured Data

• What is Abstract Data Types?
• What is data type and structure?
• Define a structure
• Accessed a structure member
• Arrays of Structures
• Nested Structures
• Pointers to Structures
• Deferencing Structure Pointers
• Dynamically Allocating a Structure

Lesson 7

File Operations

• What is a file?
• File data types
• File Output Formatting
• Passing File Stream Objects to Functions
• What is binary file?

Lesson 8

Introduction to Class

• What is object oriented programming?
• What is a class?
• What is a Class diagram?
• What is class access specifiers?
• What is accessor function?
• What is mutator function?
• Instance of a class
• What is inline member function?
• Pointer to an object
• Dynamically allocating an object
• Constructors
• What is a Destructor?

Lesson 9

Classes and Object Manipulation

• What is instance members?
• What is a static members?
• What is a friend?
• What is a Memberwise Assignment?
• What is a Copy Constructors?
• What is Operator Overloading?