NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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

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

关注

评论

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

云原生训练营 20211017- 作业2

笑春风

数字货币“透明性"将刺激中国富人对身份的需求!

CECBC

MECE法则在职场中的常见用法

石云升

MECE 职场经验 10月月更

在线分数约分计算器

入门小站

工具

砀山“区块链+农业” 推动产业“提档升级”

CECBC

docker 系列:底层知识

yuexin_tech

Docker

行动造就未来,区块链给农产品用上“数字身份证”

CECBC

一场穿越千年的智能矿山“梦游记”

脑极体

Agora 教程丨如何实现15mins自主搭建一个教育平台?

声网

人工智能 大数据

Prometheus 查询操作符(三) 聚合运算符

耳东@Erdong

Prometheus 10月月更

元宇宙:区块链时代的代名词

CECBC

linux之tar使用技巧

入门小站

Linux

05-抽象工厂模式

千羽的编程时光

设计模式

JavaAgent查看动态生成类的源码

长河

架构训练营模块一作业

小何

架构实战营

Github爆款!Aura v2.0.0正式版来了…

Jackpop

【设计模式】第七篇 - 建造者模式-麦当劳套餐

Brave

设计模式 建造者模式 10月月更

Leetcode 题目解析:211. 添加与搜索单词 - 数据结构设计

程序员架构进阶

LeetCode Trie 算法题 10月月更

阿里云盘:慌了....

Jackpop

新手 Gopher 如何写出更健壮的 Go 代码

baiyutang

golang 10月月更

03-简单工厂模式

千羽的编程时光

设计模式

第一周学习总结

小何

这款手机浏览器,简直开挂了....

Jackpop

java.lang.OutOfMemoryError:GC overhead limit exceeded

看山

Java OOM 10月月更

【Flutter 专题】24 易忽略的【小而巧】的技术点汇总 (三)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 10月月更

官方线索|1024 源创会回归!

Changing Lin

1024我在现场

应区块链而生的元宇宙

CECBC

阿里IM技术分享(五):闲鱼亿级IM消息系统的及时性优化实践

JackJiang

架构设计 即时通讯 IM

谈 C++17 里的 Command 模式

hedzr

设计模式 命令模式 Design Patterns c++17 Command Pattern

广角-聊聊Underlay

Lance

容器 云原生 Underlay

04-工厂方法模式

千羽的编程时光

设计模式

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