首页 > 业界 > Web开发在过去20多年时间里如何改变了我
2016
07-22

Web开发在过去20多年时间里如何改变了我

  英文原文:How Web Development Changed for Me Over the Last 20 Years

  web 在过去 20 年时间里改变得相当快。越来越多的逻辑从服务器端移动到了客户端。不但需要在客户端编写更复杂的 JavaScript 代码,而且最近几年还发生了一些奇特的事情:JavaScript 正在转移到服务器,而 web 技术则往桌面转移。这已经不是什么新鲜事了,但 20 年前谁会想到这种情况?

Web开发在过去20多年时间里如何改变了我 - 同创卓越 - 1

  web 改变了,因而我的技术堆栈也变了。貌似我的堆栈变回到了 roots。 20 年前,我从 HTML 和 JavaScript 开始,再到使用 VBScript 的经典 ASP。 2001 年,我开始陶醉于 ASP.NET 和 VB.NET,并用到了产品中,直到 2006 年底才不再这么干。2007 年年底,我开始使用 C# 编写 ASP.NET。HTML 和 JavaScript 仍然参与其中,但多多少少被封装在第三方控件中,并且 jQuery 当时是 JavaScript 的别名。JavaScript 的一切都是 jQuery。ASP.NET WebForms 感觉巨大又不是很灵活,但它能有效工作。后来——2010 年——我用 Silverlight、WinForms 和 WPF 做了很多东西。

  ASP.NET MVC 出现了,web 这个东西开始再次比 ASP.NET WebForms 感受更自然点。从一个 ASP.NET 开发人员的角度来看,web 开始变得更好:更加干净、灵活、轻便和自然。

  但也出现了一些新的东西。一些来自于 ASP.NET 世界之外的东西。强大的 JavaScript 库,如 KnockOut、Backbone,以及后来的 Angular 和 React。第一个单页应用程序框架(对不起,我不想提蹩脚的 ASP.NET AJAX…)出现了,UI 逻辑从服务器转移到了客户端。(好吧,我们确实在 2005 年搞回了一个很酷的 SPA,但我们没有想过如何用它创建一个框架。)

  NodeJS 通过在服务器上使用 JavaScript 再次改变了世界。你只需要两个不同的语言(HTML 和 JavaScript),就可以来创建很酷的 web 应用。我不怎么对 NodeJS 感兴趣,除了在后端使用它,因为一些工具基于 NodeJS。也许这是一个错误,谁知道呢;  )

  现在我们有了 ASP.NET Core,这感觉比传统的 ASP.NET MVC 更自然得多。所谓的自然在这种情况下,意味着和编写传统 ASP 的感觉几乎相同。这也就是说使用无状态的 web 工作,而不是试图修复它。使用 Request 和 Response 比传统的 ASP.NET MVC 工作起来更直接,比 ASP.NET WebForms 甚至就更直接得多。自然并不意味着你必须编写和传统 Asp 同样非结构化的废话。 ;  )

  由于我们已经有了非常酷的客户端 JavaScript 框架。和简化了的、简约的服务器端框架,服务器部分就被减少到仅仅用于在 REST 服务上提供静态文件和数据。

  正是这个时候,深入了解 TypeScript 变得有了意义。但是到这个时间点为止,它对我还没有意义。我用 JavaScript 编写代码大概有 20 年时间,但我从来没有在单个项目中写过这么多的 JavaScript 代码。之后,在过去几年时间里我开始使用 AngularJS。Angular2 是应该好好研究 TypeScript 的一个原因,因为现在的 Angular2 完全是用 TypeScript 写的。

  几个星期前,我启动了我第一个真正的 NodeJS 项目:一个使用 NodeJS 来为用户提供高度灵活脚本运行时的桌面应用程序。NodeJS 提供功能和 UI 给用户,所有都是用 TypeScript 写的,而不是普通的 JavaScript。为什么?因为 TypeScript 有很多意想不到的好处:

  • 仍然可以编写 JavaScript
  • 帮助编写小的模块和结构化的代码
  • 帮助编写 NodeJS 兼容模块
  • 一般说来,不需要为每个模块写所有的 JavaScript 代码
  • 只要专注于所需要编写的功能

  这就是为什么 TypeScript 对我来说是个大帮手。当然类型化的语言在很多情况下也是有用的,但是——使用 JS 工作了 20 年——我喜欢隐式的类型 JavaScript 语言的灵活性,并且我对它很熟。这意味着,从我的角度来看,有关 TypeScript 的优点是,我仍然能用 TypeScript 编写隐式的类型代码,并利用到 JavaScript 的灵活性。这就是为什么我说“仍然可以编写 JavaScript”的原因。

  Web 技术改变了,我的技术堆栈也改变了,工具也是。所有这些东西都变得更为轻巧,连同工具一起。控制台回来了,IDE 变回为它们的 root:只不过是一些有着类似语法高亮和智能感知这些作用的文本编辑器。目前,我更喜欢根据我工作的项目类型使用有着“瑞士军刀”之称的 Visual Studio Code 或 Adobe Brackets。两者都开始变得非常快速,包括一些不错的功能。

  使用轻便的 IDE 令人愉悦。一切都很快,因为通过我需要开发的 app 可以使用机器的资源,而不必通过我需要使用来开发 app 的 IDE。这使得发展速度快了很多。

  现今启动一个 IDE 意味着启动 cmder(Windows 上我最喜爱的控制台),改变项目文件夹,启动控制台命令,从而查看 typescript 文件,保存后编译。我可以启动另一个控制台来使用如 NPM、gulp、typings、dotnet CLI、NodeJS 等工具;以及启动我最喜欢的轻量级编辑器来编写代码! :  )

  -

  译文链接:http://www.codeceo.com/article/web-change-me-20-years.html

  翻译作者:码农网 – 小峰

最后编辑:
作者:同创卓越
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。