110 likes | 329 Views
ZOPE. By: Mukesh Lal Advisor: Dr. Chung E. Wang Second Reader: Dr. Gopal Rao Department of Computer Science California State University, Sacramento. Agenda. Introduction to ZOPE ZOPE Concept and Architecture ZOPE Management Interface Python, DTML and ZSQL
E N D
ZOPE By: Mukesh Lal Advisor: Dr. Chung E. Wang Second Reader: Dr. Gopal Rao Department of Computer ScienceCalifornia State University, Sacramento
Agenda • Introduction to ZOPE • ZOPE Concept and Architecture • ZOPE Management Interface • Python, DTML and ZSQL • Student-Class Information Management System • SCIMS Workspace and Objects • Conclusion
Introduction to ZOPE • ZOPE (Z Object Publishing Environment) is a framework for developing web applications • It is highly "object-oriented" web development platform • It facilitates in building dynamic web applications • Motivation: Why ZOPE instead of another Application Server? - Zope Application server can help create web applications at lesser cost and at faster rate - Zope allows developers to create web applications using only a web browser
ZOPE Concept and Architecture • Zope’s primary duty is to “publish” the objects you create • Zope separates a URL (e.g.http://www.zope.org: 8080 /Resources?batch_start=100)into its component "host", "port" "path" and "query string" portions • Zope locates the object in its object database corresponding to the “path” (/Resources) • Zope executes the object using “query string” (?batch_start=100) as a source of parameters and returns the value
ZOPE Management Interface (ZMI) • ZMI is a management and development environment that allows you to control Zope, manipulate Zope Objects and develop web applications Navigator Frame Workspace Frame
Python, DTML and ZSQL Methods • Python is interpreted, interactive, object-oriented programming language • DTML is a templating facility which supports creation of dynamic web pages • ZSQL Methods are Zope objects that execute SQL code through a Database Connection <p>How many monkeys are there?</p> <dtml-if expr="monkeys > monkey_limit"> <p>There are too many monkeys!</p> </dtml-if> select * from employees where emp_id=<dtml-sqlvar emp_id type=int>
Student-Class Info Management System • SCIMS is a web application that is developed in ZOPE • It will facilitate a faculty member in maintaining student scores, grades and information about various classes • Faculty can allow the grader to have login access to this system with limited privileges • Selected information can be published for Read-Only access to students and other users • With little knowledge of DTML and ZSQL, faculty can modify the system to fit needs
Conclusion • Problems/Complications: - installing Zope server behind Apache - connecting with RDBMS - non-detailed debugger • Advantages: - simple and easy to learn Python, DTML & ZSQL - friendly interface for creating objects and generating code • Zope users include Viacom, NASA, Boston.com, Red Hat and many others • ZOPE can be extended using the interpreted Python Scripting language