Orientação a objeto é um conceito que esta relacionado com a ideia de classificar , organizar e abstrair coisas. Veja a definição formal: "O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam estes dados.
A arte de definir o que é ou não relevante para a construção de um modelo de negócios chama-se “capacidade de abstração”. Abstrair é “remover”. Tudo em maior ou menor grau. O processo mental de nossas ideias concretas é a ideia fundamental do pensamento abstrato.
Abstração é a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software.
Uma das características da POO é fazer com que o programador pense as coisas de forma distintas, transformando-as assim em objeto, aplicando propriedades e métodos, que comentaremos mais adiante, reduzindo assim a complexidade no desenvolvimento e manutenção de software, aumentando a produtividade.
Com a complexidade dos sistemas cada vez maior, o tempo de desenvolvimento iria aumentar exponencialmente caso não fosse possível a reutilização. A orientação a objetos permite que haja uma reutilização do código criado, diminuindo o tempo de desenvolvimento, bem como o número de linhas de código.
A programação orientada a objetos é um modelo de programação onde diversas classes possuem características que definem um objeto na vida real. Cada classe determina o comportamento do objeto definido por métodos e seus estados possíveis definidos por atributos.
Orientação a Objetos (OO), independente da linguagem e do quanto ela adere à teoria, pode trazer os mesmos benefícios, sendo os principais relacionados à organização do código, facilidade de manutenção e capacidade de extensão das funcionalidade.
1- Por que a análise estruturada não atende aos requisitos de modelagem de sistemas atuais/complexos? Porque ela só aborda 2 perspectivas função e dados, em quantos os sistemas atuais possuem 3 função, dados e controle. ... Um DFD (Diagrama de Fluxo de Dados) é uma representação gráfica do modelo funcional de um sistema.
A análise estruturada de sistemas é uma técnica que consiste em construir, graficamente, um modelo lógico para o sistema de informações gerenciais, a qual permite que usuários e analistas de sistemas, encontrem uma solução clara e única para o sistema de modo que este transmita as reais necessidades dos usuários.
Por exemplo, a Metodologia Estruturada vem sendo utilizada para documentar, analisar e projetar Sistemas de Informação, e, elas são chamadas assim porque são elaboradas passo a passo, sendo cada um dos passos fundamentados no anterior. Os métodos de desenvolvimento estruturados são orientados a processos.