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


    ================================================================================
    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项目建立一个开源项目或者维护一个独立的网站。但目前,
    我还没有时间来做这件事。*)

  • 相关阅读:
    权限设计 【数据库和代码】 GO
    sql读取指定字符前的字符 GO
    C#编码建议 GO
    网页鼠标提示 GO
    ASP.NET设置ie打印两法 GO
    正则表达式入门教程 GO
    一个初学者对ArrayAdapter的简单理解
    泛型的简单理解
    SQL Server死锁详解
    .NET代理模式
  • 原文地址:https://www.cnblogs.com/encounter/p/2188731.html
Copyright © 2020-2023  润新知