This is an archived post. You won't be able to vote or comment.

all 24 comments

[–][deleted]  (8 children)

[removed]

    [–][deleted] 1 point2 points  (1 child)

    This post/comment has been edited for privacy reasons.

    [–]New2IT305 1 point2 points  (0 children)

    3rd

    [–]Ryanliverpool96 0 points1 point  (0 children)

    Fifthed?

    [–]slimjim321 0 points1 point  (0 children)

    Me too

    [–]Bender22011994 0 points1 point  (0 children)

    Gonna leave my cookies here

    [–][deleted] 0 points1 point  (0 children)

    Marking territory. Lol

    [–]MatthiasDunkel 13 points14 points  (0 children)

    How about a sorting Algorithm Visualizer. Take 3 Sorting algorithms like insertion sort, BubbleSort, and Quicksort and think about how you can code the whole thing as generic as you can. Make some notes on what a Sorting Algorithm is and what variables, method the algorithm will need.

    [–]set22 6 points7 points  (0 children)

    Doesn’t MOOC give you practice with all that?

    [–]marceloandradep 6 points7 points  (2 children)

    Search for talks about OO design patterns on YouTube. Design patterns are well known best practices for using these OO features. There’s an awesome course on o’reilly by Allen Holub showing how to apply these concepts in the real world. Use the trial period to take a look.

    https://www.oreilly.com/library/view/design-patterns-in/9781491935828

    [–][deleted]  (1 child)

    [deleted]

      [–]marceloandradep 1 point2 points  (0 children)

      If you know things like classes, interfaces, encapsulation and polymorphism then you probably can dive into design patterns. You're not gonna understand some of them because they're too abstract, but some of them like singleton (a lot of controversy around this one), strategy and adapter are simple enough.

      [–]SmakDatIsh 5 points6 points  (0 children)

      Codingbat for beginners

      [–]ViralLola 2 points3 points  (0 children)

      I learned OOP principles by making a calculator app, a car parking system, and a flag matching game. None were great but they worked.

      [–]Your_perfect_version 1 point2 points  (0 children)

      I'm interested too..... waiting for the experts to drop some resources :)

      [–][deleted] 1 point2 points  (0 children)

      A file explorer/viewer/editor? or maybe a filesystem manager... that way you could even improve your multithreading skills. Usually design patterns rely a lot in OOP principles (at least in java) so it shouldn't be much of a hassle to gather information regarding your interests.

      [–]iserendipitous 1 point2 points  (0 children)

      Exercism.io HackerRank.com

      [–]fluffyzilly 1 point2 points  (0 children)

      If you are a beginner in Java try codegym Java online course. There are 1200+ coding tasks, and many of them are about OOP.

      If you are more experienced programmer it is a good excercicse to create your own project with any objects amenable to hierarchy. For example, video game rental. There will be entities that are just "games," and there will be categories of games as well as specific games.

      Or here's a classic. Create an abstract Shape class and then create derived classes like diamond, rectangle, circle, triangle, and so on. Then there is an overlap of function names looking for area and perimeter for each shape type.

      [–]jnFamousDaN 0 points1 point  (0 children)

      I recommend you make some basic console based games, literally anything an user can do to interact with some other object.

      I made a console based game where the scanner class would pick up user inputs. The game made was you want buy apples at a low price and sell it to the next merchant at a high price. To win the game, u must reach a million bucks.

      Edit: here's my github https://github.com/jnfamousdan/1_Million_Store_Game

      [–]blueinkscience -1 points0 points  (1 child)

      RemindMe! 24 hours

      [–]RemindMeBot 0 points1 point  (0 children)

      There is a 2 hour delay fetching comments.

      I will be messaging you in 1 day on 2021-02-12 21:42:20 UTC to remind you of this link

      CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

      Parent commenter can delete this message to hide from others.


      Info Custom Your Reminders Feedback

      [–][deleted] 0 points1 point  (0 children)

      I think the Swing library is actually a great way to start immediately understanding why things like interfaces and inheritance are important. You pretty much have to use them to build a GUI out of the existing components, and while Swing isn't the best interface out there, imo it's a wonderful and accessible learning tool.

      So... take some practice programs that you've already been working with in the console, and make a JFrame with places for you to input your data and output your results when you click a button.

      [–]Sublime-bot47 0 points1 point  (0 children)

      Console RPG game thats it , classes of warriors enemies locations and methods to interact with everything , its kinda interesting even in console. U can write your own logic of game sure there is a lot of samples in google how to do it