Welcome to COMP 313/413 at Loyola University Chicago¶
Lecture notes for the mostly Scala and Android-based course COMP 313/413: Intermediate Object-Oriented Programming at Loyola University Chicago’s Computer Science Department. This version of the course is normally taught by Konstantin Läufer.
Warning
These notes are still being written, so expect a few rough edges. But we’re getting closer!
Table of Contents¶
- 1. Introduction
- 2. Course Outline
- 3. Context and Background
- 4. Basics of Object-Oriented Programming
- 4.1. Reference semantics vs. value semantics
- 4.2. Equality vs. identity
- 4.3. Parametric polymorphism (generics)
- 4.4. Relationships among classes and interfaces
- 4.5. Class-interface continuum
- 4.6. Subtyping vs. subclassing/inheritance
- 4.7. Subtype polymorphism: static vs. dynamic type
- 4.8. Being a good descendant of java.lang.Object/System.Object
- 4.9. Clone in the context of the Composite pattern
- 4.10. Packages/namespaces
- 4.11. Member access
- 5. Summary
- 6. Appendix: Course Software
- 7. Appendix: Course Syllabi
- 8. Appendix: TODO
Indices and tables¶
Todo
add sample projects, activities, tests, and (tiered) master list for presentations