当前位置:网站首页>怎么样的框架对于开发者是友好的?
怎么样的框架对于开发者是友好的?
2022-07-29 17:46:00 【MASA技术团队】
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.怎么样的框架对于开发者是友好的?
好的框架有三个特点:
- 无痛入门
好的框架应该是可以让开发者很快入门,上手成本低,而不是设置高门槛。比如在开发常规项目时,能够快速(比如几个小时)上手就能开展。需要深入时,可以非常平滑的深入,比如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开发者,帮助大家开启全新的现代应用开发体验!
边栏推荐
- [Operation and maintenance] ssh tunneling relies on the 22 port of ssh to realize the interface service of accessing the remote server
- NFTScan and PANews jointly release multi-chain NFT data analysis report
- 请问跑sql任务调度必须得设置依赖的上游节点嘛?比如说我sql里面a b两张表join出来的结果写入
- 传统渲染农场和云渲染农场选择哪个好?
- "Record" MMDetection Introduction
- Weekend Sharing - About WeChat Ecological Changes and 5G
- go协程栈底层讲解
- "Hardcore" labelme shows the label in the picture
- 整体系统地认识网络安全与发展
- 【码蹄集新手村600题】求所给数据的平方根
猜你喜欢
随机推荐
固件、驱动、软件的区别
P4775 [NOI2018] Intelligence Center (Line Segment Tree Merging)
DTSE Tech Talk丨第2期:解读云原生技术下,SaaS应用技术架构设计
多智能体协同控制研究中光学动作捕捉与UWB定位技术比较
今年一季度全球PC出货量同比增长32%,创21年来最快增速
要卖课、要带货,知识付费系统帮你一步搞定!
The 14th day of the special assault version of the sword offer
Blender 源码解析(1)
有哪位大佬做成功oracle数据库cdc同步的啊,是不是必须是基表才会啊,视图是没用的吧
In the Chinese ToB market, it is too difficult to choose the right supplier
Weekend Sharing - About WeChat Ecological Changes and 5G
【QT】Qt获取前几天/后几天的时间
【斜率优化】$\text{Sol. LuoguP5504}$ 柠檬
直播实录 | 37 手游如何用 StarRocks 实现用户画像分析
手动SET返回PageInfo对象
2022开放原子全球开源峰会OpenAnolis分论坛圆满落幕
【MySQL】如何向mysql数据库插入当前时间
[Deep Learning] YOLO to VOC VOC to YOLO
实时数仓:知乎实时数仓的架构演进
译文推荐 | 调试 BookKeeper 协议 - 无界 Ledger









