设为首页 收藏本站
查看: 1219|回复: 0

[经验分享] 译:微软发布.NET应用架构指南草案

[复制链接]
发表于 2017-7-1 17:04:08 | 显示全部楼层 |阅读模式
  原文《Microsoft Announces Draft .NET Architecture Guidance》
  译注:上周微软发布了全新的《.NET应用架构指南》草案,以征求社区的意见。笔者作为.NET技术的爱好者,很高兴看到微软发布了这样一份很全面的符合时代变化趋势的应用架构指南。虽然目前这份指南还在草案阶段,但在微服务、跨平台等概念的时兴之下,感觉像是微软在变革中吹响的又一次冲锋号,对于一个.net 爱好者也像是一次集结号。笔记将持续对这份指南中的详细内容进行逐步翻译。
  近日,微软开发者部和Visual Studio产品团队联合发布了四份应用架构指南草案。这些草案涵盖四个领域:微服务和Docker,ASP.NET Web应用程序,Azure云部署和Xamarin移动应用程序。每份指南由对应主题的一组文档组成。微软希望得到一般社区对这些文件草案的反馈意见。
  微服务和Docker容器指南,包括一份名为《.NET容器化应用的微服务架构》的电子书(后文简称:架构电子书),一份名为《.NET平台及工具下的容器化Docker应用的生命周期》的电子书(后文简称:DevOps电子书),一个名为“eShopOnContainers”的示例应用程序,以及一个什么是合适设计模式的视频讨论。 架构电子书是关于开发微服务并用容器进行管理的介绍,并引用了示例应用程序。书中涵盖了如何选择适当的Docker容器以及如何进行部署,还包括如何设计和开发多容器的,基于微服务的.NET应用程序,以及应用安全的等内容。这份指指南并不依赖特定基础设施(infrastructure agnostic)。 DevOps电子书则介绍了如何使用Microsoft技术实现整个Docker应用程序生命周期。无论是对Docker新手,还是熟悉Docker但还想了解基于微软的技术如何来实现的人,都是非常有用的。
  ASP.NET Web应用程序指南,由一本电子书和一个示例应用程序组成。本书提供了有关使用ASP.NET Core和Azure构建单体Web应用程序的指导。它是上一节讨论的微服务和Docker容器指南的补充。该指南涵盖了现代Web应用程序的特性及其架构原理,以及如何开发和测试ASP.NET Core MVC应用程序。
  Azure Cloud部署指南,包含一系列参考架构,有关最佳实践的文章,以及一篇设计模式的文章。参考架构按场景排序,包括推荐做法,大多数都有直接可部署的方案。这些参考架构包括:身份管理,混合网络,DMZ网络,Linux和Windows的虚拟机负载,以及托管Web应用程序。关于最佳做法的文章着重于REST和HATEOAS (Hypermedia as the Engine of Application State)。设计模式按类别索引包括:可用性,数据管理,设计和实施,消息传递,管理和监控,性能,可伸缩性,弹性以及安全性。二十四种设计模式也按名称进行了分类编排,以便查找。每个模式描述了要解决的问题,何时使用该模式,以及基于Microsoft Azure的示例。但是这些模式对于任何分布式系统都是通用的。
  Xamarin 移动应用程序指南,由一本电子书,一个示例应用程序,和一篇关于架构模式的文章组成。电子书中的指导涵盖使用Xamarin UI工具包构建跨平台企业应用程序。它侧重于核心模式和架构指导,特别是MVVM模式,依赖注入,导航,验证,配置管理,容器化微服务,安全性,远程数据访问和单元测试。该指南引用了示例应用程序。由于该指南作为其它架构指南的补充,微服务,容器和Web应用程序没有被深入的说明。它也没有对Xamarin 表单作详细介绍。对于决策者,在决定跨平台战略之前,也可利用这份指南对架构和技术进行概览。这些模式侧聚焦于关键体系结构的概念,应用层,以及基于MVVM,MVC,Business Facade,Singleton,Provider和Async 等基本移动应用模式。并通过案例对设计模式进行了说明。
  Application Architecture Guidance
  本文首发于知乎

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-390063-1-1.html 上篇帖子: Use Dynamic Data Masking to obfuscate your sensitive data 下篇帖子: mqtt client python example
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表