A foundational course for the study of computer science and information systems. The course covers an overview of object-oriented programming methodology and gives the student an ability to write computer programs using standard style and structure. Programming projects are completed in one or more high-level languages.
The goal of this course is to increase your proficiency in computer programming and problem solving necessary for a degree and career in the fields of computer science and information systems. To achieve this goal, you will learn advanced techniques in problem solving using the Java programming language. You will develop algorithms and design programs using object-oriented techniques.
This course assumes a solid mastery of the material covered in CSIS 201 (or the programming concepts in ENGR 152). This course requires significantly more time and effort than CSIS 201—do not fall behind.
See the GFU CS/IS/Cyber policies for collaboration and discussion of collaboration and academic integrity. Most students would be surprised at how easy it is to detect collaboration in programming—please do not test us! Remember: you always have willing and legal collaborators in the faculty.
Almost all of life is filled with collaboration (i.e., people working together). Yet in our academic system, we artificially limit collaboration. These limits are designed to force you to learn fundamental principles and build specific skills. It is very artificial but intensional for your own benefit. The only way for you to learn is by doing the work.
To be clear, do not:
I may require an oral defense for any assignment at my discretion. This is a brief meeting where you explain and defend your submitted work. This process mirrors the business world, where professionals routinely present and defend their analyses to supervisors and clients, and ensures your work represents authentic learning. If required, you must schedule and complete your defense within 72 hours of notification to receive a non-failing grade; without the defense, you will receive a zero on the assignment. If the work product is a group submission, all team members must be present at the meeting. Routine scheduling conflicts (work, other classes, social commitments) do not qualify for extensions. Be prepared to summarize your arguments, explain your methodology, defend your conclusions with evidence, and answer questions about your work and your problem solving process. You should be ready to articulate and defend the rationale behind your work.
The mission and vision statement of the Computer Science & Information Systems (CSIS) program states that our students are distinctive by "bringing a Christ-centered worldview to our increasingly technological world."
As one step towards the fulfillment of this objective, each semester, the engineering faculty will collectively identify an influential Christian writing to be read and reflected upon by all engineering faculty and students throughout the term. As part of the College of Engineering, CSIS students participate in this effort, known as Engineering Your Soul (EYS). This exercise will be treated as an official component of every engineering course (including CSIS courses) and will be uniquely integrated and assessed at my discretion, typically as a component of the quiz grade.
Students have three options for satisfying the EYS requirement.
The deadline for all of these options is the Wednesday the week after the group meetings.
All the reflections should be posted to the canvas EYS course. A reflection should be 100 or more words and should consist of your personal thoughts on the book and/or meeting, not simply a summary of the book.
Besides EYS, I am always available to discuss the Christian faith if you have any questions or doubts. Send me an email, come by my office hours, or talk to my after class, Christ is the reason I am at GFU, I always have time to talk about faith.
The final course grade will be based on:
Week 1Introduction
Reading: Ch. 1; Git Handbook |
1/19MLK, Jr. Holiday—no classes
Reading: – |
Week 2Java Types, Variables, & Methods
Reading: Ch. 2 |
Week 3Methods
Reading: Ch. 3 |
Week 4Decision Structures
Reading: Ch. 4 |
2/12-2/13Mid-semester break—no classes
|
Week 5Repetition Structures
Reading: Ch. 5 |
Week 6Arrays & ArrayLists
Reading: Ch. 6 |
|
Midterm exam
Reading: Ch. 1–6 |
Week 7Objects & Classes
Reading: Ch. 7 & 8 |
Week 8Inheritance
Reading: Ch. 8 |
Week 9Interfaces
Reading: Ch. 9 |
Week 10I/O & Exception Handling
Reading: Ch. 10 |
Week 11Spring break
|
|
Midterm exam II
Reading: Ch. 7–10 |
Week 12GUIs & Event-Driven Programming
Reading: Ch. 11 & 12 |
Week 13Recursion
Reading: Ch. 13 |
Week 14Searching & Sorting
Reading: Ch. 14 |
Week 15Sorting & Computational Complexity
Reading: Ch. 14 |
Week 16Final exam
Reading: * |
This page was last modified on 2026-03-09 at 04:39:03.
George Fox University · 414 N Meridian St · Newberg, Oregon 97132 · 503-538-8383
Copyright © 2018–2026 George Fox University. All rights reserved.