DEV Community

Discussion on: ⚡ Why Engineers need to master Data Structures and Algorithms ?

 
jessekphillips profile image
Jesse Phillips

We agree on the definition.

Design patterns are not algorithms or data structures. Putting design patterns in to your statement then pulling them out does not make evidence DS&A help choose design patterns (specifically singleton)

Thread Thread
 
kelerchian profile image
Alan

software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design.

Software design usually involves problem solving and planning a software solution. This includes both a low-level component and algorithm design and a high-level, architecture design.

There you go. The creation of software design patterns are due to tried and tested architectures and algorithms.

Also the design patterns is only prominently apparent in the community using a rigid programming language. I've never heard people using languages like rust and python having long-running discussion about design pattern.

Heck even someone joked that the only design pattern in fp programming language is function, which is somewhat true based on my experience working with fp heavy project.

Thread Thread
 
jessekphillips profile image
Jesse Phillips

So now the question is, is a singleton an algorithm or architectural design?

Thread Thread
 
kelerchian profile image
Alan

Which do you think?

Thread Thread
 
jessekphillips profile image
Jesse Phillips • Edited

Architecture.

"More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data."