PHP Ohjelmointikehykset

Total Page:16

File Type:pdf, Size:1020Kb

PHP Ohjelmointikehykset PHP-POHJAISET OHJELMOINTIKEHYKSET Antti Humalamäki Opinnäytetyö Marraskuu 2011 Ohjelmistotekniikka Tekniikan ja liikenteen ala OPINNÄYTETYÖN KUVAILULEHTI Tekijä(t) Julkaisun laji Päivämäärä HUMALAMÄKI, Antti Opinnäytetyö 30.11.2011 Sivumäärä Julkaisun kieli 77 Suomi Luottamuksellisuus Verkkojulkaisulupa myönnetty ( ) saakka ( X ) Työn nimi PHP-POHJAISET OHJELMOINTIKEHYKSET Koulutusohjelma Ohjelmistotekniikka Työn ohjaaja(t) PELTOMÄKI, Juha Toimeksiantaja(t) Sysdrone Oy Tiivistelmä Opinnäytetyön tavoitteena oli tehdä Sysdrone Oy:lle vertailevaa tutkimusta PHP-kielellä toteutettu- jen avoimen lähdekoodin ohjelmointikehyksistä. Työn motivaationa oli löytää työn toimeksiantajan tulevaisuuden projekteja varten sellaisia sovelluskehitysalustoja joista löytyvät valmiina perustoi- minnallisuudet kuten käyttäjienhallinta, autentikaatio ja lokalisointi, samalla myös huomioiden sellaiset ominaisuudet kuten kehityksen helppous ja testattavuus. Lisäksi kiinnitettiin huomiota mahdollisiin sisällönhallintaominaisuuksiin, dokumentaation tasoon ja käyttäjäyhteisön aktiivisuu- teen. Tutkittaviksi järjestelmiksi rajautuivat varsinaiset ohjelmointikehykset Symfony, Zend ja Yii sekä sisällönhallintajärjestelmät Joomla ja Drupal. Kaikkia ohjelmointikehyksiä ja sisällönhallintajärjes- telmiä tutkittiin empiirisin menetelmin virtuaalikoneympäristössä, mutta myös kirjallisuudesta tie- toa hakien. Kaikista tutkituista kehysjärjestelmistä kerättiin laajasti aineistoa, josta on hyötyä toimeksiantajan tulevaisuuden projektien suunnittelussa. Molempien ohjelmointikehysten ja sisällönhallintajärjes- telmien sisällyttäminen samaan tutkimukseen, aiheutti vaikeuksia niiden väliselle vertailulle. Järjes- telmät pisteytettiin toimeksiantajan määrittelemien vaatimusten mukaisesti. Yksittäistä parasta järjestelmää ei kuitenkaan voida nimetä, sillä yksittäisen ohjelmistoprojektin vaatimukset vaikutta- vat aina siihen, millainen kehysjärjestelmä kannattaa valita. Avainsanat (asiasanat) Avoin lähdekoodi, Ohjelmointikehys, PHP, Drupal, Joomla, Symfony, Zend, Yii Muut tiedot DESCRIPTION Author(s) Type of publication Date HUMALAMÄKI, Antti Bachelor´s Thesis 30112011 Pages Language 77 Finnish Confidential Permission for web publication ( ) Until ( X ) Title PHP SOFTWARE FRAMEWORKS Degree Programme Software Engineering Tutor(s) PELTOMÄKI, Juha Assigned by Sysdrone Oy Abstract The aim of the Bachelor’s Thesis was to carry out a comparative research of PHP-based open source software frameworks for Sysdrone Oy. The motivation behind this thesis work was to find possible software framework for the assigner’s future projects. The framework should preferably have im- plemented basic functionalities such as user management, authentication, and localization. Addi- tionally, it should consider possible content management features, quality of documentation and activity of community. The software frameworks Symfony, Zend and Yii, plus content management systems Joomla and Drupal were selected for closer inspection. These systems were studied empirically in a virtual ma- chine environment, while also searching information from written sources. Plenty of research material was collected for each software framework. This material will be useful as the assigner company plans its future projects. Including both basic software frameworks and more feature-rich content management systems in the same study caused difficulties during the comparison between those groups of systems. Each system was given a score based on the re- quirements defined by the assigner. One single best system cannot be named - instead it is advisa- ble to choose a framework based on the task at hand. Keywords Open source, Software framework, PHP, Drupal, Joomla, Symfony, Zend, Yii Miscellaneous 1 SISÄLTÖ TERMIT JA LYHENTEET ............................................................. 4 1 TYÖN LÄHTÖKOHDAT............................................................ 10 1.1 Tavoite .......................................................................... 10 1.2 Toimeksiantaja ............................................................... 10 1.3 Tarve ............................................................................ 11 1.4 Vaatimukset ................................................................... 11 2 TYÖN SUUNNITELMA JA ALOITUS ........................................... 13 2.1 Esitutkimus .................................................................... 13 2.2 Karsinta ........................................................................ 14 2.3 Virtuaalikone testiympäristönä ......................................... 15 3 TOTEUTUS........................................................................... 17 3.1 Symfony ........................................................................ 17 3.1.1 Yleisesti ................................................................... 17 3.1.2 Asennus ................................................................... 17 3.1.3 Autentikaatio ja käyttäjien hallinta .............................. 18 3.1.4 Käyttökokemus ......................................................... 19 3.1.5 CRUD-liittymän toteutus ............................................ 19 3.1.6 Dokumentaatio ja käyttäjäyhteisö ............................... 22 3.1.7 Lokalisointi ............................................................... 23 3.1.8 Testattavuus ............................................................ 24 3.2 Zend ............................................................................. 26 3.2.1 Yleisesti ................................................................... 26 3.2.2 Asennus ................................................................... 26 3.2.3 Autentikaatio ja käyttäjien hallinta .............................. 28 3.2.4 Käyttökokemus ......................................................... 29 3.2.5 CRUD-liittymän toteutus ............................................ 30 3.2.6 Dokumentaatio ja käyttäjäyhteisö ............................... 34 3.2.7 Lokalisointi ............................................................... 34 3.2.8 Testattavuus ............................................................ 35 3.3 Drupal ........................................................................... 37 3.3.1 Yleisesti ................................................................... 37 3.3.2 Asennus ................................................................... 37 3.3.3 Autentikaatio ja käyttäjien hallinta .............................. 38 3.3.4 Käyttökokemus ......................................................... 39 3.3.5 CRUD-liittymän toteutus ............................................ 41 2 3.3.6 Dokumentaatio ja käyttäjäyhteisö ............................... 44 3.3.7 Lokalisointi ............................................................... 44 3.3.8 Testattavuus ............................................................ 45 3.4 Yii ................................................................................. 46 3.4.1 Yleisesti ................................................................... 46 3.4.2 Asennus ................................................................... 46 3.4.3 Autentikaatio ja käyttäjien hallinta .............................. 48 3.4.4 Käyttökokemus ......................................................... 49 3.4.5 CRUD-liittymän toteutus ............................................ 49 3.4.6 Dokumentaatio ja käyttäjäyhteisö ............................... 52 3.4.7 Lokalisointi ............................................................... 53 3.4.8 Testattavuus ............................................................ 53 3.5 Joomla! ......................................................................... 55 3.5.1 Yleisesti ................................................................... 55 3.5.2 Asennus ................................................................... 55 3.5.3 Autentikaatio ja käyttäjien hallinta .............................. 56 3.5.4 Käyttökokemus ......................................................... 57 3.5.5 CRUD-liittymän toteutus ............................................ 58 3.5.6 Dokumentaatio ja käyttäjäyhteisö ............................... 58 3.5.7 Lokalisointi ............................................................... 59 3.5.8 Testattavuus ............................................................ 59 4 TULOKSET ........................................................................... 60 4.1 Symfony ........................................................................ 60 4.2 Zend ............................................................................. 60 4.3 Drupal ........................................................................... 61 4.4 Yii ................................................................................. 62 4.5 Joomla! ......................................................................... 62 4.6 Vertailu ......................................................................... 63 5 POHDINTA ........................................................................... 65 LÄHTEET ................................................................................ 67 LIITTEET ................................................................................ 69 Liite 1. Zend CRUD -ohjain. ................................................ 69 Liite 2. Zend CRUD -malli. .................................................. 70 Liite 3. Zend CRUD -listausnäkymä. ..................................... 71 Liite 4. Zend CRUD-lomake
Recommended publications
  • Marketing Cloud Published: August 12, 2021
    Marketing Cloud Published: August 12, 2021 The following are notices required by licensors related to distributed components (mobile applications, desktop applications, or other offline components) applicable to the services branded as ExactTarget or Salesforce Marketing Cloud, but excluding those services currently branded as “Radian6,” “Buddy Media,” “Social.com,” “Social Studio,”“iGoDigital,” “Predictive Intelligence,” “Predictive Email,” “Predictive Web,” “Web & Mobile Analytics,” “Web Personalization,” or successor branding, (the “ET Services”), which are provided by salesforce.com, inc. or its affiliate ExactTarget, Inc. (“salesforce.com”): @formatjs/intl-pluralrules Copyright (c) 2019 FormatJS Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    [Show full text]
  • Security Issues and Framework of Electronic Medical Record: a Review
    Bulletin of Electrical Engineering and Informatics Vol. 9, No. 2, April 2020, pp. 565~572 ISSN: 2302-9285, DOI: 10.11591/eei.v9i2.2064 565 Security issues and framework of electronic medical record: A review Jibril Adamu, Raseeda Hamzah, Marshima Mohd Rosli Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA, Malaysia Article Info ABSTRACT Article history: The electronic medical record has been more widely accepted due to its unarguable benefits when compared to a paper-based system. As electronic Received Oct 30, 2019 medical record becomes more popular, this raises many security threats Revised Dec 28, 2019 against the systems. Common security vulnerabilities, such as weak Accepted Feb 11, 2020 authentication, cross-site scripting, SQL injection, and cross-site request forgery had been identified in the electronic medical record systems. To achieve the goals of using EMR, attaining security and privacy Keywords: is extremely important. This study aims to propose a web framework with inbuilt security features that will prevent the common security vulnerabilities CodeIgniter security in the electronic medical record. The security features of the three most CSRF popular and powerful PHP frameworks Laravel, CodeIgniter, and Symfony EMR security issues were reviewed and compared. Based on the results, Laravel is equipped with Laravel security the security features that electronic medical record currently required. SQL injection This paper provides descriptions of the proposed conceptual framework that Symfony security can be adapted to implement secure EMR systems. Top vulnerabilities This is an open access article under the CC BY-SA license. XSS Corresponding Author: Jibril Adamu, Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA, 40450 Shah Alam, Selangor, Malaysia.
    [Show full text]
  • Eesti Harrastusteatrite Liidu Etendusstatistika Andmebaasi Ja Rakenduse Arendus
    TALLINNA TEHNIKAÜLIKOOL Infotehnoloogia teaduskond Aivar Romandi 175278IDDR Eesti Harrastusteatrite Liidu etendusstatistika andmebaasi ja rakenduse arendus Diplomitöö Juhendaja: Kristjan Karmo MBA Tallinn 2021 Autorideklaratsioon Kinnitan, et olen koostanud antud lõputöö iseseisvalt ning seda ei ole kellegi teise poolt varem kaitsmisele esitatud. Kõik töö koostamisel kasutatud teiste autorite tööd, olulised seisukohad, kirjandusallikatest ja mujalt pärinevad andmed on töös viidatud. Autor: Aivar Romandi 16.05.2021 2 Annotatsioon Diplomitöö eesmärk on Eesti Harrastusteatrite Liidule etendusstatistika andmebaasi ja rakenduse arendamine. Sissejuhatuse peatükis on kirjeldatud diplomitöös lahendatav probleem ja selle taust. Ülesande püstituse peatükis on kirjeldatud diplomitöö tulemusel valmiva rakenduse vajadused. Lahenduse valiku peatükis on kirjeldatud erinevad võimalikud lahendused sissejuhatuses tõstatatud põhiprobleemile ning miks valiti just selline lahendus. PHP raamistiku valiku peatükis on lühidalt kirjeldatud erinevad PHP raamistikud ning mille alusel valis autor välja rakenduse arendamiseks sobiva raamistiku. Aruandlusvajaduse peatükis on põhjendatud aruannete vajalikkust ning kirjeldatud rakenduses genereeritavate aruannete sisu. Rakenduse ja andmebaasi arendusprotsessi kirjelduse peatükis on välja toodud rakenduse arendusprotsessi tsükkel ja selle komponendid. Rakenduse kirjelduses on kirjeldatud autori tööna valminud rakenduse sisu. Andmebaasi kirjelduses on kirjeldatud autori tööna valminud andmebaasi sisu. Diplomitöö tulemusena
    [Show full text]
  • PHP and Mysql Web Development
    TABEL OF CONTENT 1) PHP Introduction 2) PHP Environmental Setup 3) PHP Syntax Overview 4) PHP Variable Types 5) PHP Constants 6) PHP Operator Types 7) PHP Decision Making 8) PHP Loop Types 9) PHP Arrays 10)PHP Strings 11)PHP Web Concepts 12)PHP Get & Post 13)PHP File Inclusion 14)PHP Files & I/O 15)PHP Functions 16)PHP Cookies 17)PHP Sessions 18)PHP Sending Emails 19)PHP File Uploading 20)PHP Coding Standard 21)PHP Predefined Variable 22)PHP Regular Expression 23)PHP Error Handling 24)PHP Bugs Debugging 25)PHP Date & Time 26)PHP & MySQL 27)PHP &Ajax 28)PHP & XML 29)PHP – Object Oriented 30)PHP -For C Developers 31)PHP -For PERL Developers PHP Tutorial The PHP Hypertext Preprocessor (PHP) is a programming language that allows web developers to create dynamic content that interacts with databases. PHP is basically used for developing web based software applications. This tutorial helps you to build your base with PHP. Audience This tutorial is designed for PHP programmers who are completely unaware of PHP concepts but they have basic understanding on computer programming. Prerequisites Before proceeding with this tutorial you should have at least basic understanding of computer programming, Internet, Database, and MySQL etc is very helpful. Execute PHP Online For most of the examples given in this tutorial you will find Try it an option, so just make use of this option to execute your PHP programs at the spot and enjoy your learning. Try following example using Try it option available at the top right corner of the below sample code box − <html> <head> <title>Online PHP Script Execution</title> </head> <body> <?php echo "<h1>Hello, PHP!</h1>"; ?> </body> </html> PHP - Introduction PHP started out as a small open source project that evolved as more and more people found out how useful it was.
    [Show full text]
  • Desenvolvimento De Aplicações Web Robustas, Em Contexto Empresarial, De O Desenvolvimento Web, De Sites Dinâmicos, Em Forma Simplificada
    21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Sinopse Desenvolvimento de aplicações Web robustas, em contexto empresarial, de O desenvolvimento Web, de sites dinâmicos, em forma simplificada. contexto empresarial, requer a escolha cuidadosa de qual plataforma e de quais ferramentas utilizar; consiste ainda na integração de muitos componentes. Maurício Bordon www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Minibiografia Sinopse Maurício Bordon trabalha na área de TI desde 1989, e com Através da utilização do PHP (uma linguagem muito desenvolvimento Web desde 2000. Atuou na concepção e no desenvolvimento de um ERP (software de Gestão Empresarial), voltado popular para o desenvolvimento Web, utilizada por para a Web, e em diversos outros projetos, e atualmente está envolvido exemplo no site Facebook), e do Framework Symfony na implantação do ERP Protheus da TOTVS e na integração deste com (utilizado, entre muitos outros sites, no Yahoo), pode- uma Extranet. se entregar um produto robusto e de alta qualidade. Leciona a disciplina Gerência de Sistemas de Informação na Anhanguera. www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 1 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Sinopse Componentes Server Client • O que são Web Sites Dinâmicos SO / Web Server / BD SO / Browser •
    [Show full text]
  • Implementación De Framework De Desarrollo Web Durante Un Proyecto”
    UNIVERSIDAD POLITÉCNICA DE SINALOA PROGRAMA ACADÉMICO DE INGENIERÍA EN INFORMÁTICA Tesina “Implementación de Framework de desarrollo web durante un proyecto” Para obtener la acreditación de las estadías profesionales y contar con los créditos para el grado de Ingeniero en Informática. Autor: Bernal Corral Daniel Asesor: M. C. Alejandro Pérez Pasten Borja Asesor OR: Ing. Omar Vidaña Peraza Mazatlán, Sinaloa 13 de Diciembre del 2019 Agradecimientos Agradezco a mis padres por brindarme todo su apoyo durante mis estudios, por darme las clases más importantes, por haber hecho posible que llegara a este momento, por enseñarme que no siempre todo sale perfecto y que debo esforzarme para obtener lo que quiero, por darme ánimos para seguir, por preocuparse por mí y esforzarse para que mi vida fuera mejor. A mi asesor por aconsejarme y corregir los errores que cometí durante el desarrollo de la tesina, por tomarse el tiempo para ver cada detalle y hacer recomendaciones, sugerir opciones, etc. A mi hermano por ayudarme a no rendirme, por asumir su rol de hermano mayor y tratar de guiar, por preocuparse por mí y ayudarme siempre que lo he necesitado. A los profesores que he tenido a lo largo de mis estudios y que me aportaron un poco de su conocimiento para enriquecer el mío. A todos mis compañeros que me ayudaron a hacer más amenas las clases. 6 ÍNDICE TEMÁTICO Índice de imágenes. 9 Resumen. ….. .11 Abstract. …. .11 Introducción. 11 Capítulo I. .. ... …12 1. Antecedentes. .. 13 1.1. Localización. .. ….. 13 1.2. Objetivos de la institución. …………….. 13 1.3. Visión. .14 1.4.
    [Show full text]
  • Student Authored Textbook on Software Architectures
    Software Architectures: Case Studies Authors: Students in Software Architectures course Computer Science and Computer Engineering Department University of Arkansas May 2014 Table of Contents Chapter 1 - HTML5 Chapter 2 – XML, XML Schema, XSLT, and XPath Chapter 3 – Design Patterns: Model-View-Controller Chapter 4 – Push Notification Services: Google and Apple Chapter 5 - Understanding Access Control and Digital Rights Management Chapter 6 – Service-Oriented Architectures, Enterprise Service Bus, Oracle and TIBCO Chapter 7 – Cloud Computing Architecture Chapter 8 – Architecture of SAP and Oracle Chapter 9 – Spatial and Temporal DBMS Extensions Chapter 10 – Multidimensional Databases Chapter 11 – Map-Reduce, Hadoop, HDFS, Hbase, MongoDB, Apache HIVE, and Related Chapter 12 –Business Rules and DROOLS Chapter 13 – Complex Event Processing Chapter 14 – User Modeling Chapter 15 – The Semantic Web Chapter 16 – Linked Data, Ontologies, and DBpedia Chapter 17 – Radio Frequency Identification (RFID) Chapter 18 – Location Aware Applications Chapter 19 – The Architecture of Virtual Worlds Chapter 20 – Ethics of Big Data Chapter 21 – How Hardware Has Altered Software Architecture SOFTWARE ARCHITECTURES Chapter 1 – HTML5 Anh Au Summary In this chapter, we cover HTML5 and the specifications of HTML5. HTML takes a major part in defining the Web platform. We will cover high level concepts, the history of HTML, and famous HTML implementations. This chapter also covers how this system fits into a larger application architecture. Lastly, we will go over the high level architecture of HTML5 and cover HTML5 structures and technologies. Introduction High level concepts – what is the basic functionality of this system HyperText Markup Language (HTML) is the markup language used by to create, interpret, and annotate hypertext documents on any platform.
    [Show full text]
  • Appendix a the Ten Commandments for Websites
    Appendix A The Ten Commandments for Websites Welcome to the appendixes! At this stage in your learning, you should have all the basic skills you require to build a high-quality website with insightful consideration given to aspects such as accessibility, search engine optimization, usability, and all the other concepts that web designers and developers think about on a daily basis. Hopefully with all the different elements covered in this book, you now have a solid understanding as to what goes into building a website (much more than code!). The main thing you should take from this book is that you don’t need to be an expert at everything but ensuring that you take the time to notice what’s out there and deciding what will best help your site are among the most important elements of the process. As you leave this book and go on to updating your website over time and perhaps learning new skills, always remember to be brave, take risks (through trial and error), and never feel that things are getting too hard. If you choose to learn skills that were only briefly mentioned in this book, like scripting, or to get involved in using content management systems and web software, go at a pace that you feel comfortable with. With that in mind, let’s go over the 10 most important messages I would personally recommend. After that, I’ll give you some useful resources like important websites for people learning to create for the Internet and handy software. Advice is something many professional designers and developers give out in spades after learning some harsh lessons from what their own bitter experiences.
    [Show full text]
  • Lev Horodyskyj Curriculum Vitae | [email protected] | +1 814-205-3836 Updated May 2021
    Lev Horodyskyj Curriculum Vitae http://www.horodyskyj.net | [email protected] | +1 814-205-3836 updated May 2021 Education 2003 - 2009 PhD, Geosciences and Astrobiology, Geosciences, Pennsylvania State University Dissertation (link): "Soil Formation and Terrestrial Biosignatures in the Middle Cambrian" Advisors: Drs. Lee Kump and Tim White 1999 - 2003 BA, Earth and Planetary Sciences, Earth & Planetary Sciences, Johns Hopkins University Thesis: "Heterogeneous Chemistry and Titan's Aerosols" Advisor: Dr. Darrell Strobel Professional Experience 2020 - Now Visiting Assistant Professor, Dept. of Chem. and Phys. Sciences, Univ. of the Virgin Islands ● Redeveloping online physics labs, teaching ● Developing public outreach resources and connections (Etelman Observatory, Geneva Lake Astrophysics and STEAM) ● Liason for Engineering 4 Us All (E4USA) program 2019 - Now Founder, Science Voices ● Building Agavi adaptive learning platform for digital teaching in the developing world ● Co-developing Greenworks program to train students in community environmental work ● Running a professional development program for faculty in developing nations 2015 - 2018 Instructional Designer Sr., Center for Education Through eXploration, Arizona State Univ. ● Led development and research of Habitable Worlds online science lab course ● Co-developed Earth/political science Build a Nation course, hybrid and online versions ● Developed collaborations for low-bandwidth digital science education projects ● Developed grants and collaborations for place-based online
    [Show full text]
  • PHP: Zend for I5/OS
    Front cover PHP: Zend for i5/OS Learn how to install and administer Discover valuable development tips and advice Security, globalization, Zend Platform for i5/OS, and more! Gary Mullen-Schultz Melissa Anderson Vlatko Kosturjak ibm.com/redbooks International Technical Support Organization PHP: Zend for i5/OS January 2007 SG24-7327-00 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. First Edition (January 2007) This edition applies to Version 1.0, Release 5.0, Modification 0.0 of Zend Core for i5/OS, Version 2.0, Release 1.0, Modification 2.0 of Zend Platform for i5/OS, and Version 5.0, Release 2.0, Modification 0.0 of Zend Studio for i5/OS. © Copyright International Business Machines Corporation 2007. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix The team that wrote this book . ix Become a published author . .x Comments welcome. .x Chapter 1. Welcome to PHP on i5/OS! . 1 1.1 Welcome! . 2 1.1.1 IBM and Zend Core. 2 1.1.2 Zend Core for IBM . 2 1.2 Previous support of PHP on i5/OS . 3 1.3 Current support of PHP on i5/OS . 3 1.3.1 Zend Core for i5/OS . 3 1.3.2 Zend Studio for i5/OS . 4 1.3.3 Zend Platform for i5/OS . 4 1.4 How i5 implementation differs from Zend Core.
    [Show full text]
  • Configuring Laravel
    www.allitebooks.com Learning Laravel 4 Application Development Develop real-world web applications in Laravel 4 using its refined and expressive syntax Hardik Dangar BIRMINGHAM - MUMBAI www.allitebooks.com Learning Laravel 4 Application Development Copyright © 2013 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: December 2013 Production Reference: 1171213 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-78328-057-5 www.packtpub.com Cover Image by Aniket Sawant ([email protected]) www.allitebooks.com Credits Author Copy Editors Hardik Dangar Roshni Banerjee Brandt D'Mello Reviewers Janbal Dharmaraj
    [Show full text]
  • Chapter 3 – Design Patterns: Model-View- Controller
    SOFTWARE ARCHITECTURES Chapter 3 – Design Patterns: Model-View- Controller Martin Mugisha Brief History Smalltalk programmers developed the concept of Model-View-Controllers, like most other software engineering concepts. These programmers were gathered at the Learning Research Group (LRG) of Xerox PARC based in Palo Alto, California. This group included Alan Kay, Dan Ingalls and Red Kaehler among others. C language which was developed at Bell Labs was already out there and thus they were a few design standards in place[ 1] . The arrival of Smalltalk would however change all these standards and set the future tone for programming. This language is where the concept of Model-View- Controller first emerged. However, Ted Kaehler is the one most credited for this design pattern. He had a paper in 1978 titled ‘A note on DynaBook requirements’. The first name however for it was not MVC but ‘Thing-Model-View-Set’. The aim of the MVC pattern was to mediate the way the user could interact with the software[ 1] . This pattern has been greatly accredited with the later development of modern Graphical User Interfaces(GUI). Without Kaehler, and his MVC, we would have still been using terminal to input our commands. Introduction Model-View-Controller is an architectural pattern that is used for implementing user interfaces. Software is divided into three inter connected parts. These are the Model, View, and Controller. These inter connection is aimed to separate internal representation of information from the way it is presented to accepted users[ 2] . fig 1 SOFTWARE ARCHITECTURES As shown in fig 1, the MVC has three components that interact to show us our unique information.
    [Show full text]