【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

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

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

关注

评论

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

8款最佳实践,保护你的 IaC 安全!

SEAL安全

安全 IaC

2022上半年英特尔有哪些“硬核创新”?看这张图就知道了!

科技之家

6年技术迭代,阿里全球化出海&合规的挑战和探索

阿里技术

阿里巴巴 最佳实践 方法论 全球化

当你真的学会DataBinding后,你会发现“这玩意真香”!

编程的平行世界

JetPack andiod

介绍一种对 SAP GUI 里的收藏夹事务码管理工具增强的实现方案

Jerry Wang

SAP abap SAPGUI 企业管理软件 7月月更

一文读懂TDengine的窗口查询功能

TDengine

tdengine 时序数据库

SAP 智能机器人流程自动化(iRPA)解决方案分享

Jerry Wang

SAP 业务流程自动化 7月月更 企业自动化 iRPA

Fiori 应用通过 Adaptation Project 的增强方式分享

Jerry Wang

前端开发 SAP Fiori SAP UI5 7月月更

SpringBoot工程创建Swagger文档并自动生成调用代码

百家饭隐私计算平台创业者

JavaScript Spring Boot swagger

大数据培训 | Scala语言知识分享,直击面试

@零度

scala 大数据开发

陈宇(Aqua)-安全->云安全->多云安全

火线安全

云安全 云安全技术 云安全研究

刘对(火线安全)-多云环境的风险发现

火线安全

云安全 云安全技术 云安全研究

2022 · 让我带你Jetpack架构组件从入门到精通 — Lifecycle

编程的平行世界

an'droid android jetpack

学会使用LiveData和ViewModel,我相信会让你在写业务时变得轻松🌞

编程的平行世界

JetPack Andriod

孔松(信通院)-数字化时代云安全能力建设及趋势

火线安全

云安全 云安全技术 云安全研究

洞态在某互联⽹⾦融科技企业的最佳落地实践

火线安全

漏洞检测 IAST

向Spring框架学习设计模式

慕枫技术笔记

设计模式 spring框架 7月月更

进入前六!博云在中国云管理软件市场销量排行持续上升

BoCloud博云

云原生 cmp 云管理

开源者的自我修养|为 ShardingSphere 贡献了千万行代码的程序员,后来当了 CEO

SphereEx

开源 代码 ShardingSphere

Linux设备驱动1:硬件基础

贾献华

7月月更

焱融看 | 混合云时代下,如何制定多云策略

焱融科技

存储 文件存储 混合云 多云

龙蜥社区开源 coolbpf,BPF 程序开发效率提升百倍

OpenAnolis小助手

Linux 开源 内核 龙蜥技术 BPF

Java培训 | 详解 Linux 中的权限,这一篇就够了

@零度

Linux JAVA开发

JVM有哪些类加载机制?

源字节1号

软件开发

web前端培训Docker入门指南

@零度

Docker 前端开发

使用强大的DBPack处理分布式事务(PHP使用教程)

峨嵋闲散人

分布式事务 分库分表 读写分离 seata dbmesh

研发效能度量框架解读

思码逸研发效能

研发效能 效能度量

[Ljava.lang.Object;是什么?

okokabcd

Java

SpringSecurity的初始化流程

急需上岸的小谢

7月月更

leetcode 322. Coin Change 零钱兑换(中等)

okokabcd

LeetCode 动态规划 算法与数据结构

60 个前端 Web 开发流行语你都知道哪些?

海拥(haiyong.site)

前端 Web 7月月更

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