If I have seen further, it is by standing on the shoulders of giants. | ||
--Newton |
As with most things in developing, and not just when developing software, most concepts have been discovered before and most things have been done before, but there are those slight variations, or a recombination of ideas, that make old concepts more useful or enable new and innovative uses. The practice of developing software has been growing and evolving since the beginning. Some time ago, the concept of structured programming, the use of functions, subroutines, while and for loops, was considered a new concept. Later, object-orientation and functional programming took those ideas and added new ones on top to further ease maintainability and allow programmers to better express their intentions in the programs they write.
As with those ideas, domain-driven design evolved from a lot of the ideas of object-oriented programming, and a lot of them have been mentioned throughout...