2. Why?
With so many frameworks out there, there is the obvious question of “Why
Make Another One?”. I am not going to say any names, but if you have used
several frameworks, you probably can empathize with some of these
difficulties.
1. Learning Curve: Some frameworks have huge learning curves. Whether
its lack of documentation, no code examples, the code becomes
extremely complex or all 3 of them, some frameworks are hard to learn
and time consuming.
2. Predefined Structure: Some „frameworks‟ trap a developer into using
their structure and make it hard to break out that structure, especially
when integrating with other models. Example: A framework requires that
everything be used in an MVC setting.
3. Unnecessarily Large: Lots of capabilities and tools is nice. 20, 30, 40
megabytes(and heaven forbid more) just becomes overkill and the
framework might need some refactoring.
4. No, bad or old coding standards: Have you ever read through code
and became nauseous followed by a bad headache? Not all code is
poetry.
www.prodigyview.com
3. Because……
With all the Why‟s being said, now it‟s time for the because. Keep in
mind the ProdigyView is no where near perfect, but address certain
issues.
1. Easy Learning Curve: Through clear code, examples to play
around with and short and simple tutorials, ProdigyView was
designed to get you up and running in no time.
2. No Predefined Structure: Using ProdigyView as an MVC, CMS or
other structure is up to the developer. But all the code has the
ability to run in a standalone mode.
3. Manageable Size: ProdigyView is around 2 megabytes of code
that has full documentation in the code. As a developer, you can
choose what tools you want to use that best address the problem.
4. Coding Standards: Throughout the code, we try to hold to a
coding standard with readability and understanding being the
biggest points of focus. We also use modern concepts with object
and aspect oriented design.
4. What is ProdigyView
“So you gave us this long winded explanation on why
ProdigyView was made but what exactly is it?”
ProdigyView PHP 5.3 + framework that utilizes advanced
programming concepts to achieve better code, faster.
ProdigyView is the ground work for creating a MVCs, content
management systems, and other types of web applications.
ProdigyView is the framework that builds frameworks.
www.prodigyview.com
5. ProdigyView – What It Can Be
ProdigyView
Web Static
MVC CMS
Application Websites
6. Design Patterns
If you are deeply involved in programming, then you will probably
enjoy utilizing the design patterns implemented in ProdigyView.
Understanding how to implement these are the „Keys to the Kingdom‟
and will take development to higher level turning out robust
applications with ease and speed.
Native Design Pattern Extended Design Patterns
Observers Front End Controller
Chain of Responsibility Model View Controller
Adapters/Strategy Helper Object
Intercepting Filters
Singleton
Active Record
7. Database Driven vs Design
Driven
What do I mean database driven vs design driven?
I am referring to when execution of the code is determined by
data in the database versus execution determined by code as an
addition to the code base.
ProdigyView has great support for both through design patterns,
plugins, applications, built-in cms, etc.
Database Driven Design Driven
Applications Filters
Plugins Observers
Modules Adapters
Pages Chain of
Containers Commad
www.prodigyview.com
8. Coupling and Programming
Paradigms
Coupling
For those hard core developers, ProdigyView has both
loose coupling and tight coupling. The kind of coupling
used is entirely up to you.
Programming Paradigms
Programming paradigms may sound like some deep
programming concept but I am only referring to object
oriented programming and aspect oriented programing.
One of the goals of ProdigyView is to go beyond OOP by
implementing AOP.
www.prodigyview.com
9. Applications and Plugins
Applications and Plugins are features in ProdigyView that
provide additional functionality and are managed by the
database.
Plug-ins
Applications
Do not have to be object
Object Oriented
oriented
Called and used only when
Are persistent through the
needed
entire execution of the code
Use their own libraries(
Easy to implement and turn
Jquery, Prototype, CSS, etc)
on/off
www.prodigyview.com
10. Content Management
Content Management is an aspect organizations look for,
especially for blog content, news, etc. ProdigyView comes with
a content management that support multiple types of content
for almost any situation:
Manipulate audio content which includes
Audio mp3s, wavs, oga and much more
Create a video websites. Supports formats
Video such as webm, ogv, avi and many more.
Make a dynamic ecommerce site with the
Product product content.
Manage events and calendar related
Event content.
Store, novels, stories or other text related
Text content
Manage files or create a file sharing
File service with the file content.
11. User Management
User Fields User Roles
Users
User User
Relationships Interaction
12. Subscriptions and Points
Need to have subscriptions? Want to assign points?
ProdigyView has subscriptions and points built in that
integrate with various other parts of the system.
Subscriptions
and Points
Can be Can be Can be Can be
assigned to an assigned to assigned to a assigned to a
application content comment user
13. Tools
ProdigyView also comes with a variety of tools that speed up
production by not having to write code for basic operations.
Video/Audio
Session/Cookies Security
Tools
HTML/HTML5 Routing
File Management Validation
14. Tools Breakdown
HTML/HTML5
• Has a templating system and allows easy creation of html elements
Audio/Video
• Built in tools for rendering audio and video files
Validation
• From file mime type validation, email validation to writing your custom validation rules,
check to make sure the the input is correct.
File Management
• Reading and writing files and/or directories is a quick, simple and effortless process.
Session/Cookies
• Manipulate session and cookies to your liking
Security
• Restrict access to routes, application, plugins, and content.
Routing
• Configure routes in you site. Makes friendly urls.
15. And Everything Works
Together
Design
CMS
Patterns
User Points &
Management Subscriptions
Applications
Templating
and Plugins
Tools
16. Ready To Begin?
You know have a very brief overview of ProdigyView and
it‟s capabilities. The next step to getting better acquainted
by downloading the example system and looking through
the other short slideshows.
The example code resource is for learning and playing
around with the basic and advanced concepts of
ProdigyView.
Let the magic begin here
http://www.prodigyview.com/source
www.prodigyview.com