Treinamento presencial

Slides:



Advertisements
Apresentações semelhantes
Passo a passo: Configuração de Login no ASP.NET
Advertisements

Um sistema de gerenciamento de conteúdo baseado em XML.
Curso de aprofundamento na linguagem C
Área de Desenvolvimento de Sistemas
HTML – Hyper Text Markup Language
Prof. Alexander Roberto Valdameri
Tecnologia para Web JavaScript
Módulo 4: Gerenciando o acesso aos recursos
Tecnologias para Internet
Instalação e Configuração
DIAGRAMA DE COMPONENTES
Semana 1 Conceitos Básicos e Infra-estrutura
Desenvolvimento de Projetos e Aplicações Web
Tópicos avançados em internet B Carlos Oberdan Rolim Ciência da Computação.
Programação Web com PHP
DOCUMENTO CONFIDENCIAL DA MICROSOFT Set 2009 | Página 1 | Apresentação para BDMs.
Seminários Avançados 3 Conceitos Java EE Servidor de aplicação Tomcat
Tecnologia de Informática
Silvane Gonçalves Analista de Sistemas
Introdução a linguagem Python
Rodrigo Cristiano Silva
Desenvolvendo para a web com Grails
Aula R Prof. Naércio Filho Técnico em Informática
Programação Avançada Prof. Natalia Castro Fernandes
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Curso básico de PHP 1 Vantagens: Gratuito Multiplataforma Estável Rapidez Comunicação.
Acadêmicos: Durval Slompo Junior / Verediane R. S. Monteiro
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Web Services Uninorte Semana de Tecnologia da Informação
Rodrigo Cristiano Silva
Introdução ao Framework Django
ASP (Active Server Pages)
WebPublication para:. WebPublication  É uma ferramenta para publicação de sites  Os sites são constituídos por uma estrutura e seus componentes.  Cada.
Adriano Melo Introdução ao ASP.NET Adriano Melo
Prof. Alexandre Monteiro Recife
Professor: Márcio Amador
Luiz Antonio Torres, Maio/2014
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Arquitetura de Desenvolvimento Web MVC vs. Three Tiers
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Implementação MVC Pedro Antonino.
Unidade 6 – Formulários HTML Prof.: Henrique Santos
José Francisco PHP & MySQL. Os slides originais são parte do material de cursos anteriores do curso de PHP, ministrados por Sérgio Clemente.
Bancos de Dados Estrutura e Funcionamento de um SGBD
PROGRAMAÇÃO WEB AULA 01 Prof. Gustavo Linhares
Prof.°: João Henrique Disciplina: SOR II
Padrões de Interação com o Usuário
Linguagem de Programação JAVA
Projeto de Banco de Dados Prof.Ms.Rodrigo Luiz Comitante Leão.
SQLite Banco de Dados II.
Treinamento e entrega do projeto
Linguagem de programação. Histórico  Concebida em 1993 por Yukihiro Matsumoto  Primeiro livro em inglês saiu em setembro de 2000  Ruby on Rails é lançado.
Ultimos recursos Jobson Ronan
Trabalho de Seminários em Informática
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Introdução a Aplicações Web.
Programação para Internet
Linguagem de Programação Web Karine Alessandra Córdova.
Shell Script Parte 2.
Student Tech Clubs Desenvolvimento WEB Antonio Ladeia Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas Instituto Federal da Bahia Introdução.
Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3.
Programação para Web I AULA 2 BANCO DE DADOS.
Desenvolvimento WEB II Continuação AJAX Professora: Kelly de Paula Cunha.
Programação PHP Gustavo Eduardo Terra.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
JavaScript Introdução ao JavaScript 1. Objetivos Introdução Sintaxe Básica Arquivo (script) externo Script no HEAD da página Script no BODY da página.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Treinamento CMS Plone Criação de Páginas Pessoais Guilherme Luiz Frufrek
Programação para Internet Rica– Aula 05 Prof. Me. Ronnison Reges Vidal.
Rhizome. Roteiro Definição Metas Características Arquitetura Tecnologias envolvidas Referências.
Transcrição da apresentação:

Treinamento presencial ZOPE Objetos e métodos internos do Zope

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

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

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

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.

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

Instalação

Arquitetura

Arquitetura

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

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: http://localhost:8080/manage

Controlando o Zope com a Interface de Gerenciamento

Controlando o Zope com a Interface de Gerenciamento

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

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

Usuários Criando usuários

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

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

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

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

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

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

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

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

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

UNDO Desfazendo um erro

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

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

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

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

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

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

Usuário administrador

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

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

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

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

Gerenciando Papéis Manager Anonymous Owner Authenticated

Permissões Permissões

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

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.

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

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()">

Ataque Cavalo de Troia

Gerenciamento do Owner

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

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

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

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

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).

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

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

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

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.

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

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:

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

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

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

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

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

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

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

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

Usando Métodos Z-SQL

Usando Métodos Z-SQL

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

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

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”

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

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

Configurando Catálogos Definindo Índices TextIndex FieldIndex KeywordIndex PathIndex

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

Busca em Catálogos Formulários Python

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

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

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

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

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.

Executando Programas $ python arquivo.py

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

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

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

Ferramentas GEDIT KOMODO Eclipse

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.

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

Blocos : http://www.python.org/dev/peps/pep-0008/

Objetos print objeto.atributo objeto.metodo(argumentos)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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>

Conteúdo dinâmico

Conteúdo dinâmico

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

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

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

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

ZOPE/PLONE Capítulo 11 Conceitos CMF e ZOPE

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

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

CMF e o Zope DiscussionServices ArchivingServices SyndicationServices RatingServices TestingServices

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

ZOPE