最近,我在我们的预订系统中尝试了使用 jQuery 的日历功能。之前的版本使用 ASP.NET 在服务器端构建完整的预订图表,然后将图表呈现给浏览器。这过程有点慢而且笨重,但还是可以工作的。
我想要实现一个 PHP 版本的房间预订系统,于是我将 ASP.NET C# 代码快速移植到了 PHP 中,之后我将 jQuery 的完整日历部分从网页中删除了。我使用了在线服务获取信息,但该信息仍然是用 C# 编写的,而不是使用 Microsoft SQL Server 数据库。
经过一些小小的调整和重构,我发现我几乎可以消除所有 PHP 和 .NET 代码,因为它们原本只是用来初始化网页的。现在我只剩下了一款使用 HTML 和 JavaScript 的网页,并使用 AJAX 将 JSON 数据源从 REST 互联网服务中提取出来。
结果真是太棒了!而且想要更漂亮,更换的速度简直令人难以置信——简直就像一款Windows应用。事实上,这正是由于该网页几乎完全在浏览器中运行,而且日历导航只需使用AJAX技术,即可只需少量数据即可完成,而无需使用网络服务。
我可以把整个实用程序写成这样吗? ?
这让我想起了上世纪 90 年代编程的往事。那时,网络页面通常是 HTML 格式,加上一点点 JavaScript;然后我们再添加一点点 ASP 来从数据库获取数据,并将其粘贴到网页上。即便当时,获取网页数据的过程也相对简单;问题一直在于我们需要用户来操作这些数据。即使是最简单的操作,比如只允许用户输入数字,检查日期是否正确,数据网格,甚至简单的弹出窗口,它们也都不像 Windows 应用程序那样简单。
提交原因?由于纯 JavaScript 的编写速度慢,容易出错,调试起来也很麻烦,而且你完全依赖于用户的浏览器选择。
程序员们以不同的方式将其集成到应用程序中,例如 applets、DLL、.NET、JSF 和其他技术和服务器框架。我最终转向了 ASP.NET,因为它能减少编程的繁琐工作,能自动生成 JavaScript,而且编写和调试也十分简单;这是一种更友好的开发模式。尽管如此,jQuery 和其他 JavaScript 框架如今却正在威胁着既有的模式。
微软已大规模采用 jQuery,并将替代 AJAX 工具包。许多软件开发人员已经采用了 jQuery 或 YUI。结合 HTML5,这些 JavaScript 框架可能会取代 Flash 和 Silverlight。jQuery 在近期的网络开发中确实占据了一席之地。
我能简单地使用 jQuery 而不用其他任何东西吗?或许可以——但还不是完全的。尽管我对 jQuery 非常满意,但我确实觉得它只是软件开发人员工具箱中的其中一个工具。我会越来越多地使用 jQuery,但我也会继续使用.NET 和 PHP。下面是我总结一下它的方式:
关于 jQuery 和 JavaScript 框架及其用途
对于:
- 良好的消费者体验,与 Windows GUI 类似
- 使用起来比纯粹的 JavaScript 简单得多
- 速度惊人
- 程序员不必担心浏览器版本问题
- 减少服务器负载,减少多趟往返传输
- 广泛使用,团队协作良好
- 许多部件已经开发完成
- 开放式供应
反对:
- 您可能仍然需要一个服务器框架来初始化和管理会话。
- 你想让另一款应用提供你的知识(比如在线服务),而该应用是用另一种语言编写的(比如.NET、Java或PHP)。
- 在大型应用程序中,其代码编写速度比 PHP 或 ASP.NET 慢。
- 你必须理解 CSS
- 然而,调试它们仍然很困难,尤其是在脚本相互干扰的情况下。
- 供应代码很难保护
- 通常需要一点时间才能学会。
如果你还没尝试过 jQuery,那么你一定得试试这个。入门非常简单,可以提高你的网络功能。