Please sign in to edit, using the button at the upper right corner of the page.
If you would like your name changed, contact Mg27713.


Functional Object Oriented Programming

From Gunn Wiki
Revision as of 19:20, 30 April 2024 by Jc37917@pausd.us (talk | contribs) (Created page with "Functional Object Oriented Programming, or FOOP, is one of Gunn's computer science classes. It is typically taken after AP Computer Science Principles and before AP Comp...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Functional Object Oriented Programming, or FOOP, is one of Gunn's computer science classes. It is typically taken after AP Computer Science Principles and before AP Computer Science A.

Functional Object Oriented Programming
DepartmentCTE
LengthYear
Credit typeWeighted
Teacher(s)Mr. Kaneko

Course catalog description

This project-based course introduces the student to the functional and object-oriented programming paradigms. It includes concepts such as functions, conditionals, data abstraction, recursion, lambda, higher-order functions, lists, loops, arrays, interfaces, inheritance, and polymorphism. Some projects throughout the year will consist of creating small games, simulating real-world processes, taking apart a computer, and producing graphically interesting programs (such as Conway’s Game of Life) in which almost all of these big ideas are needed.

• Prior Recommended Courses: Completion Geometry A (or higher), Algebra 2 (or higher), or concurrent enrollment or completion of Geometry H (or higher)

• Homework Expectation: 1-1.5 hours per week

• This is a college prep course

Topics

In the first semester of this course, students learn the functional language Simply Scheme, a version of Scheme, a dialect of Lisp. Although many students with prior experience programming in languages such as Python and Java lament the unconventional nature of this language, is is an important part of the course.

In the second semester, students learn Java, an object-oriented language.

Should I take this course?

This course is technically a prerequisite for AP CS A, though students may choose to do summer homework and directly enroll in AP CS A instead.