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

語言: CN / TW / HK

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開發者,幫助大家開啟全新的現代應用開發體驗!