程式碼大全閱讀筆記設計的挑戰4
咱們來看看理想狀態下設計的特徵
1,最小的複雜度,也就去原子服務,我提供最核心的功能資料,具體業務怎麼組裝,我不需要關心,也間接的解決了業務的侵入性
2,易於維護,簡明,可以自述的並且大家都理解的
3,鬆耦合性,模組區分好,比如支付模組就可以和業務完全隔離
4,可擴充套件性,對業務侵入第。並且功能升級修改不影響使用方。
5,重用性,比如jdk 的公共方法包,哈哈
6,高扇入性,類似於5
7,低扇出,減少類的依賴,越少我自己玩自己更加的舒服
8,可移植性,沒有接觸過,僅僅的瞭解
9,精簡性,程式碼在於精不在於多浩行
10,層次性,一個功能儘量的保持不動,萬動請包裝擴充套件
11,標準技術,大家熟悉的味道才是最好的程式碼,越是晦澀難懂的越是容易出問題
於2018/08/15晚11點33
相關推薦
程式碼大全閱讀筆記設計的挑戰4
咱們來看看理想狀態下設計的特徵 1,最小的複雜度,也就去原子服務,我提供最核心的功能資料,具體業務怎麼組裝,我不需要關心,也間接的解決了業務的侵入性 2,易於維護,簡明,可以自述的並且大家都理解的 3,鬆耦合性,模組區分好,比如支付模組就可以和業務完全隔離 4,可擴充
程式碼大全 讀書筆記(3)軟體構建中的設計
1. 選擇程式語言 熟悉的語言 高階的語言 更能表達程式設計中各種概念的語言 每種語言都有自己的優點和弱點,要知道所選用語言的明確優點和弱點。 問問自己,採用的程式設計實踐是對你所用的程式語言的正確響應,還是受它的控制,記得“深入一種語言去程式設計”,不要僅“在一種語言上程式設計
《程式碼大全》筆記 01
第 1 章 歡迎進入軟體構建的世界 軟體開發過程中的主要活動(activity): 定義問題(problem definition) 需求分析(requirements development) 規劃構建(construction planning) 軟體架構(s
程式碼大全 讀書筆記(2)
前期準備 - 三思而後行 1. 前期準備的重要性 準備工作的中心目標是降低風險儘可能早的將主要的風險清除掉,以使專案能平穩進行。軟體開發最常見的風險就是糟糕的需求分析和糟糕的專案計劃,因此準備工作就傾向於集中改進需求分析和羨慕計劃。 準備不周全的誘因: 專業程式元不
程式碼大全 讀書筆記(1)
1. 軟體構建活動: 定義問題(problem definition) 需求分析(requirements development) 規劃構建(construction planning) 軟體架構(software architecture),或高層設計(high-level de
Linux核心完全註釋 閱讀筆記:3.4、C與彙編程式的相互呼叫
1、C函式呼叫機制 函式呼叫操作包括從一塊程式碼到另一塊程式碼之間的雙向資料傳遞和執行控制轉移。資料傳遞通過函式引數和返回值來進行。另外,我們還需要在進入函式時為函式的區域性變數分配儲存空間,並且在退出函式時收回這部分空間。Intel 80x86 CP
《第一行程式碼》閱讀筆記1
說明:因為之前學習過一些Android開發相關的內容,所以這個閱讀筆記主要是對自己知識的梳理,重點可能側重於我不太擅長的地方。。。 1.初識Android 1.Android系統架構 四層架構,五塊區
程式碼大全學習筆記之表驅動法
資料壓倒一切。如果選擇了正確的資料結構並把一切組織的井井有條,正確的演算法就不言自明。程式設計的核心是資料結構,而不是演算法。 ——Rob Pike 說明 本文基於這樣的認識:資料是易變的,邏輯是穩定的。 本文例舉的程式設計實現多為程式碼片段,但不
onvif學習筆記7:一個C++封裝的onvif程式碼的閱讀筆記
在前面的文章《onvif學習筆記4:Windows環境使用gsoap生成onvif框架程式碼》、《onvif學習筆記5:onvif框架程式碼初步瞭解》中,我們瞭解瞭如何生成不同的版本的onvif框架程式碼,同時也看到gSOAP生成的C++版本的程式碼無論在程式碼結構還是可
<<程式碼大全>>閱讀筆記之一 使用變數的一般事項
一、使用變數的一般事項 1.把變數引用區域性化 變數應用區域性化就是把變數的引用點儘可能集中在一起,這樣做的目的是增加程式碼的可讀性 衡量不同引用點靠近程度的一種方法是計算該變數的跨度(span) 示例 a = 0 b = 0 c = 0 a = b + c a的第一次引用和第二次引用之間存在兩行程式碼,
2017-構建之法:現代軟件工程-閱讀筆記4
目的 clas 等等 工程 客戶 開發 方案 基本原則 過去的 本周閱讀了《構建之法》第七章。 第七章的內容是關於微軟解決方案框架(MSF)的。 第七章介紹了微軟推薦的軟件開發方法MSF。MSF的最大特性是商業化,並一直體現在項目的實施過程中。所謂商業化意味著客戶的商業利益
閱讀筆記-4
觀察 筆記 引導 需求 需求分析 用戶 任務 快速學習 管理 1.需求分析 獲取和引導需求、分析和定義需求、驗證需求 軟件團隊需要設身處地的替用戶發掘引導需求 軟件企業= 軟件+商業模式 獲取用戶需求:用戶調研,深入面談 能力要求和任務: 1.觀察、理解和快速學習能
課後作業-閱讀任務-閱讀筆記-4
說明 測試的 工程師 路徑 的人 獨立性 不依賴 自動化測試 任務 第二章《個人技術和流程》,本章的實質是在說明,一個合格的軟件工程師是怎樣的,他應該具備哪些技能。 總結下來,一個合格的工程師在開發時需要同時考慮質量和效率,與之同時需要具備的技能包括:單元測試、效能分析、個
閱讀筆記4
開始 必須 是否 做到 交付 任務 問題 出發 方向 TSP對團隊成員也有要求 1 交流:能有效地和其他隊員交流,從大的技術方向到看思維小的問題 2 說到做到:就像上面說的“按時交付” 3 接受團隊發賦予的角色並按角色要求工作:團隊要完成任務,有很多事情要做,是否能接受不同
構建之法閱讀筆記4
多少 驗收 廣告 入口 進行 行動 今後 設計師 提供商 典型用戶分析: 寫一個軟件的時候要為用戶考慮,用戶在哪裏,有多少用戶是團隊在需求分析和設計階段要反復琢磨的問題。 百分之百按照用戶要求做是不行的,還要 1、找到用戶語言行動背後的動機。 一個典型用戶描述了一組用戶的
我的多線程—多線程與設計模式閱讀筆記
圖解java多線程與設計模式 多線程 設計模式 java多線程與設計模式1.Producer-Consumer模式 我來做,你來用 命名生產消費者模式. 生產者和消費者只有一個成為Pipe模式如何解決兩者之間處理速度差異的問題? data
Dubbo源碼閱讀筆記4
rem rec abstract provide jdk handle cal ssi info ### 發布服務到本地 發布本地服務的代碼在ServiceConfig.doExportUrlsFor1Protocol方法裏 主要代碼如下 // 通過動態代理工廠生成實現
《代碼大全》閱讀筆記-2-用隱喻來更充分地理解軟件開發
概念 使用 -m 其他 閱讀 body 一個 根據 logs 隱喻的價值絕不應該被低估。隱喻的有點在於其預期的效果:能被所有的人理解。不必要的溝通和誤解也因此大為降低,學習與教授更為快速。實際上,隱喻是對概念進行內在化和抽象的一種途徑,它讓人在更高的層面上思考問題,從而避
《代碼大全》閱讀筆記-12-基本數據類型
一種可能 自定義類 pos 工作 數字 c代碼 使用字符串 ron 重定義 核對表:基本數據類型 數值概論 代碼中避免使用神秘數值 代碼考慮了除零錯誤了嗎? 類型轉換很明顯嗎? 如果在一條語句中存在兩個不同類型的變量,那麽這條語句會想你期望的那樣求值嗎? 代碼避免了混合類
《代碼大全》閱讀筆記-13-不常見的數據類型
可能 div 編程實踐 控制 程序 清單 和數 class 傳遞 只有萬不得已時才使用全局數據 !!!就近原則!!!註釋緊隨代碼,變量緊隨使用它們的地方 ——Tacey 訪問器子程序的優勢 你獲得了對數據的集中控制 你可以確保對變量的所有引用都得到了保護 自動獲取