怎麼樣的框架對於開發者是友好的?

来源:https://www.cnblogs.com/MASA/archive/2022/07/29/16529434.html
-Advertisement-
Play Games

1.雲原生離.NET開發到底有多遠? 雲原生的概念由來不久,故事從“上雲”開始,伴隨dorker、k8s等技術的推出,以及CNCF與各大雲廠商的共同加持,雲原生逐漸被大家所熟知。雲原生不依賴具體的雲,不管公有雲還是私有雲。.NET6的誕生的時間點與容器技術非常的契合,.NET6現在已經完全支持CGr ...


1.雲原生離.NET開發到底有多遠?

雲原生的概念由來不久,故事從“上雲”開始,伴隨dorker、k8s等技術的推出,以及CNCF與各大雲廠商的共同加持,雲原生逐漸被大家所熟知。雲原生不依賴具體的雲,不管公有雲還是私有雲。.NET6的誕生的時間點與容器技術非常的契合,.NET6現在已經完全支持CGroups v2,比Java對容器的支持更優秀。接下來.NET 7版本中Native AOT等新特性的推出,說明.NET一直大步的向雲原生在改進,.NET現階段在雲原生領域已經領先於其他開發平臺。

2..NET適用於怎麼樣的場景?

我們在談論雲原生、微服務的時候,經常會提到DevOps,CI/CD等概念,對於.NET來說現在已經支持的非常好。.NET也可以做machine learning,我們有tensorflow.net。在跨平臺方面現在又有了MAUI這麼優秀的項目可以供大家使用。還有在IoT的行業.NET也有非常多的解決方案。.NET可以做大型項目,也很適合中小型的項目。現在.NET是開源的,大家可以貢獻自己的力量,像MASA技術團隊開源的MASA Framework就是國內非常好的案例。

3.怎麼樣的框架對於開發者是友好的?
好的框架有三個特點:

1)無痛入門
好的框架應該是可以讓開發者很快入門,上手成本低,而不是設置高門檻。比如在開發常規項目時,能夠快速(比如幾個小時)上手就能開展。需要深入時,可以非常平滑的深入,比如Spring Boot算是一個比較好的框架,在.NET Core出來後,.NET Core則更勝一籌。

2)防呆設計
在開發者遇到問題時,好的框架能夠讓開發者自然而然根據直覺解決問題,可以不依賴文檔。報錯時有充足的信息告知開發者,給出相應的解決方案。winform與WPF的組件設計就非常符合防呆的設計,同樣的Blazor相對之前的js框架在這方面有很多的優化。好的框架應該保持“KISS”(keep it simple and stupid)原則,簡單又傻瓜化,並且有原則,不嬌慣開發者。很多框架開始時“小而美”,越到後期需求不斷增加,變得臃腫,變得“四不像”。

3)可階梯式深入
入手之後可以階梯式的深入,比如3天學習一種用法,5天再深入一種用法。能夠讓開發者,在應對進階場景時,快速的深入掌握。

4.NET已經是非常優秀的框架,為什麼要二次封裝.NET?

大多時候,隨著項目開發會有業務之外的重覆性、非功能應用,或多或少都會進行一些封裝。不同的場景需要不同的框架,現在.NET跨平臺除了MAUI還有Uno Platform,還有其他框架支持,可以補充不同的場景需求,比如Uno就可以代替MAUI來支持Win7/Win8。.NET輸出的是工具類庫,二次封裝.NET的框架就不能只是一個功能合集,必須要有自己的最佳實踐和理念,但不限制開發者。MASA Framework希望將我們的最佳實踐輸出給.NET開發者,幫助大家開啟全新的現代應用開發體驗!


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

-Advertisement-
Play Games
更多相關文章
  • 因為涉及到有些監控是沒有音頻的,所以使用flv.js插件,通過<web-view>標簽跳轉到h5頁面。 在真機上調試發現是沒有發現flv.js文件,出現跨域現象,但是我只是導入了js文件,不知道什麼情況; 然後,就只是移動端不支持flv.js。經過不懈努力,我找到了另外一個插件 DPlayer.js ...
  • 蒼穹之邊,浩瀚之摯,眰恦之美; 悟心悟性,善始善終,惟善惟道! —— 朝槿《朝槿兮年說》 寫在開頭 眾所周知,在電腦操作系統中,進程(Process)是一個很關鍵的概念,最本質的理解就是操作系統執行的一個應用程式(Application Program)。與每個進程相關的是地址空間(Address ...
  • 蒼穹之邊,浩瀚之摯,眰恦之美;悟心悟性,善始善終,惟善惟道! —— 朝槿《朝槿兮年說》 寫在開頭 隨著業務需求的發展和用戶數量的激增,對於互聯網應用系統或者服務應用程式則提出了新的挑戰,也對從事系統研發的開發者有了更高的要求。作為一名IT從業研發人員,我們都知道的事,良好的用戶體驗是我們和應用系統間 ...
  • 消息隊列 解耦 A服務和多個服務耦合,內部維護對多個服務發送數據的介面,那麼這些介面如果有的掛了,有的不需要了,那麼還得修改A內部的代碼,如果使用MQ,A發送消息就好,不必考慮那麼多事情。 通過一個 MQ,Pub/Sub 發佈訂閱消息這麼一個模型,A 系統就跟其它系統徹底解耦了 非同步 不需等待整個業 ...
  • 導語:設計文檔是軟體工程設計中的重要組成部分。本文根據 Google 及其它公司編寫設計文檔的經驗,並結合實際應用加以完善,系統地介紹設計文檔的目的、結構及參考模板,希望推動設計文檔在團隊中落地,傳承並沉澱經驗,構建良好的文化氛圍。 ...
  • Region是Prism當中模塊化的核心功能。Region可以理解為View的動態占位符,在View上進行視圖占位,其主要目的是弱化模塊與模塊之間的耦合關係。 ...
  • 一 非同步延遲 在非同步方法中,如果需要讓程式延遲等待一會後,繼續往下執行,應使用Task.Delay()方法。 //創建一個在指定的毫秒數後完成的任務。 public static Task Delay(int millisecondsDelay); //創建一個在指定的毫秒數後完成的可取消任務。 p ...
  • 前言 接著上周寫的截圖控制項繼續更新 繪製方框與橢圓。 1.WPF實現截屏「仿微信」 2.WPF 實現截屏控制項之移動(二)「仿微信」 3.WPF 截圖控制項之伸縮(三) 「仿微信」 正文 有開發者在B站反饋第三篇有Issues已修複。 實現在截圖區域內繪製 方框與橢圓 有兩種方式 1)可以在截圖的區域內 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 JSON Web Token(JWT)是一個非常輕巧的規範。這個規範允許我們使用 JWT 在用戶和伺服器之間傳遞安全可靠的信息。一個 JWT 實際上就是一個字元串,它由三部分組成,頭部、載荷與簽名。前兩部分需要經過 Base64 編碼,後一部分通過前兩部分 Base64 編碼後再加密而成。針對 ...
  • 一:背景 1. 講故事 今天本來想寫一篇 非托管泄露 的生產事故分析,但想著昨天就上了一篇非托管文章,連著寫也沒什麼意思,換個口味吧,剛好前些天有位朋友也找到我,說他們的拍攝監控軟體卡死了,讓我幫忙分析下為什麼會卡死,聽到這種軟體,讓我不禁想起了前些天 在程式員桌子上安裝監控 的新聞,參考如下: 我 ...
  • 文章目錄 介紹 ABP的依賴註入系統是基於Microsoft的依賴註入擴展庫(Microsoft.Extensions.DependencyInjection nuget包)開發的。所以我們採用dotnet自帶的註入方式也是支持的。 由於ABP是一個模塊化框架,因此每個模塊都定義它自己的服務併在它自 ...
  • 前言 外觀模式,英文名稱是:Facade Pattern。我們先從名字上來理解一下“外觀模式”。我看到了“外觀”這個詞語,就想到了“外表”這個詞語,兩者有著很相近的意思。就拿談戀愛來說,“外表”很重要,如果第一眼看著很舒服、有眼緣,那就有交往下去的可能。如果長的“三寸釘、枯樹皮”,估計就夠嗆了。在這 ...
  • 模擬.NET實際應用場景,綜合應用三個主要知識點:一是使用dnSpy反編譯第三庫及調試,二是使用Lib.Harmony庫實現第三庫攔截、偽造,三是實現同一個庫支持多版本同時引用。 ...
  • 通過strimzi部署的kafka集群,如何部署prometheus+grafana去監控呢?官方文檔信息量太大,即便照著做也可能失敗,這裡有一份詳細的保姆級操作指南,助您成功部署監控服務 ...
  • 在工具類中封裝getBean,使用哪個介面來實現 實事上,在工具類中,實現BeanFactoryPostProcessor和ApplicationContextAware介面後,使用它們構造方法里的對象ConfigurableListableBeanFactory和ApplicationContex ...
  • 1章:系統基礎信息模塊詳解 通過第三方模塊獲取伺服器的基本性能、塊設備、網卡介面、網路地址庫等信息。 1.1 系統性能模塊psutil:獲取系統性能信息、記憶體信息、磁碟信息、網路信息、用戶信息等。 1.2 IP地址處理模塊IPy: 處理IP地址,網段等。 1.3 DNS處理模塊dnspython: ...
  • EasyExcel動態表頭導出(支持多級表頭) 在很多業務場景中,都會應用到動態表頭的導出,也會涉及到多級表頭的導出,如下圖所示 通過EasyExcel,我們可以快速實現這一需求,具體代碼如下 DynamicHeader import java.util.List; /** *@Author: <a ...
  • 基於java線上婚紗定製系統設計與實現,可適用於線上婚紗攝影預定系統,基於web的婚紗影樓管理系統設計,基於web的婚紗影樓管理系統設計,婚紗攝影網系統,婚紗攝影網站系統,婚紗攝影網站系統,婚紗系統,婚紗管理系統等等; ...