SlideShare ist ein Scribd-Unternehmen logo
1 von 68
www.agiletoolkit.org




by Romans Malinovskis
  Web Software architect since 1997
www.agiletoolkit.org
www.agiletoolkit.org


About me
â˜ș Started programming on 8088 IBM PC

â˜ș TurboVision, Pascal, C++, Delphi since 1994

â˜ș LINUX / UNIX administrator in 1999

â˜ș Founded Web Service Company in 2003

â˜ș Published Agile Toolkit in 2010

â˜ș CTO, Consultant, Entrepreneur
www.agiletoolkit.org


About me
â˜ș Started programming on 8088 IBM PC

â˜ș TurboVision, Pascal, C++, Delphi since 1994
www.agiletoolkit.org


About me
â˜ș Started programming on 8088 IBM PC

â˜ș TurboVision, Pascal, C++, Delphi since 1994
www.agiletoolkit.org


About me
â˜ș Started programming on 8088 IBM PC

â˜ș TurboVision, Pascal, C++, Delphi since 1994


    Object-Oriented User Interface
        (Performance-focused)
www.agiletoolkit.org


Web UI Problem
      “90% of Developer Time is spent on User Interface”
                          Steve Jobs, NeXT Presentation
            UI
                         UI
                                       UI
          Core
                       Core
                                     Core
          1998         2004          2012

       History repeats itself. Now in Web UI.
www.agiletoolkit.org


Web UI Problem


      UI

     Core
www.agiletoolkit.org


Web UI Problem


      UI

                 Zend, Symfony, PEAR,
     Core
                 CodeIgniter, Kohana
www.agiletoolkit.org


Web UI Problem


                  ?
      UI

                 Zend, Symfony, PEAR,
     Core
                 CodeIgniter, Kohana
www.agiletoolkit.org


Web UI Problem

    JS     ExtJS

    API      ?

     MVC           Zend, Symfony, PEAR,
                   CodeIgniter, Kohana
www.agiletoolkit.org


Web UI Problem

    JS     ExtJS

    API      ?

     MVC           Zend, Symfony, PEAR,
                   CodeIgniter, Kohana


                 No full-stack solution
www.agiletoolkit.org


Web UI Problem
                  â˜č Not Reusable
    JS            â˜č Cross-Language
           Your   â˜č High-Spec
    API    Code
                  â˜č Scattered
     MVC          â˜č Difficult to test
                  â˜č Expensive to maintain
www.agiletoolkit.org


Web UI Problem
                          â˜č Not Reusable
    JS                   â˜č Cross-Language
           Your          â˜č High-Spec
    API    Code
                         â˜č Scattered
     MVC                 â˜č Difficult to test
                         â˜č Expensive to maintain



                  You still “echo” HTML
www.agiletoolkit.org


Agile Toolkit Approach

      JS

      API                              Add-
             Core     Component
                                       ons
      PHP



  Backend and Frontend are fully integrated throughout
       Agile Toolkit, Your Product and Add-ons.
www.agiletoolkit.org




Presentation Plan
  1. User Interface

  2. JavaScript Bindings

  3. Business Logic Model

  4. Availability & Licensing
www.agiletoolkit.org




1. Object-Oriented
HTML User Interface
www.agiletoolkit.org


Agile Toolkit: User Interface




            Example: The Form
www.agiletoolkit.org


Agile Toolkit: User Interface

     PHP Code               HTML Result
www.agiletoolkit.org


Agile Toolkit: User Interface

     PHP Code               HTML Result
www.agiletoolkit.org


Agile Toolkit: User Interface

     PHP Code               HTML Result
www.agiletoolkit.org


Agile Toolkit: User Interface

    Object Tree                  Code
  Page

 Frame

  Form     Field

 Button   Button
www.agiletoolkit.org


Agile Toolkit: User Interface

    Object Tree                 Result
  Page
               Render
 Frame

  Form     Field

 Button   Button
www.agiletoolkit.org


Agile Toolkit: User Interface

     â˜ș Great looking Interface out-of-the-box

     â˜ș Add-ons and components use standard UI

     â˜ș Flexible HTML templates

     â˜ș Stable

     â˜ș Re-usable and extensible
www.agiletoolkit.org


Agile Toolkit: User Interface




             Real-Life Projects
www.agiletoolkit.org




 2. Object-Level
jQuery Integration
www.agiletoolkit.org


Event Chains




               Click
www.agiletoolkit.org


Event Chains
www.agiletoolkit.org


Chain Enclosures
www.agiletoolkit.org


AJAX and execute
www.agiletoolkit.org


Agile Toolkit: JavaScript

     â˜ș Dynamic PHP wrapping into JavaScript

     â˜ș Extensive JavaScript libraries

     â˜ș Rich User Interface

     â˜ș Integration with jQuery and jQuery UI

     â˜ș Component-level dependencies
www.agiletoolkit.org
www.agiletoolkit.org




AJAX browsing
www.agiletoolkit.org




 AJAX browsing


Load-JS-on-demand
www.agiletoolkit.org




3. Model-Level
Business Logic
www.agiletoolkit.org



  Model Inheritance
     Diagram

 Order             Account


Completed   Moderator    Admin
 Order
www.agiletoolkit.org


Agile Toolkit: Business Logic

     â˜ș Object-Oriented, not table-oriented

    â˜ș Models support joins and conditions

    â˜ș Model traversing

    â˜ș SQL expressions, extensions

    â˜ș Support for stored procedures
www.agiletoolkit.org




Admin Panel development
    becomes trivial!
www.agiletoolkit.org




Front-end becomes safe and secure
www.agiletoolkit.org




Reuse. Only code what is missing.
www.agiletoolkit.org


Security. Performance. Agile.

    â˜ș Input/Output security.

    â˜ș Natural integration Data+Template

    â˜ș Unix-rule. 80%-rule.

    â˜ș For Proper coders

    â˜ș Unit-test driven testing
www.agiletoolkit.org


Developer-friendly testing
www.agiletoolkit.org


Feature Summary

Simple Template Engine

Dynamic Query Language

Relational Models

Elegant Object Structure

Multiple API classes
www.agiletoolkit.org


Feature Summary

Full-featured CSS Framework

Bundled Views (Forms, Grids, Menu)

jQuery Theme Compatibility

Object-level JavaScript

Add-on Components
www.agiletoolkit.org


Feature Summary

Data Access Controllers

Model-enhancing Controllers

API-enhancing Controllers

Compatibility Controllers

Caching Controllers
www.agiletoolkit.org


Feature Summary

Extensible JavaScript API

Detect changed forms

Duplicate AJAX request

Load-JS-on-demand

Widget-Factory friendly
www.agiletoolkit.org




4. Availability and
    Licensing
www.agiletoolkit.org


Support Model

    â˜ș Full Open-Source (AGPL)

    â˜ș Tightly Controlled Development

    â˜ș Freelancer Licensing

    â˜ș Enterprise Licensing

    â˜ș Development Services
www.agiletoolkit.org


Agile Toolkit - 2012 plan

    â˜ș On-Line Add-on store for v4.2

    â˜ș Agile CMS, Agile Cart

    â˜ș Improved Unit Tests

    â˜ș Improved Documentation

    â˜ș iBook
www.agiletoolkit.org


       Questions?




presented by Romans Malinovskis
        r@agiletech.ie Twitter: @atk4

Weitere Àhnliche Inhalte

Was ist angesagt?

Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014
Ashwin Date
 
Ruby and iOS: An inside look
Ruby and iOS: An inside lookRuby and iOS: An inside look
Ruby and iOS: An inside look
Jeanine Jue
 

Was ist angesagt? (20)

Testdrive AngularJS with Spring 4
Testdrive AngularJS with Spring 4Testdrive AngularJS with Spring 4
Testdrive AngularJS with Spring 4
 
Yii Framework
Yii FrameworkYii Framework
Yii Framework
 
JavaFX Versus HTML5 - JavaOne 2014
JavaFX Versus HTML5 - JavaOne 2014JavaFX Versus HTML5 - JavaOne 2014
JavaFX Versus HTML5 - JavaOne 2014
 
Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014
 
Frameworks in java
Frameworks in javaFrameworks in java
Frameworks in java
 
Six Steps To Build A Successful API
Six Steps To Build A Successful APISix Steps To Build A Successful API
Six Steps To Build A Successful API
 
Publishing strategies for API documentation
Publishing strategies for API documentationPublishing strategies for API documentation
Publishing strategies for API documentation
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
 
Hands on react native
Hands on react nativeHands on react native
Hands on react native
 
JWC 2015 - Mobile apps development for Joomla!
JWC 2015 - Mobile apps development for Joomla!JWC 2015 - Mobile apps development for Joomla!
JWC 2015 - Mobile apps development for Joomla!
 
VisionX Prototyping.
VisionX Prototyping.VisionX Prototyping.
VisionX Prototyping.
 
Yii Introduction
Yii IntroductionYii Introduction
Yii Introduction
 
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServices
 
10 reasons to choose the yii framework
10 reasons to choose the yii framework10 reasons to choose the yii framework
10 reasons to choose the yii framework
 
Moved to https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugi...
Moved to https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugi...Moved to https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugi...
Moved to https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugi...
 
Yii - Next level PHP Framework von Florian Facker
Yii - Next level PHP Framework von Florian FackerYii - Next level PHP Framework von Florian Facker
Yii - Next level PHP Framework von Florian Facker
 
Ruby and iOS: An inside look
Ruby and iOS: An inside lookRuby and iOS: An inside look
Ruby and iOS: An inside look
 
HTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applicationsHTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applications
 
Shraddha_Muchandi
Shraddha_MuchandiShraddha_Muchandi
Shraddha_Muchandi
 

Andere mochten auch (7)

Puzzle Cube Package Activity
Puzzle Cube Package ActivityPuzzle Cube Package Activity
Puzzle Cube Package Activity
 
Kohana bootstrap - modal form
Kohana   bootstrap - modal formKohana   bootstrap - modal form
Kohana bootstrap - modal form
 
Agile Tour presentation
Agile Tour presentationAgile Tour presentation
Agile Tour presentation
 
Saa s lifecycle
Saa s lifecycleSaa s lifecycle
Saa s lifecycle
 
Agile Toolkit Technical Presentation
Agile Toolkit Technical PresentationAgile Toolkit Technical Presentation
Agile Toolkit Technical Presentation
 
Agile Data concept introduction
Agile Data   concept introductionAgile Data   concept introduction
Agile Data concept introduction
 
Hacking Git and GitHub
Hacking Git and GitHubHacking Git and GitHub
Hacking Git and GitHub
 

Ähnlich wie Agile toolkit present 2012

Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
Abhishek Gupta
 
Arif_Shaik_CV
Arif_Shaik_CVArif_Shaik_CV
Arif_Shaik_CV
Arif Shaik
 

Ähnlich wie Agile toolkit present 2012 (20)

An Introduction to Web Components
An Introduction to Web ComponentsAn Introduction to Web Components
An Introduction to Web Components
 
qooxdoo - Open Source Ajax Framework
qooxdoo - Open Source Ajax Frameworkqooxdoo - Open Source Ajax Framework
qooxdoo - Open Source Ajax Framework
 
Guides To Analyzing WebKit Performance
Guides To Analyzing WebKit PerformanceGuides To Analyzing WebKit Performance
Guides To Analyzing WebKit Performance
 
JavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadJavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) upload
 
An api is not "yet another feature"
An api is not "yet another feature"An api is not "yet another feature"
An api is not "yet another feature"
 
Yii2 by Peter Jack Kambey
Yii2 by Peter Jack KambeyYii2 by Peter Jack Kambey
Yii2 by Peter Jack Kambey
 
Fast Prototyping Strategies for UI design
Fast Prototyping Strategies for UI designFast Prototyping Strategies for UI design
Fast Prototyping Strategies for UI design
 
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
Oracle JavaScript Extension Toolkit Web Components Bring Agility to App Devel...
 
No Feature Solutions with SharePoint
No Feature Solutions with SharePointNo Feature Solutions with SharePoint
No Feature Solutions with SharePoint
 
GWT + Gears : The browser is the platform
GWT + Gears : The browser is the platformGWT + Gears : The browser is the platform
GWT + Gears : The browser is the platform
 
S60 3rd FP2 Widgets
S60 3rd FP2 WidgetsS60 3rd FP2 Widgets
S60 3rd FP2 Widgets
 
Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
 
Getting Started with Wicket
Getting Started with WicketGetting Started with Wicket
Getting Started with Wicket
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure Services
 
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
 
Wicket Web Framework 101
Wicket Web Framework 101Wicket Web Framework 101
Wicket Web Framework 101
 
Arif_Shaik_CV
Arif_Shaik_CVArif_Shaik_CV
Arif_Shaik_CV
 
Woah, You Can Test IE & Microsoft Edge on a Mac?
Woah, You Can Test IE & Microsoft Edge on a Mac?Woah, You Can Test IE & Microsoft Edge on a Mac?
Woah, You Can Test IE & Microsoft Edge on a Mac?
 
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignalBuilding modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
 
Microsoft power point automation-opensourcetestingtools_matrix-1
Microsoft power point   automation-opensourcetestingtools_matrix-1Microsoft power point   automation-opensourcetestingtools_matrix-1
Microsoft power point automation-opensourcetestingtools_matrix-1
 

KĂŒrzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

KĂŒrzlich hochgeladen (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 

Agile toolkit present 2012

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. js api and php are united platform.\n
  21. \n
  22. \n
  23. \n
  24. IMPORTANT: introduce crass=page concept\n
  25. IMPORTANT: introduce crass=page concept\n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n