Acompanhamento dos resultados em cursos.
Nesse bootcamp foi possível reforçar meu conhecimento na linguagem Java e também conceitos de SQL/ Docker.
Esse pilar se relaciona com uma certa generalização, de maneira que, seu uso se define quando é criada uma classe na qual tem poucas funcionalidade mas que são totalmente condizente com oque ela deve fazer, de forma que não é gerada redundância que não terá utilidade, como métodos e atributos. Sendo que para uma maior aprofundamento na abstração pode-se também criar objetos genéricos a ponto de poder ser integrados em outros para completa-los como um objeto veículo que tem a função ligar/ desligar, mas pode integrar em um objeto carro ou moto, que mesmo tendo bastante diferença eles também tem semelhanças.
O função do encapsulamento é ligada ao controle de atributos de um objeto, onde este é responsável pelo cuidado com a visibilidade do que tem dentro de um objeto, sendo possível impedir a alteração de algum atributo externamente e também o controle de sua alteração. No Java pode-se cuidar do encapsulamento com os modificadores de visibilidade junto aos métodos Getter e Setter.
Esse é um pilar que deve ser utilizado com cautela, pois seu uso é facilmente implementado de maneira errada. O objetivo principal desse pilar é definir que objetos que tem tudo que um outro tem com adições, o objeto pai pode herdar tudo que tem em si para objetos filhos, de maneira que pode herdar até mesmo métodos abstratos, sendo estes, métodos que obrigatoriamente devem ser re-escritos por classe filha. Sempre que for usar da herança, deve-se pensar se o objeto no qual pretende criar é o referido pela classe pai “e” também é outro, tornando assim possível a sua implementação.
Chegando ao último pilar, no qual é responsável por transformar a visibilidade de um objeto, de maneira que eu posso tratar uma classe filha como uma classe pai para que todos os objetos instanciados através de classes que herdam dessa classe pai
possa ser incluído nessa lista, reforçando aqui o pilar da herança que é uma maneira que torna isso possível e também reforça sua devida implementação que se por exemplo uma classe filha não for compatível totalmente com a classe pai, essa lista tem alta probabilidade de gerar uma exceção.
Nesse desafio foi proposta uma diagramação em UML do que seria a classe Iphone com interfaces para implementar o Reprodutor Musicial, Aparelho Telefônico e o Navegador de Internet.
classDiagram
ReprodutorMusical <|-- Iphone
Telefone <|-- Iphone
NavegadirInternet <|-- Iphone
class Iphone {
- model: String
- anoFabricacao: Int
- Color: String
}
class ReprodutorMusical {
<<interface>>
+tocar(): void
+pausar(): void
+selecionarMusica(): void
}
class Telefone {
<<interface>>
+ ligar(): void
+ atender(): void
+ iniciarCorrerioVoz(): void
}
class NavegadirInternet {
<<interface>>
+ exibirPagina(): void
+ adicionarNovaAba(): void
+ atualizarPagina(): void
}
Retornar para página anterior | Volte para o topo 🔝
By Bruno Medeiros.