该【中文开发手册 】是由【annimy】上传分享,文档一共【43】页,该文档可以免费在线阅读,需要了解更多关于【中文开发手册 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。EyeOS2开发手册
翻译:zenoleo :
翻译得不好,大家见谅。发现错误可以通过qq联系我.
目录
2
2
1。1。什么是eyeOS? 3
1。2。应用系统ﻩ3
。系统结构 4
5
4。3。库 6
4。4。框架 7
4。5。引导程序 7
6。MMAPExec的和extern 9
。MMAP 10
6。
7。Structure和功能的应用程序ﻩ11
14
9。1。eyeOS使用Qooxdoo类ﻩ18
13。文件系统接口ﻩ21
18。NetSync RealTimeﻩ28
%。泛型DAOﻩ30
。直接连接 33
20。References和进一步阅读ﻩ33
。。.。.。。..。......。。。。。。..。。。..。....。。。。。.。....。。.。.。。.。。。..。.。..
本文件的内容正在出版的“创作共用许可证:—非商业性-署名—
您可以查看许可协议的条款摘要.。.[1]
您可以在下面的地址。.。查看全文本许可证[2]
您可以自由:
要共享—复制,分发和传输工作。
混合—适应的工作.
在下列情况下:
署名—您必须归因于作者或授权人(但不以任何方式表明他们赞同你或你的工作使用)指定的方式工作。
非商业—您可能无法使用本作品用于商业目的.
相同方式共享—如果您改变,转换,或建立这项工作时,您可以分发的工作,只有在这个相同或类似的许可证。
本文件的目的是提供必要的在eyeOS环境下开发的知识;,能够构建应用程序,修改现有的应用程序,开发一般的系统组件,并了解其架构。
本文档的读者是技术人员,例如,分析师和Web开发人员。JavaScript和PHP的知识是必需的,以及Web开发的整体理解。了解面向对象编程也将是有帮助的.
。什么是eyeOS?
eyeOS是一个在线桌面,为用户提供了类似桌面的界面,类似于计算机上的界面。eyeOS对于开发人员提供了一套工具,允许您开发在线桌面应用程序,通过类似在本地桌面上的方式。
在eyeOS的应用程序的开发使用JavaScript的图形库,允许开发人员在更高层的概念工作,例如窗口,按钮,列表等,而不是层或低级别的XHTML.
eyeOS的目标同时包括用户和开发人员,应用程序的工作方式类似于本地桌面应用,隐藏在web环境中工作所产生的问题。
eyeOS是为这些人:希望他们的用户在一个可控制的方式通过Web界面访问资源,访问控制和用户帐户,有适应环境的能力,以符合他们的公司或组织的形象,并创造所有新特性和功能,以满足他们的需求。
。应用系统
由于能够开发出具有绝对的确定性,另一个应用程序不干扰你的应用程序高度重视,我们已经制定eyeOS是整个应用系统的发展是尽可能简单。
在一定意义上eyeOS是像一个传统的操作系统,其中每个应用程序单独运行它自己的进程和其自身的进程ID(PID),其中每个应用程序可以有不同的执行权限。
因此,一个应用程序在eyeOS是一个独立的组件,您可以安装或卸载,,以便只有一个用户或用户组可以看到,安装和使用桌面上的应用程序。
后面我们将会看到,该系统提供一个API来管理应用程序,用户运行的是,例如,关闭正在运行的应用程序,,而不相互干扰,每个应用程序和运行相同的应用程序的多个实例,通过这个API。
eyeOS系统处理低级别的操作,例如,当用户关闭一个应用程序的过程中被自动删除。开发商不担心这些细节,但如果需要的话,可以介入和整个系统的改变默认的行为和行动.
从技术上讲,eyeOS是用PHP和JavaScript开发Web应用程序。PHP用来开发服务器端的架构,而JavaScript用于创建和管理桌面和应用程序,显示在Web浏览器客户端。
所有的eyeOS的应用,如登录,注册,或计算器,,可以修改。
当第一次加载系统,用户的Web浏览器下载所有必要的JavaScript库,,在整个用户会话中只有一个页面加载,其余的操作都是通过AJAX请求。
在第一次加载时,eyeOS系统运行所需要的JavaScript库被下载。当应用程序第一次运行,具体到每个应用程序的JavaScript文件下载需求。下一次运行应用程序,系统将使用已经在缓存中的JavaScript。
当用户在eyeOS运行一个应用程序,一个可视化窗口通常会出现,使用户能与它进行交互。窗口创建一个高层次的JavaScript库Qooxdoo;这很像是GTK、Qt、JavaSwing,或类似的用户界面开发工具包。当用户界面要求JavaScript在服务器上执行一个操作,通信库用于发送消息(这是低层次的AJAX请求)给应用程序的创建者所定义的PHP函数。
通过本文,eyeOS如何工作将逐渐变得更清晰,这将给你一个非常有用的系统的概述.
,,开发人员能够从系统访问资源或信息(指图片、css等),而无需使用系统的API(因为没有人会检查权限或操作安全)。
2。
在eyeOS,组件和系统功能通过JavaScript和PHP划分。
有一些JavaScript端的功能,简化应用开发,包括了必须使用的应用程序的特定结构。同样,在PHP运行的服务器端,也有库和API.
正如你可以看到,应用程序分为两部分的部分,在客户端(浏览器)上运行和在Web服务器上运行的部分。客户端上运行的部分,,例如读取数据库,你可以通过API调用一个服务器端的PHP函数。
在eyeOS所有组件都是模块化的,就是说eyeOS系统包含一系列的组件,如用户管理。组件的内部划分成更小的元件,如公共用户管理API,这个组件处理用户的软件,,是负责响应保存数据的请求,接收用户的数据,被称为provider.
provider是组件的一小部分,其任务是保存eyeOS的数据。这种模块化使我们在编写整个系统时都无需担心在后端的数据库类型。如果我们要使用不同类型的数据库,那么我们可以简单地开发一个新的provider,而无需接触组件或应用程序的其余部分。
正因为如此,当有人问你eyeOS的用户保存在哪里,,一切都取决于所使用的provider。默认是使用MySQL数据库,但是我们可以很容易地开发Oracle或微软SQLServer的provider,甚至非关系引擎的provider.
eyeOS系统内用户的文件存储在服务器的文件系统。稍后,我们将彻底分析eyeOS目录结构;现在重要的是,要了解用户的文件没有存储在数据库中。
由于eyeOS应用在任何文本编辑器和Web浏览器的JavaScript和PHP,开发不够,,一个共同的文本编辑器没有语法着色,缩进或代码完成功能。虽然它是可能的发展离不开这一切,它不会是理想的环境.
由于eyeOS是一个Web应用程序,它需要一个Web服务器,数据库,和现代的Web浏览器运行。一个典型的设置是为开发本地计算机上安装Web服务器,,这是典型的开发团队内部开发服务器上安装有eyeOS,使发展可以以协作的方式进行。
eyeOS将被安装在Web服务器,请阅读eyeOS安装手册的要求和建议的软件和如何安装eyeOS。
至于Web浏览器,Firefox是建议,因为它是免费的,跨平台,并支持扩展或添加功能到浏览器的插件使用。:
要添加调试代码,错误报告,以及许多其他功能,真的是有用的Web开发Firefox的功能,你应该安装Firebug扩展:
对于一个代码编辑器中,++,NetBeans,jEdit的等,将是足够的.
前面已提到,有PHPAPI提供给应用程序,事实上也有在PHP端的组件,这些是:
目录:
4。
。框架
4。5。引导程序
eyeOS内核是管理的其他组件的组件。由于eyeOS是一个Web应用程序,内核并不像普通操作系统一样,但内核是核心组件,它管理其他组件的实例化,形成了eyeOS的引擎。
对于开发者,内核是一种不可见的组件;你不需要直接与它进行交互,所以对它的研究将不会很有趣.
服务是系统的组件,是eyeos运行必须的组件,,一个组件,它负责管理用户,它是一个服务。一个组件,它负责压缩zip文件,它不是一个服务,因为它不是eyeOS必须的组件.
大多数服务会在后面分别更深入地讨论,例子包括进程管理器或用户管理,因为两者都是eyeOS必要的内部组件。
所有的服务都有一个公共API,供应用程序访问,使他们能与系统进行交互,例如通过用户服务的公共API创建一个新用户。
。库
库负责对eyeOS系统提供支持和保障.
库中的一个例子是为utf8的支持。因为PHP目前不支持UTF8,在eyeOS有一个库,添加这种支持.
库是使系统工作所必不可少的,但与服务有区别,区别在于他们没有管理eyeOS中的任何东西,他们在一个较低的层次,提供支持和保障,确保运行eyeOS时,一切都在正确的环境中.
框架是系统中的最高层的组件,也就是说,它们更接近应用并进一步远离低层次的细节。框架是不必要的组件,添加eyeOS功能,但没有对eyeOS自身进行更改。例如用户管理不是一个框架,因为它是一个服务.
例如,一个框架,负责转换Office文档成为应用程序使用的其他文件格式,另一个例子是解压Zip文件的框架.
4。5。引导程序
在所有操作发生之前,引导程序负责加载整个系统.
当用户打开时按需加载应用程序,每次请求,所有的库、服务和框架都加载一次,这样每次用户运行一个程序时,所有组件都已经被加载并且可用。
配置文件eyeOS/system/conf/boot。xml中,包含加载项和加载顺序的配置.
语法是一系列的元素,像这样....。。
<element〉
〈type〉library</type〉
〈name>exceptions</name〉
〈priority〉20〈/[roority>
</element〉
中文开发手册 来自淘豆网m.daumloan.com转载请标明出处.