38 Stories To Learn About Oop

cover
20 Aug 2023

Let's learn about Oop via these 38 free stories. They are ordered by most time reading created on HackerNoon. Visit the /Learn Repo to find the most read stories about any technology.

1. Design Pattern: Strategy Pattern in Practice

Learn strategy design patterns with practical examples. Why and how to use strategy patterns in software design.

2. OOP in Python: Understanding Private and Public Methods

This blog post is part of a series of tutorials on Object-Oriented Programming in Python 3.0. We will try to understand the types of methods and their uses.

3. Inheritance vs Composition in JavaScript

Inheritance vs Composition in JavaScript. What is better, when use inheritance, when use composition. We will look at different examples on JS.

4. Celebrating 50 Years of Smalltalk

In 1972, Alan Kay, Dan Ingalls, and Adele Goldberg at Xerox PARC created a revolutionary new programming language called Smalltalk.

5. Learning Duck Typing in Javascript

This article dives into learning duck typing in Javascript and examples of polymorphism.

6. Introduction to OOP in Javascript

Javascript used to be, just a few years ago, one of the most disliked languages by the community, it's unnatural behavior was a common inspiration for jokes between developers. One of the main complaints was about the lack of a simple syntaxis to work with classes.

7. GRASP Principles - Part 3: Polymorphism, Pure Fabrication, Indirection, Protected Variations

The last part of GRASP is where we will learn polymorphism, pure fabrication, indirection, and protected variations and how to use them in our projects.

8. Understand the Intent of Patterns And Principles Before Applying Them

TL;DR;

9. Raffaele Florio Writes about the Most Misunderstood Programming Paradigm

Raffaele Florio loves to define himself as an abstractions explorer. His main passion is software developing. He's digging a lot in OOP and concurrent models.

10. 3 Simple Rules to Writing Better Code Instantly

Learn how you can improve your code quality in an instant following 3 simple rules that we cal

11. SOLID Principles in JavaScript: What Does the "O" Stand For?

Hello, guys. This is the second article about SOLID principles with Javascript examples. In my previous article I described what are patterns in general, what is SOLID and why we should use them. If you haven't read it, pls, read it now and continue read current article after the previous one.

12. Implementing an Event Loop in Java for Fun and Profit

An event loop waits and reacts to events. In this article a multithreaded Java implementation is presented. A real world scenario inspired its implementation.

13. Once Upon a Time in Javascript: Classes and Inheritance

Classes in javascript were first introduced as part of ECMAScript 6 standard back in 2015. Today, they feel like something natural, but how was javascript before them?

14. Java Constructor Interview Questions

Here we've listed the most commonly asked concepts on constructors in java that can help you ace your java interview.

15. SOLID Principles in JavaScript: What Does the "D" Stand For?

Hello, guys, this is the last part of SOLID Principles in JavaScript and if you haven't read the previous three (first part, second part, third part, fourth part), I highly recommend to read them first and come back here.

16. Does Golang Follow the Object Oriented Programming Paradigm?

Many are wondering whether Golang is a language that can apply the Object Oriented Programming paradigm. Let's discuss this here.

17. Building An In-memory Database in Go

Building an in-memory database in golang is a basic task that you are likely to have to do. It needs you to make a database and a table before organising.

18. How to Use the Iterator Pattern in C#

According to Gang of Four, the iterator pattern provides a process to obtain the aggregator object without knowing its implementation.

19. SOLID Principles in JavaScript: What Does the "L" Stand For?

Hello, guys, this is the third part of SOLID Principles in JavaScript and if you haven't read the previous two (first part and second part), I highly recommend to read them first and coming back here.

20. SOLID Principles in JavaScript: What Does the "I" Stand For?

Hello, guys, this is the fourth part of SOLID Principles in JavaScript and if you haven't read the previous three (first part, second part and third part), I highly recommend to read them first and come back here.

21. A Practical Guide to Interfaces in Golang

A simple and explanatory guide to understanding interfaces in golang.

22. The 3 Stages to Making Your Own No-Code Solution

Create your own no-code solution in three easy to follow steps.

23. Getting Started Debugging Spring Transactions in Production

We use annotations to denote transactional behavior in modern Spring so we have no code, no failure, no debugging... But is it really?

24. Can You Really Code Without IF Statements?

I went to an OOP workshop by Sandi Metz several years ago. She made a comment that at one of her previous jobs, they didn't use if statements.

25. Objects & Pursuit of Happiness: Understanding Object Oriented Programming (OOP)

In a good object-oriented system, each object has the right responsibilities.

26. Java: The Object Equality Problem

I was writing some Java test code when I faced up the voracity of the equals method. It presents, despite its ostensible simplicity, a tricky problem.

27. Uncover the Alias Pattern

The Alias pattern minds two issues. Extending how a final class builds its objects.

28. Interservice Communication in Microservices: 3 Common Misunderstandings

Think back to the last time you worked in a distributed system, did you consider using something other than RESTful HTTP calls as the method of communication between components in this system?

29. The Smart Way to Clone Django Instances

How to implement proper reusable clone for Django model instances with related objects.

30. Building Your Own Programming Language From Scratch: Part IX - Hybrid Inheritance

In this part of creating programming language, we'll implement the hybrid inheritance for the classes like in C++ and write a calculator with multiple classes

31. A Game to Boost Your Java Object Oriented Programming Skills

This is a simple black screen console game where first the program will automatically generate a random number, and all the players who play the game here will continue to guess the number one by one and match it with the previous program. The game will end if it matches the program's generated number. Whoever matches will be the winner of this game.

Here, we will add another interesting feature which is a counter. What is a counter? It's not just a recorder that will keep recording how many times the player is guessing and how many guesses after which a winner is actually found.

32. Extending Laravel Artisan Commands

33. Understanding JavaScript Prototypes and Its Methods

Get deeper understanding what is prototype, Object.setPrototypeOf and obj.proto and ways of use it in JavaScript.

34. Spring Framework: To Use Or Not To Use, That Is The Question

It's impossible to write OOP code with Spring. From its core it promotes the use of singletons and anemic data structures a.k.a. data "objects" a.k.a. DTO. This fuels procedural programming and kills OOP.

35. SOLID Principles of Object Oriented Design And Architecture

Object oriented programming (or OOP) is a style of programming that encapsulates data and behaviours into models known as objects. In this way, related code is grouped together and kept separate from other code, and provides reusable blocks that can be used to rationalise the problem at hand.

36. SOLID Principles: A Simple and Easy Explanation

SOLID Principles is a coding standard that all developers should have a clear concept for developing software in a proper way to avoid a bad design. It was promoted by Robert C Martin and is used across the object-oriented design spectrum. When applied properly it makes your code more extendable, logical and easier to read.

37. Overloading Vs. Overriding in C#

Method overloading and overriding are two common forms of polymorphism ( the ability for a method or class to have multiple forms) in C# that are often confused because of their similar sounding names. In this article, we show the difference between the two with some practical code examples.

38. Refactoring With Tests in Python: a Practical Example

This post contains a step-by-step example of a refactoring session guided by tests. When dealing with untested or legacy code refactoring is dangerous and tests can help us do it the right way, minimizing the amount of bugs we introduce, and possibly completely avoiding them.

Thank you for checking out the 38 most read stories about Oop on HackerNoon.

Visit the /Learn Repo to find the most read stories about any technology.