报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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

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

关注

评论

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

架构学习模块1作业

柱林

Linux之atime,ctime,mtime的区别

入门小站

Linux

在线批量请求工具

入门小站

工具

SparkSQL内核剖析

永健_何

spark Sparksql

dubbogo 凌烟阁之 何鑫明

apache/dubbo-go

云原生 dubbo dubbo-go dubbogo

架构训练营模块一作业

Lemon

架构训练营

无意中发现一个好用的前后端代码生成网

江湖一点雨

mybatis java代码 自动生成 vue自动生成 sql转实体

【LeetCode】和相同的二元子数组Java题解

Albert

算法 LeetCode 7月日更

FIL挖矿怎么样?FIL挖矿靠谱吗?

微信业务架构图 & 学生系统技术架构图

木云先森

架构实战营

架构实战营模块一作业

SAKIN

架构实战营

基于Erlang语言的视频相似推荐(三十一)

Databri_AI

erlang 实时计算 推荐系统

【Flutter 专题】93 图解 Dart 单线程实现异步处理之 Isolate (二)

阿策小和尚

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

Pandas高级教程之:统计方法

程序那些事

Python 数据分析 pandas 程序那些事

《大数据大创新:阿里巴巴云上数据中台之道》:解密阿里数据中台建设

云祁

大数据 读书笔记 数据中台 7月日更

架构实战营模块1作业

zlz

架构实战营模块一作业

A-领悟 Lifetruth‖

#架构实战营

模块1作业(G20210698020270)

哆啦A萌

大数据成神之路面试合集&资源开放下载

王知无

大数据 面试

架构实战营-模块1作业:微信的业务架构及学生管理系统

喻高咏        

模块1

Winston

领哆哆APP开发|领哆哆软件系统开发

架构实战营-模块一

绝影

架构实战营 #架构实战营

架构实战营模块一作业

feitian

微信业务架构图#学生管理系统

桂阳

微信业务架构图&学生管理系统架构设计

伏波

系统架构设计手册

不藏了,这些Java反射用法总结都告诉你们

华为云开发者联盟

Java JVM 反射 java框架 MyBase

【架构训练营】模块一作业

zclau

「架构师训练营第 1 期」

Rust从0到1-智能指针-Deref trait

rust 智能指针 smart pointer deref

云图说|华为HiLens云上管理平台,花样管理多种端侧设备

华为云开发者联盟

AI 华为云 云图说 华为HiLens EI智能体

高级码农设计的程序能解耦,是多么重要的一件事情!

小傅哥

spring 设计模式 小傅哥 观察者模式 系统解耦

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