Building Modern Web Apps-构建现代的 Web 应用程序(一些感想)

简介:

<iframe src="http://channel9.msdn.com/Series/MVA-China/Web20140611A01/player?h=540&w=960&format=html5" style="height:540px;width:960px;" allowFullScreen frameBorder="0" scrolling="no">

一些感想

这段视频虽然标题设定为 Visual Studio 2013 最新版本发布,但其实并没有对 Visual Studio 2013 进行过多的介绍,而更多的是讲述微软对 ASP.NET 的发展规划,特别是对 Web 的重视,我觉得非常好,下面谈一下我的一些感想,当然只是个人观点,勿喜请喷。

其实说到 Web,就不得不提乔布斯在《遗失的访谈(1995)》中对未来十年技术发展的预言,没错,乔布斯就预言了 Web,而十年后,二十年后,确实如预言的那样,不得不说他是“神”一样的存在。但二十年的今年,现在的 Apple 并没有多重视 Web,反而把大把的精力放在 App 上,这就有点不应该,反观 Apple 的对手微软,仿佛是看了乔布斯访谈一样,越来越重视 Web 了,当然我个人觉得,一部分原因是 Windows Phone 的不给力。

视频中首先谈到的是 ASP.NET 不再那么神秘了,确实如此,现在我们可以在 CodePlex 上获取 ASP.NET MVC 、EntityFramework 等源代码,甚至可以进行修改提交,Scott Hunter 提到现在 ASP.NET MVC 中两个重要功能(属性路由和 Web API 的跨源支持),就是来自于社区代码的提交,这是开放的一种表现,对开发者,对微软都有好处。

ASP.NET 我们都很熟悉,Web Tools 是什么?简单的说,就是我们用的 Visual Studio,但其实只是 Visual Studio 中的应用之一,我们现在所开发的 ASP.NET 是离不开 Web Tools 的,为什么?因为从项目新建-前段设计-后端代码编写-程序调试-程序发布等等,这些操作都是使用 Web Tools 完成的,也就是说 ASP.NET 和 Web Tools 就像是一对连体婴儿,谁也离不开谁。但这种“紧密的关系”往往就失去了一些开发所独有的“创造性”,试想一下,如果 ASP.NET 和 Web Tools 可以独立运作,这又是一种怎样的场景?用 Text 编写 ASP.NET 应用程序?这个已经不是梦想了。

One ASP.NET,请注意在图中间部分的两边有两个“YOU”,这是什么意思呢?我们知道 ASP.NET 的运行必须建立在 .NET Framework 支持的基础上,也就是说必须是 Windows 环境,但是现在,我们可以在 ASP.NET 中融入任何我们想要的东西,比如自己喜欢的插件、框架、项目等,因为第三方的支持,我们可以想做任何我们想做的事,这不是爽一点的问题,而是爽到了极点。昨天在 YouTuBe 上看了一个哥们在 MAC OS 上开发运行 ASP.NET VNext 的视频(只需要一个编辑器和一个命令工具),很是激动啊,过几天我也尝试下。

在这段讲述中,Scott Hunter 除了强调 ASP.NET Identity 的改进之外,还说到了他最喜欢到 ASP.NET MVC 属性路由,来自社区代码的提交,可能是一些开发者厌烦了之前 URL 繁琐的配置,所以在 ASP.NET MVC 中增加了属性路由。关于 EntityFramework,他讲到了这样一个问题:

在一个 ASP.NET 应用程序中有两个页面,一个是静态页面,一个是需要数据库读取页面,如果我同时频繁访问这两个页面,你认为会发生什么?

Scott Hanselman:我猜静态页面与数据库无关。

Scott Hunter:不是的,鉴于这个原因,每次执行数据库操作和网络操作时,都应该使用异步支持,我们有一个基准测试表明,实际会发生的是,每次执行进行数据库调用的页面时,在等待该操作发生的整个期间,系统将在 ASP.NET 线程池中存留一个线程,因此如果你多次访问该页面,就会消耗掉线程池中的所有线程,就没有线程为静态页面提供服务了,因此一个数据库页面可能会在你不知情的情况下影响整个应用程序的性能,让线程池“挨饿”,通过使用权重,任何时候,当你使用 EntityFramework 时,都不会再让线程池“挨饿”,静态页面永远不会损失性能,因为另一个页面在运行并进行数据库调用。

后面提到 EntityFramework 的数据库迁移(主要时针对)、Code First。。。

视频的最后就是讲述 Visual Studio 2013 的具体更新了,关于这一部分我不是很感兴趣,只是大概的看了下,主要将了亮点内容:

  1. 精简 ASP.NET 模块:新建 ASP.NET App 的模版,由原来的 20 个减为 6 个,另外 Web Forms、MVC、Web API 之间更好的“混搭”。
  2. 云的支持(Windows Azure):关于 Visual Studio 2013 中使用 Windows Azure,Scott Hunter 进行了详细的演示,一个新建,一个勾选,一个 Windows Azure 下的 ASP.NET 就这样创建好了,如此简单。我比较感兴趣的是 Windows Azure 运行下,Visual Studio 2013 中调试 ASP.NET,有机会可以尝试下。

最后

看完这段视频(昨天晚上),我个人觉得 MSDN 应该是 .NET 程序员常去的社区,为什么?当你还在纠结 ASP.NET Web Forms 和 ASP.NET MVC 时,你所不知道的是,人家已经在 MAC OS 中使用 ASP.NET VNext 了。


本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/3957674.html,如需转载请自行联系原作者

相关文章
|
17天前
|
监控 前端开发 JavaScript
使用 MERN 堆栈构建可扩展 Web 应用程序的最佳实践
使用 MERN 堆栈构建可扩展 Web 应用程序的最佳实践
27 6
|
20天前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
25 5
|
19天前
|
存储 消息中间件 缓存
构建互联网高性能WEB系统经验总结
如何构建一个优秀的高性能、高可靠的应用系统对每一个开发者至关重要
23 2
|
23天前
|
开发框架 搜索推荐 数据可视化
Django框架适合开发哪种类型的Web应用程序?
Django 框架凭借其强大的功能、稳定性和可扩展性,几乎可以适应各种类型的 Web 应用程序开发需求。无论是简单的网站还是复杂的企业级系统,Django 都能提供可靠的支持,帮助开发者快速构建高质量的应用。同时,其活跃的社区和丰富的资源也为开发者在项目实施过程中提供了有力的保障。
|
24天前
|
JSON 前端开发 API
使用Python和Flask构建简易Web API
使用Python和Flask构建简易Web API
|
28天前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用
|
1月前
|
SQL 安全 前端开发
PHP与现代Web开发:构建高效的网络应用
【10月更文挑战第37天】在数字化时代,PHP作为一门强大的服务器端脚本语言,持续影响着Web开发的面貌。本文将深入探讨PHP在现代Web开发中的角色,包括其核心优势、面临的挑战以及如何利用PHP构建高效、安全的网络应用。通过具体代码示例和最佳实践的分享,旨在为开发者提供实用指南,帮助他们在不断变化的技术环境中保持竞争力。
|
27天前
|
消息中间件 前端开发 JavaScript
探索微前端架构:构建现代Web应用的新策略
本文探讨了微前端架构的概念、优势及实施策略,旨在解决传统单体应用难以快速迭代和团队协作的问题。微前端允许不同团队独立开发、部署应用的各部分,提升灵活性与可维护性。文中还讨论了技术栈灵活性、独立部署、团队自治等优势,并提出了定义清晰接口、使用Web组件、状态管理和样式隔离等实施策略。
|
1月前
|
PHP 开发者
深入浅出PHP:构建你的第一个Web应用
【10月更文挑战第35天】在数字时代的浪潮中,掌握编程技能已成为通往未来的钥匙。本文将带你从零开始,一步步走进PHP的世界,解锁创建动态网页的魔法。通过浅显易懂的语言和实际代码示例,我们将共同打造一个简单但功能强大的Web应用。无论你是编程新手还是希望扩展技能的老手,这篇文章都将是你的理想选择。让我们一起探索PHP的魅力,开启你的编程之旅!
|
1月前
|
缓存 前端开发 JavaScript
构建高性能与用户体验并重的现代Web应用
构建高性能与用户体验并重的现代Web应用
41 5

热门文章

最新文章