译:微软发布.NET应用架构指南草案
原文《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 等基本移动应用模式。并通过案例对设计模式进行了说明。
译:微软发布.NET应用架构指南草案的更多相关文章
- .NET微服务 容器化.NET应用架构指南(支持.NET Core2)
介绍 企业通过使用容器,日益实现成本节约.解决部署问题并改进 DevOps 和生产操作. 通过创建 Azure 容器服务.Azure Service Fabric 等产品,同时与 Docker.Mes ...
- 实时人工智能:微软发布Project Brainwave预览版 现场可编程门阵列(Field Programmable Gate Array,简称FPGA) 硬件设计可以迅速演进
https://mp.weixin.qq.com/s/bAPiPURZd-YsbV5PbzwpQQ 编者按:随着各大公司对于数据计算的要求越来越高,实时AI成为了研究者们关注的重点.在美国西雅图举行的 ...
- NET 架构指南频道
NET 架构指南频道 微软在Visual Studio 2017 正式发布的时候也上线了一个参考应用https://github.com/dotnet/eShopOnContainers , 最近微软 ...
- 微软发布了开发社区采用.NET Standard的最新信息
最近,微软发布了开发社区当前采用.NET Standard的最新信息..NET Standard是API的正式规范,现有.NET实现在不同平台的是通用的(从而允许跨平台开发).当前规范(版本2.0)在 ...
- 微软发布云端基因服务:推动AI驱动的精准医疗
微软发布云端基因服务:推动AI驱动的精准医疗 2018年03月07日 00:00:00 微软研究院AI头条 阅读数:117 版权声明:本文为博主原创文章,未经博主允许不得转载. https:// ...
- 《容器化.NET应用架构指南》脑图学习笔记(第一部分)
一.关于这本官方“圣经” 作为.NET程序员,对于微软官方推动的架构示例总是特别关注,从PetShop到MusicStore再到eShopOnContainers,每一次关注,都会了解到业界最新的架构 ...
- 微软发布MS MARCO数据集,提高计算机阅读理解能力
MARCO数据集,提高计算机阅读理解能力" title="微软发布MS MARCO数据集,提高计算机阅读理解能力"> 本文译自:Microsoft data ...
- 官宣!微软发布 VS Code Server!
北京时间 2022 年 7 月 7 日,微软在 VS Code 官方博客中宣布了 Visual Studio Code Server! 远程开发的过去与未来 2019 年,微软发布了 VS Code ...
- 微软发布独立Android模拟器 为开发者提供测试
微软发布了 Visual Studio 2015 正式版,除了免费的社交版之外,另外也有付费的专业版.这套工具除了提供 Windows 应用程序的整合环境之外,你也可以利用它来开发 Android 程 ...
随机推荐
- anaconda+theano+keras手写字符识别新版
标题介绍运行环境了win7 看网上好多keras识别minist 但是一般由于版本问题,无法直接用,,,这里还要特别感谢keras中文文档作者(三当家SCP).教程整的非常好.还有就是最好你在安装an ...
- java程序员从ThinkPad到Mac的使用习惯改变
https://blog.csdn.net/yczz/article/details/49993417
- js-addEventListener()第三个参数useCapture
概述: 第3个参数叫做useCapture,是一個boolean值,就是true or false .如果送出true的話就是瀏覽器會使用Capture方式,false的話是Bubbling,只有在特 ...
- js记录
--获取后缀名,结果 .jpg var extName = "/upload/head_img/20150902102539.jpg";var ta = extName.subst ...
- css之颜色篇
app多采用浅灰#f5f5f5 白色一般用white,如果觉得白太直接了,可以加一点点灰,#fefefe, 这种情况下搭配#e4e4e4的浅灰边框最合适.
- 设置powershell ExecutionPolicy
Get-ExecutionPolicy -List Set-ExecutionPolicy -Scope CurrentUser AllSigned Policies: Restricted/AllS ...
- WebService安全加密
众所周知,WebService访问API是公开的,知道其URL者均可以研究与调用.那么,在只允许注册用户的WebService应用中,如何确保API访问和通信的安全性呢?本文所指的访问与通信安全性包括 ...
- Navicat for oracle cannot load OCI DLL
Navicat for oracle 提示 cannot load OCI DLL87,126,193 instant client package is required for basic and ...
- vi 基本使用命令
说明:以下的例子中 xxx 表示在命令模式下输入 xxx 并回车以下的例子中 :xxx 表示在扩展模式下输入 xxx 并回车小括号中的命令表示相关命令在编辑模式或可视模式下输入的命令会另外注明 1 查 ...
- Vue组件通信父传方法给子组件调用
// 父组件中将 :meth='changeCom1' 传入入子组件 , 子组件运行 meth(i) 方法 并给他传参数 ,在父组件可以获取这个参数,并做相应的操作 // 父组件 <temp ...