O GoConqr está de visual novo! Conte para nós o que você achou.

Mapa mental

introdução à POO

Renan Arruda Português

Conteúdo do mapa

introdução à POO

  1. precursores da poo

    • linguagem binaria:
      •  onde inseriam os códigos diretamente na memoria principal do pc
      • linguagem procedurais:
        • permitem reduzir um programa em procedimentos refinados para processar dados
        • programação modular:
          •  tenta melhorar algumas das deficiências encontratadas na procedural
          • estado
            •  significado combinado das variaveis interna do objeto
            • variavel interna
              • é um valor mantido dentro de um objeto
              • passo logico a programação modular
                •  adicionando herança e polimorfismo ao módulo
                • estrategia de poo para software
                  • implementação:
                    • define como algo e feito, é o codigo
                    • dominio:
                      • onde um problema reside
                      • objeto:
                        • é a istancia de uma classe
                        • classe:
                          • Define os atributos e comportamnetos comuns compartilhados por um tipo de objeto
                          • atributos
                            • são caracteristicas de uma classe visivel externamente
                            • comportamento:
                              • construtores
                                •  inicializar objetos
                                • acessores
                                  • da acesso
                                  • mutantes:
                                    •  altera o estado
                                    • mensagem:
                                      • fazem que o objeto realize algo
                                      • vantagens e objetivos da oo
                                        • natural
                                          • em vez de programar em termos de regiões de memoria, voce pode programar usando terminologia de seu problema em particular
                                          • confiavel
                                            • a natureza modular dos objetos permite que voce faça alterações sem afetar outras partes do programa
                                            • reutilizavel
                                              • :pode-se reutilizar prontamente classes oo bem feitas
                                              • manutenivel
                                                • como uma mudança na implementação e transparente, todos objetos se beneficiarão automaticamente
                                                • extensivel
                                                  •  o software nao e estatico, ele deve crescer e mudar com o passar do tempo
                                                  • oportuno
                                                    •  a poo diminui o tempo do ciclo de densenvolvimento, fornecendo software confiavel
  2. ENCAPSULAMENTO

    • PERMITE VOCÊ DIVIDI-LO EM VARIAS PARTES MENORES E INDEPENDENTES
    • TRÊS PILARES DA POO
      • ENCAPSULAMENTO, HERANÇA E POLIMORFISMO
      • INTERFACE
        • LISTA OS SERVIÇOS FORNECIDOS POR UM COMPONENTE
        • IMPLEMENTAÇÃO
          • DEFINE COMO UM COMPONENTE REALMENTE FORNECE UM SERVIÇO
          • PUBLICO, PRIVADO E PROTEGIDO
            • PUBLICO:GARANTE ACESSO A TODOS OS OBJETOS PROTEGIDO:GARANTE ACESSO A INSTÂNCIA E PARA SUBCLASSES PRIVADO: SO PARA INSTÃNCIA
            • PQ DEVE ENCAPSULAR?
              • -INDEPENDÊNCIA SIGNIFICA QUE VOC~E REUTILIZA O OBJETO EM QUALQUER PARTE -PERMITE QUE VOCE TORNE TRANSPARENTES AS ALTERAÇÕES EM SEU OBJETO -NÃO CAUSARA EFEITOS COLATERAIS INESPERADOS ENTRE O OBJETO E O RESTANTE DO PROGRAMA
              • TRÊS CARACTERISTICAS DO ENCAPSULAMENTO
                • ABSTRAÇÃO, OCULTAÇÃO DA IMPLEMENTAÇÃO E DIVISÃO DE RESPONSABILIDADE
                • ABSTRAÇÃO
                  • PROCESSO DE SIMPLIFICAR UM PROBLEMA DIFÍCIL
                  • ABSTRAÇÃO EFICAZ
                    • -TRATA DO CASO GERAL E NÃO ESPECIFICO -A CONFRONTAR VARIOS PROBLEMAS, PROCURA OQ FOR COMUM A TODOS -NÃO SE ESQUEÇA QUE VOCE TEM UM PROBLEMA A RESOLVER -PODE NÃO ESTAR PRONTAMENTE APARENTE -PREPARE-SE PARA FALHAS
                    • TAD-TIPO ABSTRATO DE DADOS
                      • É UM CONJUNTO DE DADOS E UM CONJUNTO DE OPERAÇÕES SOBRE ESSES DADOS
                      • TIPOS
                        • DEFINE AS DIFERENTES ESPECIES DE VALORES QUE VOCE PODE USAR EM SEUS PROGRAMAS
                        • OBJETO DE 1° CLASSE
                          • É AQUELE QUE PODE SER USADO EXATAMENTE DA MESMA MANEIRA QUE UM TIPO INTEIRO
                          • OBJETO DE 2° CLASSE
                            • É UM TIPO DE OBJETO QUE VOCE PODE DEFINIR, MAS NÃO NECESSARIAMENTE USAR
                            • OCULTAÇÃO DE IMPLEMENTAÇÃO
                              • CÓDIGO FRACAMENTE ACOPLADO
                                • É INDEPENDENTE DA IMPLEMENTAÇÃO DE OUTROS COMPONENTES
                                • CÓDIGO FORTIMENTE ACOPLADO
                                  • É FORTIMENTE VINCULADO A IMPLEMENTAÇÃO DE OUTROS COMPONENTES
                                  • CÓDIGO DEPENDENTE
                                    • É DEPENDENTE DA EXISTENCIA DE DETERMINADO TIPO
                                    • DIVISÃO DE RESPONSABILIDADE
                                      • LIGUAGEM ORIENTADA A OBJ PURA
                                        • SUPORTA A NOÇÃO DE QUE TUDO É UM OBJETO
                                        • PACOTE
                                          • É UM OBJETO CUJO UNICO PROPOSITO E CONTER OUTRO OBJETO OU PRIMITIVA
                                          • VARIAVEIS DE CLASSE
                                            • SÃO VARIAVEIS QUE PERTECEM A CLASSE NÃO A UMA ESTANCIA ESPECIFICA
                                            • MÉTODO DE CLASSE
                                              • SÃO METODOS QUE PERTECEM A CLASSE E NÃO A UMA INSTANCIA ESPECIFICA
  3. HERANÇA

    • MECANISMO QUE PERMITE A VOCE BASEAR UMA NOVA CLASSE NA DEFINIÇÃO DE UMA CLASSE PREVIAMENTE EXISTENTE
    • DELEGAÇÃO
      • É O PROCESSO DE UM OBJETO PASSAR UMA MENSAGEM PARA OUTRO
      • É UM
        • DESCREVE QUE  O RELACIONAMENTO EM QUE UMA CLASSE É CONSIDERADA DO TIPO DA OUTRA
        • TEM UM
          • DESCREVE O RELACIONAMENTO EM QUE UM A CLASSE CONTEM UMA INSTANCIA DE OUTRA CLASSE
          • COMPOSIÇÃO
            • SIGNIFICA QUE UMA CLASSE É IMPLEMENTADA USANDO-SE VARIAVEIS INTERNAS
            • CLASSE FILHA
              • CLASSE QUE ESTA HERDANDO, TAMBEM CHAMADA DE SUBCLASSE
              • CLASSE PROGENITORA
                • OU MÃE É A CLASSE DA QUAL A FILHA VAI HERDAR
                • MECANICA DA HERANÇA
                  • SOBREPOSTO
                    • A NOVA CLASSE HERDA O METODO OU ATRIBUTO DA PROGENITORA. MAS FORNECE UMA NOVA DEFINIÇÃO
                    • NOVO
                      • A NOVA CLASSE ADICIONA UM METODO OU ATRIBUTO COMPLETAMENTE NOVO
                      • RECURSIVO
                        • A NOVA CLASSE SIMPLESMENTE HERDA UM METODO OU ATRIBUTO DA PROGENITORA
                        • TIPOS DE HERANÇA
                          • PARA IMPLEMENTAÇÃO
                            • EM VEZ DE RECORTAR E COLAR O CODIGO OU INSTANCIAR, TORNA O CODIGO AUTOMATICAMENTE DISPONIVEL, COMO PARTE DA NOVA CLASSE
                            • PARA DIFERENÇA
                              • SIGNIFICA HERDAR UMA CLASSE E ADICIONAR APENAS O CODIGO QUE TOME A NOVA CLASSE
                              • ESPECIALIZAÇÃO
                                • É O PROCESSO DE UMA CLASSE FILHA SER DIFERENTE DA SUA PROGENITORA
                                • CLASSE RAIZ
                                  • CLASSE SUPERIO DA HIERARQUIA DE HERANÇA
                                  • CLASSE FOLHA
                                    • CLASSE SEM FILHAS
                                    • HERANÇA MULTIPLA
                                      • PERMITE QUE UM OBJETO HERDE DE MAIS DE UMA CLASSE, ASPECTO CONTROVERSO DA POO
                                      • PARA SUBSTITUIÇÃO DE TIPO
                                        • PERMITE QUE VOCE DESCREVA RELACIONAMENTOS COM CAPACIDADE DE SUBSTITUIÇÃO
                                        • SUBTIPO
                                          • E UM TIPO QUE ESTENDE OUTRO TIPO ATRAVES DE HERANÇA
                                          • METODO ABSTRATO
                                            • METODO DECLARADO, MAS NÃO IMPLEMENTADO
  4. POLIMORFISMO

    • SIGNIFICA QUE UM UNICO NOME PODE REPRESENTAR UM CODIGO DIFERENTE
    • DE INCLUSÃO
      • chamado de polimorfismo puro, permite que voce trate objetos relacionados genericamente
      • PARAMÉTRICO
        • PERMITE QUE VOCE CRIE METODOS TIPOS GENERICOS
        • DE SOBREPOSIÇÃO
          • PERMITE QUE VOCE SOBREPONHA UM METODO E SAIBA QUE O POLIMORFISMO GARANTIRA QUE O METODO CORRETO SEMPRE SERA EXECUTADO
          • DE SOBRECARGA
            • CONHECIDO COMO AD-HOC, USA O MESMO NOME DE METODO PARA MUITOS METODOS DIFERENTES
            • CONVERSÃO
              • ANDA LADO A LADO COM SOBRECARGA, FAZ UM METODO PARECER POLIMORFICO
  5. APRENDENDO A APLICAR O OO

    • INTRODUÇÃO A UML
      • UMA LINGUAGEM DE MODELAGEM PADRÃO É UMA NOTAÇÃO GRAFICA PARA DESCREVER O SOFTWARE
      • METODOLOGIA
        • DEFINE UM PROCEDIMENTO PARA PROJETAR SOFTWARE
        • NOTAÇÕES BASICAS DE CLASSE
          • -,#,+
            • (-): PRIVADO (#): PROTEGIDO (+): PUBLICO
            • ESTERIOTIPO
              • É UM ELEMENTO DA UML QUE PERMITE QUE VOCE AMPLIE O VOCABULARIO DA PROPRIA LINGUAGEM UML
              • RELACIONAMENTO
                • DESCREVE COMO AS CLASSES INTERAGEM ENTRE SI
                • TRÊS TIPOS DE ALTO NIVEL DE RELACIONAMENTO
                  • DEPENDENCIA
                    • UM OBJETO É DEPENDENTE DA ESPECIFICAÇÃO DE OUTRO
                    • ASSOCIAÇÃO
                      • INDICA QUE UM OBJETO CONTEM OUTRO OBJETO
                      • MULTIPLICAÇÃO
                        • INDICA QUANTOS OBJETOS PODEM TOMAR PARTE NA INSTANCIA DE UMA ASSOCIAÇÃO
                        • AGREGAÇÃO
                          • É UM TIPO ESPECIAL QUE MODELA O RELACIONAMENTO ´´TEM UM´´ DE RELACIONAMENTO TODO/PARTE ENTRE PARES
                          • COMPOSIÇÃO
                            • É UM POUCO MAIS RIGOROSA, NÃO É UM RELACIONAMENTO ENTRE PARES
                            • GENERALIZAÇÃO
                              • INDICA UM RELACIONAMENTO ENTRE O GERAL E ESPECIFICO
  6. INTRODUÇÃO A ANALISE OO

    • PROCESSO DE SOFTWARE
      • MOSTRA OS VARIOS ESTAGIOS DO DESENVOLVIMENTO DE SOFTWARE
      • PROCESSO CASCATA
        • VOCE VAI DE UM ESTAGIO PARA O PROXIMO. ENTRETANTO, UMA VEZ COMPLETA NÃO HÁ VOLTA
        • PROCESSO ITERATIVO
          • É UMA ESTRATEGIA ITERATIVA E INCREMENTAL PARA DESENVOLVIMENTO DE SOFTWARE
          • AOO
            • PROCESSO QUE USA ESTRATEGIA OO PARA AJUDA-LO A ENTENDER O PROBLEMA QUE ESTA TENTANDO RESOLVER
            • SISTEMA
              • TERMO DA AOO PARA UM CONJUNTO DE OBJETOS QUE INTERAGEM
              • REQUESITOS
                • SÃO RECURSOS OU CARACTERISTICAS QUE O SISTEMA DEVE TER PARA RESOLVER DETERMINADO PROBLEMA
                • ANALISE DE CASOS DE USO
                  • PROCESSO DE DESCOBERTA DE CASOS DE USO ATRAVES DA CRIAÇÃO DE CENARIOS E HISTORIAS COM USUSARIO EM POTENCIAL OU EXISTENTE DE UM PROBLEMA
                  • CASO DE USO
                    • DESCREVE A INTERAÇÃO ENTRE O USUARIO DO SISTEMA EO SISTEMA
                    • ATOR
                      • É TUDO QUE INTERAGE COM O SISTEMA
                      • VARIANTE
                        • É UMA VERSÃO ESPECIALIZADA DE OUTRO CASO DE USO MAIS GERAL
                        • CENARIO
                          • É UMA SEQUENCIA OU FLUXO DE EVENTOS ENTRE O USUARIO E O SISTEMA
                          • CONDIÇÔES PREVIAS
                            • SÃO AQUELAS CONDIÇÕES QUE DEVEM SER SATISFEITAS PARA QUE UM CASO DE USO COMECE
                            • DIAGRAMA DE CASO DE USO
                              • MODELAM OS RELACIONAMENTOS ENTRE CASOS DE USO E OS RELACIONAMENTO ENTRE CASOS DE USO E ATORES
                              • DIAGRAMA DE INTERAÇÃO
                                • AJUDAM A CAPTURAR AS INTERAÇÕES ENTRE VARIOS ATORES PARTICIPANTES DO SISTEMA
                                • DOIS TIPOS DE INTERAÇÃO
                                  • DIAGRAMA DE SEQUENCIA
                                    • MODELA AS INTERAÇÕES ENTRE O USUARIO REGISTRADO E QUANDO QUISER CHAMAR A ATENÇÃO PARA SEQUENCIA DE EVENTOS
                                    • DIAGRAMA DE COLABORAÇÃO
                                      • MODELA OS RELACIONAMENTOS ENTRE OS ATORES E O SISTEMA
                                      • DIAGRAMA DE ATIVIDADE
                                        • AJUDA A MODELAR ROCESSOS QUE PODEM SER EXECUTADOS EM PARALELO
                                        • MODELO DE DOMINIO
                                          • LISTA OS OBJETOS QUE VOCE PRECISARA PARA MODELAR CORRETAMENTE O SISTEMA
                                    • LINHA DE VIDA
                                      • É UMA LINHA TRACEJADA QUE SAI DE UMA CAIXA EM UM DIAGRAMA DE SEQUENCIA
  7. INTRODUÇÃO AO PROJETO OO

    • POO (NOVO TERMO)
      • É O PROCESSO DE DIVIDIR UMA SOLUÇÃO EM VARIOS OBJETOS CONSTITUINTES
      • MODELO DE OBJETO (NOVO TERMO))
        • É O PROJETO DOS OBJETOS QUE APARECEREM NA SOLUÇÃO DE UM PROBLEMA
        • OBJETO (NOVO TERMO)
          • DELEGA TRABALHO PARA COLABORADORES
          • COLABORAÇÃO (NOVO TERMO)
            • É O RELACIONAMENTO ONDE OS OBJETOS INTERAGEM PARA REALIZAR O MESMO PROPOSITO
            • CARTÕES CRC
              • UMA MANEIRA DE DISTRIBUIR RESPONSABILIDADES E COLABORAÇÕES
              • PONTO DE INTERAÇÃO (NOVO TERMO)
                • QUALQUER LUGAR ONDE UM OBJETO USE OUTRO
                • AGENTE (NOVO TERMO)
                  • FAZ A MEDIAÇÃO ENTRE DOIS OU MAIS OBJETOS PARA ATINGIR ALGUM OBJETIVO
  8. REUTILIZANDO PROJETOS ATRAVÉS DE PADRÕES AVANÇADOSS

    • PADRÃO DE PROJETO
      • É UM CONCEITO DE PROJETO REUTILIZAVEL
      • CONSISTE EM 4 ELEMENTOS
        • NOME DO PADRÃO, PROBLEMA, SOLUÇÃO E CONSEQUENCIAS
        • PADRÃO ADAPTER
          • ADAPTADOR
            • É UM PROJETO QUE TRANSFORMA A INTERFACE DE OUTRO PROJETO
            • PROBLEMA
              • COMO REUTILIZAR OBJETOS INCOMPATIVEIS
              • SOLUÇÃO
                • FORNECER UM OBJETO QUE CONVERTA A INTERFACE INCOMPATIVEL EM UMA COMPATIVEL
                • CONSEQUENCIA
                  • TORNAR INCOMPATIVEL OBJETO COMPATIVEIS
                  • PADRÃO PROXY
                    • PROBLEMA
                      • PRECISA CONTROLAR O ACESSO A UM OBJETO
                      • SOLUÇÃO
                        • FORNECER UM OBJETO QUE INTERMEDIE O ACESSO A OUTRO OBJETO DE FORMA TRANSPARENTE
                        • CONSEQUENCIA
                          • INTRODUZ UM NIVEL DE PROCEDIMENTO INDIRETO NO USO DO OBJETO
                          • PADRÃO INTERATOR
                            • PROBLEMA
                              • FAZER LAÇO SOBRE UMA COLEÇÃO SEM SE TORNAR DEPENDENTE DA IMPLEMENTAÇÃO DA COLEÇÃO
                              • SOLUÇÃO
                                • FORNECER UM OBJETO QUE MANIPULE OS DETALHES DA ITERAÇÃO, OCULTANDO ASSIM OS DETALHES DO USUARIO
                                • CONSEQUENCIA
                                  • NAVEGAÇÃO DESACOPLADA, INTERFACE DA COLEÇÃO MAIS SIMPLES, LOGICA DE LAÇO ENCAPSULADA
  9. PADRÕES AVANÇADOS DE PROJETO

    • PADRÃO ABSTARCT FACTORY
      • ANALISADOR DE XML
        • PEGA UM DOCUMENTO E O TRANSFORMA EM UMA REPRESENTAÇÃO DE OBJETO
        • PROBLEMA
          • PRECISA DE UMA MANEIRA DE TROCAR OBJETOS PLUGAVEIS DE FORMA TRANSPARENTE
          • SOLUÇÃO
            • FORNECER UMA INTERFACE ABSTRATA QUE PROVIDENCIE METODOS PARA INSTANCIAR OS OBJETOS
            • CONSEQUENCIA
              • PERMITE QUE VOCE TROQUE FACILMENTE NOVOS TIPOS DE CLASSES EM SEUS SISTEMA
              • PADRÃO SINGLETON
                • PROBLEMA
                  • DEVE EXISTIR APENAS UMA INSTANCIA DE UM OBJETO NO SISTEMA EM DETERMINADO MOMENTO
                  • SOLUÇÃO
                    • PERMITIR QUE O OBJETO GERENCIE SUA PROPRIA CRIAÇÃO ATRAVES DE UM METODO DE CLASSE
                    • CONSEQUENCIA
                      • ACESSO CONTROLADO A INSTANCIA DO OBJETO, TAMBEM PODE DAR ACESSO A UM NUMERO DEFINIDO DE INSTANCIAS
                      • PADRÃO TYPESAFE ENUM
                        • PROBLEMA
                          • AS CONSTANTES INTEIRAS SÃO LIMITADAS
                          • SOLUÇÃO
                            • CRIAR UMA CLASSE PARA CADA TIPO DE CONSTANTE E DEPOIS FORNECER INSTANCIAS DE CONSTANTE PARA CADA VALOR DE CONSTANTE
                            • CONSEQUENCIA
                              • CONSTANTES OO EXTENSISVEIS, EXIGE MAIS MEMORIA DO QUE UMA CONSTANTE SIMPLES
  10. CONSTRUINDO SOFTWARE CONFIAVEL ATRAVES DE TESTES

    • CASO DE TESTE
      • É UM BLOCO DE CONSTRUÇÃO BASICO DO PROCESSO DE TESTE
      • TESTE DE CAIXA PRETA
        • TESTA SE O SISTEMA FUNCIONA CONFORME O ESPERADO
        • TESTE DE CAIXA BRANCA
          • SÃO BASEADOS UNICAMENTE NA IMPLEMENTAÇÃO DE UM METODO
          • FORMAS DE TESTES
            • TESTE DE UNIDADE
              • NIVEL MAIS BAIXO DOS TESTE, VERIFICA UM RECURSO POR VEZ
              • TESTE DE INTEGRAÇÃO
                • VERIFICA SE 2 OU MAIS OBJETOS FUNCIONAM EM CONJUNTO CORRETAMENTE
                • TESTE DE SISTEMA
                  • VERIFICAM O SISTEMA INTEIRO FUNCIONA CORRETAMENTE
                  • CASO DE TESTE MUTANTE
                    • TRANSFORMA UM CASO DE USO VALIDO EM INVALIDO E GARANTE QUE O SISTEMA POSSA SE RECUPERAR CORRETAMENTE
                    • TESTE DE REGRESÃO
                      • EXAMINA AS ALTERAÇÕES NAS PARTES DO SISTEMA QUE JA FORAM VALIDADAS
                      • ESTRUTURA
                        • É UM MODELO DE DOMINIO REUTILIZAVEL
                        • JUNIT
                          • É UMA ESTRUTURA GRATUITA, FORNECE CLASSES PARA ESCREVER TESTES DE UNIDADES E OPÇOES PARA EXECUÇÃO DE CASOS DE TESTE
                          • CLASSE ANONIMA
                            • É UMA CLASSE QUE NÃO TEM NOME
                            • OBJETO FALSIFICADO
                              • É UM SUBSTITUTO SIMPLISTA DE UM OBJETO REAL
  11. OO E PROGRAMAÇÃO DA INTERFACE COM USUARIO

    • PADRÃO DE PROJETO MVC
      • FORNECE UMA ESTRATEGIA PARA O PROJETO DE INTERFACE COM O USUARIO QUE DESACOPLAM COMPLETAMENTE O SISTEMA
      • MODELO
        • GERENCIA O COMPORTAMENTO BASICO E O ESTADO DO SISTEMA
        • VISUALIZAÇÃO
          • EXIBE INFORMAÇÕES PARA O USUARIO
          • CONTROLADOR
            • INTERPRETA EVENTOS DO MODO DE VISUALIZAÃO E DEPOIS OS TRANSFORMA EM PEDIDOS DO MODELO OU DO MODO DE VISUALIZAÇÃO

Informações

Descrição
Mapa Mental sobre introdução à POO, criado por Renan Arruda em 17-02-2020.
Criado por
Renan Arruda
Visualizações
3
Avaliação

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?