TEACHING WEB PROGRAMMING USING THE YII FRAMEWORK AT CAJON HIGH SCHOOL Chad Easton Rosemarie Reed Arturo I Concepcion David A Turner CONTENTS History Why Teach the Yii Framework Overview of the Tools Used Creating a Blueprint Land and Resources Building Tools Construction Crew HISTORY Began initial planning for project summer of 2010 During Fall 2010 and Winter 2010 Quarters I taught: XHTML CSS PHP Object Oriented Programming with PHP MySQL WHY TEACH THE YII FRAMEWORK Yii is one of the newest and most praised framework Yii uses the newest techniques Yii is modeled after other popular frameworks Yii incorporates the use of Object Oriented Programing Database tables are converted to Object Models It would be challenging OVERVIEW OF THE TOOLS USED MySQL Workbench UniformServer Yii Framework Yii’s Gii Code Generator PHPMyAdmin NetBeans IDE CREATING A BLUEPRINT Creating a model of our structure (MySQL Workbench) Example ERD (Entity Relationship Diagram) Diagram Model of our database 8 tables/objects (User, news_topic, news, news_comment, etc…) Connecting lines from table to table display the relationship between them Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews LAND AND RESOURCES We need land which will support our structure’s needs (Uniform Sever) Uniform Sever contains a variety of programs and services supported by Microsoft Windows XP – Windows 7 and Operates from a single drive, such as a flash drive, for a portable development environment. Some of these programs and services include: Apache Webserver (Supports the PHP programming language), MySQL Database, and PHPMyAdmin (a web application, developed in PHP, which runs in a web browser and contains a Graphical User Interface for managing MySQL databases) Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews BUILDING TOOLS The essential supporting structure (Yii Framework) Yii Framework is a fairly new framework which is a free, open-source Web application framework written in PHP5, that promotes clean, DRY (Don’t Repeat Yourself) design and encourages rapid development. It works to streamline your application development and helps to ensure an extremely efficient, extensible, and maintainable end product. Yii is an acronym for Yes It Is. Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews BUILDING TOOLS Adding the electrical wiring (PHPMyAdmin) Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews BUILDING TOOLS Turning on the electricity (Gii Code Generator) Gii is a tool, included in the Yii framework, which will generate code based off of the database model. This code includes web pages for: viewing data, deleting data, updating data, and adding new data in the existing tables in our database. Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews BUILDING TOOLS Customizing the interior design (NetBeans IDE) Using NetBeans IDE to edit the code generated by Gii, or create their own pages within the application. Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews CONSTRUCTION CREW Creating a Blueprint >> Land and Resources >> Building Tools >> Construction Crews QUESTIONS?