Framework OO para PHP 5 Palestrante: Lucas Augusto Carvalho lucasaugustomcc@gmail.com
|
|
- João Gabriel Cesário Aquino
- 8 Há anos
- Visualizações:
Transcrição
1 Framework OO para PHP 5 Palestrante: Lucas Augusto Carvalho lucasaugustomcc@gmail.com Flisol Aracaju/SE
2 Sobre mim 2 Formando em Ciência da Computação na Universidade Federal de Sergipe; Desenvolvedor Web desde 2000; Programador PHP desde 2003; Utiliza o symfony desde 2008; Criador do site Está desenvolvendo a nova versão do site utilizando o framework symfony; Realiza iniciação científica e TCC na área de usabilidade para TV Digital.
3 Roteiro 3 Introdução e conceito de framework; Características e estrutura do Symfony; MVC e ORM; CLI (command line interface); Links, roteamento e caching; Criação e validação de formulários; Scaffolding; Plugins e integração com Ajax; Depuração, Testes e Implantação; Comunidade Symfony;
4 Indrodução ao Symfony 4 Fabien Potencier - Sensio Labs empresa francesa; Versão 1.2; Licença MIT; Escrito em PHP5 (orientado a objetos); Utiliza padrão MVC (Model/View/Controller); Possui framework de teste unitário e funcional; Suporte para ambiente e implantação; Segurança (proteção XSS por padrão); Extensível (sistema de plugins).
5 Conceito de Framework 5 É uma base de onde se pode desenvolver algo maior ou mais específico. É uma coleção de códigos-fonte, classes, funções, técnicas e metodologias integradas à um ambiente centralizador que facilitam o desenvolvimento e manutenção de aplicações.
6 Conceito de Framework 6 Qual a vantagem? $ Passado o período inicial de familiarização com a ferramenta, as vantagens começam a aparecer; Como todos os desenvolvedores de uma mesma equipe usam um determinado framework, programam usando as mesmas convenções, classes e bibliotecas, a manutenção de um programa fica muito mais ágil (produtividade); Encoraja o bom projeto e permite que se utilize facilmente boas práticas.
7 Conceito de Framework 7 Qual a vantagem? Abstrai-se as tarefas mais repetitivas, permitindo a concentração de esforços na regras do negócio; KISS - Keep It Simple Stupid (simplifique); DRY Don t Repeat Yourself (não se repita) Deixe de repetir códigos comuns em módulos de um mesmo sistema CRUD; Facilidade na geração de testes automatizados; Geração de documentação;
8 Conceito de Framework 8 Uso de tecnologias embutidas: MVC ActiveRecord: Abstrai o programador de conhecer a fundo uma linguagem de manipulação de dados, como a SQL, além de manter toda a aplicação desenvolvida no paradigma orientado a objetos; AJAX; Internacionalização;
9 Desenvolvimento mais rápido 9 Cada linha tem um custo Para escrever Para testar Para manter Escrever menos Arquitetura: controlador, ORM, Configuração Autoloading Generators Helpers Menos código menos complexidade menos erros maior produtividade mais tempo Mais tempo para as regras de negócio...
10 Principais benefícios do Symfony 10 Documentação Configurabilidade Proteção XSS Ferramentas de Depuração Testes funcionais Extensibilidade: Plugins Padrões PHP 5 MVC Routeamento Cache Admin Generator ORM : Propel ou Doctrine i18n / l10n Versão 1.0 mantida por longo tempo
11 Instalação do Symfony 11 PEAR (PHP Extension and Application Repository) $ pear channel-discover pear.symfony-project.com $ pear install symfony/symfony Apache com mod_rewrite PHP5.2.x PEAR package Subversion Package Sandbox SVN (controle de versão) $ svn propedit svn:externals symfony Sandbox (pacote pronto) $ curl -O $ tar zxpf sf_sandbox tgz
12 Dependências 12 Dependências mínimas, tudo incluído Creole Abstração de banco de dados Suporte a MySQL, PostgreSQL, SQLite, MSSQL... Propel / Doctrine Object Relationship Mapping (ORM) Pake Biblioteca para tarefas de comando de linha. Lime Biblioteca para testes de unidade e funcionais.
13 Dependências 13 Dependências mínimas, tudo incluído Mais... Prototype Script.aculo.us TinyMCE(WYSIWYG) DynArch.com Rich Calendar
14 Command line interface (CLI) 14 $ symfony generate:module frontend default >> dir+ ~/myproject/apps/frontend/modules/default/actions >> file+ ~/myproject/apps/frontend/modules/default/actions/actions.class.php >> dir+ ~/myproject/apps/frontend/modules/default/templates >> file+ ~/myproject/apps/frontend/modules/default/templates/indexsuccess.php >> file+ ~/myproject/test/functional/frontend/defaultactionstest.php >> tokens ~/myproject/test/functional/frontend/defaultactionstest.php >> tokens ~/myproject/apps/frontend/modules/default/actions/actions.class.php >> tokens ~/myproject/apps/frontend/modules/default/templates/indexsuccess.php Cria automaticamente o básico do módulo; Auxilia na manutenção; Execução dos testes; Fácil de checar se tudo ocorreu certo;
15 Arquitetura MVC 15 MVC é um acrônimo para Model, View e Controller (Modelo, Visão e Controlador). A idéia básica é separar todo o desenvolvimento de uma aplicação em 3 partes ou camadas: Model Gerencia o comportamento dos dados da aplicação. View Gerencia a saída gráfica e textual da parte da aplicação visível ao usuário final. Controller Interpreta as entradas de mouse e teclado do usuário, comandando a Visão e o Modelo para se alterarem de forma apropriada.
16 Arquitetura MVC 16 Todas as requisições feitas pelo usuário são enviadas ao Controller. Este manipula os dados usando o Model e invoca a View correta, de acordo com a ação executada ou com os resultados vindos do Model. A grande vantagem de se utilizar a arquitetura MVC é a separação entre lógica (regras do negócio), apresentação e dados, favorecendo muito o trabalho em equipe. Mudanças na apresentação, por exemplo, teriam pouco ou nenhum impacto nas demais camadas da aplicação... ao mesmo tempo que tudo continua absolutamente integrado.
17 Arquitetura MVC no Symfony 17 Model View Controller
18 Arquitetura MVC no Symfony 18 Modelo (Model) Acesso e manipulação dos dados; Baseado no Propel (por padrão); Construtores para paginação, e ordenação filtragem; Modelo pode ser configurado usando XML ou YAML; Symfony gera seu modelo para você! #> symfony propel:build-model Symfony provê classes prontas para você estender seu modelo;
19 Modelo (Model) 19 Conexão com a base de dados # config/databases.yml prod: propel: param: password: PAssWD all: propel: class: param: dsn: sfpropeldatabase Definição do esquema # config/schema.yml post: _attributes: { phpname: Post } mysql://root:@localhost/sfdemo Suporte a ambientes Abstração do SQL title: {type: varchar, size: 255} content: {type: longvarchar} is_published: {type: boolean} author_id: {type: integer, foreigntable: author, foreignreference: id} created_at: ~
20 Object Relational Mapper (ORM) 20 YAML (usado no RoR) Propel permite independência do banco de dados; Campos de Id, created_at, & chave estrangeira são gerados automaticamente; Tabelas de dados = classes & linhas da tabela = objetos Gerados automaticamente baseados no esquema.
21 Object Relational Mapper (ORM) 21 // lib/model/author.php class Author extends BaseAuthor { function getfullname() { return $this->getfirstname().' '.$this->getlastname(); } } $author = new Author(); $author->setfirstname('lucas Augusto'); $author->setlastname('carvalho'); $author->save(); $post = new Post(); $post->setauthor($author); $post->setpublishedon('12:00 tomorrow'); $post->ispublished(true); $post->save(); $posts = PostPeer::doSelect(new Criteria());
22 Modelo (Model) 22 Dados de teste # data/fixtures/data.yml Author: lucas: first_name: Lucas 1) Cria as classes do modelo. last_name: Carvalho 2) Converte o esquema para SQL. 3) Cria as tabelas. Post: 4) Carrega os dados de teste. first_post: author_id: lucas title: Xtech 2007 $ symfony propel:build-all-load frontend
23 Arquitetura MVC no symfony 23 Apresentação (View) $ Layout e configuração global Cada ação deve ter sua própria sub template; Configurações da apresentação podem ser definidas até o nível de ações. $ symfony utiliza o PHP como sua linguagem de template Há opção de uso de um plugin do Smarty. $ Helpers Partials e Slots Fragmentos de template sem lógica de negócio. Componentes Fragmentos de template com lógica de negócio.
24 Arquitetura MVC no symfony 24 Controlador (Controller) $ Chama a lógica de negócio; Cada módulo tem uma classe; controladora com um número de métodos de ação. Conversão automática do URL em um módulo/ação apropriado. Métodos de pré e pós execução.
25 Workflow do symfony 25 Cliente Controlador (Controller) Apresentação (View) Modelo (Model) Servidor
26 Organização do Código 26 Projeto v Aplicações Módulos Ações Templates
27 Configurabilidade 27 Module level # apps/frontend/modules/post/config/generator.yml generator: class: sfpropeladmingenerator param: model_class: Post list: display: [=title, author, created_at] filters: [title, author_id, published_on] max_per_page: 5 Application level # apps/frontend/config/security.yml default: is_secure: on credentials: admin Configurações Framework Projeto Aplicação Modulo
28 Exemplo de código 28 # apps/frontend/modules/blog/actions/actions.class.php class blogactions extends sfactions { function executeshow() { $id = $this->getrequestparameter('id'); $this->post = PostPeer::retrieveByPk($id); $this->forward404unless($this->post); } } shortcut MVC Model / View / Controller XSS Seguro por padrão # apps/frontend/modules/post/templates/showsuccess.php <h1 class="title"><?php echo $post->gettitle()?></h1> <h2>par <?php echo $post->getauthor()->getfullname()?></h2> <p><?php echo $post->gethtmlcontent(esc_raw)?></p>
29 Links e Roteamento 29 / homepage: param: { module: blog, action: recent } url: / <?php echo url_for('@homepage')?> / /recent homepage: param: { module: blog, action: list } url: / recent: param: { module: blog, action: recent } url: /recent /blog/1.html post: param: { module: blog, action: show } requirements: id: \d+ url: /blog/:id.html <?php echo link_to( $post->gettitle(), '@post?id=.$post->getid() )?>
30 Formulários 30 Criação $ Widgets // lib/form/contactform.class.php class ContactForm extends sfform { public function configure() { $this->setwidgets(array( 'name' => new sfwidgetforminput(), ' ' => new sfwidgetforminput(), 'message' => new sfwidgetformtextarea(), )); } }
31 Formulários 31 Validação // lib/form/contactform.class.php class ContactForm extends sfform { public function configure() {... $this->setvalidators(array( 'name' ' ' => new sfvalidatorstring(array('required' => false)), => new sfvalidator (array(), array('invalid' => 'O endereço de é inválido.')), 'subject' => new sfvalidatorchoice(array('choices' => array_keys(self::$subjects))), 'message' => new sfvalidatorstring(array('min_length' => 4), array('required' => 'O campo mensagem é obrigatório.')), ));
32 32
33 Plugins 33 Novos plugins criados toda semana (n. 535) $ ControlPanel : Gerenciamento Web de projetos utilizando o symfony; ErrorLogger : Log de todos os erros 404 e 500 no banco de dados; Guard : Autenticação e autorização; Feed2 : Criação de RSS; E mais: Captcha, calendário, OpenID, Google Analytics, Google Sitemap, auto-complete, thumbnails, SSL, Forum, PDF, CMS, WYSIWYG, WebService, etc... $symfony plugin:install
34 Caching 34 Parte ou todo o código HTML que foi enviado para um usuário devido a uma requisição pode ser reutilizado para outra requisição. O cache HTML é desabilitado por padrão. Aumenta a performance de aplicação. $ Cache para uma ação (com ou sem o layout); Cache de um partial, um componente, ou um componente slot; Cache de um fragmento de template.
35 Ajax 35 Utilização de bibliotecas Prototype Script.acol.us Ajax Helpers <div id="myzone"></div> <?php echo javascript_tag( remote_function(array( 'update' => 'myzone', 'url' => 'mymodule/myaction', )) )?>
36 Ajax 36 Ajax Helpers <div id="item_list"></div> <?php echo form_remote_tag(array( 'update' => 'item_list', 'url' => 'item/add', ))?>
37 Scaffolding 37 Com um simples comando, symfony cria um módulo completo baseado na descrição de uma dada tabela. O código gerado é mínimo e deve servir apenas como base para a fase de desenvolvimento para ter acesso à base de dados rapidamente, ou construir um protótipo. $ symfony propel:generate-crud frontend article Article
38 Admin Generator 38 List, show, edit & add 4 páginas, < 30 LOC
39 Admin Generator 39 Listagem
40 Admin Generator 40 Edição tostring() widgets Relação m2m
41 Depuração 41 Diagnóstico de problemas Checagem do tempo de execução Otimização de consultas SQL
42 42 Depuração
43 Depuração 43 Mensagens de erro
44 Testes Funcionais 44 Simulação de Navegação // test/functional/frontend/blogactionstest.php $browser = new sftestbrowser(); $browser->initialize(); TDD $browser-> Test Driven Development get('/blog/1.html')-> isstatuscode(200)-> checkresponseelement('h1.title', '/XTech 2007/'); $ symfony test:functional frontend Seletor CSS # get / ok 1 - status code is 200 not ok 2 - response selector h1 does not match regex /XTech 2007/ # Looks like you failed 1 tests of
45 Implantação 45 # config/properties.ini [production] host= user=lucas dir=/var/www/sfblog type=rsync $ symfony project:freeze $ symfony project:deploy production --go
46 Implantação 46 $ symfony test:all unit/myfunctiontest.php...ok unit/mysecondfunctiontest.php...ok unit/foo/bartest.php...not ok Failed Test Stat Total Fail List of Failed unit/foo/bartest.php Failed 1/3 test scripts, 66.66% okay. 2/53 subtests failed, 96.22% okay.
47 Comunidade symfony 47 Comunidade ativa e crescendo $ Desenvolvedores em mais de 80 países; visitantes por mês no symfony-project.com. Documentação Livre The book Askeet Tutorial Jobeet Tutorial Grupo de usuário Google Groups: symfony-pt
48 48
49 Usuários do symfony 49 Yahoo! (EUA) Yahoo! Bookmarks Delicious Flickr 20 millions users Web 2.0 / AJAX
50 Curso de symfony 50 Curso pela Softeam $ Valor: R$ 100,00 (estimativa); Data prevista para início: 18/Julho; Carga horária: 32h; Aos sábados das 8:30h às 12h; Local: Laboratório do DCOMP na UFS; Dois alunos por computador (estimativa); Assim que confirmado, será divulgado em:
51 51 Framework OO para PHP 5 Palestrante: Lucas Augusto Carvalho lucasaugustomcc@gmail.com
Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração
Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Ambiente Web É o ambiente formado
Leia maisAmbiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro
Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Ambiente Web É o ambiente
Leia maisPHP Conference Brasil
Symfony Elton Luís Minetto Agenda O que é o Symfony Conceitos básicos Requisitos Instalação Configuração Aplicação de exemplo O que é o Symfony Symfony é um framework de desenvolvimento para PHP5. Seu
Leia maisFrameworks para Desenvolvimento em PHP Elton Luís Minetto
Frameworks para Desenvolvimento em PHP Elton Luís Minetto Novatec capítulo 1 Introdução Uma das grandes vantagens do PHP é sua facilidade de aprendizado. Ao ler poucas páginas de tutoriais ou de algum
Leia maisANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.
ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.
Leia maisSISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl
SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo
Leia maisDesenvolva rapidamente utilizando o frame work CakePHP. Elton Luí s Minetto
Desenvolva rapidamente utilizando o frame work CakePHP Elton Luí s Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Demonstração Ambiente Web É o ambiente formado por algumas tecnologias: Servidor
Leia maisAplicativo web para definição do modelo lógico no projeto de banco de dados relacional
Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento
Leia maisTecnologias Web. Padrões de Projeto - Camada de Apresentação
Tecnologias Web Padrões de Projeto - Camada de Apresentação Cristiano Lehrer, M.Sc. Padrões da Camada de Apresentação (1/2) Intercepting Filter Viabiliza pré e pós processamento de requisições. Front Controller
Leia maisSumário. Parte I Introdução 21. 1 Introdução 15 1.1 O Rails é ágil... 17 1.2 Explorando o conteúdo... 18 1.3 Agradecimentos... 19
Sumário 1 Introdução 15 1.1 O Rails é ágil.......................................................... 17 1.2 Explorando o conteúdo................................................... 18 1.3 Agradecimentos........................................................
Leia maisformação em WeB developer
formação em WeB developer O Treinamento de Web Developer com duração de 40 semanas (média de 1 ano), ensinará como desenvolver sistemas web de alta performance e interatividade. Através das linguagens
Leia maisSistema Gerador de Anúncios para Compra e Venda On-line. Leandro de Oliveira ol.leandro@gmail.com
Sistema Gerador de Anúncios para Compra e Venda On-line Leandro de Oliveira ol.leandro@gmail.com Roteiro da Apresentação Motivação Conceitos e Tecnologias Objetivos do trabalho Sistema SideCart Conclusões
Leia maisO que é um framework?
O que é um framework? Um framework, ou arcabouço, em desenvolvimento de software, é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. (Wikipedia)
Leia maisSumário. Capítulo 1 Revisão de PHP... 19. Capítulo 2 Melhorando o processamento de formulários... 46
9 Sumário O Autor... 8 Introdução... 15 Quem deve ler este livro... 15 Como este livro está organizado...16 Download do código-fonte do livro... 18 Capítulo 1 Revisão de PHP... 19 Iniciando em PHP... 19
Leia maisDesenvolvimento orientado a objetos com PEAR: DB/MDB2, DB_DataObject, HTML_QuickForm e DB_DataObjectFormBuilder
Desenvolvimento orientado a objetos com PEAR: DB/MDB2, DB_DataObject, HTML_QuickForm e DB_DataObjectFormBuilder Adriano Gonçalves adriano.php4@gmail.com Agenda O PEAR e suas vantagens Abstração de banco
Leia maisZend Framework. Elton Luís Minetto
Zend Framework Elton Luís Minetto O que? Ambiente Web PHP Problemas Frameworks Padrões Zend Framework Vantagens Componentes Cases Quem? Graduado e pós-graduado em Ciência da Computação. Cursando MBA em
Leia maisASP.NET MVC em Ação. Jeffrey Palermo Ben Scheirman Jimmy Bogard. Novatec. Prefácio de Phil Haack
ASP.NET MVC em Ação Jeffrey Palermo Ben Scheirman Jimmy Bogard Prefácio de Phil Haack Novatec Sumário Prólogo...11 Prefácio...13 Agradecimentos...17 Sobre este livro...20 Sobre os autores...26 Sobre a
Leia maisCriando Aplicações PHP com. Zend e Dojo. Flávio Gomes da Silva Lisboa. Novatec
Criando Aplicações PHP com Zend e Dojo Flávio Gomes da Silva Lisboa Novatec Copyright 2013 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a
Leia maisIntrodução ao PHP. Prof. Késsia Marchi
Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext
Leia maisZendWi Presentation 19/10/2012
ZendWi Presentation 19/10/2012 Índice 1. Introdução ao Zend Framework 2 2. MVC 3. Zend Tools 4. Estrutura 5. Zend DB Model Generator 6. Back-End Developer 7. Front-End Developer 8. Links Úteis Introdução
Leia maisFRWTC800 - Desenvolvimento Web com Ruby on Rails
FRWTC800 - Desenvolvimento Web com Ruby on Rails SOBRE A FRAMEWORK A Framework (www.frwtc.com) atua diretamente com profissionais do segmento de tecnologia em busca de capacitação, atualização e certificação,
Leia maisZEND F r a m e w o r k
LOGO ZEND F r a m e w o r k Alexsander Muraro FRAMEWORK O que é? Um framework nada mais é do que uma arquitetura padrão que fornece várias ferramentas comuns a todo tipo de projeto; Utilizam os mais variados
Leia maisAJAX no GASweb. Mas e afinal, para que usamos o AJAX?
Nível - Avançado AJAX no GASweb Por: Pablo Hadler AJAX (Asynchronous Javascript and XML) foi criado com o princípio de ser uma maneira rápida e otimizada de podermos fazer requisições Web, sendo esta totalmente
Leia maisDesenvolvimento de aplicação web com framework JavaServer Faces e Hibernate
Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade
Leia maisDesenvolvendo Websites com PHP
Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.
Leia maisGERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins
GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD Acadêmico: Maicon Klug Orientadora: Joyce Martins Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento do trabalho Conclusão Extensões
Leia maisProgramação Web Prof. Wladimir
Programação Web Prof. Wladimir Linguagem de Script e PHP @wre2008 1 Sumário Introdução; PHP: Introdução. Enviando dados para o servidor HTTP; PHP: Instalação; Formato básico de um programa PHP; Manipulação
Leia maisCentro Universitário Metodista Benne1 Rio de Janeiro, Dezembro de 2009. Rafael Polo e Sabrina Arêas
Centro Universitário Metodista Benne1 Rio de Janeiro, Dezembro de 2009 Rafael Polo e Sabrina Arêas Contexto 60 s - Primeiros sistemas de informação corporativos. 70 s Desenvolvimento e comercialização
Leia maisEscrito por Sáb, 15 de Outubro de 2011 01:19 - Última atualização Seg, 26 de Março de 2012 03:32
Preço R$ 129.00 Compre aqui Curso de PHP O.O usando Adodb, aprenda a criar uma loja virtual (carrinho de compras) até a geração do boleto bancário. Usei: Mysql e Dreamweaver cs4. São 163 videoaulas, 2
Leia maisConceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)
Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior
Leia maisDefinições: quando usar cada um?
Framework ou CMS? Definições: quando usar cada um? Framework: Uma arquitetura desenvolvida com o objetivo de atingir a máxima reutilização, representada como um conjunto de classes abstratas e concretas,
Leia maisDESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES
DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.
Leia maisAdemir C. Gabardo. Novatec
Ademir C. Gabardo Novatec Novatec Editora Ltda. 2015. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem
Leia maisPHP Conference Brasil
CakePHP Elton Luís Minetto Agenda O que é o CakePHP Conceitos básicos Requisitos Instalação Configuração Aplicação de exemplo O que é o CakePHP Cake é um framework para PHP que usa padrões de desenvolvimento
Leia maisDOCUMENTAÇÃO DO FRAMEWORK - versão 2.0
DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando
Leia maisDesenvolva rapidamente utilizando o framework CakePHP Elton Luís Minetto FISL 8.0
Desenvolva rapidamente utilizando o framework CakePHP Elton Luís Minetto Agenda O que é o CakePHP Conceitos básicos Requisitos Instalação Configuração Aplicação de exemplo O que é o CakePHP Cake é um framework
Leia maisBreve introdução. Uma breve introdução. Simplicidade e Poder. Rápido Dinâmico Robusto
Breve introdução Uma breve introdução Rápido Dinâmico Robusto Simplicidade e Poder Linguagem dinâmica Arquitetura Mapeamento Objeto Relacional Convenção DRY YAGNI KISS Groovy MVC Hibernate Sobre configuração
Leia maisConsultoria sobre Joomla!
Consultoria sobre Joomla! Joomla! (pronuncia-se djumla) é um CMS (Content Management System) desenvolvido a partir do Mambo. É escrito em PHP e roda no servidor web Apache ou IIS e banco de dados MySQL.
Leia maisMini-curso de CakePHP
Mini-curso de CakePHP Apresentação Daniel Golgher - formado em Tecnologia em Processamento de Dados e bacharel em Sistema de Informação pela UNA. Pós graduado em Engenharia de Software pela UFMG. Desenvolve
Leia maisApesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:
1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que
Leia maisPHP Profissional. Alexandre Altair de Melo Mauricio G. F. Nascimento
PHP Profissional APRENDA A DESENVOLVER SISTEMAS PROFISSIONAIS ORIENTADOS A OBJETOS COM PADRÕES DE PROJETO Alexandre Altair de Melo Mauricio G. F. Nascimento Novatec Sumário Agradecimentos...13 Sobre os
Leia maisEntendendo Rails. Fabio Akita Surgeworks Brazil Rails Practice Manager www.akitaonrails.com
Entendendo Rails Fabio Akita Surgeworks Brazil Rails Practice Manager www.akitaonrails.com 37signals Criado por David Heinemeier Hansson, em 2004 Extraído do aplicativo Basecamp Feito em Ruby, em vez de
Leia maisBoas Práticas de Desenvolvimento Seguro
Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO
Leia maisProgramação Web com Webdev 19 Julio Cesar Pedroso Conteúdo
Conteúdo INTRODUÇÃO... 6 Como acessar a ajuda on line?... 6 Conhecendo o WebDev... 8 Iniciando o WebDev... 8 Ambiente de desenvolvimento... 8 O Editor... 8 A barra de menus... 10 Os botões... 10 Os painéis...
Leia mais5 O Joomla: Web Apache Banco de Dados MySQL http://www.joomla.org/ - 55 -
5 O Joomla: O Joomla (pronuncia-se djumla ) é um Sistema de Gestão de Conteúdos (Content Management System - CMS) desenvolvido a partir do CMS Mambo. É desenvolvido em PHP e pode ser executado no servidor
Leia maisABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com
Leia maisUtilizaremos a última versão estável do Joomla (Versão 2.5.4), lançada em
5 O Joomla: O Joomla (pronuncia-se djumla ) é um Sistema de gestão de conteúdos (Content Management System - CMS) desenvolvido a partir do CMS Mambo. É desenvolvido em PHP e pode ser executado no servidor
Leia maisConstruindo portais com Plone. Módulo 3 Templates
Construindo portais com Plone Módulo 3 Templates Templates l Quando o Plone vai mostrar uma página, duas perguntas precisam ser respondidas: Ø O que será mostrado? Isto é, quais conteúdos serão buscados
Leia mais5 Detalhes da Implementação
Detalhes da Implementação 101 5 Detalhes da Implementação Neste capítulo descreveremos detalhes da implementação do Explorator que foi desenvolvido usando o paradigma MVC 45 e o paradigma de CoC 46 (Convention
Leia maisTrabalho de Sistema de Informações. Instalação e configuração aplicativo Ocomon
Trabalho de Sistema de Informações Aluno: Paulo Roberto Carvalho da Silva Instalação e configuração aplicativo Ocomon O trabalho tem como objetivo o estudo de caso,a instalação, configuração e funcionamento
Leia mais4 O Workflow e a Máquina de Regras
4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu
Leia maisDesenvolvimento de um sistema de gestão acadêmica com software livre Rodrigo Bainy Fagundes
Universidade Federal de Pelotas Centro de Gereciamento de Informações e Concursos Diretoria de Desenvolvimento de Sistemas Desenvolvimento de um sistema de gestão acadêmica com software livre Rodrigo Bainy
Leia maisAMBIENTE WEB PARA GERÊNCIA DE PROCESSO DE SOFTWARE BASEADO NO SCRUM
AMBIENTE WEB PARA GERÊNCIA DE PROCESSO DE SOFTWARE BASEADO NO SCRUM Por: Jhony Alceu Pereira Orientador: Prof.: Everaldo Artur Grahl FURB Fundação Universidade Regional de Blumenau BCC Bacharelado em Ciência
Leia maisVamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.
3.5 Páginas: Ao clicar em Páginas, são exibidas todas as páginas criadas para o Blog. No nosso exemplo já existirá uma página com o Título Página de Exemplo, criada quando o WorPress foi instalado. Ao
Leia maisCurso de Aprendizado Industrial Desenvolvedor WEB
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os
Leia maisWP para bibliotecários Moreno Barros. extralibris.org bsf.org.br
WP para bibliotecários Moreno Barros extralibris.org bsf.org.br O que é o wordpress? wordpress é um software open source para gerenciamento de blogs. Como apresenta muitas facilidades e recursos, ele também
Leia maisOficina Joomla. Prof. M.Sc. Marcos Roberto de Moraes
Oficina Joomla Prof. M.Sc. Marcos Roberto de Moraes Joomla Sistema gratuito para criação de websites. Projeto de código aberto, que, como a maioria dos demais projetos, está em constante desenvolvimento;
Leia maisphpwafr - Framework para o desenvolvimento de Sistemas Web em PHP
ANEXO 7 ARQUITETURAS TECNOLÓGICAS PROCERGS Orientações para o desenvolvimento de Sites e Sistemas Web Fronteira entre Site e Sistema Web Definição de Site: um site é constituído por um conjunto de informações,
Leia maisProgramando em PHP. Conceitos Básicos
Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web
Leia maisSCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br
SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
Leia maisO que é o Virto ERP? Onde sua empresa quer chegar? Apresentação. Modelo de funcionamento
HOME O QUE É TOUR MÓDULOS POR QUE SOMOS DIFERENTES METODOLOGIA CLIENTES DÚVIDAS PREÇOS FALE CONOSCO Suporte Sou Cliente Onde sua empresa quer chegar? Sistemas de gestão precisam ajudar sua empresa a atingir
Leia maisSumário. Capítulo 1 O que é o PHP?... 19. Capítulo 2 Instalação do PHP... 23. Capítulo 3 Noções básicas de programação... 25
9 Sobre o autor... 8 Introdução... 15 Capítulo 1 O que é o PHP?... 19 Características do PHP...20 Gratuito e com código aberto...20 Embutido no HTML...20 Baseado no servidor...21 Bancos de dados...22 Portabilidade...22
Leia maisAula 03 - Projeto Java Web
Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação
Leia maisCursos de Magento. 2013 Gugliotti Consulting
Cursos de Magento F U N D A M E N T O S D E M A G E N T O C O M M E R C E C U R S O E M V Í D E O - A U L A S M Ó D U L O 2 F T O 2 Fundamentos de Magento Commerce Módulo 2 Aula 1 Configuração da plataforma
Leia maisCurso de Iniciação ao Framework PHP Yii
Curso de Iniciação ao Framework PHP Yii Igor Rafael igor at dcc.ufmg.br 12 de agosto de 2011 Conteúdo Visão Geral Configuração Fundamentos Estudo de caso Visão Geral O que é um framework? Coleção de bibliotecas
Leia maisJoomla! para iniciantes. Djonatan Buss Jerônimo Medina Madruga
Joomla! para iniciantes Djonatan Buss Jerônimo Medina Madruga Sempre teve vontade de fazer seu site? Fica na dúvida de qual tecnologia utilizar? Quer uma abordagem mais profissional do que aquele site
Leia maisConstruindo sítios profissionais com Mambo
23/09/06 Construindo sítios profissionais com Mambo Tiago Eugenio de Melo tiago@comunidadesol.org 1 Sumário Software Livre Conceitos de CMS Mambo Configuração do Mambo Novidades Referências 2 O que é software
Leia maisIntrodução ao Plone. terça-feira, 4 de agosto de 15
Introdução ao Plone Sumário O que é Gestão de Conteúdo O que é Conteúdo Principais características de um CMS O que é o Plone Tipos de conteúdo no Plone Metadados Templates Interface do portal Gestão de
Leia maisDrupal para Empresas. Descobrindo os benefícios do Drupal para o seu negócio
Sorteio de R$400 de crédito nos cursos de Drupal! http://j.mp/sorteio400reais O que veremos nessa palestra? # Apresentação # Introdução a CMS # Conhecendo o Drupal # Drupal como solução para Empresas #
Leia maisConfigure seu Linux pela Web! Instalação à partir de um.tar.gz. Autor: Carlos Eduardo Ribeiro de Melo <eduardo at unisulma.edu.br> Data: 05/10/2004
1 de 6 27/3/2007 10:03 Configure seu Linux pela Web! Autor: Carlos Eduardo Ribeiro de Melo Data: 05/10/2004 Introdução O Webmin é um software de configuração de servidores
Leia maisCriando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais
ASP.NET > WebService herman_arais@yahoo.com.br Introdução Um WebService é um componente, ou unidade lógica de aplicação, acessível através de protocolos padrões de Internet. Como componentes, esses serviços
Leia maisADIANTI FRAMEWORK PARA PHP
ADIANTI FRAMEWORK PARA PHP 5ª edição PABLO DALL'OGLIO Copyright 2012 de Pablo Dall'Oglio. Todos os direitos reservados e protegidos pela Lei 9.160 de 19/02/1998. É proibida a reprodução desta obra, mesmo
Leia maisSERVIDOR WEB - APACHE SERVIDOR WEB - APACHE SERVIDOR WEB - APACHE 27/02/2012
O servidor Apache é o mais bem sucedido servidor web livre. Foi criado em 1995 por Rob McCool, então funcionário do NCSA (National Center for Supercomputing Applications). Em maio de 2010, o Apache serviu
Leia maisPRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)
RELATÓRIO DE ENTREGA DO PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) PARA A ELABORAÇÃO DOS PLANOS MUNICIPAIS DE GESTÃO INTEGRADA DE RESÍDUOS SÓLIDOS PMGIRS PARA OS MUNICÍPIOS DE NOVO HORIZONTE, JUPIÁ, GALVÃO,
Leia maisGuia de instalação para ambiente de Desenvolvimento LINUX
Guia de instalação para ambiente de Desenvolvimento LINUX Conteúdo deste manual Introdução O guia de instalação... 3 Capítulo 1 Instalando o servidor Web Apache... 4 Teste de instalação do Apache... 9
Leia maisConceitos de extensões Joomla!
capítulo 1 Conceitos de extensões Joomla! Entendendo o que é extensão Extensão pode ser entendida como uma pequena aplicação desenvolvida com regras de construção estabelecidas pelo ambiente Joomla!. É
Leia maisDemoiselle Tutorial Módulo 1 Arquitetura
Demoiselle Tutorial Módulo 1 Arquitetura Vanderson Botelho da Silva (SERPRO/SUPST/STCTA) Emerson Sachio Saito (SERPRO/CETEC/CTCTA) Flávio Gomes da Silva Lisboa (SERPRO/CETEC/CTCTA) Serge Normando Rehem
Leia maisLazarus pelo SVN Linux/Windows
Lazarus pelo SVN Linux/Windows Sei que não faltam artigos sobre como obter e compilar o Lazarus e o FPC pelo SVN, mas sei também que nunca é de mais divulgar um pouco mais e talvez escrever algo diferente.
Leia maisFaculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014.
Faculdade de Tecnologia SENAC Goiás Disciplina: Gerenciamento de Rede de Computadores : Goiânia, 16 de novembro de 2014. Faculdade de Tecnologia SENAC Goiás Professor: Marissol Martins Alunos: Edy Laus,
Leia maisO que é a BuenitStore
O que é a A é a plataforma desenvolvida pela Buenit para projetos de comércio eletrônico, baseada no modelo SaaS, onde é possível criar lojas virtuais de forma rápida, prática e funcional, com foco total
Leia maisComeçando com Ruby on Rails @gibsongabriel
Começando com Ruby on Rails @gibsongabriel Yukiriho 'Matz' Matsumoto http://ruby-lang.org/pt/ Ruby é uma linguagem de programação interpretada, com tipagem forte e dinâmica, que tem como foco a simplicidade
Leia maisManual de Instalação do Servidor Orion Phoenix Versão 1.0 - Novembro/2010
Manual de Instalação do Servidor Orion Phoenix Versão 1.0 - Novembro/2010 Manual de Instalação do Sistema Orion Phoenix 1.0 - Novembro/2010 Página 1 SUMÁRIO 1. INTRODUÇÃO...3 2. VISÃO GERAL...3 3. PROCEDIMENTOS
Leia maisO melhor do PHP. Por que PHP? CAPÍTULO 1. Uma Pequena História do PHP
CAPÍTULO 1 O melhor do PHP Este livro levou bastante tempo para ser feito. Venho usando agora o PHP por muitos anos e o meu amor por ele aumenta cada vez mais por sua abordagem simplista, sua flexibilidade
Leia maisO uso do gestor de conteúdos plone no suporte a processos de software
O uso do gestor de conteúdos plone no suporte a processos de software Fernando Silva Parreiras Objetivo Demonstrar a aplicação de ferramentas de gestão de conteúdo, especificamente o plone, no apoio a
Leia maisConteúdo Programático de PHP
Conteúdo Programático de PHP 1 Por que PHP? No mercado atual existem diversas tecnologias especializadas na integração de banco de dados com a WEB, sendo o PHP a linguagem que mais se desenvolve, tendo
Leia maisPré-requisito Ter realizado os cursos de Lógica de Programação e HTML5 e CSS3, ou ter conhecimento equivalentes.
1 Javascript com Ajax Descrição A Web 2.0 trouxe um novo conceito na construção de sites para internet. O domínio da linguagem de programação JavaScript é essencial para o desenvolvimento de web sites
Leia maisApresentação. Treinamento OTRS Help Desk
Apresentação Treinamento OTRS Help Desk Sumário Apresentação... 3 Arquitetura... 3 Funcionalidades básicas do sistema...4 Interface Web... 4 Interface de E-mail...4 Ticket... 4 Sistema... 5 Apresentação
Leia maiswww.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00
www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br
Leia maisDesenvolvendo com Bootstrap 3: um framework front-end que vale a pena!
Desenvolvendo com Bootstrap 3: um framework front-end que vale a pena! É engraçado como temos receio do novo. Me acostumei a desenvolver sites do zero, desde a primeira linha de código. Achava estranho
Leia maisCurso de Joomla na Prática
Curso de Joomla na Prática Joomla! (pronuncia-se djumla) é um CMS (Content Management System) desenvolvido a partir do Mambo. É escrito em PHP e roda no servidor web Apache ou IIS e banco de dados MySQL.
Leia maisOutlook XML Reader Versão 8.0.0. Manual de Instalação e Demonstração UNE Tecnologia
Outlook XML Reader Versão 8.0.0 Manual de Instalação e Demonstração UNE Tecnologia Add-in para o Outlook 2003, 2007 e 2010 responsável pela validação e armazenamento de notas fiscais eletrônicas. Atenção,
Leia maisDESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN
DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN José Agostinho Petry Filho 1 ; Rodrigo de Moraes 2 ; Silvio Regis da Silva Junior 3 ; Yuri Jean Fabris 4 ; Fernando Augusto
Leia maisMPOG EVOLUÇÃO DO PORTAL DO SOFTWARE PÚBLICO
MPOG EVOLUÇÃO DO PORTAL DO SOFTWARE PÚBLICO Versão do Documento v 0.5 Modelo SISP: Especificação de Regras de Negócio v 0.5 Data de Publicação: 26/05/2014 1/18 Histórico da Revisão Data Versão Descrição
Leia maisConstrutor de sites SoftPixel GUIA RÁPIDO - 1 -
GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template
Leia maisPROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS
PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o que é uma Aplicação Rica para Internet Contextualizar tais aplicações na Web e os desafios
Leia maisUniversidade da Beira Interior
Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação
Leia mais