Pattern Based Design

Jonny via Digitalmars-d digitalmars-d at puremagic.com
Tue Nov 17 11:05:29 PST 2015


Being able to factor a project into well understood patterns that 
are loosely bound yet cohesive is fundamental for a successful 
project.

Does D have an ability to template patterns(or even better yet, a 
uml like interface that can emit D code) effectively? i.e., saves 
much more time than doing it by hand?

As I become more knowledgeable about the fundamental programming 
concepts I realize that modern programming hasn't yet brought 
design to the forefront of programming, where it naturally should 
be.

UML is a start, obviously and there are many reincarnations and 
variations on the theme. But I imagine that a fully integrated 
design interface is the way to go.

Something that allows you to work in design mode when you are 
designing and work in implementation mode when you are 
implementing... keeping the two distinct is what prevents the 
chaos that tends to happen as a project grows.

Proper design is the key to success, is it not? If so, then 
wouldn't it be wise for D to be more than just a "compiler"?

Code folding is a cheesy attempt to reduce implementation 
details. Code should be more than just a text file of the 
implementation, but should also include details the design of the 
program(what it should do, the patterns involved, how the 
patterns are fitting together, etc).

About the closest I have seen to the concept I am interested in 
is the UML applications like Visual Paradigm which attempt to 
make design the utmost importance. Because these apps are not 
integrated with the compiler, the compiler cannot take advantage 
of design details for optimization. Neither can it properly 
refactor the implementation details when the design changes.




More information about the Digitalmars-d mailing list