Boas Práticas e POO

Sem dúvida alguma aplicar Boas Práticas e POO no dia – a – dia de desenvolvimento trás no médio prazo benefícios sem comparações. Nesta seção você encontrará dicas e tutoriais de como aumentar a qualidade de nossos códigos com ações simples de que agregam muito valor aos nossos sistemas.

Padrões de Projeto em Delphi, é realmente possível?

Padrões de Projeto em Delphi, é realmente possível?

Neste artigo eu vou dar início a uma série de artigos sobre padrões de projeto. Este tema é pouco discutido no meio dos desenvolvedores Delphi e acredito que isso tem um motivo muito claro. Como o grande benefício do Delphi é ser RAD muitos desenvolvedores acabam por se acomodar. Padrões de projeto então,  não figura entre suas prioridades. Sei que não é o seu caso, correto? Antes de mais nada é importante conhecermos como surgiram os padrões de projeto. Na década 70 um engenheiro chamado Continue lendo

Sobrecarga (Overload) com aninhamento

Sobrecarga (Overload) com aninhamento

Enfim chegamos ao final deste curso de fundamentos da Orientação a Objetos com Delphi. Faço votos que estes 10 aulas possam ter contribuído de fato e de verdade com seu aprendizado, o curso acabou mas você não precisa parar por ai. Deixe seu comentário com sua dúvida aqui no vídeo que terei enorme prazer em lhe responder. Nesta última aula sobre orientação a objetos vamos seguir no assunto de sobrecarga de métodos mostrando na prático como este recurso pode nos facilitar no dia a dia. Não Continue lendo

Class/Record Helpers. Ato Final.

Class/Record Helpers. Ato Final.

E ae brutaiada? Vou começar essa terceira, e tomara que última, parte falando duas coisas que eu não mencionei nos posts anteriores. Com class\record helpers é possível alterar os valores ou propriedades do objeto. Até agora todos os exemplos que eu dei simplesmente retornavam valores. Outra coisa é que não é possível ter dois helpers ativos para a mesma classe, logo vocês vão entender a importância dessas duas informações. Fazendo um revival rápido nos posts anteriores da série, vimos como criar um helper simples e aprendemos Continue lendo

Sobrecarga (Overload)

Falar de programação orientada a objetos e não falar de sobrecarga de métodos é como ir a Roma e não ver o Papa, por isso nesta nona aula vamos abortar esse que é um dos assuntos que mais geram dúvidas quando nos referimos a orientação a objetos. Poder sobrecarregar nossos métodos evita obrigar aos que utilizam nossas classes a ter que realizar por exemplos conversões de tipo, isso aumenta a flexibilidade do uso dos recursos que dispomos em nossos objetos. Curta a nossa página no Continue lendo

Classes Amigas

Na aula anterior do nosso curso de orientação a objetos vimos o que são e como funcionam os escopos de visibilidade porém se tratando do Delphi é importante aprofundar o assunto e falar de um conceito pouco conhecido, as chamadas Classes Amigas. Nesta oitava aula vamos aprender sobre dois novos escopos de visibilidade: strict private e strict protected que servem justamente para restringir ainda mais o escopo de visibilidade das atributos e tratar a, digamos falha, que o scopo private apresenta quando falamos de classes Continue lendo

Escopo

Já que na última aula do curso de orientação a objetos falamos de encapsulamento precisamos entender melhor o conceito de escopo de visibilidade já que a encapsulamento só é possível graças a estes escopos. Na sétima aula do nosso curso de orientação vemos ver quais são e para que servem cada um dos escopos de visibilidade presentes no Delphi e como utilizar corretamente cada um deles em nossos projetos. Curta a nossa página no Facebook: http://fb.com/blogrodrigomourao Inscreva-se no nosso canal, dê um like no vídeo Continue lendo

Construtores e Destrutores

Como vimos na aula 2 do nosso curso de orientação a objetos, essa forma de programar está apioada nos conceitos de classes e objetos. Para que possamos “dar vida” as nossas classes e transformá-las em objetos que podem ser manipulados na memória temos que usar um recurso importante dentro da orientação a objetos: o construtor. Nesta sexta aula veremos o que é e para que serve os construtores de objetos e como eles são implementados no Delphi, além disso também abordaremos a questão dos destrutores Continue lendo

Polimorfismo

Polimorfismo significa “muitas formas”, na prática é a capacidade que um mesmo método tem de se comportar de maneiras diferentes dependendo da classe de onde ele foi invocado. Esse é um recurso importantíssimo na orientação a objetos no que diz respeito ao reaproveitamento de códigos uma vez que com ele podemos criar rotina que se “adaptam” a situação ao qual estão inseridas. Nesta quinta aula vamos ver como o polimorfismo é implementado no Delphi. Curta a nossa página no Facebook: http://fb.com/blogrodrigomourao Inscreva-se no nosso canal, Continue lendo

Encapsulamento

Encapsulamento está na lista dos 4 pilares principais da orientação a objetos, junto com a herança, a abstração e o polimorfismo. Encapsular significa proteger e na orientação a objetos essa proteção está diretamente ligada aos valores que nossos objetos guardam em suas propriedades. Na quarta aula do nosso curso de orientação a objetos nosso foco será entender o conceito de encapsulamento e como o Delphi facilita nossa vida ao implementar automaticamente os métodos de escrita e leitura dos atributos. Curta a nossa página no Facebook: Continue lendo

Herança

Sem dúvida alguma a característica mais conhecida da orientação a objetos é a Herança. A Herança permite que classes possam incorporar dados e comportamentos de classes ancestrais garantindo assim o reaproveitamento de código de uma maneira eficiente. Nesta terceira aula do nosso curso de orientação a objetos veremos na prática como implementar a herança em nossas classes criando assim estruturas maiores de objetos de forma organizada. Mas não se engane, herança não é o fim, é apenas o meio e não é nem de longe Continue lendo

Classes e Objetos

A base da orientação a objetos são, pasmem, os objetos. Mas objetos na verdade são apenas instâncias de classes, classes estas que definem o que os objetos poderão ser. Nesta segunda aula do nosso curso de orientação a objetos nós aprofundaremos nossos estudos entendendo como essa dupla (classe e objeto) fazem toda mágica acontecer. Curta a nossa página no Facebook: http://fb.com/blogrodrigomourao Inscreva-se no nosso canal, dê um like no vídeo e compartilhe este vídeo nas redes sociais https://youtu.be/4ELhKeI8gno

Abstração

Abstração

A abstração é um dos pilares da orientação a objetos e por se tratar de um conceito, algo que não é concretamente implementável, esse pilar da orientação a objetos é algo um tanto obscuro para muitos desenvolvedores.  Nesta primeira aula do nosso curso de orientação a objetos nós nos propomos a entender o que é de fato este conceito empregando a simplicidade que lhe é peculiar. Curta a nossa página no Facebook: http://fb.com/blogrodrigomourao Inscreva-se no nosso canal, dê um like no vídeo e compartilhe este Continue lendo

Class/Record Helpers, a saga continua!

Class/Record Helpers, a saga continua!

No post anterior, eu disse que, a partir do Delphi XE3 é possível utilizar record helpers para expandir tipos nativos. E o melhor, a Embarcadero já fez grande parte do serviço pra gente. Vamos começar a explorar essa maravilha: Inclua no seu Uses a unit SysUtils, se ela já não estiver lá.

Class/Record Helpers

Class/Record Helpers

Hoje vamos falar de uma coisa que é relativamente nova no Delphi, algumas pessoas ainda não conhecem, mas é do caralho: Class Helpers. Na verdade, além dos Class Helpers, existem também os Record Helpers

Padrões de Projetos, por onde começar?

Padrões de Projetos, por onde começar?

Estamos em uma série de artigos falando sobre padrão de projetos e como aplicá-los utilizando o Delphi. Como vimos na introdução ao histórico de padrões de projetos descrito no artigo anterior, o GOF (Gang of Four) catalogou 23 padrões de projetos.  Fora estes, existem outros padrões de projetos documentados por outros profissionais, associações e empresas.  Dentro dos 23 padrões de projetos do GOF temos aqueles que são mais utilizados em projetos no dia-a-dia, entre eles podemos citar:  Singleton, Factory, Abstract Factory, Composite, Prototype, Proxy. Há Continue lendo