Skip to content

Alex-Golub/MOOC-Java-Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java programming MOOC course

java-programming.mooc.fi

This repository contains my solution code for University of Helsinki’s Java programming MOOC course. The course’s scope and material are identical to CS Introduction to Programming and Advanced Programming courses.

Java Programming I

  • Part 1:
    • Getting started with programming
    • Printing
    • Reading input
    • Variables
    • Calculating with numbers
    • Conditional statements and conditional operation
  • Part 2:
    • Recurring problems and patterns to solve them
    • Repeating functionality
    • More loops
    • Methods and dividing the program into smaller parts
  • Part 3
    • Discovering errors
    • Lists
    • Arrays
    • Using strings
  • Part 4
    • Introduction to object-oriented programming
    • Objects in a list
    • Files and reading data
  • Part 5
    • Learning object-oriented programming
    • Removing repetitive code (overloading methods and constructors)
    • Primitive and reference variables
    • Objects and references
  • Part 6
    • Objects on a list and a list as part of an object
    • Separating the user interface from program logic
    • Introduction to testing
  • Part 7
    • Programming paradigms
    • Algorithms
    • Larger programming exercises

Java Programming II

  • Part 8:
    • Short recap
    • Hash Map
    • Similarity of objects
    • Grouping data using hash maps
    • Fast data fetching and grouping information
  • Part 9:
    • Class inheritance
    • Interfaces
    • Object polymorphism
  • Part 10
    • Handling collections as streams
    • The Comparable Interface
    • Other useful techniques
  • Part 11
    • Class diagrams
    • Packages
    • Exceptions
    • Processing files
  • Part 12
    • Type parameters
    • ArrayList and hash table
    • Randomness
    • Multidimensional data
  • Part 13
    • Graphical user interfaces
    • UI components and their layout
    • Event handling
    • Application's launch parameters
    • Multiple views
  • Part 14
    • Data visualization
    • Multimedia in programs
    • Larger application: Asteroids
    • Maven and third-party libraries
    • Conclusion

About

🎓 University of Helsinki MOOC on Java programming

Topics

Resources

Stars

Watchers

Forks

Languages