Desenvolvimento De Aplicações Web Robustas, Em Contexto Empresarial, De O Desenvolvimento Web, De Sites Dinâmicos, Em Forma Simplificada
Total Page:16
File Type:pdf, Size:1020Kb
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 • Quais os componentes necessários Cloud Computing Aplicativo • Como escolher uma plataforma Linguagem HTML / CSS / Javascript / • Linguagem PHP Flash • Componentes Definição de Framework Configuração (email, conexão BD) / Ambientes / • Debug / Formulários / Autorização / Acesso a Banco Framework Symfony de Dados / Tradução • Exemplo da utilização do Symfony 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 Contexto Empresarial Plataforma Exemplos: Intranets, Extranets, Comércio eletrônico em Geral SO Windows, Linux, Android, iOS, OS X, OS X Server Requisitos: Performance, Escalabilidade, Segurança, Web Server Apache, IIS Facilidade de Manutenção (mudanças constantes), Banco de Dados Oracle, Sql Server, DB2, MySql, Portabilidade, Uniformidade PostgreSql Browser Chrome, IE, Firefox, Safari www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 2 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Plataforma Plataforma http://php.net/ (PHP Group) http://www.oracle.com/technetwork/java/javaee/jsp/index.html JavaServer Pages (JSP) technology provides a PHP is a popular general-purpose scripting language that is especially suited to web simplified, fast way to create dynamic web development. Fast, flexible and pragmatic, content. JSP technology enables rapid PHP powers everything from your blog to the development of web-based applications that most popular websites in the world. are server- and platform-independent. 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 Plataforma Como escolher a Plataforma http://www.asp.net/get-started • Conhecer as características particulares da aplicação ASP.NET is a free web framework for building • Disponibilidade de profissionais great Web sites and Web applications using • Ambiente (SO, BD, aplicativos existentes) do Cliente HTML, CSS and JavaScript. You can also create ou Clientes Web APIs, mobile sites, use real-time • Proprietário ou Open Source technologies like Web Sockets and more! • Custo www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 3 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Uso da Linguagem PHP Linguagens populares Google.com C, C++, Go, Java, Python Facebook.com Hack, PHP, C++, Java, Python, Erlang,D, Xhp YouTube.com C/C++, Python, Java Yahoo JavaScript, PHP PHP is used by 82.0% of all the websites whose Live.com ASP.NET server-side programming language we know. MSN.com ASP.NET Wikipedia.org PHP http://w3techs.com/technologies/overview/programming_language/all , acesso em 12/10/2014 Blogger Python http://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites , acesso em 12/10/2014 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 Uso da Linguagem PHP Linguagens populares Bing ASP.NET Twitter.com C++, Java, Scala, Ruby on Rails Wordpress.co m PHP Amazon.com Java, C++, Perl eBay.com Java, JavaScript Linkedin.com Java, JavaScript, Scala Stack Overflow C# (ASP.NET MVC) http://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites , acesso em 12/10/2014 www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 4 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Uso do PHP no Facebook Porque usar um Framework? • Não é absolutamente necessário, mas... Projetos open-source nos quais o Facebook está envolvido, incluindo PHP (também, declaração do • Desenvolver melhor e mais rápido Facebook sobre uso no início de suas operações): • Padronização para equipe • Design Patterns: Exemplo: MVC https://code.facebook.com/projects/ 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 Significado de Framework Frameworks Para PHP • http://www.merriam-webster.com/dictionary/framework : the basic structure of something : a set of ideas or facts that provide support for something AppFlower Fusebox SilverStripe(Sapphir • http://pt.wikipedia.org/wiki/Framework : Framework é um conjunto de CakePHP Joomla e) classes que colaboram para realizar uma responsabilidade para um domínio ClanCatsFramework Kajona Solodev CMS de um subsistema da aplicação. CodeIgniter Laravel Symfony • Biblioteca de funções x Framework Drupal Nette Framework Yii • Existem para PHP, Java, Ruby, Etc. Fat-Free Framework NovaFramework Zend Framework FuelPHP PRADO Zikula Qcodo www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 5 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Como escolher um Framework Razões para Escolher o Symfony • Lançado em 2005 • Popularidade • Reconhecido internacionalmente • Flexível • Suporte • Expansível • Técnica – melhores práticas • Estável • • Uso de melhores práticas Segurança • Integração com outros projetos Open Source (exemplo: Doctrine e Propel) • Documentação • Documentação extensa • Licença de uso • Uso completo ou apenas dos componentes • Testado!!!! 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 Framework Symfony Projetos e Empresas usando Symfony http://symfony.com/what-is-symfony • Drupal: CMS • phpBB: Forum Symfony is a set of PHP Components, a Web • Laravel, Silex: Framework Application framework, a Philosophy, and a • Doctrine, Propel: ORM Community — all working together in harmony. • Magento: eCommerce • Sites: TED, BBC, Yahoo www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 6 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Exemplo da documentação Certificação https://www6.pearsonvue.com/testtaker/registration/SelectTestCenterProximity/SENSIOLABS/294525 • Documentação extensiva (slide Como aprender) • Aprenda além do uso do Framework, entenda os fundamentos e melhores práticas http://www.lanuniversity.com.br/site/centro-de- • Exemplo: O que é e como funciona o protocolo HTTPD? exames http://www.impacta.com.br/a-impacta/centro- de-exames.php 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 Sensiolabs Técnica - Ambientes • Created in 1998, Sensio was born when Grégory Pascal and Fabien Potencier met, with the ambition of bringing together marketing and technology whilst still providing simple and pragmatic solutions. • The French digital agency which showed the strongest recorded growth in the last Configurações distintas ao instalar: three years with a turnover of €6.5m in 2009, €8.5m in 2010 and €11m in 2011. • • 80 employees and a network of experts and partners in more than 30 countries Prod • 150 active clients in 2010 • Dev • A success which can be exported, with international offices in Germany and the United States. • Test http://sensiolabs.com/en/a_propos/nous_aimons_le_concret.html www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com 7 21/10/2014 Desenvolvimento de aplicações Web Desenvolvimento de aplicações Web Técnica - Rotas Técnica - Template Twig Uso Opcional www.anhanguera.com [email protected] ou @gmail.com www.anhanguera.com [email protected] ou @gmail.com Desenvolvimento de