2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

给 JavaScript 一个体面的外表

  • 2007-08-17
  • 本文字数:1034 字

    阅读完需:约 3 分钟

在 Ajax 体验大会上,微软的 UI 框架部门的开发经理 Matt Gibbs 谈到了微软对 JavaScript 开发支持的一些计划,核心内容就是从面向对象化特征、Visual Studio.NET 开发工具和.NET Framework 等几个层次对 JS 进行包装,并进一步提升其对 Web UI 体验的支持能力。这个计划的需求来源于 Ajax 的快速发展,JS 作为 Ajax 的中心技术,通过改造它可以较大程度提高 Ajax 开发的产能。

对开发人员而言,开发 JS 往往并不是什么愉快的经历,很多时候被称为“Write Once, Won’t read a life(一次写成,终生不读)”,就是在 ASP.Net Ajax 团队自己进行产品开发的过程中,他们也在调试 JS 时也饱受煎熬。痛定思痛,微软觉得必须要为 JS 增加面向对象特征,按照“急用先上”的原则,首先要增加命名空间和继承的支持。前者是实施大规模项目的基础,如果所有的对象都散落在一个个 function 里面,那几乎等于直接倒退到 10~15 年前的结构化开发,在快速变化的业务面前,管理和组织这些代码就只能对“敏捷”取非了,通过命名空间的梳理作用起码可以给对象一个有效的组织,在这之后再去考虑重用、架构优化之类的事情;后者的作用更明显,没有继承的 JS 代码适合做“一锤子买卖”的项目,虽然有很多现成的框架,但开发过程和早期的 VB 差不多,项目迭代 2、3 个版本后,重写恐怕比“重用”划算的多。

除了面向对象的封装之外,微软还要推出一个面向 JS 的 UI 对象模型,旨在尽量解决现有浏览器兼容性问题和 JS 执行效率问题的基础上,向 JS 开发人员提供类似 C#一样简便的富客户端开发体验,其中包括 Ajax Web 客户端的数据绑定机制和客户端事件多播机制(Multicast)。不过现阶段能够提供开发人员的还仅限于 Visual Studio.NET 环境中的 JS 代码感知能力和 ASP.NET Ajax 1.0 所提供的运行时服务,包括最基本的安全服务:

  • 读取用户安全信息;
  • 浏览器客户端的远端认证;
  • 用户角色信息。

在此次会议上,针对现有 Ajax 框架对浏览历史记录支持不够的情况,微软也着重阐明了要在 ASP.NET Ajax 中增加相应支持的意见,务求让用户在点击 Back 按钮的时候,可以比较的有效的恢复现场,确保不会因为 Ajax 令用户直观上感到困惑。

相信借 Windows 占领绝对用户市场的微软也意识到如果不紧随 RIA 的趋势,那么用户、商业平台和项目机会将会很快被竞争对手夺取,很大程度上来说用户是应用导向型,谁可以把更大比例的 Web 开发人员聚集到自己的平台,谁就更有可能通过技术因素占领市场。既然现在很多 Web 开发人员最关心的是 Ajax 和 JS,那该出手就要出手了。

2007-08-17 03:001087
用户头像

发布了 61 篇内容, 共 14.3 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

前端刷完这12道滑动窗口,就可以出山面试了

js2030code

JavaScript LeetCode

掌握 CORS 跨域请求,读这一篇文章就够了

范家鹏

HTTP CORS 跨域 异步请求 跨域资源共享

群晖DS218+做maven私服(nexus3)

程序员欣宸

maven 12月月更 群晖

Git实战(四)| Git分支管理实操,搞定在线合并和本地合并

霍格沃兹测试开发学社

ReactDOM.render在react源码中执行之后发生了什么?

flyzz177

React

IoT高级设备检索——设备管理运维类

阿里云AIoT

数据库 监控 物联网 传感器 Cloud Native

算法 KECP 被顶会 EMNLP 收录,极少训练数据就能实现机器阅读理解

阿里云大数据AI技术

自然语言处理 机器学习 12 月 PK 榜 机器阅读

前端面试指南之JS面试题总结

loveX001

JavaScript

React源码解读之React Fiber

flyzz177

React

手把手教你构建数据安全体系,守住安全合规红线

王巍

数据安全

基于阿里云IoT平台OTA进行APP确认升级的方案——业务架构类

阿里云AIoT

物联网 UED 数据格式

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

Git实战(五)| 让工作更高效,搞定Git的分支管理

霍格沃兹测试开发学社

百度 Android 直播秒开体验优化

百度Geek说

android 百度app 12 月 PK 榜 直播优化

前端工程师leetcode算法面试必备-二分搜索算法(上)

js2030code

JavaScript LeetCode

做了一份前端面试复习计划,保熟~

loveX001

JavaScript

React源码分析1-jsx转换及React.createElement

goClient1992

React

极客时间运维进阶训练营第七周作业

9527

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

潦草手写体也能轻松识别,快速提取文字不用愁

HarmonyOS SDK

HMS Core

损失高达3亿美元|如何保护源代码安全?

SEAL安全

12 月 PK 榜 源代码安全 最小权限管理 零信任模型

深入理解JS作用域链与执行上下文

loveX001

JavaScript

ChatGPT中文版杀疯了,已登录AI模型市场

felix

React源码分析2-深入理解fiber

goClient1992

React

2小时开发《点球射门游戏》,动画演示思路(上),代码已开源

非喵鱼

Java 开源 游戏 12 月 PK 榜 世界杯足球游戏

跨机房ES同步实战

京东科技开发者

迁移 迁移数据 异步多活 Elastic Search 数据库·

KAFKA EAGLE 监控MRS kafka之操作实践

华为云开发者联盟

开发 华为云 12 月 PK 榜

区块链“入局”证券市场,未来前景有多大?

旺链科技

区块链 产业区块链 证券行业 12 月 PK 榜

React Context源码是怎么实现的呢

flyzz177

React

前端面试题(附答案)

loveX001

JavaScript

给JavaScript一个体面的外表_.NET_王翔_InfoQ精选文章