常用介面分類與模塊設計的方法

来源:https://www.cnblogs.com/itlaobingge/archive/2020/03/16/12501644.html
-Advertisement-
Play Games

在繼續“四維架構設計方法論”這個話題之前,我們先來回顧一下前兩篇文章的內容,以便我們更好地理解本篇:1)如何建立架構師的立體化思維:闡述了架構設計會涉及業務、技術、系統和時間等幾個維度,也建議從技術維度將應用分成七個層次。2)如何設計分層架構和交互介面:介紹了分層架構的設計流程,以及介面設計方法等內... ...


在繼續“四維架構設計方法論”這個話題之前,我們先來回顧一下前兩篇文章的內容,以便我們更好地理解本篇:

接下來,我們來看看介面的分類方法和模塊的設計方法:

介面類型的分類方法

如何確定圖形用戶介面(GUI)和應用編程介面(API)的分工呢?在收集業務需求的過程中,我們可以標識出發起這個需求的角色是人還是程式。如果發起需求的是人,那就需要通過GUI來滿足,而如果發起需求的是程式,那就要通過API來滿足。

 

 

 

 8 介面類型的分類方法

 

 

模塊的設計方法

架構設計流程第三步,按照功能相近的原則將介面劃歸到不同的模塊當中。劃分模塊就會涉及到業務拆分。跟分層第一刀位置一樣,我們選擇業務層和領域層的交界處來做業務拆分。業務拆分需要跟業務專家一起來完成,通過這個過程可以確定出Y軸包含哪些業務系統,而這些業務系統的公用模塊或系統將會被劃分到業務層X2、領域層X4當中。

在做完第一輪業務拆分之後,我們就可以進入設計階段,確定業務的交互流程,進一步明確業務層X2、領域層X4。然後並行啟動交互設計和建模,其中交互設計是為了確定交互層X1和業務層X2,而建模是為了明確領域層X4X5以及資源層X6。設計和業務拆分可以迭代多次,直至可以進入下個階段:模塊設計及數據存儲設計。

根據業務設計的結果,我們可以進行模塊設計,明確X1X6等層的模塊組成。而建模的結果可以用於數據存儲設計,明確X1X3X6X7這些層次的模塊劃分。模塊設計和數據存儲設計可以互相推動。當上述設計都完成之後,就可以進入網路部署規劃,最後就可以做人員機器規劃,進入實施階段。隨著實施深入,發現問題後及時重新迭代整個過程。

 

9 模塊的設計方法

 

上述就老兵哥學習“四維架構設計方法論”的心得體會,當然理論是偏抽象的,要想真正掌握它還必須要在工作中實踐它,歡迎小伙伴們找我交流討論。原創不易,請不吝點個 「」,我還會持續分享職業規劃、應聘面試、技能提升、影響力打造等經驗,關註 「 IT老兵哥 」,賦能程式人生

 

 

 

關聯文章索引:

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • HTML 字元實體 HTML 中的預留字元必須被替換為字元實體。 HTML 實體 在 HTML 中,某些字元是預留的。 在 HTML 中不能使用小於號(<)和大於號( ),這是因為瀏覽器會誤認為它們是標簽。 如果希望正確地顯示預留字元,我們必須在 HTML 源代碼中使用字元實體(character ...
  • 演算法 大O表示法 用來描述電腦演算法的效率, 數據項個數發生變化時,演算法的效率也會跟著發生改變 常見的大O表示方法 | 符號 | 名稱 | | | | | O(1) | 常數的 | | O(log(n)) | 對數的 | | O(n) | 線性的 | | O(nlog(n)) | 線性和對數乘積 | ...
  • 本文簡要介紹瞭如何在 Jest 單元測試中利用 Chrome Node DevTools 來輔助調試。 背景 代碼是 TS 寫的 所測功能無 UI 界面,出現Bug後不容易定位 用 console 式 debug 效率太低,需要打斷點式調試 在 Jest 單測中進行 debugger 目前有兩種方法 ...
  • 前言 本視頻通過59秒快速帶大家瞭解JS實現游戲刮刮樂的全過程,大家不妨可以動手嘗試一下。如萬一齣現困難可以積極與我溝通,我將無償提供技術支持及源代碼。 效果預覽 開始分析 1. 創建canvas 2. 設置圖片 3. 設置遮罩 4. 插入文檔 5. 綁定滑鼠移動事件 6. 檢查是否超出50%——移 ...
  • 之前一篇柵格系統是用float佈局來實現的 https://www.cnblogs.com/chenyingying0/p/12495051.html 其實並不太適合移動端,不過優點是相容性比較好 這篇用flex來進行佈局,不管在PC端還是移動端都很適合 不過存在相容性問題,在低版本瀏覽器不適用。但 ...
  • 關於移動端的js特效話題 註意以下 移動端的js開發,我們一般的開發做法就是使用第三方js框架或者插件去開發,有線考慮一下插件,而不是框架。不太會去寫原生的js,因為實在是太過於麻煩了 有關於本地存儲 本地存儲的話題 隨著互聯網的快速發展,基於網頁的應用越來越普遍,同時也變的越來越複雜,為了滿足各種 ...
  • 響應式佈局的原理:使用媒體查詢設置斷點 柵格系統 grid.css /*解決嵌套時的padding:0 15px*/ .row{margin:0 -15px;} /*xs*/ .container{width:100%;margin:0 auto;/*水平居中*/padding:0 15px;/*解 ...
  • 深入動畫函數的封裝 1.動畫函數的封裝 1.1 緩動效果的實現 這裡有一些核心的演算法,(目標值 現在的位置) / 10 = 每一次移動的步長 實現的代碼: 1.2 多值移動 比如我現在有這樣的一個需求:點擊走到800 再點擊走到500,相當於往回走了,我們可以加一個條件判斷一下步長 1. 如果是正值 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...