ZOPE Detailed


1. What is a web application?

The content of the website needs to be updated in a timely manner, especially for commercial websites. The pages in the website are written in Hypertext Markup Language (HTML). When a user visits a website, the text content with HTML on the server is actually transmitted to the user's browser, and then interpreted into a webpage with a picture through a browser. When you click on the link with your mouse, you start to send a new web page.

Some websites are static. Static websites require maintenance personnel to manually update the content of the website. The update is to manually update the web pages written in HTML and then put those files on the server. Updating a website consisting of static web pages requires editing all the files. If there are many files to update, the update will be cumbersome. This makes it easy to make mistakes. In order to improve the efficiency of website content maintenance, you can solve the problem by building a web application.

A web application is a computer program that allows a web browser to communicate with a server over the Internet. Unlike static websites, web applications dynamically create pages. Dynamically generated Web sites implement dynamic features through the use of computer programs. This dynamic application can be written in a variety of computer languages.

The dynamically built website does not require maintenance managers to update the page one page at a time. Dynamic websites can separate the HTML part from the data part, which greatly improves the efficiency of website maintenance and management. There are many websites that use web applications, such as Google, SourceForge, eBay, Hotmail, and so on.

Generally, the framework that allows people to build web applications is called a web application server. Zope is a web application server, similar competitors such as: WebLogic?, Macromedia ColdFusion? (http://www.macromedia.com/) and so on. Web application servers typically create web applications through some sort of computer programming language and provide more functionality, such as templates, security models, data security, sessions, and more as needed to build web applications. Convenient features.

2. How to benefit from the application server?

If you want to write a web application, you generally need to use the application server framework, unless it is a very special application. By using the application server framework, you can take advantage of the various service programs you have written, without having to start from scratch like you would directly use a programming language. Many application servers can accomplish the following tasks.

Show dynamic content

You can add search features. Application servers can provide services that dynamically generate content. Application servers are generally personalized, combined with databases, and searched for content.

Manage your Web site

The application server manages the data, transaction logic and display in the site in a unified way.

Building a Content Management System

Application Server provides tools for building content management systems that allow non-technical editors to create and manage site content.

Building an E-Commerce Application

Application Server provides the framework needed to build complex e-commerce.

Safely manage various users

Different users in the website need different permissions, and the application server can provide permission control functions.

Provide multiple web services

Web sites that support web services can handle requests from other computer programs. Application servers are gradually providing such functionality.

Combining multiple systems

Existing content may come from different places, such as relational databases, files, other sites, and so on. The application server can integrate these different data to provide a unified interface.

Provide scalability

Application servers can be extended based on server load.

The Zope application server can do all of the above.

3. Zope History

In 1996, Jim Fulton, a CTO and Python leader at Zope, drafted a lecture for the CGI program, although his knowledge of CGI programming was not that much. For this course, Jim studied all the existing documentation on CGI in his own way. On the way back to the lecture, Jim considered aspects of the traditional CGI-based programming environment that he didn't like: fragile, lack of object-oriented, and exposed Web server details. Starting with these initial meditations, Jim wrote the core of Zope in the returning plane.

Zope (formerly known as Digital Creations) later announced three open source packages to support Web publishing: Bobo, Document Template, and BoboPOS. These packages are written in Python. They evolved into a core component of Zope's Web ORB (Object Request Broker), DTML scripting language, and object database. Since then, Zope has developed a commercial application server based on their three open source components. This product is called Principia. In November 1998, investor Hadar Pedhazur decided to let Zope disclose the source code of Principia. So Zope is formed, and the meaning of "Zope" refers to the Z Object Publishing Environment (Z has no special meaning). Zope is written primarily in Python, with parts that are closely related to performance written in C.

4. Why use Zope?

Zope can create web applications better and faster than other web application servers. This is because Zope supports the following features:

* Zope is free and available in open source. Free distribution under license conditions, unlike those expensive commercial application servers.

* Zope is a complete platform. It contains all the components needed to develop an application. There is no need to authorize the use of other software in order to use Zope. And Zope is easy to install and easy to use.

* Zope allows and encourages third-party developers to package and distribute applications. Therefore, Zope already has a lot of product components that can be used immediately. Most components are free and open source. Zope has a large community of developers.

* Applications created by Zope can be extended directly through Zope Enterprise Objects (ZEO). With ZEO, you can deploy Zope applications on multiple computers without having to modify the code.

* Zope allows developers to create web applications using only a browser. For example: Internet Explorer, Mozilla, Netscape, OmniWeb?, Konqueror, and Opera browsers can all support Zope's Management Interface (ZMI). Zope can also allow other developers to develop securely at the same time by using a unified web interface. This feature is rarely supported by other application servers.

* Zope offers a variety of and scalable security frameworks. It is easy to combine multiple rights authentication systems, such as LDAP, Windows NT, and RADIUS through built-in modules. Many other application servers lack these features.

* Zope allows development teams to collaborate efficiently. Collaborative environments allow users to not interfere with each other. Zope uses Undo, Versions, History, and other tools to help people work together and recover from errors. Most other application servers do not support these features.

* Zope runs on most computer operating system platforms: Linux, Windows NT/2000/XP, Solaris, FreeBSD?, NetBSD?, OpenBSD?, and Mac OS X. Zope can even run on Windows 98/ME. Most other application servers can't do this.

* Zope can be extended with the Python language. Python is very popular and easy to learn, and it can facilitate rapid development. Many of the libraries in Python can be used directly to create your application. Other application servers use compiled languages ​​that cannot be developed quickly, such as Java, or use unpopular languages.

For applications created with Zope, please refer to the case analysis page on Zope's homepage Zope.com.

5. Zope's target users, and Zope's unsuitable thing to do

Managing large-site development processes is a difficult task. It often takes a lot of people to work together to create, deploy, and manage web applications.

* Information Architects Make General Arrangements and Controls

* Component developers create reusable and distributed software.

* Site developers combine existing software written by component developers and services provided by native application servers to build applications.

* The look and feel of the site designer creating the site

* Content Manager creates and manages the content of the site

* Administrator maintains the software system running

* Consumers use the site to locate and use useful content.

Zope is best suited for component developers, site managers, and site designers, and these three users can work together to develop applications through Zope-provided services and third-party products. Typically, content managers and users develop applications under the direction of system architects. The administrator deploys and maintains the application.

Zope is a framework for web application building. Different levels of programmers can use Zope to create web-based applications. Zope is not a ready-made application. It is not a weblog, a content management system or an e-shopping program.

Zope-based products can do this. So far, there are more than 500 products available for your application on the Zope.org site. These products include Weblog, content management, and e-commerce programs.

Zope is not a visual design tool, unlike software such as Macromedia Dreamweaver or Adobe GoLive?. You can use these software to manage Zope-based web sites, but you can't use Zope to replace these interface design software.

6. Zope's Terms of Use, License, and Zope Community

Zope is free. You can use zope to create and run web applications without paying a fee, and you can also place zope in your product without paying Zope a royalty. The license to distribute Zope is an open source license, the Zope Public License or ZPL. The ZPL provisions state that you can obtain and modify Zope's source code.

ZPL is different from the GNU Public License (another popular open source license). If you attempt to redistribute an application that complies with the GPL license and you modify or extend the application, the GPL requires that the contribution be made to the licensor. There is no such requirement for applications that adhere to the ZPL. ZPL has been recognized by open source organizations, has received OSD certification, and is also accredited by the Free Software Foundation and is compatible with the GPL license.

The Zope Developer Community is responsible for maintaining or extending the Zope application server. Many members of the community are professional consultants, professional developers, and web gurus who use Zope to develop applications. In addition, there are students and site development enthusiasts among users. Zope is also a member of the community and is responsible for maintaining Zope and developing Zope code. The Zope community communicates through parties and mailing lists and sites. More information can be found on the Zope.org mailing list page.

Zope earns revenue in a variety of ways, including creating web applications for business users, training Zope developers, providing technical support for companies using Zope, and hosting services. Zope does not benefit from the sale of Zope servers.

Copyright © Windows knowledge All Rights Reserved