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.


Reply via email to