
Curso de Sistemas de Informa¸c~ao Universidade Estadual de Mato Grosso do Sul Desenvolvimento Web com Framework Phalcon Marcos Vinicius O. Silveira Prof. Dr. Ricardo Lu´ıs Lachi(Orientador) Prof. Esp. J´onison Almeida dos Santos (Co-orientador) Dourados -MS Novembro de 2015 ii Curso de Sistemas de Informa¸c~ao Universidade Estadual de Mato Grosso do Sul Desenvolvimento Web com Framework Phalcon Marcos Vinicius O. Silveira Novembro de 2015 Banca Examinadora: Prof. Esp. J´onison Almeida dos Santos (Co-orientador) Area´ de Computa¸c~ao - UEMS Prof. Msc. Diogo Fernando Trevisan Area´ de Computa¸c~ao - UEMS Prof. Msc. J´essica Bassani Area´ de Computa¸c~ao - UEMS iii iv Desenvolvimento Web com Framework Phalcon Marcos Vinicius O. Silveira Este exemplar corresponde `a reda¸c~ao final da monografia da disciplina Projeto Final de Curso II devidamente corrigida e defendida por Marcos Vinicius O. Silveira e aprovada pela Banca Examinadora, como parte dos requisi- tos para a obten¸c~aodo t´ıtulo de Bacharel em Sistemas de Informa¸c~ao. Dourados, 24 de novembro de 2015. Prof. Dr. Ricardo Lu´ıs Lachi (Orientador) Prof. Esp. J´onison Almeida dos Santos (Co-orientador) v vi Resumo A linguagem PHP se tornou popular por ser de f´acil aprendizado e com o tempo de desenvolvimento relativamente menor em rela¸c~aoa outras linguagens webs. Por´emessas caracter´ısticas permitem que programadores pouco experientes criem programas vulner´aveis a ataques e com p´essima manutenibilidade. A utiliza¸c~ao de frameworks auxilia no desenvol- vimento e ajuda a evitar estes problemas atrav´esdos padr~oesde projetos. Neste aspecto, o uso do Phalcon ´ede grande valia, pois resolve, al´emdo exposto, outro problema comum: a velocidade. Por ser desenvolvido utilizando a linguagem C e disponibilizado como uma extens~aopara PHP possui uma velocidade superior a outros frameworks gerando softwares com baixo custo, modularizados e r´apidos sem necessidade de modifica¸c~oes nas configura¸c~oes de servidor ou utiliza¸c~aode hardwares robustos. Neste trabalho ´eapresentado as caracteristicas do framework phalcon, a utiliza¸c~aodo padr~ao de projetos MVC, e utilizando estas tecnologias efetuado o desenvolvimento de um SGC (Sistema de Gerenciamento de Conte´udo) nomeado Pluton. Palavras-chave: PHP, Framework, Phalcon, web, padr~oes de projetos, MVC, Pluton. vii viii Abstract The PHP language has become popular because of its easy learning and with a time of development relatively short in relation to other languages. However, these features allows novice programmers to build programs that are vulnerable to attacks and with a bad main- tainability. The use of frameworks in addition to assisting in the development also helps prevent these problems through some standards that are required in the development. In this respect the use of phalcon is of great value, because solves addition to the above, another common problem: the speed. by be developed using the C language and made available as an extension for PHP has it a superior speed among other frameworks generating software with low cost, modularized and fast without the need of modifications in the server settings or the use of robust hardware. This paper presents the characteristics of phalcon framework, the use of Design Partn- ness MVC projects, and using these technologies made the development of a CMS (Content Management System) named Pluton. Key-words: PHP, Framework, Phalcon, web, design pattners, MVC, Pluton. ix x Agradecimentos Agrade¸co primeiramente a minha fam´ılia pelo apoio e compreens~ao destes longos anos acad^emicos. A minha m~ae Gedin´eia por sempre me apoiar e ter paci^encia com esse ser incompre- ens´ıvel que ela gerou e ama sem julgar. Aos Amigos que fiz durante o curso sem os quais n~ao conseguiria chegar at´eaqui, meus exemplos e motivo de sempre querer melhorar, Evandro, Guilherme e Valter. Tamb´em gostaria de agradecer aos amigos que aguentaram aqueles momentos de insanidade e reclama¸c~aodurante esta fase complicada e nunca deixaram de me incentivar e motivar, Elton Servilha, Fabiano Nascimento Santos, Evaldo Fernando dos Santos, Eduardo Menezes e a todos os amigos que de alguma forma influenciaram para a forma¸c~ao da pessoa que sou hoje. Aos meus Orientadores J´onison Almeida dos Santos e Ricardo Lu´ız Lachi por seus aux´ılios, concelhos e paci^encia durante o desenvolvimento deste projeto. A todos os professores do curso, que transmitiram e transmitem da melhor forma poss´ıvel seus conhecimentos para n´os acad^emicos e dedicam suas vidas a nos ensinar. Gostaria ainda de registrar aqui meu agradecimento especial uma pessoa que apesar de n~ao fazer mais parte da minha vida, sem ela este projeto n~ao teria se realizado. A voc^e que talvez nunca leia isso aqui, meu mais sincero muito obrigado. xi xii Sum´ario Resumo vii Abstract ix Agradecimentos xi 1 Introdu¸c~ao 1 1.1 Objetivo Geral . 1 1.1.1 Objetivos Espec´ıficos . 2 1.2 Motiva¸c~ao..................................... 2 1.3 Metodologia.................................... 2 1.4 Organiza¸c~ao do Texto . 3 2 Ferramentas e Linguagens 5 2.1 Orienta¸c~aoa Objetos . 5 2.2 Padr~aode Projeto MVC (Model, View e Controller).............. 6 2.2.1 Models ................................... 7 2.2.2 Views ................................... 7 2.2.3 Controllers ................................ 8 2.3 Desenvolvimento web ............................... 8 2.3.1 HTML . 8 2.3.2 Client-side script ............................. 9 2.3.3 Server-side scripts ............................ 10 3 Framework Phalcon 13 3.1 Classes e m´etodos . 16 3.1.1 PhalconnDinFactoryDefault ....................... 16 3.1.2 PhalconnMvcnRouter ........................... 17 3.1.3 PhalconnMvcnController ........................ 18 3.1.4 PhalconnMvcnModel ........................... 20 3.1.5 PhalconnMvcnView ............................ 22 4 Sistema de gerenciamento de conte´udo(SGC) 25 xiii 5 Pluton 27 5.1 Descri¸c~aodos Requisitos . 29 5.1.1 Requisitos Funcionais . 29 5.1.2 Requisitos N~ao Funcionais . 29 5.2 Utilizando o sistema . 30 5.2.1 Primeiro Acesso . 30 5.3 Blog ........................................ 49 5.3.1 Postagens . 51 6 Conclus~ao 53 A Instala¸c~ao da Aplica¸c~ao 57 B Configurando a Google API 63 B.1 Google Console .................................. 63 B.2 Google Analytics ................................. 66 B.3 Google Adsense . 69 C Twitter API 73 D Diagramas 75 D.1 Casos de Uso . 75 D.2 Diagrama de Classe . 76 D.3 Diagrama de banco de dados . 78 xiv Lista de Siglas HTTP Hypertext Transfer Protocol MVC Model, View e Controller OO Orienta¸c~ao a Objetos PHP Personal Home Page: Hipertext Preprocessor SGC Sistema de Gerenciamento de Conte´udos SGBD Sistema de Gerenciamento de Banco de Dados SQL Structured Query Language YAF Yet Another Framework xv xvi Lista de Figuras 2.1 ModeloMVC.................................... 6 3.1 Teste velocidade frameworks - Requisi¸c~oes por segundo. 15 3.2 Teste velocidade frameworks - Tempo de execu¸c~ao para cada requisi¸c~ao . 15 3.3 Exemplo de renderiza¸c~ao de view . 24 5.1 P´agina Inicial da Instala¸c~ao do Aplicativo. 31 5.2 Diagrama Classe SetupController . 31 5.3 Formul´ario de cadastro do banco de dados. 32 5.4 Tela Final de Instala¸c~aoda aplica¸c~ao. 33 5.5 TeladeLogin.................................... 34 5.6 Diagrama classe LoginController. ........................ 34 5.7 Dashboard ..................................... 35 5.8 Diagrama Classe DashboardController ...................... 35 5.9 Diagrama Classe SettingsController ....................... 36 5.10 Configura¸c~oes - Aba Prefer^encias . 37 5.11 Editar apar^encia do blog . 37 5.12 Configura¸c~oes - Aba Google Api ......................... 38 5.13 Configura¸c~oes - Aba Twitter Api ........................ 39 5.14 Configura¸c~oes - Aba Facebook .......................... 39 5.15 Diagrama Classe UsersController ........................ 40 5.16 Formul´ario - Cadastro Novo Usu´ario . 40 5.17 Lista de usu´arioscadastrados .......................... 41 5.18 Formul´ario de edi¸c~aode usu´ario . 41 5.19 Diagrama classe PostController ......................... 42 5.20 Formul´ario Nova Postagem . 43 5.21 Tela Estat´ısticas . 44 5.22 Diagrama Classe StatisticsController . 44 5.23 Diagrama Classe UpdateController . 45 5.24 Tela Atualiza¸c~oes - Sistema Atualizado . 45 5.25 Tela Atualiza¸c~oes - Nova vers~ao . 46 5.26 Tela Formul´ario Plugins ............................. 47 5.27 Lista Plugins ................................... 48 xvii 5.28 Backend - IndexController . 49 5.29 Blog - P´agina de informa¸c~oes sobre o blog . 50 5.30 Blog -P´aginadeContato ............................ 50 5.31 Pr´evia da postagem . 51 5.32 Postagem Completa . 52 A.1 Configurando senha MySQL ........................... 57 A.2 Repetir Senha MySQL .............................. 58 A.3 Escolha do servidor phpmyadmin . 58 A.4 Base de Dados padr~ao phpmyadmin ....................... 58 A.5 3.......................................... 59 A.6 P´agina Apache .................................. 59 A.7 Tela de login - phpmyadmin ........................... 60 A.8 Informa¸c~oes sobre a instala¸c~ao do PHP ..................... 61 A.9 P´agina Inicial da Instala¸c~aodo Aplicativo. 61 B.1 P´agina Inicial Google Console........................... 63 B.2 Google Console - Lista de APIs ......................... 64 B.3 Menu Google Console ............................... 64 B.4 Gerar Nova chave OAuth 2.0 .......................... 65 B.5 P´agina Inicial Google Analytics.......................... 66 B.6 Nova conta - Google Analytics..........................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages96 Page
-
File Size-