This course introduces object-oriented programming, including class structure, inheritance and polymorphism. It will cover event-driven GUI programming. Other topics may include recursion, elementary data structures and algorithms, threads, file access, exceptions and intellectual property. Students will write programming projects to demonstrate their mastery of these concepts.

Resources:

This is where I will post resources useful for the class and will from time to time post the lecture slides that I use in class as well.

Resources for class:

  • Jetbrains student page If you didn't get a Jetbrains student account for comp151 you should do so now.
  • I recommend managing your jetbrains IDEs through The Jetbrains toolbox It is so much easier to get the one you need and keep them updated.
  • If you don't use the toolbox, you will need to get Intellij Idea IDE directly
  • You will want to get the Java compiler. Get either version 16 or 17 if it is available (17 is better but scheduled to come out in early September. I recommend getting it from Microsoft openJDK
    • windows users should get the MSI version,
    • Mac users should get the pkg version
    • linux users just use your package manage (apt, snap, or rpm)
  • you will need Git (download link) if you are on windows (Linux and maybe Mac has it already)
  • we may add more later.


Class Lecture Slides:

from time to time I will post the lecture slides that I use as notes for what to discuss and present to the class here in this area.