1
COURSE SYLLABUS
IT 104
COMPUTER PROGRAMMING 2
COURSE SYLLABUS
2
COURSE SYLLABUS
Course Code IT 104 Course Credits (Units) Total: 3 Lecture 3 Lab 0
Course Title Computer Programming 2 Contact Hours/Week Total: 3 Lecture 3 Lab 0
Prerequisite IT 104 - Computer Programming 1 College / Department Bachelor of Science in Information Technology
Component Professional Course Semester, Academic Year Second Semester, A.Y. 2024-2025
Program & Year BS in Information Technology – 1st Year Faculty Raffy E. Aguilar
Course Outcomes in Relation to Program Outcomes
Program Outcomes (POs)
(Legend: I – Introduced, E – Enabled, D – Demonstrated)
Course Outcomes (COs)
At the end of the course, the learners should be able to: PO 6 PO 7 PO 8 PO 9 PO 10 PO 11 PO 12 PO 13 PO 14 PO 16 PO 17
CO1 Understand Object-Oriented Programming Concepts E E E I E E I I I E I
Design and Implement Python Method, Classes / Use Control
CO2 I E D D E E E E D E E
Structures Effectively
CO3 Handle Exceptions Properly / Understand and Apply File I/O I E D D E E I E D E E
Apply Polymorphism and Dynamic Binding / Use Python
CO4 I E E D E E E E D E E
Collections Framework / Implement Multithreading Concepts
CO5 Develop Graphical User Interfaces (GUI) / Build and Test Python I E D D E E D E D E E
Applications
Legend: I – Introduced – An introductory course to an outcome; E – Enabled - A course that strengthens the outcome; D – Demonstrated – A course demonstrating an
outcome
3
COURSE SYLLABUS
IT 212 - Computer Programming 2 (Python Language) is a required core subject for second-year Bachelor of Science in Information Technology students. With an
emphasis on the Python programming language, this course expands on the fundamentals of programming. Advanced topics in object-oriented programming,
such as inheritance, polymorphism, classes, objects, and interfaces, will be covered with the students. With an emphasis on practical application, the course
gives students the skills they need to design, implement, and debug Python programs that address real- world issues. Students will improve their software
Course Description: development techniques, coding efficiency, and problem-solving skills via practical projects and group activities, preparing them for careers in the IT sector.
Course Syllabus
Course Tim
Teaching and
Outco e
Learning Objectives Content/Course Matter Learning Assessment Tasks Remarks
me Fra
Activities
me
At end of the unit, the students must be Unit I: Review of Python Basics Code review Review -
able to: sessions of Python
basic Python Basics
1. Review and reinforce fundamental programs.
Python concepts. Hands-on - Write
Practice
1. Python Syntax and Structure a program that
2. Apply basic Python syntax and exercises
on control uses control flow
control structures in simple 2. Variables, Data Types,
flow. to solve a simple
programs. and Operators
problem.
3. Control Flow (If-else, Switch)
Act. 1 – Simple
program using
Python basics
Wee
k1
4
COURSE SYLLABUS
At end of the unit, the students must be Unit II: Object-Oriented Programming Discussion/PDF Quiz 1 -
able to: (OOP) Concepts OOP
Demonstration
Concepts
CO1 1. Understand the principles of OOP. 1. Classes and Objects
Wee Quiz
k2 Act. 2 -
& 2. Create and manipulate objects in 2. Methods and Constructors
Python. Assignment Implement a
CO 3. Encapsulation and Access simple class with
2
Modifiers fields, methods,
and a
constructor.
Written Exam Long Quiz 1 –
Summative Examination for Topic (Unit I & Unit II)
Topic Unit II
At end of the unit, the students must be Unit III: Inheritance and Polymorphism Discussion/PDF Act. 3 -
CO1,
able to: Inheritance and
CO2, Demonstration
Polymorphism
& 1. Implement inheritance in Python Wee Quiz
1. Inheritance Hierarchies k3 Hands-on 1 -
CO programs.
Activity Method
4 2. Method Overriding
2. Demonstrate polymorphism overriding.
through method overriding. 3. Polymorphism and Dynamic
Binding
At end of the unit, the students must be Unit IV: Interfaces and Abstract Discussion / Quiz 3 -
able to: Classes PDF File Interfaces and
CO1, Abstract
1. Differentiate between 1. Defining and Demonstration
CO2, Wee Classes
interfaces and abstract classes. Implementing k4 Quiz
& Interfaces Ass. 1 - Design
2. Implement interfaces and
CO Assignment an interface
abstract classes in Python. 2. Abstract Classes vs Interfaces
4 and implement
3. Multiple Inheritance in Python it in multiple
classes.
5
COURSE SYLLABUS
Written Exam Long Quiz 2 –
Summative Examination for Topic (Unit III & Unit IV)
Topic Unit III
At end of the unit, the students must be Unit V: Exception Handling Multi-Media Quiz 4 -
able to: Presentatio Exception
CO2 n / PDF File Handling
1. Implement robust error handling in Wee
1. Try-Catch Blocks
& Python programs. k5 Demonstration Ass. 2 - Develop
CO 2. Throw, Throws, and Finally a program that
2. Create custom exceptions for Quiz
3 implements
specific error scenarios. 3. Custom Exceptions
Assignment custom
exceptions.
6
COURSE SYLLABUS
At end of the unit, the students must be Unit VI: Python Collections Multi-Media Act. 4 – Coding
able to: Framework Presentatio challenge on
n / PDF File using different
1. Use Python Collections to manage
Discussion collection types.
data.
CO2 Wee Demonstration
2. Perform basic operations like
sorting and searching on 1. Lists, Sets, and Maps k6
& Activity
CO collections.
2. Iterators and Enhanced for Loop
4
3. Sorting and Searching
Collections
Written Exam Long Quiz 3 –
Summative Examination for Topic (Unit V & Unit VI)
Topic Unit III
At end of the unit, the students must be Unit VII: Generics and Type Safety Multi-Media Act. 5 –
able to: Presentatio Generic
n / PDF File methods and
1. Understand the use of classes.
CO2 Discussion
generics to ensure type 1. Introduction to Generics
& safety in Python. Wee Demonstration
2. Generic Methods and Classes k7
CO
2. Implement generic classes Activity
3 3. Bounded Types
and methods.
At end of the unit, the students must be Unit VIII: File I/O and Serialization Multi-Media Act. 6 –
able to: Presentatio Exercises on
n / PDF File reading/writing
CO2, 1. Reading and Writing Files files.
1. Perform file operations in Python. Discussion
& 2. Serialization and Deserialization Wee
CO 2. Implement serialization for k8 Demonstration
3 object persistence. 3. Working with Binary and Text
Activity
Files
Paper and Pen Written & Hands-
Wee
& Laboratory on Exam – Topic
7
COURSE SYLLABUS
Midterm Examination - Topic (Unit I – Unit VIII) Exam (Unit I – Unit IV)
k9
8
COURSE SYLLABUS
At end of the unit, the students must be Unit IX: Multithreading and Multi-Media Quiz 1 -
able to: Concurrency Presentatio Multithreadi
n / PDF File ng
CO2 1. Implement multithreading in 1. Introduction to Threads
Python applications. Discussion
& 2. Thread Life Cycle and States
Wee Demonstration
CO 2. Address concurrency issues 3. Synchronization and Deadlocks k
4 using synchronization. Quiz
10
At end of the unit, the students must be Unit X: Networking in Python Multi-Media Act. 1 -
able to: Presentatio Networking
n / PDF File exercises with
CO2 1. Implement basic networking client- server
features in Python. 1. Sockets and ServerSockets Discussion
models.
& Wee
2. Create client-server applications 2. URL and HttpURLConnection k Demonstration
CO
using sockets. 11
3 3. Creating Simple Activity
Networked Applications
Written Exam Long Quiz 1 –
Summative Examination for Topic (Unit IX & Unit X)
Topic (Unit IX –
Unit X)
At end of the unit, the students must be Unit XI: GUI Programming with Python Wee Multi-Media Act. 2 -
able to: Swing k Presentatio Designing a
CO2 12 n / PDF File simple GUI
, 1. Design and implement graphical 1. Introduction to Python Swing
user interfaces in Python. application using
CO3 Discussion
, 2. Building User Interfaces Python Swing.
2. Handle user interactions through
3. Event Handling Demonstration
& event- driven programming.
CO Activity
5
At end of the unit, the students must be Unit XII: Advanced GUI Programming Multi-Media Ass. 1 - Develop
able to: Presentatio a Python Swing
CO1 n / PDF File application
9
COURSE SYLLABUS
, 1. Layout Managers Discussion using advanced
CO2 1. Utilize advanced GUI components
2. Advanced Controls (Tables, Demonstration controls and
, and layouts in Python. Wee
Trees, etc.) MVC.
CO3 k Assignment
2. Apply the MVC pattern to
, 13
structure GUI applications. 3. MVC Pattern in GUI Design
CO4
,
&
CO5
10
COURSE SYLLABUS
Written Exam Long Quiz 2 –
Topic (Unit XI –
Summative Examination for Topic (Unit XI & Unit XII) & Giving Final Project Unit XII)
Giving of
Final Project
(Group)
At end of the unit, the students Unit XIII: Database Connectivity with Multi-Media Quiz 2 – Database
must be able to: JDBC Presentatio
n / PDF File Act. 3 - Create
1. Implement database connectivity 1. Introduction to JDBC a program that
CO2 Demonstration
in Python using JDBC. uses database
2. Connecting to Databases
& Wee Quiz and performs
CO 2. Perform CRUD operations from 3. Executing SQL Queries from k CRUD
5 Python programs. Python 14 Activity operations.
At end of the unit, the students Unit XIV: Advanced Database Multi-Media Ass. 2 – Develop a
must be able to: Operations Presentatio Python
n / PDF File application that
CO2, 1. Execute advanced database 1. Prepared Statements handles
CO3, operations using JDBC. and Transactions Demonstration transactions and
Wee
2. Implement transactions and 2. Stored Procedures and k Assignment stored
&
error handling in database Callable Statements 15 procedures.
CO
applications.
5 3. Handling Large Data Sets
Written Exam Long Quiz 3 –
Summative Examination for Topic (Unit XIII & Unit XIV)
Topic (Unit XIII –
Unit XIV)
At end of the unit, the Unit XV: Refactoring and Code Multi-Media Quiz 3 –
students must be able to: Optimization Presentatio Refactoring and
n / PDF File Optimization
1. Identify opportunities for 1. Code Smells and
refactoring in Python code. Refactoring Techniques Demonstration Act. 4 – Code
Wee Quiz refactoring
2. Performance Tuning
k
11
COURSE SYLLABUS
CO5 2. Optimize Python applications and Optimization 16 Activity exercises
for better performance.
3. Best Practices in Code Quality
Face to Rubric for
Wee face Final Final Project
Presentation of the Final Project k Project
17 presentati
on
Hands-on Hands-on Exam
Wee
k Final Exam
Final Examination – Topic (Unit IX – Unit XV)
18
Patience & Diligence
Integration Responsibility & Commitment
of Values:
Interpersonal Relation
Effectiveness in doing the task
Self-worth
Midterm and final term:
1. Class Works (quizzes, practical exams, assignments, attendance, and other outputs) - 40%
Grading System: 2. Major Outcome-Based Projects (product or performance-based outputs) - 30%
3. Major Examinations - 30%
Total - 100%
12
COURSE SYLLABUS
1. Punctuality in submitting activities and projects.
2. Active class participation
Classroom
Policies: 3. Active involvement in group activity and varied tasks.
13
COURSE SYLLABUS
Designed by: Reviewed by: Approved by:
RAFFY E. AGUILAR
Instructor