Mail Archives: geda-user/2015/02/11/16:23:27.1
On 02/11/2015 06:37 AM, Bernhard Kraft wrote:
> In the web-world there is a lot of common knowledge about what a CMS/web-framework needs to do, requires to have, etc. There needs
> to be a request dispatcher, a templating framework, a database abstraction, a persistence layer, domain models for every data
> structure, etc.
>
> Maybe it would be a first start of refactoring PCB to define those requirements. If I would make a dummy-start I would create a
> list like:
>
> * GUI Interface (human interface)
> * Rendering engine (render the layout)
> * DRC engine (enforce electrical rules)
> * persistence layer (abstract data storage)
> * plugin engine (i.e. for the autorouter)
> * undo/redo logic
> * etc.
>
> Some time ago I started to read the famous "Design Patterns" book from the GoF [1]. Altough I got stuck on around page 90 I found
> the information very useful. The book describes most of the commonly found design patterns of software architecture, how to
> implement them properly and where they can be used.
>
> Sadly the book focues on creating a new product rather than refactoring and cleaning up an old one.
- Raw text -