启动一个Rich Web Client的项目:Qomo OpenProject

2024-01-17 11:48

本文主要是介绍启动一个Rich Web Client的项目:Qomo OpenProject,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2005年12月29日 02:31:00

================================================================================
Qomolangma ProjectOpenProject v0.9


类别 :Rich Web Client
关键词 :JS OOP,JS Framwork, Rich Web Client,RIA,Web Component,
DOM,DTHML,CSS,JavaScript,JScript

项目发起:aimingoo (aim@263.net)
项目团队:aimingoo, leon(pfzhou@gmail.com)
有贡献者:JingYu(zjy@cnpack.org)
================================================================================

一、Qomo OpenProject项目的由来
~~~~~~~~~~~~~~~~~~

Qomo OpenProject是一个在Rich Web Client方向上发展的开源项目。它的前身是我在前公司的一个
内部项目WEUI(Web Enterprise User Interface)。

用Qomo作为项目名,是因为我不久前刚才珠峰回来。Qomolangma因此成为我能够想到的最美丽的
词汇之一。如同珠峰带给我的印象一样,Qomolangma是完美、神秘、遥远和不可企及的代名词。直
译藏语的Qomolangma,就是"女神朗玛"的意思。当然,它现在通常是指珠峰。

WEUI这个项目是由三个开发人员完成的,这里我需要先介绍一下他们:

- 周劲羽(JingYu)
中国最优秀的Delphi开源项目CnWizard&CnPack的发起人和领导者。在2004年4月到8月
间,我们能有幸同事四个月。在此期间,我们一起完成了WEUI的内核设计工作。他独立
完成了WEUI项目中的LocalDB库这个部分。

- 周鹏飞(leon)
leon是非常优秀的技术人员和项目经理,目前他是微软的软件工程师。在2004年4月到
2005年6月间,我们一起共事。此前,他在思维加速(justep)公司担任内核设计和开发的
工作。leon也是WEUI内核设计的参与者之一。他还为WEUI完成一个专用的自动文档生成系
统。在WEUI项目中有一个基于VML的Graphics库是由他独立完成的。

- 周爱民(aimingoo)
我。目前在盛大网络任软件架构师。在2004年4月到2005年8月期间,我在前公司组织
并完成了WEUI这个项目,并在WEUI的基础上实现了一个Rich Web Client的DCN(Data Comm-
unications Network Managment)系统。

WEUI这个项目是一个企业级的产品/技术。Qomo OpenProject主要是将其中可以公开的部分技
术和技巧剥离出来,试图在此基础上形成一个公共的、可重用的 Rich Web Client开发
框架和界面组件库。


二、Qomo OpenProject的组成
~~~~~~~~~~~~~~~~~~

因此Qomo OpenProject将会由两个部分构成:
- QomoJS : 在JavaScript的基础上进行扩展,使其支持完整的OOP特性,部分支持
一些其它高级语言的语法特性。它本身又由两个部分构成:
QomoJS OOP Core : OOP特性的实现内核
QomoJS Framework : 语言特性的框架层和基础类库

- QomoUI : 一套界面组件库。


三、Qomo OpenProject的运行环境
~~~~~~~~~~~~~~~~~~

WEUI本身在以企业用户为对象的,在B/S架构下进行开发的一套B端实现技术。因为他有
特定的用户对象,因此WEUI从一开始起就没有充分考虑浏览器兼容问题。--你应该知
道,企业用户是不大可能让员工在工作机上尝试Firefox/Mozilla或者Opera的。

但Qomo与此不同。Qomo中讨论浏览器兼容问题,但并不要求在Qomo OpenProject中必
须去实现它。这个说法的含义是,Qomo OpenProject中将尽可能使代码被运行在不同的浏
览器上,但在绝大多数情况下,Qomo将优先考虑对Internet Explorer的实现,而不是兼容。

作为一项约定:Qomo OpenProject公开的代码必须进行(主流)浏览器的兼容性测试,并将
测试的结果标注在一个表格中,放在项目的Document目录中。因此如果你打算支持Qomo,
你可以选择:
- 去完善它的兼容性,或者
- 仅仅是在指定浏览器上去进一步实现它。

Qomo OpenProject的推荐运行环境是:
- Windows 98以上的操作系统
- Internet Explorer 5.5以上的浏览器

Qomo OpenProject的每一个发布版本将保证测试并运行的浏览器是:

======================================================
名称 版本号
======================================================
- Internet Explorer 5.5 正式发行版本 5.50.4134.0600
- Internet Explorer 5.5 sp1 5.50.4522.1800
- Internet Explorer 5.5 sp2 5.51.4807.2300
- Internet Explorer 6.0 6.0.3790.0
- Internet Explorer 6.0 sp1 6.0.3790.1830

- Internet Explorer 5.01 sp2 5.0.3314.2100 (仅提供兼容性测试和报告)
======================================================

四、Qomo OpenProject的特点
~~~~~~~~~~~~~~~~~~

Qomo不排斥任何与指定浏览器直接相关的技术的使用,也不排斥在Qomo OpenProjec
t约定运行环境中进行的任何技术、技巧的尝试。

Qomo提供一个完整的OOP Core,使得开发人员可以在此基础上进行大型的类/类库封
装。Qomo OpenProjectt也提供完整的Visual Compoent构建方案和底层类库,并包含一
些示例代码。

Qomo试图对浏览器兼容性进行探索和尝试。公开有关兼容性的资料和技术实现,但
并不保证在未约定的浏览器上的运行。

Qomo是企业级而非门户级的架构。它能适应企业级B/S架构中的B端开发的需求,但
不适宜作为"公开的"、"门户级的"网站的B端架构。--除非您不考虑IE之外的浏
览器用户的体验。

Qomo是以技术探索为主要方向的。可能他不会按照你所期望的、商业化的发展速度
进行升级和更新。但Qomo项目组将保证每一项应用在Qomo OpenProject中的技术的
高度公开与透明,并保证应用或者实现这种技术的合理性。

此外,由于Qomo实现了完整的OOP特性,所以他具备对一些新的架构技术的描述能力。
因此我将会推动以"以Qomo OpenProject为基础的B端架构设计技术"为主题的发展方向。


五、参与Qomo OpenProject项目
~~~~~~~~~~~~~~~~~~

欢迎你积极参与Qomo OpenProject项目。

如果你希望使用Qomo OpenProject的成果,那么你可以随时从网站上得到他的新版本,并无
须任何授权地在商业/非商业的环境中使用它。

如果你希望为Qomo OpenProject贡献代码或者你的新思,那么你可以通过邮件与我联系:
aim@263.net。

如果你想进行有关该项目的讨论,那么可以在我的blog上留言。如果你的话题可以被
展开讨论,我会为你开一个主题。

(* 注:我可能会为Qomo OpenProject项目建立一个开源项目或者维护一个独立的网站。但目前,
我还没有时间来做这件事。*)



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=564658


这篇关于启动一个Rich Web Client的项目:Qomo OpenProject的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/615937

相关文章

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

解决SpringBoot启动报错:Failed to load property source from location 'classpath:/application.yml'

《解决SpringBoot启动报错:Failedtoloadpropertysourcefromlocationclasspath:/application.yml问题》这篇文章主要介绍... 目录在启动SpringBoot项目时报如下错误原因可能是1.yml中语法错误2.yml文件格式是GBK总结在启动S