官术网_书友最值得收藏!

The core idea of domain-driven design

There are many software development methodologies around, all with pros and cons but all also have a core idea, which is to be applied and understood to get the methodology right. For a domain-driven design, the core lies in the realization that since we are not the experts in the domain the software is placed in, we need to gather input from other people who are experts. This realization means that we need to optimize our development process to gather and incorporate this input.

So, what does this mean for JavaScript? When thinking about a browser application to expose a certain functionality to a consumer, we need to think about many things, for example:

  • How does the user expect the application to behave in the browser?
  • How does the business workflow work?
  • What does the user know about the workflow?

These three questions already involve three different types of experts: a person skilled in user experience can help with the first query, a business domain expert can address the second query, and a third person can research the target audience and provide input on the last query. Bringing all of this together is the goal we are trying to achieve.

While the different types of people matter, the core idea is that the process of getting them involved is always the same. We provide a common way to talk about the process and establish a quick feedback loop for them to review. In JavaScript, this can be easier than in most other languages due to the nature of it being run in a browser, readily available to be modified and prototyped with; an advantage Java Enterprise Applications can only dream of. We can work closely with the user experience designer adjusting the expected interface and at the same time change the workflow dynamically to suit our business needs, first on the frontend in the browser and later moving the knowledge out of the prototype to the backend, if necessary.

主站蜘蛛池模板: 大兴区| 昌平区| 五莲县| 温宿县| 洛扎县| 育儿| 江孜县| 五台县| 莱西市| 郑州市| 阳朔县| 苗栗市| 岑溪市| 德江县| 新绛县| 茌平县| 麻城市| 安塞县| 石林| 登封市| 隆回县| 浠水县| 登封市| 清水河县| 开平市| 临沧市| 龙江县| 沁水县| 观塘区| 敖汉旗| 延川县| 关岭| 墨江| 武功县| 大宁县| 广宗县| 南通市| 香格里拉县| 门源| 叶城县| 台中县|