欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務(wù)器

云資訊

云原生應(yīng)用,你了解多少?

1)從 Function 到 Service

一、從函數(shù)說起

我是 1993 年學習電腦的。學習的開發(fā)語言有三種:匯編、C、DbaseIII。

所以在我學習的時候,我并不了解面向?qū)ο蟮拇a架構(gòu)設(shè)計和代碼編程實現(xiàn)。所以要從字面上來區(qū)分函數(shù)和函數(shù)之間的關(guān)系,主要就靠函數(shù)命名、放在同一個代碼文件里、放在同一個代碼目錄文件夾里來區(qū)分他們之間的關(guān)聯(lián)性。

在當時函數(shù)時代,也沒啥異常保護、異常處理、異常日志的函數(shù)編寫基本原則,所以我們除了命名以外,主要注重的就是函數(shù)的輸入數(shù)據(jù)參數(shù)以及格式、輸出數(shù)據(jù)的參數(shù)以及格式。

二、面向?qū)ο?/strong>

我的面向?qū)ο笫怯?Object Pascal 開始的,但真正大量寫面向?qū)ο蟠a的時候是使用 Delphi,那已經(jīng)是 1996 年的事情了。

因為有了類這個東西,所以函數(shù)就可以物以類聚了。有的函數(shù)屬于私有函數(shù)只能這個類里面才能調(diào)用,有的函數(shù)屬于公有函數(shù)可以供外部調(diào)用。

但是我那時候使用類還很初級,往往是一個源代碼文件中就定義一個類。而且類也沒有使用繼承,也就是說我所有的類都是平行的,類和類之間通過 Public 型的公開函數(shù)調(diào)用才產(chǎn)生了關(guān)系。

三、面向接口

Delphi 這個開發(fā)語言是優(yōu)美的,它的定義申明和它的詳細實現(xiàn)是分離的。

業(yè)務(wù)功能進一步復雜起來了,過去沒什么太多關(guān)系的業(yè)務(wù)現(xiàn)在關(guān)系越來越緊密了,有些類和類之間的調(diào)用就太多了。我就想著重寫這塊代碼,把這兩個類進行合并了。但一重寫吧,需要動的東西太多了。

用繼承、用多重繼承的方法來做吧,太麻煩,總要在實現(xiàn)里寫一個空函數(shù)(就是沒有代碼但只有函數(shù)架子的,以備編譯器能語法通過)。后來認識了接口,就用接口定義了,就不使用空函數(shù)了,就定義,不實現(xiàn),編譯器照樣能通過。

四、面向組件

我是完整經(jīng)歷過面向組件時期的,并且用面向組件技術(shù)編寫過一整代完整的 ERP 引用套件。從 CORBA 技術(shù)到 COM/DCOM/COM+技術(shù)都嫻熟學習并使用過。我也是完整經(jīng)歷單機版本到 C/S 客戶端服務(wù)器端局域網(wǎng)版本到 C/S/S 三層架構(gòu)的。

一開始我用 DBaseIII 寫應(yīng)用,UI 開發(fā)、業(yè)務(wù)邏輯開發(fā)、數(shù)據(jù)庫開發(fā)都是一個開發(fā)語言搞定。

后來用 Delphi 寫 C/S 應(yīng)用,就用了 SQLServer 大型關(guān)系數(shù)據(jù)庫,在數(shù)據(jù)庫層就寫了不少存儲過程和定時 JOB 任務(wù)。但當時業(yè)務(wù)邏輯代碼和 UI 代碼都是運行在客戶端,所以這兩層之間的分離也并不清晰。

然后寫 C/S/S 三層架構(gòu),業(yè)務(wù)邏輯層獨立出來,而且是物理獨立部署,這樣客戶端代碼和業(yè)務(wù)邏輯層代碼就必須要徹底分開,不能不清不楚地混雜在一起了。在那個時候,我才開始大量使用精心的接口設(shè)計、對象設(shè)計。

因為有了獨立的業(yè)務(wù)邏輯層,那么這些代碼(接口/類)何時創(chuàng)建對象實例,何時釋放,這些對象實例要運行在哪個進程容器中,就有了要求了。因而就產(chǎn)生了組件容器和組件。組件容器來管理組件的全生命周期(安全、創(chuàng)建、并發(fā)訪問控制、休眠、激活喚醒、計數(shù)、摧毀釋放內(nèi)存),組件管理器就來管理組件的注冊、發(fā)現(xiàn)等。

所以《COM 本質(zhì)論》的作者 Don Box 說.NET 就是更好的 COM,我一下子明白了:對啊,微軟的意思是,以后所有的應(yīng)用都應(yīng)該運行在組件容器中,不管是單機應(yīng)用,還是 C/S 應(yīng)用,還是 C/S/S 應(yīng)用,每個應(yīng)用都要運行在組件容器中,由組件容器來屏蔽和管理內(nèi)存的創(chuàng)建與回收,不要把內(nèi)存的創(chuàng)建與釋放直接袒露給開發(fā)者,否則開發(fā)者技術(shù)能力水平不一,有的爛的程序員管理不好內(nèi)存,很容易就會使應(yīng)用占滿內(nèi)存并導致操作系統(tǒng)崩潰。

五、面向 WebService

哈哈哈,大家好像都沒聽說過面向 WebService,大家好像就聽過面向服務(wù)。

Web 互聯(lián)網(wǎng)興盛起來,HTML(UI 元素定義)+CSS(UI 元素風格定義)+JavaScript(UI 元素操作)構(gòu)成了前端技術(shù)。人們又從前端里分離出來 XML,成為數(shù)據(jù)容器。可以用 HTTP+80 端口進行傳輸純文本的 XML 數(shù)據(jù),也可以用 UDP、TCP/IP 等各種傳輸協(xié)議進行傳輸。當然,XML 還可以被壓縮以便更小尺寸在互聯(lián)網(wǎng)上傳輸(尤其過去互聯(lián)網(wǎng)速度很慢),還可以被加密不讓人中間截獲看到。這些就構(gòu)成了 WebService 的一個技術(shù)族。

我們現(xiàn)在要把局域網(wǎng)版本的 C/SS/三層技術(shù)架構(gòu),升級到 Web/S/S 三層技術(shù)架構(gòu),那怎么辦呢?

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務(wù)器租用 夢飛云服務(wù)器租用 版權(quán)所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 罗定市| 武胜县| 天峻县| 江陵县| 河南省| 玉溪市| 青河县| 平泉县| 和平区| 南京市| 黄平县| 石城县| 通化县| 筠连县| 德阳市| 大同县| 漳浦县| 罗甸县| 天水市| 屯昌县| 玛沁县| 浙江省| 衡水市| 阿荣旗| 剑河县| 青浦区| 阳西县| 进贤县| 昂仁县| 资兴市| 泸州市| 泰来县| 新余市| 湖北省| 湘潭县| 治县。| 贵阳市| 卢湾区| 休宁县| 苗栗县| 吴桥县|