Object Oriented Programming

Hey Sup Forums I've been trying to get further into OOP. I get the basics and fundamentals and everything, but the more complicated design patterns are not coming to me as easy. What books does Sup Forums recommend to learn good OOP practices?

Also on a side note sometimes it seems like Sup Forums thinks OOP is a meme? Why is that the case? Is it?

Other urls found in this thread:

jera.com/techinfo/jtns/jtn002.html
twitter.com/NSFWRedditImage

Academics and NEET programmers hate OOP because they are lazy and don't need modularity.

Try writing some code. When your project is at about 1000 lines, you'll see what design patterns are and why they are needed.

I've been writing code... I do see why design patterns are needed. As for what they are I can kind of recognize when needs to be used. Regardless I want to study known design patterns... Do you have any recomendations on a source?

Normally I'd recommend the Gang of Four book, but it was pretty boring and UML'y so I won't.

i did this in mspaint

Bumping. I'd really like to understand OOP. Any good youtube tutorials that break it down? Also what are the alternative theories to OOP?

u gotta decide if you use OOP for
functionality
or
readability

Sup Forums hates oop because they never collaborate or have more than few k lines of code in a project

so oop is simple. you have objects. learn smalltalk

Oop in ool

OOP is so comfy. It feels wonderful to craft, refactor, and polish a well-designed OOP system, and then admire its beautiful design and architecture. It ends up being so neat, logical, modular, and organised.

lmao dude

lmao dude

What?

Head first design patterns is really good.
Don't let the cartoony and stupid looking face influence you

lmao dude

gameprogrammingpatterns.com

Also read up on visitors, as they are a somewhat clumsy replacement for multiple dispatch.

Currently learning C++ with Primer, does it teach good OOP basics or will I need a separate book to learn how to program OOP correctly?

Apart from whatever books Sup Forums will recommend, this only comes with experience, unfortunately. And it also depends a lot on what you're doing. I spent 6 years as a full time programming before encountering a usecase for an interface.

Also it's comfiert to test.
I don't think you can really do TDD without OOP.

I was studying design patterns in my free time, and a couple of months after I already made use of the command pattern to implement a job queue.
Really depends on what stuff you're working on.

But it's super useful to better understand frameworks you're forced to use.
After studying design patterns I finally started understanding how Angular works beside simply "write x to do y"

>I don't think you can really do TDD without OOP.

Is that what you think, huh?

>I've been trying to get further into OOP

>I'd really like to understand OOP

I'm not saying you can't, but that it's easier to do with OOP.

>Sup Forums hates oop because they never collaborate
> not a single comment shitting about OOP
OOP sucks balls and just makes your code harder to read
meme abstractions everywhere and 100 files containing 2 lines of code, this is fucking ridiculous.

>poo.in.the.loo.poes.yo()
how can OOP defenders ever recover from this

W-why would it be easier? Isn't TDD basically just writing a bunch of asserts before your code? That's not rocket science and shouldn't involve any objects.

Actually, I don't know.
I don't have muich experience in not OOP, so maybe I was talking out of my ass.

By using OOP to decompose your program into different classes you can test individual components before assembling them into the greater whole.


This provides improvement over sequential methods because you can catch errors in individual sections without involving your entire build.

> He thinks that people in other language only use a single function for the whole project
So can we agree all that the season started and all normie kids in school heard the Oracle teacher speak on how cool is to program in OOP and are just repeating it like parrots?

Why for example in Python use classes besides functions? Everything I've written could be done both ways.

What world do you live in? Academics actually wank over OOP all the time.

The most relevant software is written, and has always been written, in non-natively OO languages.

They are useful a few times, but never needed. They are the most dangerously overused programming template in the industry.

My current favorites that I've just started reading through are oodesign.com and deviq.com
It's really useful to hear two explanations of the same idea, especially when it's something abstract and the example codes make different things clear.

Why study to understand OOP when you could study to understand programming in general?

TDD is sometimes useful, but most often it's used to compensate lack of program design a priori.

jera.com/techinfo/jtns/jtn002.html
OOPfags BTFO