Skip to content

My solutions to some of the exercises from the University of Helsinki’s MOOC Java Programming I & II on Object-Oriented Programming

Notifications You must be signed in to change notification settings

JavierMarro/Java-MOOC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java programming MOOC (I & II)

Some of the most relevant code produced while taking the Java programming MOOC (I and II) by the University of Helsinki.

All content uploaded to this repository comes from https://java-programming.mooc.fi/, however solutions to all problems are my own, and any solutions from the University of Helsinki have been adequately labelled as either 'Suggested answer' or 'Model answer'.

This course was heavily focused on the programming paradigm Object-Oriented Programming. Which is explained in the Java MOOC I as follows:

"In object-oriented programming, information is represented as classes that describe the concepts of the problem domain and the logic of the application. Classes define the methods that determine how information is handled. During program execution, objects are instantiated from classes that contain runtime information and that also have an effect on program execution: program execution typically proceeds through a series of method calls related to the objects. As mentioned a few weeks ago, 'the program is built from small, clear, and cooperative entities.'

The basic ideas of object-oriented programming, i.e., the representation of information and its processing methods with he help of classes and objects, first appeared in Simula 67, which was designed for developing simulations and the Smalltalk programming language. Its breakthrough came in the 1980s through the C++ programming language and Java has made it one of the most widely used programming paradigms in the world.

One of the major benefits of object-oriented programming is how problem-domain concepts are modeled through classes and objects, which makes programs easier to understand. In addition, structuring the problem domain into classes facilitates the construction and maintenance of programs."

After doing my own research I came across several websites that helped me understand concepts linked to Java and OOP:

The four pillars of OOP:

https://www.geeksforgeeks.org/java/four-main-object-oriented-programming-concepts-of-java/

The concept of SOLID:

https://www.freecodecamp.org/news/solid-principles-explained-in-plain-english/

Main OOP concepts in Java:

https://www.geeksforgeeks.org/java/object-oriented-programming-oops-concept-in-java/


Other websites I have found to deepen my understanding of Java & Design Patterns:

https://java-design-patterns.com/

https://refactoring.guru/

Baeldung to dive into Java as backend - Spring Boot

https://www.baeldung.com/java-tutorial

https://www.baeldung.com/courses/rest-with-spring-boot-course

Certificates obtained

Java Certificate
Java Certificate

About

My solutions to some of the exercises from the University of Helsinki’s MOOC Java Programming I & II on Object-Oriented Programming

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages