YII - Web Programming Framework

2.400 visualizações

Publicada em

Ciclo de Palestras PHPRio JAN/10

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
2.400
No SlideShare
0
A partir de incorporações
0
Número de incorporações
10
Ações
Compartilhamentos
0
Downloads
84
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

YII - Web Programming Framework

  1. 1. High-performance component-based PHP framework for developing large-scale Web applications.
  2. 2. Angéllica Cardozo Trabalha como desenvolvedora PHP na TargetSO. Concluindo graduação pelo CEFET. Trabalhando com desenvolvimento desde 2007.
  3. 3. Por que o Yii? • Arquitetura MVC • Rápido aprendizado. • Melhor organização do código • Componentes e helpers voltados para web 2.0 • Scaffolding • Integrado com plugins do Jquery • Melhor reaproveitamento de tarefas • Temas e tradução • Comunidade sempre ativa
  4. 4. Por que o Yii?
  5. 5. Agenda • O que é o Yii? • Características • Conceitos fundamentais • Acesso ao banco de dados • Scaffolding • Autenticação e Controle de Acesso • Temas e tradução
  6. 6. O que é o Yii? Yii é um componente de alta performance desenvolvido em PHP voltado para o desenvolvimento em larga escala de aplicações web. Permite o máximo de reusabilidade acelerando significantemente o processo de desenvolvimento. Yii é a referência para easy, efficient and extensible.
  7. 7. Características • Padrão MVC • Mapeamento do Banco (DAO / AR) • Integração com JQuery • Widgets integrados com Jquery • Internacionalização e localização • Segurança • (prevenção cross-site scripting (XSS) , • prevenção cross-site request forgery (CSRF) , • prevenção de adulteração cookie, etc) • Autenticação e Controle de Acesso • Temas e tradução
  8. 8. Conceitos Fundamentais Estrutura de diretórios
  9. 9. Conceitos Fundamentais Criando uma aplicação O Yii nos permite criar rapidamente uma aplicação base, fazendo uso de sua ferramenta yiic através da linha de comando. Yiic oferece suporte a criação do CRUD de sua aplicação e gera automaticamente o relacionamento entre suas tabelas.
  10. 10. Conceitos Fundamentais Fluxo de execução
  11. 11. Conceitos Fundamentais Aplicação Recebe a solicitação do usuário e a envia para um controlador adequado para o posterior processamento. Serve também como o lugar central para o processamento de configurações a nível da aplicação. Por padrão, a aplicação é uma instancia de CWebApplication. Para personalizá-la é utilizado um arquivo de configuração .
  12. 12. Conceitos Fundamentais Banco de Dados O suporte a banco de dados é construído em cima da extensão PDO (PHP Data Objects). Representando uma tabela em termos de uma classe. Yii AR elimina a tarefa repetitiva de escrever instruções SQL que lidam principalmente com operações CRUD (criar, ler, atualizar e excluir). Você pode usar suas próprias bibliotecas de Banco de Dados na sua aplicação
  13. 13. Acesso ao Banco de Dados CDbConnection administra o acesso; como estende CApplicationComponent, pode ser usado como um componente da aplicação.
  14. 14. Scaffolding Como não poderia faltar, o Yii também possui uma ferramenta para o processo de scaffolding denominada Yiic. O processo é executado através da linha de comando. O Yiic já gera os models com os seus respectivos relacionamentos.
  15. 15. Autenticação e Controle de Acesso O núcleo do Yii para autenticação é o componente de aplicação de usuários o qual é um objeto que implementa as funcionalidades de autenticação através da interface IWebUser.
  16. 16. Autenticação e Controle de Acesso O Yiic possui um filtro de controle de acesso que checa previamente se um usuário possui autorização para executar a ação do controller. A configuração pode ser feita pelo nome de usuário, IP e por atributos adicionados a sessão do usuário através do componente User. O filtro é denominado AccessControl.
  17. 17. Autenticação e Controle de Acesso Definimos as configurações de controle de acesso no Controller.
  18. 18. Autenticação e Controle de Acesso O Yii nos permite mesclar o filtro AcessControl com o controle de acesso RBAC. Através da opção expression fornecida pelo filtro AccessControl, podemos autorizar a execução de uma ação somente aos usuários que detenham o perfil de Administrador no sistema.
  19. 19. Autenticação e Controle de Acesso Implementando RBAC Associando ao AccessControl
  20. 20. Temas e Tradução Com os temas podemos alterar as perspectivas de visualização das páginas e seus elementos. O gerenciamento de temas pelo Yii é feito através de um componente denominado ThemeManager. Cada tema é representado como um diretório constituído por views, layouts, e arquivos como imagens, CSS, JavaScript e etc.
  21. 21. Temas e Tradução Configuramos o componente na aplicação. E podemos trabalhar o componente durante a execução das ações.
  22. 22. Temas e Tradução Com o componente de tradução do Yii podemos disponibilizar para o usuário os arquivos de visão, formatação de data, hora, meses, dias da semana e de números de uma forma geral, todos traduzidos para sua linguagem.
  23. 23. Temas e Tradução As pastas devem ser nomeadas de acordo com a respectiva linguagem. A tradução será efetuada automaticamente de acordo com o parâmetro passado para o atributo language da aplicação.
  24. 24. Obrigada Dúvidas? @AngellicaC

×