• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
User Interface (in portuguese)
 

User Interface (in portuguese)

on

  • 2,482 views

 

Statistics

Views

Total Views
2,482
Views on SlideShare
2,477
Embed Views
5

Actions

Likes
2
Downloads
38
Comments
0

3 Embeds 5

http://www.slideshare.net 3
http://www.linkedin.com 1
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    User Interface (in portuguese) User Interface (in portuguese) Presentation Transcript

    • User Interface PHP Advanced - 16 de Setembro de 2008 Bruno Pedro <bpedro@tarpipe.com>
    • PHP Advanced Conteúdo • Template View Pattern • Smarty • Componentes • Projecto • Resumo User Interface 2
    • PHP Advanced Template View Pattern fonte: Fowler, M., Patterns of Enterprise Application Architecture, p. 350 User Interface 3
    • PHP Advanced Template View Pattern • Separação real entre lógica e apresentação • A informação aparece nas páginas através de marcadores (tags) específicos • Toda a lógica antes da apresentação não escreve nem devolve HTML • Solução ideal para equipas em que existem programadores e Web designers User Interface 4
    • PHP Advanced Model, Helper e View Model Helper View <html> <body> Calculator Helper sum 12 + 5 = Calculator multiply {$calc->sum x=12 y=5} ... </body> </html> User Interface 5
    • PHP Advanced Model, Helper e View • Divisão facilita a separação entre lógica e apresentação • Possibilidade de delegar tarefas em cada uma das camadas a equipas diferentes • Diminui a complexidade do código, facilitando a sua manutenção User Interface 6
    • PHP Advanced Model User Interface 7
    • PHP Advanced Model • Implementa a lógica do negócio: • acesso à informação (bases de dados); • algoritmos específicos; • cálculo numérico; • acesso a Web Services. User Interface 8
    • PHP Advanced Helper User Interface 9
    • PHP Advanced Helper • Implementa a lógica funcional: • input do utilizador; • paginação de resultados; • adaptação e agregação de informação. User Interface 10
    • PHP Advanced View User Interface 11
    • PHP Advanced View • Implementa a lógica de apresentação: • interface com o utilizador; • aparência e estética das páginas; • selecção da informação a apresentar. User Interface 12
    • PHP Advanced Smarty • Motor de templates com sintaxe simples • Utiliza objectos • Permite compilar templates, melhorando o seu desempenho • Bastante versátil e modular User Interface 13
    • PHP Advanced Utilização • Código pode ser obtido em http://smarty.php.net/ • Para começar é necessário instanciar um objecto Smarty User Interface 14
    • PHP Advanced Configurações • $smarty->template_dir: directório onde o Smarty vai interpretar os templates • $smarty->compile_dir: directório onde o Smarty vai gravar os templates compilados • $smarty->cache_dir: directório onde é gravada a cache • $smarty->caching: possibilidade de ligar ou desligar a cache User Interface 15
    • PHP Advanced Variáveis • Passagem de variáveis que poderão ser usadas pelo template User Interface 16
    • PHP Advanced Variáveis • {$var} - mostra o conteúdo da variável • {$array[5]} - mostra o conteúdo do 5º elemento do array • {$array.name} - mostra o conteúdo da posição ‘name’ do array • {$obj->name} - mostra o conteúdo do atributo ‘name’ do objecto User Interface 17
    • PHP Advanced Modificadores • {$name|capitalize}: apresenta em maiúsculas as primeiras letras de todas as palavras • {$today|date_format}: formata a apresentação de uma data e hora • {$title|lower}: converte em minúsculas • {$title|upper}: converte em maiúsculas • {$body|wordwrap:30}: quebra um texto a uma largura específica User Interface 18
    • PHP Advanced Modificadores • É possível combinar modificadores {$title|capitalize|wordwrap:10} {$text|strip_tags|lower|truncate} User Interface 19
    • PHP Advanced Funções - capture • Grava numa variável o conteúdo que estiver entre os tags • Exemplo: User Interface 20
    • PHP Advanced Funções - foreach • Implementa um iterador de arrays • Exemplo: User Interface 21
    • PHP Advanced Funções - if • Implementa uma condição • Exemplo: User Interface 22
    • PHP Advanced Funções - include • Inclui outro ficheiro Smarty • O outro ficheiro é interpretado • Todas as variáveis ficam disponíveis no ficheiro incluido • Exemplo: {include file=”ficheiro2.html”} User Interface 23
    • PHP Advanced Funções - literal • Permite não interpretar um bloco de código • Bastante útil quando temos JavaScript dentro dos templates {literal} Este bloco não é interpretado. {/literal} User Interface 24
    • PHP Advanced Outras funcionalidades • Muitos outros modificadores e funções • Caching parcial e dependente de identificador • Configurações de segurança • Filtros de templates • Extensível através de plugins User Interface 25
    • PHP Advanced Separação Lógica Apresentação <html> <body> Calculator Helper sum 12 + 5 = Calculator multiply {$calc->sum x=12 y=5} ... </body> </html> User Interface 26
    • PHP Advanced Componentes • User • Registo • Autenticação • Configurações • Data • Obtenção e gravação de dados • RSS User Interface 27
    • PHP Advanced User User firstName lastName username save() load() auth() addConf() ... User Interface 28
    • PHP Advanced Data Data source ... save() load() search() ... User Interface 29
    • PHP Advanced RSS RSS source ... get() getItem() ... User Interface 30
    • PHP Advanced Projecto • Página de registo • nome • username • password • confirmação de password User Interface 31
    • PHP Advanced Projecto • Página de autenticação • username • password User Interface 32
    • PHP Advanced Projecto • Configurações • adicionar URL de RSS • remover URL de RSS • listar URLs configurados User Interface 33
    • PHP Advanced Projecto • Visualização de dados • listagem dos itens dos vários RSS • ordenação • paginação User Interface 34
    • PHP Advanced Resumo • Template View Pattern • Model, Helper e View • Smarty • Componentes a implementar • Implementação de User Interface User Interface 35
    • PHP Advanced Questões? User Interface 36
    • PHP Advanced Mais informação • O meu blog: http://unfoldingtheweb.com/ • Manual de PHP: http://www.php.net/ User Interface 37