SlideShare a Scribd company logo
Tequila Framework 3.2.1 Siwawong W. Project Director 2009.10.31
Agenda Case-study ~ Q&A 10:45 – 11:00 Demonstrate the Framework 10:30 – 10:45 Introduction  10:20 – 10:30 Self-Introduction 10:15 – 10:20
SELF-INTRODUCTION
About Me My Name:  Siwawong Wuttipongprasert Nick-name: Tae (You can call this name. it’s easier) My Background:  B.Eng (Computer Engineering), Chiang Mai University. CPE#3, Gear25 My Career Profile:  10+ years in  IT business 5+ years with  Blue Ball Co., Ltd. Role:  Programmer, System Analysis, Consultant & Project Manager Working Area:  ERP, MRP, Retailing, Banking, Financial, E-Commerce, etc. Working with multi-cultures:  Japanese, German and Vietnamese Know Me More..
My Company: Blue Ball Blue Ball Group  is an Offshoring Company that focus totally in customer satisfaction. It takes advantage of western management combined with Asian human resources to provide high quality services Thailand   (Head Office) Mexico   (Special Developments) Vietnam   (Offshoring Center)  * Available in German on Jun,2010
Services from My Company Offshoring Programmers &Testers   Blue Ball will get you ready to offshore successfully. No need to rush you into offshoring without you feeling confident on how to send, organize, receive, test and accept job confidently   System Development & Embedded Solutions   Solutions that combine technological expertise and  deep business understanding. We only start coding once every single detail such as milestones, scheduling, contact point, communication, issue management and critical protocols are in place Web design and E-commerce   Premium web design, CMS, e-commerce solutions and  SEO services. Website maintenance and copy content creation to develop marketing campaigns that SELL for discerning companies to increase the quality and reach of their marketing campaigns
My Clients
Tequila Framework - Introduction  Based-on  http :// tequila . blueballgroup . com /
What’s Tequila Framework H ighly productive MVC-PHP framework to code super fast, clean applications More Than Framework Generator Included Mash up Security Managers & Designers Packages and Libraries Workflow integrated
Features Lightweight 666KB, deploying is a breeze Full MVC pattern View strategies Easy to extend Reusable code Multiple database Multilanguage applications Templateable applications UTF -8  Support 100%  OOP Auto-loading Robust, advanced security Code generator Workflow engine Ajax support Validation Thai calendar/language support
Why We Needs Framework? Less code, clean, fast, powerful Focusing on the real problems, let the framework solve the res Agile work!
Tequila Framework Structure Your Application Code Your Application Language files Your Application Template files Tequila Framework (Core) Split Application folder from Framework  folder All application folders are access same  Framework folder All application are independent but related  to same Core of Framework
Basic Concept of Tequila Framework
Basic Concept   in Tequila Framework OOP MVC Pattern DAO & VO View Strategy
OOP in Tequila Framework Offers many benefits:  V isibility protection, automatic class loading, overloading, interfaces, abstracts, and singletons . We implement follow  PHP5 OOP  feature. NOT  implement  ActiveRecord  Pattern Implement on real OOP ways
OOP : Automatic Class Loading Managed by  c_square.php Looking for new class automatically when calling it And path that we’ve looking for: - /includes in core /includes in application
OOP : Singletons Class It provides a single method which will work for any and all classes and subclasses . It does not require a method to be duplicated within each class or subclass. Code:  $dateobj  = singleton::getInstance( 'DateClass' );
MVC Pattern in Tequila Framework In Tequila the name of your controller is normally passed as a task :   task=yourcontroller  and the method as an action  &action=Browse
MVC Pattern : Sample Code controller model We will explain DAO & VO in next section   Standard Class from  Tequila Framework
MVC Pattern : Sample Code (Cont’) view Related to HTML (template) and language file
DAO & VO in Tequila 3.2, we call DAO & DTO  DAO : Data Access Object DTO : Data Transfer Object (Formerly, we call  VO  (Value Object)) DAO  Allow us to keep the database code out of the model and to avoid repeating statements .  They also help when switching database types . The DAO will contain the methods and information to map the objects to the DB . DTO Design pattern used to transfer data between software applications or layers . Normally they represent a single row in the database but they can contain any data structure
DAO & DTO: Sample Code DAO Code Standard DAO class in Tequila DAO DAO_Unquie DAO_blob DAO_service DTO Code Property are same field’s name in table
View Strategy in Tequila Strategies are means to   simplify and reduce the code used in the view layer .   Strategies are a pattern for code reuse .  Tequila implements strategies on validation a presentation layer .   The main idea is to avoid repetitive code and allow complex screens / controls to be done without too much work .   Some basic strategies are provided:    View VO , View Array, View editor , View object,  View pagination , View Tree, etc. 
Using strategies Strategies are like any other object .  They follow a common interface ‘ view ’ and inherit methods from  view_strategy  class .  Code:  $v = new view_alternate_table($this->template, $vo_array, array('parent'=>'List')); $v->addlang('label','view'); $v->addblocklang('label'); $v->addbtn('addNew','?task=im_accounts&mode=addNew',true);  $v->addfield("viewLink", "index.php?task=im_accounts&mode=View&I_IDACCOUNT={I_IDACCOUNT}"); $v->getview();
Advance Topic in Tequila Framework
Advance Topic in Tequila Framework Security Module Workflow Module Built-in Libraries
Security Module  in Tequila Framework
Security Module : Sample Configuration Objects Actions Security Group Security define in format :   systems . yoursystem . tasks . taskname   Classifier
Workflow Module in Tequila Framework Workflow engine and the designer will be release in version 3.2. We are currently working in the flash based designer which is delaying us, however the engine has been available since version 2.0
Built-in Libraries in Tequila Framework Check built-in libraries under  \includes\packages Currently, we provide: - Benchmark Keep-alive Menu Builder Notifier (via twitter) Mail Excel Export  Etc.
Getting start with Tequila framework
Pre-requisites Skill/Background PHP OOP Concept Database (e.g. MySQL, Oracle, MS-SQL server, etc.) Software   & OS MS® Windows or Linux Apache 2.2/IIS5.0 or higher PHP5.0 or higher (recommend on 5.2.9) Any Database Server (e.g. MySQL 5.0, Oracle, MS-SQL server) Recommended Software LAMP or WAMP
Installation Download from  sourceforge Unzip  /  Unrar the package in a directory inside your webserver, i . e .  yourpath / tequila Create new database and initialize tables with SQL script inside Create new folder for application by copy from initialize application Configuration your application Initialize application
Start Coding! Create new tables in database Start Page Generator (aka, Tequila Sunrise) Get application!
Sample Code (from Sunrise) Contained required objects e.g. controller, model, views, VO, DAO Contained language for display in webpage (default by English) Contained HTML files for display result (following template style in tequila)
Thank you for your attention! [email_address] www.blueballgroup.com
Ad

More Related Content

What's hot (20)

MVC - Introduction
MVC - IntroductionMVC - Introduction
MVC - Introduction
Sudhakar Sharma
 
Resume
ResumeResume
Resume
Ankit.Rustagi
 
Angularjs2 presentation
Angularjs2 presentationAngularjs2 presentation
Angularjs2 presentation
dharisk
 
21. High-Quality Programming Code
21. High-Quality Programming Code21. High-Quality Programming Code
21. High-Quality Programming Code
Intro C# Book
 
SEMjs - Planting Seeds with Elm
SEMjs - Planting Seeds with ElmSEMjs - Planting Seeds with Elm
SEMjs - Planting Seeds with Elm
Mike Onslow
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
Rich Helton
 
Introduction to Ibatis by Rohit
Introduction to Ibatis by RohitIntroduction to Ibatis by Rohit
Introduction to Ibatis by Rohit
Rohit Prabhakar
 
MVC in PHP
MVC in PHPMVC in PHP
MVC in PHP
Vineet Kumar Saini
 
Introduction to CakePHP
Introduction to CakePHPIntroduction to CakePHP
Introduction to CakePHP
mohamedsamirgalal
 
cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)
Varsha Krishna
 
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NETInventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
Himanshu Patel
 
Beginners introduction to asp.net
Beginners introduction to asp.netBeginners introduction to asp.net
Beginners introduction to asp.net
Naveen Kumar Veligeti
 
Productionizing Real-time Serving With MLflow
Productionizing Real-time Serving With MLflowProductionizing Real-time Serving With MLflow
Productionizing Real-time Serving With MLflow
Databricks
 
Asp.Net Tutorials
Asp.Net TutorialsAsp.Net Tutorials
Asp.Net Tutorials
Ram Sagar Mourya
 
Php Frameworks
Php FrameworksPhp Frameworks
Php Frameworks
Ryan Davis
 
Jdev handbook-ch01-130992
Jdev handbook-ch01-130992Jdev handbook-ch01-130992
Jdev handbook-ch01-130992
psriapps
 
Mvc by asp.net development company in india - part 2
Mvc by asp.net development company in india  - part 2Mvc by asp.net development company in india  - part 2
Mvc by asp.net development company in india - part 2
iFour Institute - Sustainable Learning
 
Test Automation Using Python | Edureka
Test Automation Using Python | EdurekaTest Automation Using Python | Edureka
Test Automation Using Python | Edureka
Edureka!
 
Microsoft MCPD 70-492 it examen dumps
Microsoft MCPD 70-492 it examen dumpsMicrosoft MCPD 70-492 it examen dumps
Microsoft MCPD 70-492 it examen dumps
lilylucy
 
Selenium training eduxfactor
Selenium training   eduxfactorSelenium training   eduxfactor
Selenium training eduxfactor
KapilSai3
 
Angularjs2 presentation
Angularjs2 presentationAngularjs2 presentation
Angularjs2 presentation
dharisk
 
21. High-Quality Programming Code
21. High-Quality Programming Code21. High-Quality Programming Code
21. High-Quality Programming Code
Intro C# Book
 
SEMjs - Planting Seeds with Elm
SEMjs - Planting Seeds with ElmSEMjs - Planting Seeds with Elm
SEMjs - Planting Seeds with Elm
Mike Onslow
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
Rich Helton
 
Introduction to Ibatis by Rohit
Introduction to Ibatis by RohitIntroduction to Ibatis by Rohit
Introduction to Ibatis by Rohit
Rohit Prabhakar
 
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NETInventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
Himanshu Patel
 
Productionizing Real-time Serving With MLflow
Productionizing Real-time Serving With MLflowProductionizing Real-time Serving With MLflow
Productionizing Real-time Serving With MLflow
Databricks
 
Php Frameworks
Php FrameworksPhp Frameworks
Php Frameworks
Ryan Davis
 
Jdev handbook-ch01-130992
Jdev handbook-ch01-130992Jdev handbook-ch01-130992
Jdev handbook-ch01-130992
psriapps
 
Test Automation Using Python | Edureka
Test Automation Using Python | EdurekaTest Automation Using Python | Edureka
Test Automation Using Python | Edureka
Edureka!
 
Microsoft MCPD 70-492 it examen dumps
Microsoft MCPD 70-492 it examen dumpsMicrosoft MCPD 70-492 it examen dumps
Microsoft MCPD 70-492 it examen dumps
lilylucy
 
Selenium training eduxfactor
Selenium training   eduxfactorSelenium training   eduxfactor
Selenium training eduxfactor
KapilSai3
 

Viewers also liked (8)

IT Ready - DW: 1st Day
IT Ready - DW: 1st Day IT Ready - DW: 1st Day
IT Ready - DW: 1st Day
Siwawong Wuttipongprasert
 
Bb Tequila Coding Style (Draft)
Bb Tequila Coding Style (Draft)Bb Tequila Coding Style (Draft)
Bb Tequila Coding Style (Draft)
Siwawong Wuttipongprasert
 
pihms Overview Presentation
pihms Overview Presentationpihms Overview Presentation
pihms Overview Presentation
Andrew Mackler
 
Finishing School .Net Work-Shop (Day2)
Finishing School .Net Work-Shop (Day2)Finishing School .Net Work-Shop (Day2)
Finishing School .Net Work-Shop (Day2)
Siwawong Wuttipongprasert
 
pihmsAnalytic Solutions - Report Compendium
pihmsAnalytic Solutions - Report CompendiumpihmsAnalytic Solutions - Report Compendium
pihmsAnalytic Solutions - Report Compendium
Andrew Mackler
 
test presentation
test presentationtest presentation
test presentation
H Haughey
 
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
Siwawong Wuttipongprasert
 
Northern IT Finishing School
Northern IT Finishing SchoolNorthern IT Finishing School
Northern IT Finishing School
Siwawong Wuttipongprasert
 
pihms Overview Presentation
pihms Overview Presentationpihms Overview Presentation
pihms Overview Presentation
Andrew Mackler
 
pihmsAnalytic Solutions - Report Compendium
pihmsAnalytic Solutions - Report CompendiumpihmsAnalytic Solutions - Report Compendium
pihmsAnalytic Solutions - Report Compendium
Andrew Mackler
 
test presentation
test presentationtest presentation
test presentation
H Haughey
 
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
จบแล้วทำงานอย่างไร ไม่ให้ DRAMA!
Siwawong Wuttipongprasert
 
Ad

Similar to FLossEd-BK Tequila Framework3.2.1 (20)

The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
David Solivan
 
Chicago Code Camp 2014 TFS Care and Feeding
Chicago Code Camp 2014   TFS Care and FeedingChicago Code Camp 2014   TFS Care and Feeding
Chicago Code Camp 2014 TFS Care and Feeding
Angela Dugan
 
IRJET- Lightweight MVC Framework in PHP
IRJET- Lightweight MVC Framework in PHPIRJET- Lightweight MVC Framework in PHP
IRJET- Lightweight MVC Framework in PHP
IRJET Journal
 
Entity Framework Core Cookbook 2nd Edition Ricardo Peres
Entity Framework Core Cookbook 2nd Edition Ricardo PeresEntity Framework Core Cookbook 2nd Edition Ricardo Peres
Entity Framework Core Cookbook 2nd Edition Ricardo Peres
yuvejulpah
 
Getting Started with Zend Framework
Getting Started with Zend FrameworkGetting Started with Zend Framework
Getting Started with Zend Framework
Juan Antonio
 
Isset Presentation @ EECI2009
Isset Presentation @ EECI2009Isset Presentation @ EECI2009
Isset Presentation @ EECI2009
Isset Internet Professionals
 
Introduction to Cakephp
Introduction to CakephpIntroduction to Cakephp
Introduction to Cakephp
Aditya Mooley
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introduction
Commit University
 
Entity Framework Code First Migrations
Entity Framework Code First MigrationsEntity Framework Code First Migrations
Entity Framework Code First Migrations
Diluka99999
 
My Saminar On Php
My Saminar On PhpMy Saminar On Php
My Saminar On Php
Arjun Kumawat
 
Intro to Application Express
Intro to Application ExpressIntro to Application Express
Intro to Application Express
José Angel Ibarra Espinosa
 
Entity Framework Interview Questions PDF By ScholarHat
Entity Framework Interview Questions PDF By ScholarHatEntity Framework Interview Questions PDF By ScholarHat
Entity Framework Interview Questions PDF By ScholarHat
Scholarhat
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
Ethos Technologies
 
A winning combination: Plone as CMS and your favorite Python web framework as...
A winning combination: Plone as CMS and your favorite Python web framework as...A winning combination: Plone as CMS and your favorite Python web framework as...
A winning combination: Plone as CMS and your favorite Python web framework as...
Carlos de la Guardia
 
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
cNguyn506241
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
rupeshchanchal
 
Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with Python
Brian Lyttle
 
CG_CS25010_Lecture
CG_CS25010_LectureCG_CS25010_Lecture
CG_CS25010_Lecture
Connor Goddard
 
NET Event - Migrating WinForm
NET Event - Migrating WinFormNET Event - Migrating WinForm
NET Event - Migrating WinForm
Raffaele Garofalo
 
Flyr PHP micro-framework
Flyr PHP micro-frameworkFlyr PHP micro-framework
Flyr PHP micro-framework
Siro Díaz Palazón
 
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
David Solivan
 
Chicago Code Camp 2014 TFS Care and Feeding
Chicago Code Camp 2014   TFS Care and FeedingChicago Code Camp 2014   TFS Care and Feeding
Chicago Code Camp 2014 TFS Care and Feeding
Angela Dugan
 
IRJET- Lightweight MVC Framework in PHP
IRJET- Lightweight MVC Framework in PHPIRJET- Lightweight MVC Framework in PHP
IRJET- Lightweight MVC Framework in PHP
IRJET Journal
 
Entity Framework Core Cookbook 2nd Edition Ricardo Peres
Entity Framework Core Cookbook 2nd Edition Ricardo PeresEntity Framework Core Cookbook 2nd Edition Ricardo Peres
Entity Framework Core Cookbook 2nd Edition Ricardo Peres
yuvejulpah
 
Getting Started with Zend Framework
Getting Started with Zend FrameworkGetting Started with Zend Framework
Getting Started with Zend Framework
Juan Antonio
 
Introduction to Cakephp
Introduction to CakephpIntroduction to Cakephp
Introduction to Cakephp
Aditya Mooley
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introduction
Commit University
 
Entity Framework Code First Migrations
Entity Framework Code First MigrationsEntity Framework Code First Migrations
Entity Framework Code First Migrations
Diluka99999
 
Entity Framework Interview Questions PDF By ScholarHat
Entity Framework Interview Questions PDF By ScholarHatEntity Framework Interview Questions PDF By ScholarHat
Entity Framework Interview Questions PDF By ScholarHat
Scholarhat
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
Ethos Technologies
 
A winning combination: Plone as CMS and your favorite Python web framework as...
A winning combination: Plone as CMS and your favorite Python web framework as...A winning combination: Plone as CMS and your favorite Python web framework as...
A winning combination: Plone as CMS and your favorite Python web framework as...
Carlos de la Guardia
 
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
cNguyn506241
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
rupeshchanchal
 
Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with Python
Brian Lyttle
 
NET Event - Migrating WinForm
NET Event - Migrating WinFormNET Event - Migrating WinForm
NET Event - Migrating WinForm
Raffaele Garofalo
 
Ad

More from Siwawong Wuttipongprasert (7)

การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรมการนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
Siwawong Wuttipongprasert
 
Create Components in TomatoCMS
Create Components in TomatoCMSCreate Components in TomatoCMS
Create Components in TomatoCMS
Siwawong Wuttipongprasert
 
TomatoCMS in A Nutshell
TomatoCMS in A NutshellTomatoCMS in A Nutshell
TomatoCMS in A Nutshell
Siwawong Wuttipongprasert
 
It ready dw_day4_rev00
It ready dw_day4_rev00It ready dw_day4_rev00
It ready dw_day4_rev00
Siwawong Wuttipongprasert
 
It ready dw_day3_rev00
It ready dw_day3_rev00It ready dw_day3_rev00
It ready dw_day3_rev00
Siwawong Wuttipongprasert
 
ITReady DW Day2
ITReady DW Day2ITReady DW Day2
ITReady DW Day2
Siwawong Wuttipongprasert
 
Northern Finishing School: IT Project Managment
Northern Finishing School: IT Project ManagmentNorthern Finishing School: IT Project Managment
Northern Finishing School: IT Project Managment
Siwawong Wuttipongprasert
 
การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรมการนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
การนำเทคโนโลยีมาปรับใช้ในระบบ Erp ให้ทันสมัยในอุตสาหกรรม
Siwawong Wuttipongprasert
 
Northern Finishing School: IT Project Managment
Northern Finishing School: IT Project ManagmentNorthern Finishing School: IT Project Managment
Northern Finishing School: IT Project Managment
Siwawong Wuttipongprasert
 

Recently uploaded (20)

Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 

FLossEd-BK Tequila Framework3.2.1

  • 1. Tequila Framework 3.2.1 Siwawong W. Project Director 2009.10.31
  • 2. Agenda Case-study ~ Q&A 10:45 – 11:00 Demonstrate the Framework 10:30 – 10:45 Introduction 10:20 – 10:30 Self-Introduction 10:15 – 10:20
  • 4. About Me My Name: Siwawong Wuttipongprasert Nick-name: Tae (You can call this name. it’s easier) My Background: B.Eng (Computer Engineering), Chiang Mai University. CPE#3, Gear25 My Career Profile: 10+ years in IT business 5+ years with Blue Ball Co., Ltd. Role: Programmer, System Analysis, Consultant & Project Manager Working Area: ERP, MRP, Retailing, Banking, Financial, E-Commerce, etc. Working with multi-cultures: Japanese, German and Vietnamese Know Me More..
  • 5. My Company: Blue Ball Blue Ball Group is an Offshoring Company that focus totally in customer satisfaction. It takes advantage of western management combined with Asian human resources to provide high quality services Thailand (Head Office) Mexico (Special Developments) Vietnam (Offshoring Center) * Available in German on Jun,2010
  • 6. Services from My Company Offshoring Programmers &Testers   Blue Ball will get you ready to offshore successfully. No need to rush you into offshoring without you feeling confident on how to send, organize, receive, test and accept job confidently   System Development & Embedded Solutions   Solutions that combine technological expertise and deep business understanding. We only start coding once every single detail such as milestones, scheduling, contact point, communication, issue management and critical protocols are in place Web design and E-commerce   Premium web design, CMS, e-commerce solutions and SEO services. Website maintenance and copy content creation to develop marketing campaigns that SELL for discerning companies to increase the quality and reach of their marketing campaigns
  • 8. Tequila Framework - Introduction Based-on http :// tequila . blueballgroup . com /
  • 9. What’s Tequila Framework H ighly productive MVC-PHP framework to code super fast, clean applications More Than Framework Generator Included Mash up Security Managers & Designers Packages and Libraries Workflow integrated
  • 10. Features Lightweight 666KB, deploying is a breeze Full MVC pattern View strategies Easy to extend Reusable code Multiple database Multilanguage applications Templateable applications UTF -8 Support 100% OOP Auto-loading Robust, advanced security Code generator Workflow engine Ajax support Validation Thai calendar/language support
  • 11. Why We Needs Framework? Less code, clean, fast, powerful Focusing on the real problems, let the framework solve the res Agile work!
  • 12. Tequila Framework Structure Your Application Code Your Application Language files Your Application Template files Tequila Framework (Core) Split Application folder from Framework folder All application folders are access same Framework folder All application are independent but related to same Core of Framework
  • 13. Basic Concept of Tequila Framework
  • 14. Basic Concept in Tequila Framework OOP MVC Pattern DAO & VO View Strategy
  • 15. OOP in Tequila Framework Offers many benefits: V isibility protection, automatic class loading, overloading, interfaces, abstracts, and singletons . We implement follow PHP5 OOP feature. NOT implement ActiveRecord Pattern Implement on real OOP ways
  • 16. OOP : Automatic Class Loading Managed by c_square.php Looking for new class automatically when calling it And path that we’ve looking for: - /includes in core /includes in application
  • 17. OOP : Singletons Class It provides a single method which will work for any and all classes and subclasses . It does not require a method to be duplicated within each class or subclass. Code: $dateobj = singleton::getInstance( 'DateClass' );
  • 18. MVC Pattern in Tequila Framework In Tequila the name of your controller is normally passed as a task :   task=yourcontroller  and the method as an action  &action=Browse
  • 19. MVC Pattern : Sample Code controller model We will explain DAO & VO in next section Standard Class from Tequila Framework
  • 20. MVC Pattern : Sample Code (Cont’) view Related to HTML (template) and language file
  • 21. DAO & VO in Tequila 3.2, we call DAO & DTO DAO : Data Access Object DTO : Data Transfer Object (Formerly, we call VO (Value Object)) DAO Allow us to keep the database code out of the model and to avoid repeating statements . They also help when switching database types . The DAO will contain the methods and information to map the objects to the DB . DTO Design pattern used to transfer data between software applications or layers . Normally they represent a single row in the database but they can contain any data structure
  • 22. DAO & DTO: Sample Code DAO Code Standard DAO class in Tequila DAO DAO_Unquie DAO_blob DAO_service DTO Code Property are same field’s name in table
  • 23. View Strategy in Tequila Strategies are means to simplify and reduce the code used in the view layer . Strategies are a pattern for code reuse . Tequila implements strategies on validation a presentation layer .   The main idea is to avoid repetitive code and allow complex screens / controls to be done without too much work .   Some basic strategies are provided:  View VO , View Array, View editor , View object, View pagination , View Tree, etc. 
  • 24. Using strategies Strategies are like any other object . They follow a common interface ‘ view ’ and inherit methods from view_strategy class . Code: $v = new view_alternate_table($this->template, $vo_array, array('parent'=>'List')); $v->addlang('label','view'); $v->addblocklang('label'); $v->addbtn('addNew','?task=im_accounts&mode=addNew',true); $v->addfield("viewLink", "index.php?task=im_accounts&mode=View&I_IDACCOUNT={I_IDACCOUNT}"); $v->getview();
  • 25. Advance Topic in Tequila Framework
  • 26. Advance Topic in Tequila Framework Security Module Workflow Module Built-in Libraries
  • 27. Security Module in Tequila Framework
  • 28. Security Module : Sample Configuration Objects Actions Security Group Security define in format : systems . yoursystem . tasks . taskname Classifier
  • 29. Workflow Module in Tequila Framework Workflow engine and the designer will be release in version 3.2. We are currently working in the flash based designer which is delaying us, however the engine has been available since version 2.0
  • 30. Built-in Libraries in Tequila Framework Check built-in libraries under \includes\packages Currently, we provide: - Benchmark Keep-alive Menu Builder Notifier (via twitter) Mail Excel Export Etc.
  • 31. Getting start with Tequila framework
  • 32. Pre-requisites Skill/Background PHP OOP Concept Database (e.g. MySQL, Oracle, MS-SQL server, etc.) Software & OS MS® Windows or Linux Apache 2.2/IIS5.0 or higher PHP5.0 or higher (recommend on 5.2.9) Any Database Server (e.g. MySQL 5.0, Oracle, MS-SQL server) Recommended Software LAMP or WAMP
  • 33. Installation Download from sourceforge Unzip / Unrar the package in a directory inside your webserver, i . e .  yourpath / tequila Create new database and initialize tables with SQL script inside Create new folder for application by copy from initialize application Configuration your application Initialize application
  • 34. Start Coding! Create new tables in database Start Page Generator (aka, Tequila Sunrise) Get application!
  • 35. Sample Code (from Sunrise) Contained required objects e.g. controller, model, views, VO, DAO Contained language for display in webpage (default by English) Contained HTML files for display result (following template style in tequila)
  • 36. Thank you for your attention! [email_address] www.blueballgroup.com