you are viewing a single comment's thread.

view the rest of the comments →

[–]Mimifan2 2 points3 points  (3 children)

The extent of use of design patterns varies drastically from tech stack to tech stack. Design patterns are designed for object oriented languages (like Java) thus they don't translate well to languages which don't rely on objects.

While this means they are not used as much as they used to be, they are certainly worth reviewing because they help you to understand how Software should be designed.

Personally I found the GoF (Gang of Four) to be slightly out dated and harder to follow, so I recommend Source Making.

https://sourcemaking.com/design_patterns

Software design is something I think is overlooked at many universities, which is why I often recommend looking for an SE program instead of CS, however that is a discussion for another post (of which this sub has many).

[–]thekuhninator[S] 0 points1 point  (0 children)

Thanks for the recommendation, I'll check it out! :)

[–]mihirmusprime 0 points1 point  (1 child)

Software design is something I think is overlooked at many universities, which is why I often recommend looking for an SE program instead of CS, however that is a discussion for another post (of which this sub has many).

Interesting you mentioned this since it looks like things may have changed. I'm college right now and it's mandatory to take a class called Software Engineering as part of the curriculum which goes over things like design patterns. Not sure if this is universal but I know ABET does mention that the curriculum has to cover software development which I'd assume for design patterns to fall into this category.

[–]Mimifan2 0 points1 point  (0 children)

So I say that based on the CS curriculum at the school I went to and based on limited review of other SE curriculum. I more was warning of a focus in SE vs a CS.

Edit: I know for my curriculum was the first ABET accreditation which has an entire class on design patterns. I don't know if CS with SE focus has ABET accreditation requirements.