写点什么

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

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

关注

评论

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

数字化转型之数字资产知识库(springboot+es+vue+neo4j)

金陵老街

全文检索 知识图谱 Vue 3 spring-boot

还不知道npm私服?一篇教会你搭建私服并发布vue3组件库到nexus

Jianmu

ci 前端 npm Vue3 私服

洞见科技当选中国信通院隐私计算联盟「副理事长+政务应用工作组组长」单位

洞见科技

隐私计算

《知道做到》:如何从知道到做到?

郭明

InfoQ 极客传媒 15 周年庆征文|你真的了解RPC和REST吗?

No Silver Bullet

Rest RPC框架 构架 6月月更 InfoQ极客传媒15周年庆

WebStorm注册码_WebStorm2022年激活永久实测有效

Geek_75f9e9

webstorm

Vue-10-class的动态绑定

Python研究所

6月月更

大数据培训flink窗口(Windows)的表现形式

@零度

大数据开发

互联网公司研发效能/工程效率团队组织架构选择

laofo

互联网 DevOps 研发效能 持续交付 快手

Jetty 运行的时候出现 503 异常的原因

HoneyMoose

实战 | 【男保姆式】教你打开第一个微信小程序

写程序的小王叔叔

微信开发 小程序开发 6月月更

如何在 Django 中创建应用程序?

海拥(haiyong.site)

django 6月月更

运营商动态路由的神器 :IS-IS 协议

wljslmz

6月月更 路由协议 IS-IS

影响软件公司开发价格的因素有很多,你知道吗?

开源直播系统源码

软件开发流程 直播系统 app源码 直播源码 定制软件开发

JavaScript期约Promise

大熊G

JavaScript 前端 6月月更

【直播回顾】战码先锋第五期:深入理解OpenHarmony系统启动,轻松踏上设备软件开发之旅

OpenHarmony开发者

Open Harmony

Java项目集成activity工作流,快速开发业务审批单据(低代码,敏捷)

金陵老街

敏捷 springboot Activity Vue 3 BPMN

市值严重低估,现金15亿,百世走的路对吗?

科技新知

谈谈 JDK 和 SAPMachine 的关系

汪子熙

Java jdk jre SAP 6月月更

测试基础之:测试覆盖率

甜甜的白桃

软件测试 测试覆盖率 JACOCO 6月月更

滴灌通-服务中小企业的金融创新(36/100)

hackstoic

创业 商业模式

HarmonyOS应用/服务开发流程详解

坚果

6月月更

开发增效利器—IDEA辅助插件推荐

中原银行

开发 IDEA 插件 中原银行

一文掌握软件安全必备技术 SAST

SEAL安全

网络安全 软件安全 SAST工具 SAST

Linux开发_动态静态库创建与Makefile规则

DS小龙哥

6月月更

【Python技能树共建】验证码实操2案例

梦想橡皮擦

6月月更

远程办公带来的挑战和变化 | 社区征文

编程攻略

初夏征文

如何制定业务的故障分级标准?

华仔

架构实战营 故障定级 故障分级

C#入门系列(十五) -- 枚举

陈言必行

C# 六月月供

企业知识管理系统应具备的功能

小炮

洞见科技荣获「最受投资人欢迎的隐私计算服务企业」奖

洞见科技

隐私计算 数据要素

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