当前位置:文档之家› 前沿技术报告

前沿技术报告

• 元程序语言
一般情况下是定义 Java 类作为源程序,但是仍然可以在运行时进行类定义的操作。 这个需要高级技术,比如在加载类的时候增加字节码。Hibernate 直接插入数据存取逻辑 到商业对象的字节码里面,从额外的数据存取层里保存应用程序,称为元程序 。
Java 限制了开发者改变类的能力。为了加入一个 isBlack()方法检测一个 String 是否 全是空字符串,你不得不加入一个带有静态方法的 StringUtils 类;理论上,这个新方法 是输入 String 的。
七 异常处理
HTML5(text/html)浏览器将在错误语法的处理上更加灵活。HTML5 设计时保证旧的浏览器能够安全的忽略掉新的 HTML5 代码。与 HTML4.01 相比,HTML5 给出了解析的详细规则,力图让不同的浏览器即使在发生语法错误时也能返回相同的结 果。
八 HTML 5 正在改变 Web
物联网中非常重要的技术是射频识别(RFID)技术。RFID 是射频识别(Radio Frequency Identification)技术英文缩写,是 20 世纪 90 年代开始兴起的一种自动识别技术,是目前 比较先进的一种非接触识别技术。
六 Ruby 和 Java 的未来
Ruby 可以教会 Java 程序员很多。RoR 框架显示了开发 Web 应用程序是如此的简单; 利用 JRuby,RoR 将能够重用存在的 Java 功能。JRuby 将在 Java 应用程序中加入 JavaScript 和其他各种动态脚本语言
JRuby 是面向 Ruby、基于 Java 虚拟机(JVM)的一种解释程序,它结合了 Ruby 语言的 简易性和功能强大的 JVM 的执行机制,包括与 Java 库全面集成。Rails 彻底加快及简化 了 Web 应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方 面,Java 平台及其虚拟机、库和应用服务器的速度、稳定性和功能方面却一直在提升,现 在已被公认为是开发高端服务器应用的领先平台。不过如果 Java 平台不与 Ruby 等新兴语 言联系在一起,就有可能落后于流行趋势。
HTML5 草案的前身名为 Web Applications 1.0。於 2004 年被 WHATWG 提出,於 2007 年被 W3C 接纳,并成立了新的 HTML 工作团队。在 2008 年 1 月 22 日,第一份正式草 案已公布,预计将在 2010 年 9 月正式向公众推荐。WHATWG 表示该规范是目前正在进 行的工作,仍须多年的努力。
五 客户端存储数据
1 ) localStorage - 没有时间限制的数据存储 2 ) sessionStorage - 针对一个 session 的数据存储 之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由 每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。
二 与 HTML4 不同之处
新的解析顺序新的元素:section, video, progress, nav, meter, time, aside, canvasinput 元素的新属性:日期和时间,email, url。 新的通用属性:ping, charset, async 全域属性:id, tabindex, repeat。 移除元素:center, font, strike。
前沿技术报告
作为一位软件技术专业的学生,我在本学期学习了《前沿技术》这门课来扩展自己的专 业知识面。前沿技术课分为 3 个专题来研究:关于 HTML5,.NET 新技术以及物联网的发展。 以下是我的专题和自己的见解。
第一课题 关于 HTML5
一 HTML5 的简介
HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准。HTML 的上一个 版本诞生于 1999 年。自从那以后,Web 世界已经经历了巨变。HTML5 仍处于完善之 中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。
二 Ruby vs. Java
• 动态类型
Ruby 拥有动态类型 ,Ruby 的动态类型意义上不是弱类型,Ruby 经常需要你传递正 确类型的对象。Java 强制类型转换比 Ruby 要弱,Java 拥有静态类型 。例如,Java 里 面:”4”+2 等于”42”,这里会将整数转化为字符串,在 Ruby 里会抛出一个 TypeError,
四 Ruby 好处
使用 Ruby 的动态机制,用户能够改变脚本类的定义。这些 Ruby 对象允许直接使用 方法管理它的状态和行为。一般使用用户配置好的键值通过 Java 映射传递,削弱了对象 的功能完整性。
JRuby 能够从一个系统读出数据,将这个数据传递插入到另外一个系统里。当需求改 变的时候,修改一段 JRuby 脚本相对于修改配置文件来说简单得多,所以避免了 Java 综 合代码里面复杂的编译和发布周期。
JRuby 结合了所有这些技术互为补充的优点,有望提高 Ruby 和 Rails 的知名度,同时 为 Java 平台在运行非 Java 语言方面赋予新角色。
Ruby 将得到更大的进步就像 Ruby 本地解释器转移到基于字节码的系统,而且 JVM JRuby 解释器获得了将 Ruby 编译成 Java 字节码的能力。最终的,任何平台对于很多功能 来说都逐渐被忽略,由此获得了平台独立性。
• 解释性语言
Ruby 是在解释器里面执行的,所以你不需要等待编译可以直接测试你的代码,你能 够很平坦地利用交互方式执行 Ruby,执行你键入的每一行。
对比 Java 的历史,在早些年,JVM 经常在运行时解释字节码,Java 因为速度慢捐 献了它的名声。然而很多应用程序花费了开发者很多时间等待用户或者是网络输入输出 而且这些瓶颈一只保持着,Java 开发者快速学习高效算法来优化它强于使用低级计算机 语言进行开发。最近几年里,Java 速度有了一定的提升。
Ruby 使用行为结合配置,提供了 Java 插件 API 的功能,而且不需要 JavaIDE 或者编 译器,节省了构建和发布 jar 文件的步骤。
五 Ruby 局限性
一个 Ruby 类是不能从一个 Java 抽象类继承的。这种限制使你不能简单创建一个具 体的 Java 子类,使用虚方法实现抽象方法用于让 Ruby 类来继承。这是因为在 Ruby/Java
在 Ruby 里简单地用一个空白来扩展 String 类,在 Ruby 里面任何东西都是一个对 象,你能够增加 Fixnum 类,这个等价于 Java 里面的原始 int 类型。
三 Java 里的 Ruby:JRuby
JVM 下的一个开源 Ruby 解释器,能够在 Java 里面使用 Ruby 类库。就像标准的 Ruby 解释器一样,除开使用 Ruby 调用本地方法(C 代码)或者 Java 类库以外,Ruby 代码都能 够在 JRuby 里面正确执行。
继承在 JRuby 的最近的版本中的第二个限制:Java 代码不能多态地调用重写一个 Java 方 法的 Ruby 方法。比如,通过继承 AbstractTableModel 去利用添加到 TableModel 接口的功 能是不可能的。你能够将继承转化为代理绕过这个限制:使用一个具体 Java 填充类继承 于抽象类作为类型接口的一个代理,这个接口包括所有的 Java 方法 。
九 HTML 5 将带来什么?
全新的,更合理的 Tag,多媒体对象将不再全部绑定在 object 或 embed Tag 中, 而是视频有视频的 Tag,音频有音频的 Tag。本地数据库。这个功能将内嵌一个本地的 SQL 数据库,以加速交互式搜索,缓存以及索引功能。同时,那些离线 Web 程序也将 因此获益匪浅。不需要插件的富动画。Canvas 对象将给浏览器带来直接在上面绘制矢 量图的能力,这意味着我们可以脱离 Flash 和 Silverlight,直接在浏览器中显示图形或 动画。一些最新的浏览器,除了 IE,已经开始支持 Canvas。浏览器中的真正程序。将 提供 API 实现浏览器内的编辑,拖放,以及各种图形用户界面的能力。内容修饰 Tag 将 被剔除,而使用 CSS。理论上讲,HTML 5 是培育新 Web 标准的土壤,让各种设想在 他的组织者之间分享,但 HTML 5 目前仍处于试验阶段。
在 HTML5 中,数据不是由每个服务器请求传递的,而是只有在请求时使用数据。 它使在不影响网站性能的情况下存储大量数据成为可能。 对于不同的网站,数据存储于不同的区域,并且一个网站只能访问其自身的数据。
HTML5 使用 JavaScript 来存储和访问数据。
六 新应用程序接口(API)
除了原先的 DOM 接口,HTML5 增加了更多 API,如: 用于即时 2D 绘图的 Canvas 标签、定时媒体回放、离线数据库存储 、文档编辑 、拖拽控制 、浏览历史管理 。
• 功能性编程ቤተ መጻሕፍቲ ባይዱ
在 Ruby 里,你可以将一段代码块传给一个执行它的方法,遍历是在执行后台运行 的。
在 Java 里面,你经常反复使用集合的 Iterator(迭代器),从逻辑上去遍历集合里面的 每一个元素。但是这种遍历仅仅是这样一个细节实现:一般来说,你仅仅尝试去接受对 集合里面的每一个元素采取同样的逻辑 。
HTML5 是近十年来 Web 标准最巨大的飞跃。和以前的版本不同,HTML 5 并非 仅仅用来表示 Web 内容,它的使命是将 Web 带入一个成熟的应用平台,在这个平台 上,视频,音频,图象,动画,以及同电脑的交互都被标准化。尽管 HTML 5 的实现 还有很长的路要走,但 HTML 5 正在改变 Web。
第二课题 .NET 新技术
一 Ruby 的出现
• 随着硬件的快速发展,新的研究和开发技术大大改进了编译器、解释器和虚拟机, 开发者不得不向高级语言转移,放弃他们使用的低级语言开发以提高生产力 。
• Web 表现层开发需求变化频繁,Java 这类静态类型的语言不够敏捷,严重影响了开 发的效率
相关主题