本篇文章將會以規劃一個簡易的活動訂票管理系統為內容,講述該如何已 nestjs 做設計。
實踐一個活動訂票管理系統
客戶端假設是使用手機使用。
設計的第一個是需要釐清需求,再透過需求去做設計。一般可以透過類似 Event Storming 的方法來做商模建立。但這邊為了著重在 nestjs 的規劃,因此不做綴述。
從上面的發想,可以透過知道基本上。系統會需要著重在以下幾點:
而從需求上,看到管理者與使用者,可以知道需要對使用者做角色的管理。依據三種不同的業務需求, nestjs 可以使用 Module 來做職責區分如下:
其中一些重要業務狀態 Entity 大致可以補捉關係如下
https://app.swaggerhub.com/apis/yuanyu90221/ticket-book-api/1.0.0
接下來幾天將會依序針對每個 module 做實作
軟體開發之中,分析與規劃最為重要。如果在系統開發之前能夠透過需求分析出符合需求的設計,對後期在變更需求時,能夠更加理解當初設計的取設。而我在撰寫這篇時,也在分析系統這塊花的很長的時間去做規劃。