Introduction to Programming II

Curriculum guideline

Effective Date:
Course
Discontinued
Yes
Course code
CSIS 1275
Descriptive
Introduction to Programming II
Department
Computing Studies & Information Systems
Faculty
Commerce & Business Administration
Credits
3.00
Start date
End term
202130
PLAR
No
Semester length
15 Weeks
Max class size
35
Contact hours

Lecture: 2 Hours per week

Lab: 2 Hours per week

Total: 4 Hours per week

Method(s) of instruction
Lecture
Lab
Learning activities
  • Lecture
  • Seminar
  • Tutorial
  • Hands-on exercises in the lab
Course description
This course is a thorough introduction to computer science and programming suitable for students with some programming background. Students will learn the fundamental concepts and terminology of computer science and acquire elementary programming skills in the Java programming language.
This course is intended for students who will major in computing science or a related program.


Course content
  • Usage of the official Java Development Kit (JDK) and any appropriate third party development kit for Java
  • Data types, variables, constants, and comments
  • Arithmetic operators
  • Math and String class
  • Decision Structures
  • Loops and Files
  • Methods
  • Overloading methods and class constructors
  • Classes and Interfaces
  • Access modifiers and non-access modifiers
  • Arrays
  • Inheritance
  • Overriding
  • Exceptions
  • Recursion
  • Introduction to basic Search and Sorting algorithm
  • Basic to more advanced Swing components and Event handling
  • The basics of Java applets.
  • GUI and database programming

 

Learning outcomes

At the end of this course the successful student will be able to:

  • Identify the purpose and behavior of a provided code fragment.
  • Modify an existing code fragment to change its behavior.
  • Modify conditional and iterative structures in a short program.
  • Write well-structured, well- documented, well-commented readable code.
  • Design, implement, test, and debug a program that uses each of the following fundamental programming constructs: basic computation, simple I/O, basic conditional and iterative structures, and methods.
  • Describe the syntax and semantics of different conditional structures.
  • Use conditional structures.
  • Apply the techniques of decomposition to break a program into smaller pieces.
  • Describe the role of formal and actual parameters of a function.
  • Describe how strings and arrays are allocated, manipulated and used.
  • Compare iterative and recursive solutions for elementary problems such as factorial.
  • Formulate loop invariants for simple loops.
  • Demonstrate loop termination.
  • Implement, test, and debug simple recursive methods.
  • Explain the philosophy of object- oriented design and the concepts of encapsulation, abstraction, inheritance, interface and polymorphism.
  • Use different access modifiers and non-access modifiers.
  • Describe how the class mechanism supports encapsulation and information hiding.
  • Compare and contrast the notions of overloading and overriding in methods.
  • Identify the scope of the variables involved in a given code.
  • Access and program databases using various classes.
  • Design GUI programs.

 

Means of assessment
   
Assignments (3-6) 10% - 25%
Quizzes (2 - 3)  15% - 25%
Midterm Examination          25% - 35%
Final Examination*  30% - 40%
      100%

* Practical hands-on computer programming exam

In order to pass the course, students must, in addition to receiving an overall course grade of 50%, also achieve a grade of at least 50% on the combined weighted examination components (including quizzes, tests, exams).

Textbook materials

Textbooks and Materials to be Purchased by Students

Farrell. Java Programming. Latest Edition.  Course Technology.

or

Gaddis and Muganda, Java from Control Structures through Data Structures

or

approved by the department

Prerequisites

A grade of C or better in either CSIS 1175 or CMPT1110

Corequisites

Courses listed here must be completed either prior to or simultaneously with this course:

  • No corequisite courses
Equivalencies

CISY 3480

Which prerequisite