School of Computing and Information Sciences Saint Louis University A. Bonifacio St.
, Baguio City, Philippines (074) 444-8246 loc 281
IT 122 Programming Fundamentals 2 Laboratory SYLLABUS
OBJECTIVES OF THE SCHOOL The School of Computing and Information Sciences (SCIS) is envisioned as the universitys instrument in bridging the digital divide between the academe, industry and community by being an excellent center for education in computing and information sciences. Being so, SCIS will continuously offer updated computing and information science programs committed to nurture the Christian Spirit of creative, competent and socially involved individuals who are advocates of peace and progress. Christian Spirit. SCIS rears Information and Computing professionals and practitioners who are grounded on Christian values making them responsible and ethical citizens of the globe. Creativity. SCIS trains potential Information and Computing professionals in abstraction and analysis processes enabling them to participate in lifelong learning and adaptation to the fast changing environment. Competence. SCIS equips faculty and students with appropriate knowledge and computing skills. Social Involvement. SCIS provides continuing Computing and Information solutions, education, consultancy and assistance to members of the community who are faced with issues and problems. I. DESCRIPTIVE TITLE Programming Fundamentals 2 / Computer Programming 2 II. COURSE NUMBER IT 122 / ICS 122 III. PREREQUISITE SUBJECTS IT 112, IT 112L / ICS 112, ICS 112L
School of Computing and Information Sciences Saint Louis University A. Bonifacio St., Baguio City, Philippines (074) 444-8246 loc 281
IV. COURSE DESCRIPTION Aside from doing hands-on programming exercises that will help ensure that the students have adequate exposure on variables, types, assignment expressions, primitive data types, the role of algorithms in the problem-solving process, basic I/O, sequence construct, selection control constructs, iteration control constructs, class and method definitions, parameter passing, the one-dimensional arrays and string processing, this course will provide additional practicum for students to do well on objectoriented programmers using the Java language. Practicum activities will focus on defining user-defined classes as well as using available reference classes. The practicum will allow a better understanding of access modifiers, instance variables, methods, constructors, overloading, inheritance and exception handling. In addition, the essentials of sorting and searching algorithms, twodimensional arrays, and data file handling will be appreciated through programming exercises. IV. COURSE OBJECTIVES Through hands-on exercises, the student is expected to acquire and develop the knowledge, skills, attitudes and values espoused by the University: On Competence: Be able to develop hypothetical problems algorithms for simple applications and
Be able to implement algorithms by writing Java source codes for simple applications and hypothetical problems Be able to choose appropriate program constructs and data representation for any given programming task Be able to apply the program decomposition or top-down programming approach ( i.e. Be able to write programs composed of functions/methods that are aggregated through function/method invocation and parameter passing)
Be able to apply object-oriented programming techniques Be able to develop and understand the behaviors of programs that involves at least one defined class Be able to implement and apply basic sorting and search algorithms Be able to handle data of programs by using input and output files
School of Computing and Information Sciences Saint Louis University A. Bonifacio St., Baguio City, Philippines (074) 444-8246 loc 281
On Creativity, Research and Scholarly Work
Enhance the problem solving skills of the students so that they are able to produce programming solutions to typical programming problems Provide an opportunity that will allow students to manifest their innovative character through problem solving exercises
On Social Involvement and Christian Spirit Encourage the students to explore solutions to programming problems that have applications on their personal environment Let the students realize that the knowledge and skills they get from the course are necessary for them to understand and participate in the business processes inherent with the environment with which they are members
Other Objectives Demonstrate punctuality in accomplishing tasks and functions as a student Show appropriate behavior in dealing with classmates, authorities and mentors while accomplishing the course requirements Be oriented with ways of acquiring updated knowledge in the field of programming Possess in-depth understanding of the fact that programming is a subject area that encompasses all other fields of study
V. COURSE CONTENT Content Number of Meetings (1.5 hours per meeting)
and
Strategies
Review the Basics Syntax and semantics Variables, types, assignment
expressions,
Hands-in programming Practical Tests
School of Computing and Information Sciences Saint Louis University A. Bonifacio St., Baguio City, Philippines (074) 444-8246 loc 281
Primitive data types Problem solving strategies The role of algorithms in problem-solving process Conditional and iteration control structures Simple I/O Functions/Methods and parameter passing One-dimensional Array Program structure decomposition/ Modularization Records and its representation String and string processes Defining Classes The Structure of a Java Class Declaring instance variables Declaring static variables The access modifiers (public, private, package) Method overloading The this and the super keywords Overriding methods Superclasses and subclasses Creating and Using a Package Exception Handling Catching and throwing Exceptions
Hands-in programming Practical Tests
2 8
Hands-in programming Practical Test Hands-in programming Practical Tests Group Projects
Creating simple applications
Dealing with objects Array of objects Insertion Sort Selection Sort Linear Search Binary Search Other Sort and Search Techniques Using Files Reading Input from files Writing output to files Using the two-dimensional array Involving Graphical User Interface
Hands-in programming Practical Tests Group Projects Hands-in programming Practical Test Hands-in programming Practical Tess Group Projects
1 4
School of Computing and Information Sciences Saint Louis University A. Bonifacio St., Baguio City, Philippines (074) 444-8246 loc 281
Working Strings
with
Regular
Expressions
and
Hands-in programming Practical Test
VI. COURSE REQUIREMENTS FOR EVALUATION A. Doing programs in the laboratory room B. Working with group projects D. Major Quizzes and Examinations VII. GRADING SYSTEM University policies on attendance will be implemented. Three Periodic Grades (prelim-PG, midterm-MG, and tentative final grade-TFG) and a final grade-FG will be given. The final subject grade (FG) is computed by the formula FG = (PG+MG+TFG)/3 Grades (PG, MG and TFG) are computed based on students scores on activities for the prelim period, midterm period, and final period respectively. The scores are proportionately rated based on a 50-100 grade scale through the formula Grade = ((Students Score)/(Perfect Score))*50+50 A PG, MG or FG that is lower than or equal to 65 is set to 65 and a PG, MG or FG that is equal to 100 is set to 99. Unless the student can present concrete evidences that the computation of his/her is erroneous, the final grade cannot be changed. If necessary, request for correction of grade must be done personally by the student. The student should bring his/her compilation of his/her examination/quiz papers to the instructor when the latter is available for consultation in the faculty room. Phone calls and visits to the facultys residence by the student for the purpose of grade verification will not be entertained. VIII. REFERENCES Course Notes prepared by the instructor Knuth, D.(2005). The Art of Computer Programming Liang, D. (2005). Introduction to Java Programming: Comprehensive Version Lewis, J. (2004). Java Software Solutions for AP Computer Science: Foundations for Program Design Lewis, J. et al., (2011). Java Foundations: Introduction to Program Design and Data Structures. Pearson International Edition, 2008 Java Programming Language manuals and Documentations from Sun Microsystems/Java Educational Development Initiatives/Oracle Inc. Prepared by:
School of Computing and Information Sciences Saint Louis University A. Bonifacio St., Baguio City, Philippines (074) 444-8246 loc 281
SCIS IT/CS Faculty Office: SCIS Faculty Room S 321 Approved by: Randy D Domantay, MSIT Department Head Cecila A Mercado, MSIT, PhD Dean