Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 32.283.939 Times

Maypole::Manual::About 2.11

  Date Added: November 09, 2010  |  Visits: 636


Report Broken Link
Printer Friendly Version

Product Homepage
Download (71 downloads)

This chapter serves as a gentle introduction to Maypole and setting up Maypole applications. We look at what Maypole is, how to get it up and running, and how to start thinking about building Maypole applications. What is Maypole? Presumably you have some idea of what Maypole is all about, or otherwise you wouldnt be reading this manual. But Maypole is good at many different things, and you may have accidentally focussed on one aspect of Maypole while missing the big picture. For instance, you may know that Maypole is extremely good at putting web front-ends onto databases. This is true, but its only a part of what Maypole does. You may have heard that Maypole is a web application framework, which is true, but it doesnt mean very much. There are a huge number of things that Maypole can do, because its very much a blank slate. You can make it do what you will. In this manual, well be making it act as a front-end to a database, as a social network site, as an intranet portal, and many other things besides.It is a framework. I like to think that Maypole is a way of going from a URL to a method call to some output. If you have a URL like /product/order/12, Maypole is a way of having it load up product number 12, call an order method, and produce a page about what its just done. The reason Maypole is such a big deal is because it does all this for you. You no longer have to care about your web server. You hardly have to care about your database. You dont have to care about templating modules, parsing CGI parameters, or anything else. You only need to care about business logic, and the business logic in this instance is how you order a product, and what you need to display about it once youve done so. This is what programming should be: only caring about the work that distinguishes one program from another. It does this using a technique called MVC for web applications. What is MVC for web applications? Maypole was originally called Apache::MVC, reflecting its basis in the Model-View-Controller design pattern. (I had to change it firstly because Maypole isnt tied to Apache, and secondly because Apache::MVC is a really dull name.) Its the same design pattern that forms the foundation of similar projects in other languages, such as Javas Struts framework. This design pattern is found primarily in graphical applications; the idea is that you have a Model class which represents and manipulates your data, a View class which is responsible for displaying that data to the user, and a Controller class which controls the other classes in response to events triggered by the user. This analogy doesnt correspond precisely to a web-based application, but we can take an important principle from it. As Template Toolkit author Andy Wardley explains: What the MVC-for-the-web crowd are really trying to achieve is a clear separation of concerns. Put your database code in one place, your application code in another, your presentation code in a third place. That way, you can chop and change different elements at will, hopefully without affecting the other parts (depending on how well your concerns are separated, of course). This is common sense and good practice. MVC achieves this separation of concerns as a by-product of clearly separating inputs (controls) and outputs (views). This is what Maypole does. It has a number of database drivers, a number of front-end drivers and a number of templating presentation drivers. In common cases, Maypole provides precisely what you need for all of these areas, and you get to concentrate on writing just the business logic of your application. This is one of the reasons why Maypole lets you develop so rapidly: because most of the time, you dont need to do any development at all..

Requirements: No special requirements
Platforms: Linux
Keyword: Applications Libraries Maypole Maypolemanualabout Mvc Need Number One Programming Web
Users rating: 0/10

License: Freeware Size: 143.36 KB
Libraries  -  Tagneto 0.4.0
Tagneto is a web developer tool and JavaScript libraries to aid MVC development of XML user interfaces, with HTML web applications (DHTML, AJAX, RIA, Web 2.0, etc...) being the primary target. It is available under the GNU Lesser General Public...
4.6 MB  
Network & Internet  -  Nitro 0.30.0
Nitro provides everything you need to develop professional Web applications using Ruby and Javascript. Nitro redefines Rapid Application Development by providing a clean, yet efficient API, a layer of domain specific languages implemented on top...
225.28 KB  
Business  -  JBoss Application Server for linux 6.0.0 Milestone
JBoss Application Server is the number one most widely used Java application server on the market. Hundreds of professional open source developers have contributed to the JBoss Application Server over the years and community contributors are not...
135.16 MB  
Utilities  -  Elysium Project 2.4.1
Elysium Project is a suite of applications, libraries, and utilities to enhance the deskotp experience of Linux.
317.44 KB  
Business  -  Bandit Lites, Inc. 1.1
Join the Bandit Lites community, where you can connect with the oldest & number one concert lighting company in the world. Need to find a concert venue close by? Need a quote? Need to find the manual to the GRNLite products? Keep up to date with...
20.7 MB  
Utilities  -  Emoticons: Emoji Unlimited Edition 2.6
The world's number one emoticon app just got better! Tired of conventional text messaging? This app will you give you access to over 2000 emoticons that can be used on your iPod Touch, iPhone and iPad. It works with applications such as...
34.8 MB  
Productivity  -  Poker-Spy Hold'em Cheat Sheet
The number one mistake made by Hold'em Players happens when they choose what hands to play. This easy to use cheat sheet puts at your fingertips the key information you need to avoid making these kinds of mistakes. This Poker-Spy product is free...
1024 KB  
Backup Utilities  -  Yadis! 1.6.5
Our number-one-software is Yadis!. It's an easy-to-use backup-tool, which will save you a lot of troubles. It guards your personal data by making real-time copies (whenever you make changes to your documents) to almost any destination you...
464 KB  
ActiveX Components  -  Ultimate++ 1.2
Ultimate++ is a radical and innovative GUI toolkit whose number one priority is programmer productivity. C++ is a great programming language but C++ programmers are sometimes hampered by the lack of effective libraries. U++ libraries enable...
2.6 MB  
Home & Leisure  -  SwitchXS for Mac OS 2.5.1
Provides virtually complete access to Mac OS X and all standard Mac applications for people who can only use one or more switches. It offers full mouse and keyboard emulation by means of a so-called scanning mode. With each click on the switch the...
22.8 MB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 3.15.3
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB