Engineering

Software Engineering and Architecture

[Delphi] Design Patterns GRASP - Creator
08/04/2019

[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!

Continue reading...
SOLID - Dependency Inversion Principle - DIP
28/05/2018

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!

Continue reading...
28/05/2018
More
SOLID - Interface Segregation Principle - ISP
25/04/2018

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.

Continue reading...
25/04/2018
More
SOLID - Liskov Substitution Principle (LSP)
05/02/2018

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.

Continue reading...
05/02/2018
More
SOLID - Open/Closed Principle - OCP
18/01/2018

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!

Continue reading...
18/01/2018
More
André Celestino