怎么样的框架对于开发者是友好的?
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 开发者,帮助大家开启全新的现代应用开发体验!
版权声明: 本文为 InfoQ 作者【MASA技术团队】的原创文章。
原文链接:【http://xie.infoq.cn/article/8432f1cde06d2fe19e3a18d62】。文章转载请联系作者。
评论