XOOPS Cube

XOOPS Cube

Infobox Software2
name = XOOPS Cube



caption =
developer =
operating_system =
genre = Content management system
license = BSD
website = [http://jp.xoops.org/ XOOPS Official Site]

XOOPS Cube is used to build a website. It is both a CMS and a Web Application Platform. XOOPS Cube is an engine, a platform/layer giving basics functionalities (like the user's tables) to create a custom CMS or to aggregate preexistent CMS.

XOOPS Cube and XOOPS

The XOOPS Cube functions of the XOOPS System Module have been placed into their own modules, such as account management and private messages. With XOOPS Cube users choose or develop their own template engine (e.g. Smarty). The core of XOOPS Cube is simple and small, offering only the minimum of needed functionality. XOOPS and XOOPS Cube are therefore very different from each other.

XOOPS Cube is the Core Layer in addition to the Base Module(s). It does not provide a framework, but permits developers to run their framework within Cube. It uses a "No Framework" concept. It has a minimalist core with main classes which the project team narrowed down the 'Core program'.

The first versions of XOOPS, like other Nuke derivatives such as PHP-Nuke, were labeled as a Content Management System (CMS), which can be extended with modules. Users can add or change certain functions by selecting modules. Though it is less flexible if a user needs to for example customize authentication functions or web accessibility.

Users are able to use modules and themes made for XOOPS. The system is able to work with legacy classes.

Base modules

Developers can create a new base module or a sub-class of Legacy, and release a new package. And, even if they cannot program, they are free to publish their distribution package with their modules and themes. They can write base modules to make XC interact with CMS(s) to be able to run any existent or new CMS. There are other base modules on the way to be built, as explained by minahito in the XC Wiki.

Legacy

With XC, web developers are able to choose from many different CMS systems. This base module is one of them. XC had to release Legacy before XCube 1.00. XCube was not completed. Minahito is currently working on XCube as the first major version. Current XCube does not provide enough mechanism to BASE, so Legacy implements many features directly. So Legacy is an exception, made only to emulate X2. Therefore, Legacy is one of BASE modules but not a good sample. That's a special edition created for ascendent compatibility.

Moreover, such a software design was needed to stop the war about XOOPS. The core in Cube is the platform on that a user can install one 'base' module. And, 'base' module implements the features of a CMS. One of base modules is "Legacy" which has compatibility with XOOPS2. Anybody can release own 'base' without fork. Of course, the core team will release the next generation core. But, it is the one of base modules in XOOPS Cube community.

Legacy does not provide any new features on XOOPS 2.0.16JP Edition. XOOPS2 makes use of a too old software design. If anyone is disagrees about the features included in Legacy, he can release his own custom base module and make it possible to run it on XC, aside initial Legacy.

Legacy is one of this base modules that gives to XC the XOOPS CMS capabilities (Render and other needed functionnalities added), by making it possible to run XOOPS on XC. It manages compatibility with former XOOPS JP : it was build from XOOPS 2.0.16 JP, in it many areas have been improved, like the admin side, but many others as well.

Legacy is one of base modules and has no modules to be considered as a full CMS. It was released as a package by the project team to be simple, secure and scalable solution --- 3S.

The 3S concept

XOOPS Cube has the "3S" concept --- Simple, Secure and Scalable. Cube is very simple core, because Cube is a platform using/creating CMS environment. In addition, Cube has some policies and features to keep security. One of policies is TYPE-SAFE emulator. Another one is Action-Form that detects always valid values like peripheral driver. Lastly, Cube is really scalable. Cube has the special architecture to realize "construction platform".

Borrowed ideas

XOOPS Cube was completed by borrowing ideas from traditional mechanisms outside the web. Mechanisms such as preloading, delegates, task systems, generic render-sequence came from .NET, video game programing and scene graph to implement an ideal spec for XOOPS Cube.

Construction

In Cube, most things are handled as re-usable materials. Managers, ADD-ONs (modules), Preloads and Themes are materials for end-users. Delegates, Virtual Services and Tasks of the Task System(*) are materials for programmers. Preload is the most minimum ADD-ONs for minimum customizing of a site. Content developers do not need to change the source code directly.

Configuration

Cube is configured by writing an INI file. Cube consists of the plural managers. Each manager does each special mission. Developers can choose from managers, install modules, and add preload files for light customizing. In addition, some distribution packages have been released. Those packages already have good INI file, best modules and preload files provide for rapid site development. A web developer can begin a site preconfigured or begin from the package as the base point.

Exchangable

Most objects are exchangable. It's possible to change CMS layer (BASE), not only managers. By using Legacy BASE, Cube emulates XOOPS2 JP and runs many modules of XOOPS2 JP. BASE can be replaced or written from a scratch then later redistributed. Anyone can do anything anytime anywhere, except changing the core that realizes "exchangable". Not only the BASEs, other parts may be exchanged allowing for scalability, flexiblity and freedom.

Virtual service

XOOPS Cube provides the server/client model for site communication and module communication. The virtual service abstracts the actual of program, so the client can connect with both of other module and other site. XOOPS Cube can connect with the service of the existing site and can provide the service to other site.

Multi render-system

XOOPS Cube doesn't have the fixed spec of themes. The Generic Render-Sequence tries to render final output with switching render-system. By this spec, a custom site design or spec of the site theme may be retained. In the case which persons develop their render-system for a site, they may release the render-system to share.

Licensing

XOOPS Cube was started from scratch as an open source project and its source code released under a free license especially under the BSD license which is one of the most lax licenses. The Legacy BASE source code, which is one of base modules, is licensed under GPL (from the old XOOPS 2.0 codes), because Legacy includes code of XOOPS (as a 'legacy'). BSD allows for the ability to contain the GPL package.

Tools

XOOPS Cube is simple and recommended for use as a tool for automatic complex work. Manifesto is a special document for tools that work about XOOPS Cube automatically. Cubson is a code generator for Legacy BASE and works on extoolsD.dll that makes it possible to develop a code generator.

Related projects

*Custom Legacy is planned by Tom's company. That's light-weight Legacy. Maybe source code will be made from a scratch, and it will lose some compatibilities. Tom said that this base module aims to D3 modules. I don't know whether it is front controller type. The licence will be GPL, because it may have some parts of Legacy.

*Oreteki Legacy is planned by Marijuana who made Oreteki-XOOPS before.

*Non-DB base is planned by Ryuji. But, this is just idea, so I don't know whether he will really begin to develop. It is special light-weight base module to run special modules which don't use DB. And, by XCube_Service or other methods, these modules are attached to Legacy through Legacy's module adapter.

*Onokazu's Framework is a new framework made by onokazu is independent PHP application. But, modules of this framework will be attached to XOOPS Cube through the specific base module or the specific adapter. He already have completed it 70%.

*XUGJ/Hoda-juku Distribution is one of package which includes some modules and some configurations : a "right out of the box" distro. The distribution is planned by XUGJ or Hoda-Juku. Because GIJOE is a member of them, the distribution will include his great works which is available status. [http://hodajuku.sourceforge.net/]

See also

*XOOPS
*List of content management systems

External links

* [http://xoopscube.org/ Official website]
* [http://sourceforge.net/projects/xoopscube XOOPS SourceForge project page]
* [http://xoopscube.org/ XOOPS Cube Official Site]
* [http://xoopscube.tw/ XOOPS Cube Chinese(Taiwan) Support]
* [http://xoopscube.de/ XOOPS German Support]
* [http://xoopserver.com/ XOOPS Cube French Support]
* [http://xoopscube.com.br/ XOOPS Brazilian Support]
* [http://www.fanafzar.com/xoopscube/uml XOOPS Cube class diagrams and documentation generated by enterprise architecture reverse engineering]
* [http://xoopscube.com.br/ref/ PHP Cross References of XOOPS Cube Legacy 2.1.3]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • XOOPS — Тип Система управления содержимым Разработчик The XOOPS Project Написана на PHP Операционная система Кроссплатформенное ПО Языки интерфейса Мультиязычный Последняя версия …   Википедия

  • XCL — is a three letter abbreviation with multiple meanings, as described below:* Xlib Compatibility Layer * X Cal Resources, Ltd. * Xcc Community Ladder * XOOPS Cube, XOOPS Cube Legacy * Xtree for Windows Script file * Xtreme Coil Link * Cluff Lake… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”