2020年總結(jié):互聯(lián)網(wǎng)思維下的工業(yè)軟件開發(fā)

2020年的年終總結(jié)像往年一樣如期而至荔燎,今年是個特殊的年份耻姥,疫情爆發(fā),全國人民眾志成城有咨,支援武漢琐簇,把武漢疫情完美控制,接下來經(jīng)歷了一個整年的抗疫生活摔吏,見證了一個個門店的倒下鸽嫂、站起纵装,一個個公司申請破產(chǎn)、又一個個公司申請登記注冊据某。這一個年橡娄,見證了太多的悲傷、凄涼也感受到了太多的感動于歡樂癣籽,2020年注定在歷史上留下濃墨重彩的一個紀年

2020年對于我挽唉,一個勤奮耕耘的小碼農(nóng),也是意味深重的一年筷狼,因為經(jīng)歷的一些事瓶籽,讀了一些書,對我的認知發(fā)生了更改埂材。
寫下總結(jié)的時候塑顺,也給自己留個寄語

"希望十年后,我依然能夠堅持在寫博的這條路上

言歸正傳俏险,總結(jié)一下今年在技術上學習的內(nèi)容以及個人的心得

從Framework Winfrom 轉(zhuǎn)型.NET CORE5.0 WPF

背景

作為一個.NET起家的桌面應用程序員严拒,常年的Winfrom開發(fā),編碼的日常就是竖独,控件拖拽裤唠、CRUD等相關工作。 Winform一直是Microsoft的大本營莹痢,在網(wǎng)頁端是被Java甩下十幾條街了种蘸,但是隨著.Net Core的發(fā)布,GitHub上的.NET CORE的開源竞膳,使得.NET CORE 愈發(fā)強勁航瞭。在.NET CORE5.0 發(fā)布中,增加了3.x之前一直沒有的Winfrom 平臺顶猜、WPF平臺沧奴,追隨Microsoft的腳步,早早在2019Preview內(nèi)測的時候长窄,轉(zhuǎn)戰(zhàn)到.NET CORE5.0滔吠。

原因

從Winfrom轉(zhuǎn)WPF的起因還是因為數(shù)字可視化概念的提升,傳統(tǒng)的Winfrom雖然在功能性上無比優(yōu)越挠日,但是隨著用戶對視覺效果要求的日益增強疮绷,WPF平臺下的開發(fā)成為了必然渠道。

WPF開發(fā)按照MVVM框架嚣潜,將UI和業(yè)務邏輯分開冬骚,當然在Winfrom中同樣適配,但是這個概念沒有像WPF開發(fā)中提出的這么強烈

過程

1、設計規(guī)范

談到數(shù)字可視化的概念只冻,不得不提的就是設計規(guī)范庇麦,TOB雖然一直而言,對審美的要求不是太高喜德,但是隨著同類型產(chǎn)品的日益美化崖堤,在競爭的驅(qū)使下手趣,恳谎,成為了軟件不可或缺的一環(huán)節(jié)

在市面上面對琳瑯滿目的設計規(guī)范虹菲,在這里推薦一款我應用的非常好用的設計規(guī)范
MaterialDesign,該設計規(guī)范提供的樣式大氣磅礴,實用性很強

GitHub開源鏈接

轉(zhuǎn)場效果

<center>

</center>

細節(jié)動畫

<center>

</center>

2萌衬、MVVM框架選擇

市面上有多種的開源的MVVM框架饮醇,但是每個框架都有各自的特色,列出如下秕豫,本人在深入了解比較后使用MVVM Light ToolkitMicrosoft Prism兩種朴艰,MVVMLight 是輕量級應用,應對小型應用開發(fā)足以馁蒂,Prism框架前身是Composite Application Guidance for WPF and Silverlight呵晚,網(wǎng)上大量資料說復雜,其實理解進去沫屡,很簡單,這里有一篇關于Prism的介紹撮珠,看完基本可以入門了沮脖。

MVVM框架羅列如下:

  • MVVM Light Toolkit
  • Microsoft Prism
  • Calcium SDK
  • Caliburn
  • Caliburn
  • Silverlight.FX
  • nRoute:

有了設計規(guī)范、MVVM框架芯急,WPF的開發(fā)在屬性Xaml語言的基礎上勺届,就可以揚帆起航了。

GUI胖客戶端瓶頸問題解決

背景

應用于工業(yè)領域的GUI娶耍,從Winfrom轉(zhuǎn)到WPF免姿,在視覺效果上取得了很大成功,但是僅僅視覺效果的提升榕酒,那是遠遠不夠的胚膊。熟悉工業(yè)領域的小伙伴們都知道,OPC是工業(yè)領域應用在廣泛不過的自動化控制協(xié)定想鹰,OPCServer 點的訂閱數(shù)量有瓶頸紊婉,客戶端訂閱數(shù)量的增加會影響到OPCServer的性能,過多的訂閱會導致OPCServer宕機辑舷。同時喻犁,胖客戶GUI應用于工業(yè)領域,對數(shù)據(jù)的刷新要去很高,意味著數(shù)據(jù)庫輪詢的頻次較高(數(shù)據(jù)庫主動推送的問題肢础,我們可以放在其他地方討論

解決方案

傳統(tǒng)的CS很少有像BS那樣前后端分離明明白白的还栓,傳統(tǒng)CS中Client與Server部分分離,或者少分離的問題在這里就凸顯尖銳化传轰。

為解決這種情況剩盒,Server端分離,采用多個客戶端訪問一個Server,這個Server作為OPCServer的代理服務器路召,降低OPCServer點的訂閱數(shù)成為了解決方案的核心勃刨。

做Server,常見的Webserver股淡、WCF是可以選擇的身隐,但是當下大Web的趨勢,使得我們按照Restful API的方式建立接口唯灵,更為值得推薦

使用 .NET CORE5.0 創(chuàng)建Web API 成了不二途徑贾铝。而使用 .Net Core 做Server,數(shù)據(jù)的壓力可以通過互聯(lián)網(wǎng)常用的負載均衡埠帕、微服務垢揩、Grpc通訊、MQ敛瓷、Dock叁巨、K8s等相關技術的引入,.NetCore 完美支持這些應用方式呐籽。

技術介紹

使用 .Net Core 創(chuàng)建Web API 和常用的CS創(chuàng)建工程還是有蠻多區(qū)別,通過下述兩個文檔說明基本可以入門 .NET CORE.

若沒有.net 基礎可以移步此處快速了解上手

具備入門知識以后锋勺,.NET CORE 開發(fā)不得不提的一個框架ABP,ABP是ASP .NET Boilerplate的簡稱狡蝶,ABP是一個開源且文檔友好的應用程序框架庶橱。ABP不僅僅是一個框架,它還提供了一個最徍實踐的基于領域驅(qū)動設計(DDD)的體系結(jié)構(gòu)模型贪惹。

負載均衡苏章、Dock、K8s涉及部署技術
微服務奏瞬、Grpc枫绅、MQ編碼實現(xiàn)技術,ABP提供了框架丝格,為這些應用開發(fā)大大縮減了時間

通過如下的ABP基礎知識撑瞧,可以帶你快速ABP入門

ABP 基礎知識結(jié)構(gòu)

技術突破

在這邊文章發(fā)表之前,技術介從來沒有使用過 MaterialDesign + Prsim + ABP 三大框架結(jié)合的開發(fā)工作显蝌,作為嘗螃蟹第一人预伺,很開心將今年的技術融合在這里與大家分享订咸,希望我的嘗試,能夠幫助到大家酬诀!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脏嚷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子瞒御,更是在濱河造成了極大的恐慌父叙,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肴裙,死亡現(xiàn)場離奇詭異趾唱,居然都是意外死亡,警方通過查閱死者的電腦和手機蜻懦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門甜癞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人宛乃,你說我怎么就攤上這事悠咱。” “怎么了征炼?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵析既,是天一觀的道長。 經(jīng)常有香客問我谆奥,道長眼坏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任酸些,我火速辦了婚禮空骚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘擂仍。我一直安慰自己,他們只是感情好熬甚,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布逢渔。 她就那樣靜靜地躺著,像睡著了一般乡括。 火紅的嫁衣襯著肌膚如雪肃廓。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天诲泌,我揣著相機與錄音盲赊,去河邊找鬼。 笑死敷扫,一個胖子當著我的面吹牛哀蘑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼绘迁,長吁一口氣:“原來是場噩夢啊……” “哼合溺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起缀台,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤棠赛,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后膛腐,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體睛约,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年哲身,在試婚紗的時候發(fā)現(xiàn)自己被綠了辩涝。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡律罢,死狀恐怖膀值,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情误辑,我是刑警寧澤沧踏,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站巾钉,受9級特大地震影響翘狱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜砰苍,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一潦匈、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赚导,春花似錦茬缩、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至圈暗,卻和暖如春掂为,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背员串。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工勇哗, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人寸齐。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓欲诺,卻偏偏與公主長得像抄谐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子瞧栗,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容