Content deleted Content added
Line 204:
If a design pattern is a "a general reusable '''solution''' to a commonly occurring problem", then in what way(s) does it differ from an algorithm? This article doesn't do much to explain exactly ''what'' a design pattern is. A simple example would be a good start. [[User:WilliamSommerwerck|WilliamSommerwerck]] ([[User talk:WilliamSommerwerck|talk]]) 19:13, 7 September 2011 (UTC)
:As a quick answer, I would say that design patterns differ from algorithm in that design patterns solve software engineering problems rather than computer science problems. That is, they are templates for managing complexity that arrives from interaction among software components. There are many ways to implement [[depth first search]], so even though the algorithm may be the same, on implementation may be far preferable from a software-design perspective in terms of software reusability, etc. That's a sketch of an answer, anyway. 20:38, 7 September 2011 (UTC)
:Looking up [[algorithm]], it is described as "a finite list of well-defined instructions", I would say that is different enough. Unfortunately, design patterns are an advanced subject and this is partly why explaining them is so difficult. Typically, one or more design patterns may be used in an algorithm solution expressed in a particular computer language. Books are written on the subject.
:Like classic Chinese martial arts movies, one needs good [[kung fu (term)]], not just basic knowledge of how to move your arms and legs. – [[User:Rfrankla|rfrankla]] ([[User talk:Rfrankla|talk]]) 10:42, 21 April 2014 (UTC)
== Creating a new category ==
|