A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Treinamento presencial

Apresentações semelhantes


Apresentação em tema: "Treinamento presencial"— Transcrição da apresentação:

1 Treinamento presencial
ZOPE Objetos e métodos internos do Zope

2 Objetos e métodos internos do Zope
Introdução Este treinamento é destinado aos desenvolvedores e administradores das soluções desenvolvidas para o Portal de Internet e Intranet do STM . Carga horária 40h/aula

3 Capítulo 01 ZMI Arquitetura inicial do ZOPE Área de trabalho Usuários
ZOPE/PLONE Capítulo 01 ZMI Arquitetura inicial do ZOPE Área de trabalho Usuários Importando e exportando objetos

4 Servidor de Aplicações WEB
ZOPE Servidor de Aplicações WEB Interpreta ZOPE (ZPT) e DTML Gera saída HTML Escrito em Python

5 Objetos e métodos internos do Zope
Zope é um ambiente para a construção e gerenciamento de aplicações Web com foco no seu conteúdo. Ele interpreta os fragmentos de códigos Zope e DTML em seus templates e gera uma saída HTML compreensível para qualquer navegador Web. Ou seja, as páginas de um servidor Zope são geradas dinamicamente, no momento em que o servidor recebe o pedido do browser, mesclando esses dois componentes.

6 ZMI - a interface de gerenciamento via Web
ZOPE ZMI - a interface de gerenciamento via Web Arquitetura inicial do Zope Adicionando um novo usuário Acessando a ZMI Mudando Logins Iniciando o Zope Entrando no Zope Administrando e Monitorando o Zope Controlando o Zope com a Interface de Gerenciamento Importando e Exportando Objetos Usando a Área de Trabalho Entendendo Usuários em Zope Criando Usuários

7 Instalação

8 Arquitetura

9 Arquitetura

10 Acessando a ZMI Dependendo da sua plataforma, você pode executar o Zope com diferentes comandos . Unix: $ bin/instance start

11 Entrando no Zope Para entrar no Zope você precisa de um navegador. A interface do Zope é escrita inteiramente em HTML, sendo assim o Zope funciona com qualquer navegador. Acesse:

12 Controlando o Zope com a Interface de Gerenciamento

13 Controlando o Zope com a Interface de Gerenciamento

14 Usando a Área de Trabalho
Frame topo Preferências Logout Links Rápidos Frame direito Conteúdos(main) Frame esquerdo Árvore de conteúdos, simplificada

15 Usuários em Zope Usuários Emergency User Manager Others

16 Usuários Criando usuários

17 Entendendo Usuários em Zope
O Zope é um sistema multiusuário

18 Administrando e Monitorando o Zope
Control Panel (Painel de Controle)

19 Importando e Exportando Objetos
Você pode mover objetos de um sistema do Zope para outro usando export e import.

20 Neste capítulo você viu...
Revisão Neste capítulo você viu... Introdução Arquitetura Instalação: buildout Acessando a ZMI Conhecendo o Zope

21 Laboratório 01 Execute o pack da base ‘main’.
Selecione qualquer objeto e faça o “export” deste conteúdo.

22 Capítulo 02 Gerenciando os conteúdos no ZOPE Adicionar Editar Renomear
ZOPE/PLONE Capítulo 02 Gerenciando os conteúdos no ZOPE Adicionar Editar Renomear Desfazer

23 Técnicas de criação e gerenciamento de conteúdos
ZOPE Técnicas de criação e gerenciamento de conteúdos Criando Objetos Movendo Objetos Renomeando um Objeto Desfazendo Erros

24 Técnicas de criação e gerenciamento de conteúdos
Criando Objetos

25 Técnicas de criação e gerenciamento de conteúdos
Outras operações Copiar Renomear

26 UNDO Desfazendo um erro

27 Neste capítulo você viu...
Revisão Neste capítulo você viu... Gerenciando os conteúdos no ZOPE Adicionar Editar Renomear Desfazer

28 Laboratório Laboratório 02 Criar uma estrutura hierárquica de pastas simulando uma loja de informática: loja-de-informática Desktop Imacs Linux Windows Notebooks Macbooks Intel AMD Memórias DDR2 DDR3

29 Capítulo 03 Autenticação e autorização Usuários Papéis Permissões
ZOPE/PLONE Capítulo 03 Autenticação e autorização Usuários Papéis Permissões

30 Segurança através de permissões e perfis
Introdução Entrando e saindo da ZMI Autenticação e Autorização Gerenciando Usuários Gerenciando Papéis Gerenciando Permissões Políticas de segurança

31 Entrando e saindo da ZMI
A entrada é feita via URL de gerenciamento Para sair: Log off, ou Fechar o navegador e limpar os cookies

32 Autenticação e Autorização
Autenticar é identificar quem está acessando o sistema Autorização é verificar quais acessos o usuário previamente identificado tem

33 Usuário administrador

34 Definindo a localização do Usuário
Existem várias User Folders O usuário está sujeito ao contexto da sua Folder Exemplo: Severino Silva em intranet/documentos/acl_users Não loga em intranet/documentos

35 Contas Especiais do Usuário
Anonymous User Emergency User Initial Manager

36 Criando Um usuário de Emergência
usage: adduser <name> <password> ./plone adduser JoaoSilva Pa$$w0rd Created user: JoaoSilva

37 Autorização e Gerenciamento de Segurança
As políticas de segurança do Zope controla a autorização Definem quem pode fazer o que

38 Gerenciando Papéis Manager Anonymous Owner Authenticated

39 Permissões Permissões

40 Políticas de segurança
Aba Security Função X Permissão Padrões de uso de Segurança

41 Regras de Manuseio de Segurança
Defina usuários no seu nível mais alto de controle, mas não no mais alto de todos. Agrupe objetos que deveriam ser gerenciados pelas mesmas pessoas juntas nos folders. Mantenha isso simples.

42 Políticas Global e Local
Global x Local Delegando controle para Gerenciadores Locais Diferentes níveis de Acesso com Funções Controle de acesso a Locais com Funções

43 Executando Controle de Segurança
<dtml-if expr="_.SecurityCheckPermission(Add Documents, Images, and Files, this())"> <form action="upload"> ... </form> </dtml-if> <dtml-var expr="_.SecurityGetUser().getUserName()">

44 Ataque Cavalo de Troia

45 Gerenciamento do Owner

46 Papéis do Conteúdo Executável
DTML Methods e Documents SQL Methods Scripts Python Perl Função de Solicitação

47 Neste capítulo você viu...
Revisão Neste capítulo você viu... Autenticação e autorização Usuários Papéis Permissões

48 Laboratório Laboratório 03 Criar um novo papel, chamado “estagiario” com a permissão para somente acessar a ZMI - “View management screens”

49 ZOPE/PLONE Capítulo 04 Definições de: ZPT TALES TAL METAL

50 Zope Page Templates Introdução Zope Page Templates é uma ferramenta de geração HTML/XML. Este apêndice é uma referência dos padrões Zope Page Templates: Tag Attribute Language (TAL), TAL Expression Sintaxe (TALES) e Macro Expansion TAL (METAL). Vantagens: Reaproveitamento de código(tags <>) HTML; Real separação entre conteúdo, lógica e apresentação; e Facilidade/agilidade no uso de templates. Desvantagens: Poderá gerar mais código HTML do que o necessário; Poderá existir lógica no template (não recomendado).

51 ZPT - Zope Page Templates, a camada de apresentação
Introdução Expressões TALES TAL METAL

52 TALES path: (padrão) python: string:
Zope Page Templates TALES path: (padrão) python: string: Definir classes CSS, Javascript e registros KSS; Inserir queries de catalogo dentro do template; Chamadas de scripts Python e ZSQL

53 TAL tal:content tal:replace tal:repeat tal:attributes tal:define
Zope Page Templates TAL tal:content tal:replace tal:repeat tal:attributes tal:define tal:condition tal:omit-tag

54 METAL metal:define-macro; metal:define-slot; metal:use-macro; e
Zope Page Templates METAL metal:define-macro; metal:define-slot; metal:use-macro; e metal:fill-slot.

55 Neste capítulo você viu...
Revisão Neste capítulo você viu... Definições de: ZPT TALES TAL METAL

56 Laboratório 04 Com base no laboratório 02, criar uma página contendo:
Header: Um título <H1> com o título do contexto Área de conteúdos: Listagem das subpastas, do primeiro nível, por ordem alfabética Footer:

57 Capítulo 05 Formulários utilizando Controller Page Templates
ZOPE/PLONE Capítulo 05 Formulários utilizando Controller Page Templates

58 Validação e processamento de formulários
ZOPE Validação e processamento de formulários Os formulários no Zope utilizam as mesmas funcionalidades do Zope Page Tempates, com uma diferença, o desenvolvedor poderá ter maior facilidade de controle, atribuindo validações e ações aos formulários

59 Validação e processamento de formulários
CPT Validação e processamento de formulários Controller Page Template - .cpt Controller Python Script - .cpy Controller Validator Python Script - .vpy

60 Neste capítulo você viu...
Revisão Neste capítulo você viu... Formulários utilizando Controller Page Templates

61 Laboratório 05 Criar um formulário com os campos:
Nome Telefone Validar todos os campos, caso o valor não seja preenchido

62 ZOPE/PLONE Capítulo 06 Como se conectar e fazer buscas a um banco de dados relacional

63 Integração com bancos de dados relacionais
Integração BD relacional Integração com bancos de dados relacionais Este capítulo descreve como o Zope se conecta a banco de dados relacionais externos. Conexões de Banco de Dados Métodos Z SQL

64 Usando Conexões com Banco de Dados
Oracle Sybase ODBC Postgre MySQL Interbase Gadfly

65 Usando Métodos Z-SQL

66 Usando Métodos Z-SQL

67 Pesquisas Dinâmicas com SQL
Argumentos TAG SQLVar Name Type Optional

68 Neste capítulo você viu...
Revisão Neste capítulo você viu... Como se conectar e fazer buscas a um banco de dados relacional

69 Laboratório Laboratório 06 Criar uma tabela “sala_de_noticias” , com os campos: id, titulo, texto Criar uma nova conexão com o id “conexao_noticias” Adicionar os dados solicitados para os campos da tabela “sala_de_noticias”

70 Capítulo 07 Configurando Catálogos Definindo Índices
ZOPE/PLONE Capítulo 07 Configurando Catálogos Definindo Índices Utilizando o portal_catalog

71 Mecanismo de busca interno: catalogação e indexação
Este capítulo mostra a você como indexar e buscar objetos com o mecanismo de busca construído no Zope, O [portal_catalog (Catálogo) e introduz conceitos de indexação discutindo diferentes modelos para indexação e busca

72 Configurando Catálogos
Definindo Índices TextIndex FieldIndex KeywordIndex PathIndex

73 Definindo Metadados Zcatalog pode armazenar informações sobre o objeto
Tabular database – Meta Data Table

74 Busca em Catálogos Formulários Python

75 Buscando e Indexando informações
Índices de Texto Vocabulários Índices de: Campo Palavra Chave Caminho

76 Neste capítulo você viu...
Revisão Neste capítulo você viu... Configurando Catálogos Definindo Índices Utilizando o portal_catalog

77 Laboratório Laboratório 07 Criar um novo índice com o id “getTexto”, com referencia ao índice “getText”. Criar um ZPT para listar o getTexto no contexto de uma notícia

78 Capítulo 08 Executando programas Tipagem dinâmica
ZOPE/PLONE Capítulo 08 Executando programas Tipagem dinâmica Compilação e interpretação Ferramentas Sintaxe Tipos

79 Python básico: a camada lógica
Python é uma linguagem de altíssimo nível orientada a objeto, de tipagem dinâmica e forte, interpretada e interativa.

80 Executando Programas $ python arquivo.py

81 Tipagem Dinâmica Variável inferida pelo interpretador durante execução
Duck Typing

82 Compilação e interpretação
Bytecode .pyc – bytecode normal .pyo – bytecode otimizado Podem ser empacotados junto com o interpretador em um executável

83 Modo Interativo python ↲(enter)
Python (r264:75706, Nov , 13:20:47)_[GCC 4.4.1] on linux2_Type "help", "copyright", "credits" or "license" for more information.

84 Ferramentas GEDIT KOMODO Eclipse

85 Frameworks Web: Django, TurboGears, Zope e web2py.
Interface gráfica: wxPython, PyGTK e PyQt. Processamento cientifico: NumPy e SciPy. Processamento de imagens: PIL. 2D: Matplotlib e SVGFig. 3D: Visual Python, PyOpenGL e Python Ogre. Mapeamento objeto-relacional: SQLAlchemy e SQLObject.

86 Sintaxe \ Comentários # (qualquer comentário – é ignorado pelo python)
Exceto os Funcionais: Encoding (caracteres não suportados em inglês) Interpretador

87 Blocos :

88 Objetos print objeto.atributo objeto.metodo(argumentos)

89 Sintaxes Condicionais Repetição if...elif...else for while Estático
Iteradores while

90 Tipos Números e texo Lista, tupla e dicionário Verdadeiro/falso
Mutáveis Imutáveis

91 Funções Blocos de código que podem receber parâmetros pré-determinados

92 Exceções Quando ocorre uma falha no programa (como uma divisão por zero, por exemplo) em tempo de execução, uma exceção é gerada. Se a exceção não for tratada, ela será propagada através das chamadas de função até o módulo principal do programa, interrompendo a execução. try... except... Raise

93 Classes Old style New style Inicializar = __init__ () Herança simples
Herança múltipla

94 Neste capítulo você viu...
Revisão Neste capítulo você viu... Executando programas Tipagem dinâmica Compilação e interpretação Ferramentas Sintaxe Tipos

95 Laboratório Laboratório 08 Criar um python script para listar os arquivos do contexto, contendo link para download.

96 ZOPE/PLONE Capítulo 09 Aumentando a Performance com o Cacheamento

97 Cacheamento de componentes
ZOPE Cacheamento de componentes Aumentando a Performance com o Cacheamento Uma cache é um lugar temporário para armazenar informações que você freqüentemente acessa. A razão para usar uma cache é a velocidade

98 Aumentando a performance com o cacheamento
Tempo de vida do cache Informação pessoal Adicionando um gerenciador de cache Acelerador de Gerenciado de cache HTTP RAM Cacheando um documento

99 Neste capítulo você viu...
Revisão Neste capítulo você viu... Aumentando a Performance com o Cacheamento

100 Capítulo 10 Conhecendo o DTML Sintaxe Variáveis Atributos Condições
ZOPE/PLONE Capítulo 10 Conhecendo o DTML Sintaxe Variáveis Atributos Condições

101 Conteúdo dinâmico com DTML
ZOPE Conteúdo dinâmico com DTML Linguagem de script baseada em tags do Zope Para que o DHTML é bom? Quando não usar DHTML

102 Sintaxe da Tag DTML <dtml-var standard_html_header> <h1>Hello World!</h1> <dtml-var standard_html_footer>

103 Atributos com DTML <dtml-var wingspan missing="unknown wingspan"> <dtml-var exclamation upper> Inserindo variáveis com DTML

104 Adquirindo conteúdo dinamicamente
O Zope procura as variáveis da DTML no repositório do objeto corrente se ele não encontra a variável primeiro no objeto corrente. <dtml-var standard_html_header> <p>Welcome</p>
 <dtml-var standard_html_footer>

105 Conteúdo dinâmico

106 Conteúdo dinâmico

107 Expressões Python dtml-var expr="getHippo(with a large net)“ CUIDADO: <dtml-var objectValues> É diferente de: <dtml-var expr="objectValues">

108 Expressões Python VAR Atributos da Tag Var If... Else... Elif
ObjectValues IN Interação com lista de arquivos Variáveis especiais da Tag IN

109 Neste capítulo você viu...
Revisão Neste capítulo você viu... Conhecendo o DTML Sintaxe Variáveis Atributos Condições

110 Laboratório Laboratório 09 Criar uma pagina utilizando o DTML Document simulando a pagina de um blog, com: Header Área de conteúdos: Post: título, descrição e link Footer

111 ZOPE/PLONE Capítulo 11 Conceitos CMF e ZOPE

112 CMF - Content Management Framework
ZOPE CMF - Content Management Framework Framework que oferece facilidades para desenvolver um sistema de gerenciamento de conteúdo personalizado

113 CMF e o Zope MembershipServices, incluindo personalização
CatalogingServices WorkflowServices BasicContentServices SiteDesignServices IntegrationServices

114 CMF e o Zope DiscussionServices ArchivingServices SyndicationServices
RatingServices TestingServices

115 Neste capítulo você viu...
Revisão Neste capítulo você viu... Conceitos CMF e o Zope

116 ZOPE


Carregar ppt "Treinamento presencial"

Apresentações semelhantes


Anúncios Google