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

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

Programação Web Orientada a Objetos Professor: Charles Jefferson.

Apresentações semelhantes


Apresentação em tema: "Programação Web Orientada a Objetos Professor: Charles Jefferson."— Transcrição da apresentação:

1 Programação Web Orientada a Objetos Professor: Charles Jefferson

2 Plano de Ensino  Unidade Curricular: Programação Web Orientada a Objeto  Carga Horária: 120 Horas  Curso: Informática para Internet  Modalidade: Técnico Subsequente  PROFESSOR: Charles Jefferson R. Alves e Alves

3 Objetivo  Capacitar o aluno, de forma que seja capaz de compreender e implementar os fundamentos da Programação Orientada a Objetos, bem como interpretar artefatos de projeto, mapeando-os através da implementação no computador.  Analisar e projetar Sistemas Web baseado em objetos.  Implementar pequenas aplicações com interface gráfica utilizando objetos já definidos no ambiente de desenvolvimento.

4 Habilidades  Aplicar os conceitos básicos de Orientação a Objetos.  Identificar as propriedades e as responsabilidades dos objetos.  Desenvolver sistemas Web, utilizando Orientação a Objetos baseados em componentes.  Realizar a conexão com interface e base de dados;  Avaliar resultados de testes dos programas desenvolvidos;  Interpretar e analisar o resultado da modelagem de dados;  Estruturar algoritmos de permitam a representar regras de negócios;  Desenvolver aplicações Web em camadas.

5 Conteúdo Programático  Conceitos de Programação Orientada a Objetos: Classe, Objeto, Herança, Polimorfismo, Abstração,Generalizações, Superclasse e Subclasse.  Construtores e Destrutores.  Aplicações dos conceitos utilizando uma linguagem de programação orientada a objetos.  Confecção e interpretação de diagramas UML.  Conceitos de Padrões de Projetos e Utilização do padrão MVC.  Funções avançadas.  Desevolvimento de um sistema web comercial

6 Metodologia  Aulas expositivas dialogadas e interativas  Pesquisas e debates informais  Trabalho em grupo e individual  Aula prática no laboratório

7 Avaliação  Presença e participação nas atividades em sala de aula – 1,0 pontos.  Apresentação de trabalhos – 3,0 pontos  Prova individual – 6,0 pontos.

8 Pré-requisitos  Lógica de Programação  Contrução de Algorítmos  HTML  Linguagem Orientada a Objetos: JAVA, C++, C#, VB.NET, PHP5

9 Programação Orientada a Objetos  É um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software.  A POO foi criada para tentar aproximar o mundo real do mundo virtual: a idéia é simular o mundo real dentro do computador.  O mundo real é extremamente complexo. A orientação a objetos tenta gerenciar a complexidade inerente aos problemas do mundo real abstraindo o conhecimento relevante e encapsulando-o dentro de objetos.  Na POO o programador é responsável por moldar o mundo dos objetos, e explicar para estes objetos como eles devem interagir entre si.  Os objetos "conversam" através do envio de mensagens, e é o programador que especifica quais serão as mensagens que cada objeto pode receber, e a ação que deve realizar ao receber aquela mensagem em específico.

10 Programação Orientada a Objetos  Na visão da orientação a objetos, o mundo é composto por diversos objetos que possuem um conjunto de características e um comportamento bem definido.  Quando programamos seguindo o paradigma de orientação a objetos, definimos abstrações dos objetos reais existentes.  Todo objeto possui as seguintes características:  Estado: conjunto de propriedades de um objeto (valores dos atributos).  Comportamento: conjunto de ações possíveis sobre o objeto (métodos da classe).  Unicidade: todo objeto é único (possui um endereço de memória).

11 POO – Histórico  Com os problemas gerados pela crise de softares, surge a Engenharia de Sofware (60).  Porém, as várias técnicas desenvolvidas nos anos 70 e 80 não resolveram o problema de produtividade e qualidade nos softwares.  Lições da década de 80  Requisitos do usuário são mais importantes  Funções e dados tem grande importância, porém não podem estar separados

12 POO – Histórico  Realidade atual  Sistemas de alta complexidade  Ferramentas de desenvolvimento drasticamente diferentes de 20 anos atrás.  Sistemas maiores, mais complexos e mais voláteis.  A mudança para alcançar a qualidade e produtividade está na reutilização.

13 POO – Técnicas de Programação  Programação Não-Estruturada  Programação Procedimental (ou Procedural)  Programação Estruturada (ou Modular)  Programação Orientada à Objetos

14 Programação Não-Estruturada POO – Programação Não-Estruturada  Programas simples e pequenos consistindo de apenas um programa principal. – Ex. Cartão  “Programa” é uma seqüência de comandos ou instruções que modificam dados “globais” durante toda a sua execução.  Como melhorar este modelo de programação ? – Extração de seqüências (procedures)

15 Programação Procedimental (Procedural) POO – Programação Procedimental (Procedural)  Um programa é visto como uma seqüência de procedimentos que se “comunicam” através de dados locais, denominados parâmetros.  O fluxo destes dados pode ser ilustrado como um grafo hierárquico ou uma árvore.  Desta forma, temos um único programa que é dividido em pequenas partes, chamadas “procedures”. Para permitir o uso de procedimentos genéricos ou grupo de procedimentos em outros programas, precisamos separá-los e disponibilizá-los.

16 Programação Estruturada (Modular) POO – Programação Estruturada (Modular)  Um programa não consiste mais de uma única parte em um único arquivo. É agora dividido em várias pequenas partes chamados módulos, que interagem, através de chamadas aos procedimentos, formando o programa.  Cada módulo pode ter seus próprios dados. Isto permite que cada módulo gerencie estruturas de dados internas, que são modificadas pelas chamadas aos procedimentos.  Entretanto, só existe um estrutura por módulo e cada módulo só pode existir uma única vez no programa. Problema: E para se manipular mais de uma lista ?!?

17 Programação Orientada a Objetos POO – Programação Orientada a Objetos  Na Orientação a Objetos, a estrutura é organizada pelos dados. Escolhe-se a representação dos dados que melhor se adequam aos requisitos do problema.  Consequentemente, os programas ficam estruturados pelos dados e não mais pelas operações.  Isto significa que os dados apenas especificarão operações válidas. Agora os módulos serão agrupados por dados e suas representações, denominadas classes.

18 Programação Orientada a Objetos POO – Programação Orientada a Objetos  Cada objeto “implementa”seus próprios módulos e dados, permitindo que várias estruturas coexistam.  Cada objeto é responsável por inicializar e destruir os seus dados. Consequentemente, não existe mais a necessidade de explicitar uma chamada aos procedimentos de criação e destruição.

19 POO – Objetivos  Produção de software mais confiável  proteção aos dados: encapsulamento  Aumento da produtividade de software  reutilização de código: classes  extensão da biblioteca de classes:  definição de subclasses (herança)  implementação de novos métodos  redefinição de métodos (polimorfismo)

20 POO – Regras de Desenvolvimento DecomposiçãoDecomposição A partir de um problema geral, definir um conjunto de subproblemas independentes que podem ser tratados em separado. IndependênciaIndependência A alteração de um módulo não incorre na modificação de outros módulos. ReutilizaçãoReutilização Quanto mais um módulo for independente, maior a chance dele poder ser reutilizado em outra aplicação. Auto documentado Todo módulo deve ser compreensível sem a necessidade de verificar seu relacionamento com os outros módulos.

21 POO  A orientação a objetos pode ser resumido como um estilo de desenvolvimento baseado no conceito de objetos.  Em uma linguagem puramente orientada a objetos todas as representações são realizadas por objetos.  Os objetos combinam dados e funções.  A orientação a objetos pode ser aplicada:  Análise;  Projeto;  Implementação de um sistema.

22 Atributos  Os atributos são as características ou propriedades de uma classe.  Basicamente a estrutura de dados que vai representar a classe. Exemplos: Funcionário: nome, endereço, telefone, CPF

23 Métodos  Um determinado método define um comportamento do objeto.  Tipos básicos de métodos:  Construtor (constrói estados)  Destruidor (destrói estados)

24 Mensagem  É uma chamada a um objecto para invocar um de seus métodos, activando um comportamento descrito por sua classe.  Também pode ser direcionada diretamente a uma classe (através de uma invocação a um método estático)

25 Classe  Uma classe define estado e comportamentos de um objeto, implementando métodos e atributos.  Os objetos de certo tipo ou classificação compartilham os mesmos comportamentos e atributos.  As classes são usadas para criar ou instanciar objetos.

26 Classe Exemplos de Classes:  Entidades do Negócio da Aplicação(pessoa, conta, cliente, fornecedor)  Entidades de Interface(janela, botão, painel, frame, barra)  Entidades Diversas(conexão com o banco de dados, um arquivo-texto, um arquivo XML, uma conexão SSH, uma conexão FTP, um Web Service)

27 Classe Uma classe Pessoa, poderá ter como propriedades:  Nome  Altura  Idade  Nascimento  Escolaridade  Salário Poderá ter como métodos:  Crescer()  Formar()  Envelhecer()

28 Classe Representação gráfica da classe pessoa de acordo com o padrão UML: Pessoa +Codigo: integer +Nome: string +Altura: integer +Idade: integer +Nascimento: date +Escolaridade: string +Salario: float +Crescer(centimetros:integer) +Formar(titulo:string) +Envelhecer(anos:integer)

29 Objeto  Objeto é uma estrutura dinâmica originada com base em uma classe.  O objeto é uma instância de uma classe.  O objeto existe durante um dado instante de tempo – da sua criação até a sua destruição.  São objetos da classe Pessoa: Carlos, Maria, João, José.

30 Objeto Representação gráfica dos objetos da classe pessoa de acordo com o padrão UML: Pessoa +Codigo = 10 +Nome = Carlos da Silva +Altura = 1,85 +Idade = 25 +Nascimento = 10/04/1976 +Escolaridade = Ensino Médio +Salario = R$ 700,00 +Crescer(centimetros:integer) +Formar(titulo:string) +Envelhecer(anos:integer)

31 Pacote ou Container  Quando desenvolvemos um sistema orientado a objetos, definimos um con- junto de classes e para organizar essas classes surge o conceito de pacote.  Pacote é um envoltório de classes, ou seja, guarda classes e outros pacotes logicamente semelhantes ao pacote que os contém.  Podemos visualizar os pacotes como diretórios ou pastas, nos quais podemos guardar arquivos (classes) e outros diretórios (pacotes) que tenham conteúdo relacionado com o pacote que os contém.

32 PHP Orientado a Objetos  A partir da versão 5, a orientação à objetos do PHP ficou praticamente completa, não deixando nada a desejar com relação as linguagens de programação voltadas para desktop.  Dentre as funcionalidades que ela suporta, podemos citar Sobrescrita de função, Sobrecarga de função, Herança, Polimorfismo e Interfaces.  Assim como no Java, PHP OO não suporta herança múltipla. A solução que os programadores fazem para compensar isso é a utilização de interfaces.

33 PHP Orientado a Ojetos  A orientação à objeto do PHP que será trabalhada, será:  Criação de classe  Atributos  Métodos construtor  Encapsulamento  Modificadores de acesso (Private, Public, Protected)  Métodos Set  Métodos Get  Criação de objetos  Chamada de métodos  Herança

34 Encapsulamento  É um processo no qual se ocultam as características internas de um objeto àqueles elementos que não têm porque conhece-las. Os modificadores de acesso servem para indicar as permissões que terão outros objetos para acessar a seus métodos e atributos  Modificadores de acesso em PHP:  Public  Private  Protected

35 Encapsulamento  Public - É o modificador de acesso padrão, ou seja, quando não se define o modificador de acesso de um método ou atributo, esse é interpretado pelo PHP como public. É o modificador mais permissivo, pois os métodos ou atributos public podem ser acessados em qualquer parte do programa. Na UML seu símbolo é +  Private - É o modificador de acesso mais restritivo. Um atributo ou método private, só pode ser acessado pelo próprio objeto. Na UML seu símbolo é -  Protected - É um modificador de restrição média. Um atributo ou método protected, pode ser acessado pelo próprio objeto e por objetos das classes filhas (que o herdou). Na UML seu símbolo é #


Carregar ppt "Programação Web Orientada a Objetos Professor: Charles Jefferson."

Apresentações semelhantes


Anúncios Google