写点什么

给 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:00930
用户头像

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

关注

评论

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

2023-06-09:什么是Redis事务?原理是什么?

福大大架构师每日一题

redis 福大大

pytorch实现前馈神经网络实验(手动实现)

Studying_swz

6 月 优质更文活动

ChatGPT教我用200行代码写一个简版Vue框架 - OpenTiny

Kagol

vue.js 前端 ChatGPT

限流功能实现原理

互联网架构师小马

【零售电商系列】走进亚马逊(三)

小诚信驿站

6 月 优质更文活动

软件测试|Python绘图神器——Matplotlib使用教程(一)

霍格沃兹测试开发学社

Redis数据结构:高频面试题及解析

小万哥

nosql redis 面试 后端 中间件

INFINI Labs 产品更新 | Easysearch 新增跨集群复制 (CCR)、支持快照生命周期管理 (SLM) 功能等

极限实验室

搜索引擎 console Gateway agent easysearch

H5 单双引号问题

Andy

STM32读取BH1750光照强度数据打印到串口

DS小龙哥

6 月 优质更文活动

Nop平台为什么是一个独一无二的开源软件开发平台

canonical

开源 低代码 开发平台

一文快速了解微服务架构

穿过生命散发芬芳

微服务 6 月 优质更文活动

虚拟机安装Ubuntu16并安装Ros(Kinetic)

Studying_swz

6 月 优质更文活动

阿里内部人手一份的Spring Cloud Alibaba手册

小小怪下士

Java 程序员 SpringCloud springcloudAlibaba

Solaris网络从9家知名投资机构获得5000万美元融资

股市老人

微服务高并发:流量效果控制,经典限流算法

互联网架构师小马

2024深圳电子展

AIOTE智博会

电子展

C语言编程—强制类型转换

芯动大师

C语言 强制类型转换 6 月 优质更文活动

Java SPI 在 Sentinel 中是如何应用的?

互联网架构师小马

Java sentinel spi

责任链模式在 Sentinel 中的应用

互联网架构师小马

Sentinel 是如何实现资源指标数据统计的

互联网架构师小马

Java sentinel

精进:如何跳出疯狂的忙碌

老张

个人提升 如何解决问题 思维逻辑

MegaOS重磅亮相新华三领航者峰会,助推百行百业全数字化

新消费日报

镭速用心打造,新版本发布,为用户实现更多可能

镭速

Sentinel的整体工作流程分析

互联网架构师小马

头部大模型公司进京赶考,向量数据库成为应考神器

Zilliz

Milvus Zilliz AIGC 向量数据库 zillizcloud

android项目问题总结

Studying_swz

6 月 优质更文活动

百度沈抖:所有产品将基于大模型重构,要做好三大准备

科技热闻

请解释如何实现算法 PERMUTE-BY-SORTING,以处理两个或更多优先级相同的情形。也就是说,即使有两个或更多优先级相同,你的算法也应该产生一个均匀随机排列。

福大大架构师每日一题

福大大 ChatGPT

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