Engineering

Software Engineering and Architecture

[Delphi] Design Patterns GRASP – Creator

Olá, pessoal, como vão? Sabemos que, em uma arquitetura orientada a objetos, a criação (ou instanciação) de objetos é uma das atividades mais comuns, além de ser bastante frequente. Porém, embora seja tão trivial, muitas vezes criamos estes objetos em classes erradas e não sabemos! O propósito do Design Pattern Creator é nos ajudar a identificar as classes devidamente responsáveis pela criação de cada objeto. Acompanhe!

[Delphi] Design Patterns GRASP – Controller

Olá, leitores! Quanto tempo, hein?Depois de alguns compromissos e problemas de saúde, finalmente retorno aos meus trabalhos aqui no blog.Conforme prometido, hoje inicio uma nova série sobre Design Patterns GRASP! Embora poucos conhecidos, eles apresentam boas práticas de codificação que contribuem para uma arquitetura desacoplada. Vamos lá?

SOLID – Dependency Inversion Principle (DIP)

Boa noite, leitores! Tudo bem? A série de artigos sobre os princípios SOLID termina hoje! Para fechar com chave de ouro, conheceremos o Dependency Inversion Principle, bastante discutido na comunidade de programadores e considerado como o mais importante entre os cinco princípios. Mas há todo um motivo para isso. Confira!

28/05/2018
More

SOLID – Interface Segregation Principle (ISP)

Estou aqui, leitores! Conforme esperado, o artigo de hoje aborda a letra “I” do SOLID, que corresponde ao Interface Segregation Principle, ou ISP. Assim com o LSP, este princípio também está relacionado com o conceito de abstração da orientação a objetos. Observaremos, no artigo, que abstrações genéricas podem prejudicar classes que as implementam, forçando implementações desnecessárias.

25/04/2018
More

SOLID – Liskov Substitution Principle (LSP)

Saudações, leitores! Já temos conhecimento de que abstração, no contexto da programação, é o ato de identificar características em comum nas entidades do sistema de forma que seja possível reaproveitar comportamentos e atributos por meio de heranças. A questão é que, algumas vezes, cometemos algumas falhas no processo de abstração, levando à violação do Liskov Substitution Principle.

05/02/2018
More

SOLID – Open/Closed Principle (OCP)

Olá, pessoal! Algumas vezes, a solução mais rápida para codificar uma funcionalidade ou corrigir um erro é adicionar mais um Else-If em uma estrutura já existente, não é? Bom, não sempre. Apesar de funcional, esse tipo de prática viola o segundo princípio do SOLID, chamado de Open/Closed Principle. Continue lendo o artigo para entender essa violação e como eliminá-la!

18/01/2018
More
André Celestino