Conceitos estruturais e comportamentais básicas em projeto oo para ios

design orientado a objeto tem ambos os conceitos estruturais e comportamentais que são muito úteis em aplicações iOS. design orientado a objetos é uma maneira diferente de programas de concepção, onde o comportamento está associado a objetos. A seguir, definir e explicar a terminologia OO núcleo enquanto trazendo conceitos adicionais que completam os blocos de construção de OO.

Objeto

A objeto é um indivíduo, rubrica identificável, seja real ou abstrato, que contém dados sobre si mesmo e descrições de suas manipulações dos dados. Em outras palavras, um objeto pode ser tanto

  • Algo real e tangível, como os itens em uma cozinha

  • Um conceito puro, como um conceito matemático, como uma integral

    Video: #10 Banco de Dados iOS - CoreData

Identificação de objetos é o primeiro passo na análise de um domínio.

Cada objecto é considerado um exemplo de uma classe.

Classe

UMA classe é uma descrição da organização e ações compartilhadas por um ou mais objetos semelhantes.

UMA tipo é um conceito semelhante ao da classe, e eles são muitas vezes utilizados alternadamente. Dentro de linguagens de programação, uma classe também tem um significado técnico. É um modelo de um objeto, através do qual novos objetos podem ser criados. No entanto, o conceito de um tipo distinto daquele de uma classe é capturado em muitas linguagens de programação (mas não Objective-C) por uma construção de programação chamada de interface.

Objeto-orientação também tem o conceito de um metaclass, cujas instâncias são aulas. Há uma metaclass em Objective-C chamado Class.

Abstração

Quando você identificar as classes de objetos e as suas capacidades não consideram essas classes ou recursos que não eram relevantes para o domínio da atividade. Por exemplo, é improvável que teria trazido em uma classe para representar a capacidade de uma xícara de chá a ser lançada se você fosse projetar um programa sobre como fazer chá.

Este tipo de modelagem onde você ignorar o que é irrelevante para se concentrar no que é relevante para um determinado domínio é conhecido como abstração. Abstração é o ato de identificar as classes (e tipos) necessários, a fim de aparar aos aspectos que são relevantes para o problema.

Generalização

O conceito de generalização é exemplificado na relação entre o recipiente e as classes Teacup. Generalização em uma linguagem de programação é demonstrada por meio de um mecanismo conhecido como herança, o que permite que os dados e comportamento de uma classe para ser incluídos em ou usados ​​como a base para uma outra classe.

Video: Aula 2 - Criando o projeto e reconhecendo a estrutura das pastas #JavaOO-02

Várias linguagens de programação têm uma classe raiz da qual todas as classes são herdadas. No âmbito Objective-C, a classe é chamado NSObject. NSObject é equivalente ao objeto de classe em Java.



UMA subclasse é uma classe que herda toda a funcionalidade de outra classe (conhecido como o superclasse). Além disso, a subclasse pode substituir a funcionalidade específica, proporcionando a sua própria aplicação de certos métodos. O método da superclasse ainda pode ser chamado a partir do método de substituição, se isso faz sentido. Também pode estender a funcionalidade da superclasse do fornecimento de métodos adicionais, utilizando as variáveis ​​de membros adicionais, e assim por diante.

Do mesmo modo, um tipo (uma interface) Pode também ser estendido utilizando um subtipo. Aqui, nenhuma funcionalidade é overridden- é só que o subtipo tem mais métodos que um objeto deve implementar.

Um objecto tipicamente armazena dados, também conhecidas como a sua Estado. Este estado é armazenado em suportes de dados conhecido como atributos.

Objetos (como definido pelo classes) também têm capacidades. UMA método é uma maneira de acessar essa capacidade - em outras palavras, para executar um conjunto de instruções que estabelecem ou manipular atributos de um objeto.

Outros objetos causar esses métodos para ser executado. Eles fazê-lo através passagem de mensagens, que é o processo pelo qual um objecto envia dados para um outro objecto ou pede o outro objeto para invocar um método. passagem de mensagens acontece quando um outro objeto chama o método de um objeto. Execução de um programa normalmente começa com a convocação de uma função ou método chamado a Principal dentro de uma classe específica.

O processo de abstração resulta na criação de classes e tipos. Classes e tipos tem mais uma característica: eles restringir o seu uso somente através de seus métodos e atributos de acesso público. Isto é conhecido como encapsulamento, uma técnica para a concepção de classes e objetos que restrinja o acesso aos dados e comportamento através da definição de um conjunto limitado de mensagens que um objeto dessa classe pode receber.

Encapsulamento impede o acesso aos componentes internos de uma classe e impede os detalhes de como a classe é implementada de ser conhecido. Enforces encapsulamento ocultação de informações, um outro conceito fundamental no objecto-orientação.

Abstrato aulas servem apenas como especificações para ser reutilizado por outras classes. Você não pode criar objetos de classes abstratas. Aulas a partir do qual você pode criar objetos são conhecidos como concreto classes. Claro, as interfaces são sempre abstrato.

Uma aplicação consiste de uma coleção de classes de vários tipos. Objetos dessas classes interagem uns com os outros para implementar as funcionalidades da aplicação. As classes que uma classe interage com são conhecidos como a sua colaboradores.

Polimorfismo é a capacidade de diferentes classes para responder à mesma mensagem, com cada classe implementando o método de forma adequada. A linha a seguir retirado MakeDrinkableFood ilustra esse conceito:

 For (i = 1- ilt; = NumberOfEatingVessels- i ++) HeatingVessel.Pour (([EatingVessel objectAtIndex: i) -

Quando o chá está sendo feito, EatingVessel está vinculado a um objeto Chaleira. Quando a sopa está sendo feito, EatingVessel está vinculado a um objeto Terrina.

Video: Aula 1 - Primeiro contato com PHP OO

É útil separar estes conceitos em conceitos estruturais que lhe dizer algo sobre a composição do programa e conceitos comportamentais que lhe dizer algo sobre como o programa funciona. Os conceitos de abstracção, encapsulamento, metaclass, classe, tipo, objeto, herança e a interface são todos os conceitos estruturais. Os conceitos de um método, a passagem de mensagens e polimorfismo são conceitos comportamentais.


Publicações relacionadas