Uncle Bob 在《無瑕的程式碼-整潔的軟體設計與架構篇》一書中,對單一職責原則(SRP)有做更進一步的解釋:「一個模組(原始檔)應該只對唯一的一個角色負責」。
⠀
會讓程式有變更的理由,是因為人有了需求,將使用者抽象為角色,程式依角色切分模組(原始檔),讓模組(原始檔)對一個角色負責,這是 Uncle Bob 在書中做的說明。
⠀
這讓我想到 ASP.NET MVC 的 View 經常因為要處理不同使用者的 UI,讓 UI 的邏輯分支岔到異次元空間去,按照 Uncle Bob 所說的,其實我們只要精準地將使用者分群、定義角色,可以大大地減少我們腦中的邏輯堆疊數量。
⠀
https://dotblogs.com.tw/supershowwei/2019/03/25/225720
「srp 程式」的推薦目錄:
- 關於srp 程式 在 軟體廚房 Facebook 的最佳貼文
- 關於srp 程式 在 國立臺灣大學 National Taiwan University Facebook 的精選貼文
- 關於srp 程式 在 程式設計的武功心法【Gamma Ray 軟體工作室】 - YouTube 的評價
- 關於srp 程式 在 SOLID 原則- Single Resposibility Principle(SRP單一職責原則) 的評價
- 關於srp 程式 在 Domain Driven Design(DDD Taiwan) | 《讀書會有感分享》 的評價
- 關於srp 程式 在 SRP、OCP、LSP、ISP、DIP - 分享物件導向程式設計 - Dcard 的評價
- 關於srp 程式 在 SRP - 單一責任原則| 他山教程,只選擇最優質的自學材料 的評價
- 關於srp 程式 在 SOLID Principles Of Object-Oriented Design in C#.Net - GitHub 的評價
srp 程式 在 國立臺灣大學 National Taiwan University Facebook 的精選貼文
【孫運璿講座-劉克振分享第三波數位革命之共創模式】
由臺大商研所主辦,合作金庫協辦的第二場孫運璿先生管理紀念講座,非常榮幸邀請到臺灣工業電腦界的代表企業-研華科技 劉克振董事長,於106年12月7日蒞臨臺大。劉董事長與大家分享數位革命的變遷,以及研華科技因應物聯網崛起所提出的策略:推動共創模式引導傳統產業轉型。
劉董事長首先以《第三波數位革命》這本書為輔,帶大家走過三波數位革命的歷史。他指出數位革命約十五年一波,第一波革命,發生於1985-1999年,產品主要為PC及Internet,當時許多家家戶戶購入家中第一臺電腦。而臺灣的企業在這一波革命裡可謂相當風光,全世界十臺電腦中約有八臺是臺灣代工,躍升為PC王國。但當時是採水平分工,CPU由Intel生產,作業系統100%由Microsoft開發,硬體設備如主機板、電源、鍵盤等由臺灣製作。
第二波革命,則是行動科技的崛起,手機APP及互聯網平臺相繼出現,透過電信科技速度以及網路流量的提升,快速成長。目前全世界五家最具財力及影響力的公司,即有四家是以平臺的方式經營。這一波的特色為獨立創新,劉董事長以大陸新創APP”餓了嗎”為例,此應用程式當初由幾個學生在校園裡開發完成,其服務範疇發展至今遍及大陸,也提到Facebook、阿里巴巴以及騰訊等,皆為完全新創,而非由第一波革命中的大公司創立,其原因在於傳統大公司的強項並非創新能力。劉董事長同時分析,臺灣的環境並不適合當初的第二波革命,因為贏家通常出現在大市場,如中國、美國等,其市場共同特色為有龐大的客群支援。而歐洲、韓國及臺灣的環境相對不同,較無機會孕育出在第二波革命中成功的贏家。
第三波革命,則是目前發展中的物聯網(IoT),其中APP的新穎程度已不復在,IoT世界的重點是雲服務、夥伴關係以及共享平臺,而APP純粹為訊息交換。物聯網影響的是傳統產業,以物聯網加上手機、Internet以及PC,即可改造傳統產業,做到垂直轉型。劉董事長引用《第三波數位革命》提出三大發展重點: “第一,物聯網、雲服務、大數據將促成傳統產業重大革新。第二, 務必找夥伴, 形成跨領域整合,可能是政府單位或傳產大公司, 加上科技平臺提供者。第三,創立第三波新創企業。”
劉董事長非常看好臺灣在第三波革命的發揮空間,認為物聯網的發展對臺灣而言是巨大的產業機會,也大力鼓勵在場的年輕人未來無論是創業抑或就業,必須瞄準浪頭,隨著它站上最高峰。同時,物聯網的市場有三大方向,分別為智慧服務、智慧城市、以及工業4.0。而研華對應以上的發展策略亦分為三階段: 第一波是提供硬體平臺,第二波是軟體加硬體的解決方案,第三階段則是推動IoT雲服務的共創整合,三波層層堆疊而發展成熟。董事長認為研華仍在第一波耕耘,同時努力往第二波走。研華的核心業務是物聯網平臺產業,而臺灣同時有二十家類似的公司,業界的優勢立基於PC的工業基礎上,已擁有相對成熟的硬體技術。劉董事長亦特別點出在硬體方面,未來5G無線網路的發展無疑大大幫助了物聯網的崛起。隨著NB-IOT產品即將問世,安裝其晶片模組更為容易快捷,且費用預估亦將相對低廉,預測可大量實行物聯網普及化。
而第二階段的重點-軟硬體解決方案,劉董事長以手機為例,涉及的範圍包括:晶片、基地臺、電信業者,再加上手機以及APP才能形成好用的手機服務,以上技術皆須靠業者自行開發完成,研華則致力於提供如上的產品整合方案,稱為Wise-Paas及Solution Ready Package (SRP).
劉董事長指出,目前未完成的是串接起不同產業,形成物聯網,也就是研華策略佈局中最重要的第三階段-共創模式,此階段的重點並非新創,而是在於傳產轉型。新創公司的強項是編寫軟體,但缺乏傳產的Domain know-how,所以需要有規模的業者提供協助。另外物聯網乃以B2B的營運模式運作,不似B2C以各種行銷模式將產品銷售予使用者,而是建基於企業與企業間的信任。年輕人自己做不大容易,所以需要中大型企業的協助。研華的角色即為串聯不同的合作夥伴,同時扶植負責系統整合的新創公司。
但哪一些產業會是物聯網的機會呢?劉董事長引用麥肯錫的報告指出,第一影響的是製造業,也就是大家常看到工業4.0,工廠因物聯網產生重大改變,智慧工廠轉變的影響力不容小覷。第二大則是健康,也就是與醫療相關的醫藥產業,第三是個人智慧裝置,再來則是智慧零售與觀光、交通、礦業等等。相較之下,智慧家居的市場反而相對狹小,因為家庭需要物聯網的情境不多,系統整合較無發展空間。
劉董事長接著為大家介紹研華的產品線特色:首先是智慧工廠,研華的林口設有一個標準的智慧工廠,特色包括戰情室、生產看板、手機連網監控等,將工廠的環境、設備還有人連結起來,視覺化地呈現工廠運作狀況。在運作透明化以後,客戶即可發現工廠原本潛藏的問題,接著進行預測演算,提升工廠效率,做到最佳化,工廠因此產生改變,即為工業4.0的道理,並不僅止於一般認為的自動化生產以及人力減省。除了提供智慧工廠的方案以外,研華另外亦有Machine to Intelligence方案、綠能方案、智慧零售以及智慧物流等產品線。Machine to Intelligence為研華自創的說法,也就是因應客戶需求,在產品中內建一套軟體。綠能解決方案則著重於大樓的能源聯網,以及廢水、空氣汙染的處理。而智慧零售的重點如同馬雲所說的”新零售”,包括半自動結帳、布局優化,以電子標籤告知消費者及變更價格等等,以大數據、熱點分析、做到庫存優化與客戶追蹤,掌握更多顧客資訊。智慧物流則著重於後裝市場,提供平臺監控車子的狀況、定位,不斷地將資訊送回總部,便於總部管理。
最後,劉董事長以《工業互聯網平臺白皮書》的一段話為當天的演講作結:”雲化服務、知識積累、應用創新便是工業互聯網平臺的四大特徵。”面對物聯網所帶來的巨大改變,勉勵大家熟記這四點訣竅,做好準備一同迎向新的數位時代!
文:商研所碩士班 黃鈺婷
srp 程式 在 SOLID 原則- Single Resposibility Principle(SRP單一職責原則) 的推薦與評價
... 的Design Pattern,而Design Pattern的實踐,大多都是為了不違反SOLID原則,所以謹記SOLID原則可以讓程式碼在維護上會更有彈性。SOLID原則共包括: ... <看更多>
srp 程式 在 Domain Driven Design(DDD Taiwan) | 《讀書會有感分享》 的推薦與評價
所以改天你code review 同事的程式碼希望程式函式命名清楚、做的事要單純時,不要只用一句SRP 就打發! 結論. 討論SRP 需要在一個明確Context 中. 要理解 ... ... <看更多>
srp 程式 在 程式設計的武功心法【Gamma Ray 軟體工作室】 - YouTube 的推薦與評價
【 物件導向 程式 設計- SOLID 設計原則】• SRP 單一職責原則• OCP 開放- 封閉原則• LSP 里氏替換原則• ISP 介面隔離原則• DIP 依賴反向原則近期 ... ... <看更多>