CSC 103 PF Ver1.0 RizwanRashid
CSC 103 PF Ver1.0 RizwanRashid
CSC 103 PF Ver1.0 RizwanRashid
Catalog Description:
This course emphasis the basic concepts used in programming. The topics are: Overview of Computer
Programming; Principles of Structured, Modular and Functional Programming; Overview of
Structured Programming Languages; Algorithms and Problem Solving; Program Development:
Analyzing Problem, Designing Algorithm/Solution, Testing Designed Solution, Translating
Algorithms into Programs; Basic Syntax and Semantics of a Higher-Level Language; Variables and
Primitive Data Types; Expressions and Assignments; Simple I/O including File I/O; Conditional and
Iterative Control Structures; Functions and Parameter Passing; Arrays; Strings and String Processing;
The Concept of Recursion; The Concept of Type System: Compound Types Built from other Types
(e.g. Array, Functions), Association of Types, Type Safety, Static Typing; Program Comprehension;
Program Correctness: Types of Errors (Syntax, Logic, Run-Time), The Concept of a Specification,
Code Reviews, Testing Fundamentals and Test-Case Generation, Unit Testing; Simple Refactoring;
Modern Programming Environments: Code Search, Programming using Library Components and
their APIs; Debugging Strategies; Documentation and Program Style.
Prerequisites:
None
Text Book:
1. Introduction to JAVA Programming, Liang, Y.D., 9th Edition (2012), Prentice Hall.
Reference Book:
1. Java: An Introduction to Problem Solving and Programming, Savitch, W., 6th Edition (2012),
Addison-Wesley.
1
Assessment Plan for the Course:
Evaluation methods Theory Weight (%)[T] Lab Weight(%)[L]
Quizzes (4) 15 -
Assignments (4) 10 25
Sessional exam(I and II) 10 and 15 10 and 15
Terminal Exam 50 50
Total 100 100
Total =T+L T=(T/100)*75 L=(L/100)*25
2
Course Learning Outcomes:
Upon completion of the course, students will be able to:
C1 Explain different programming language paradigms and phases in the program development.
Explain the concepts of programming constructs, such as type system, using a high level
C2
language.
C3 Apply programming concepts based on simple scenarios with and without Files.
Apply various software development methods, such as program comprehension, code search,
C4
refactoring, in programming.