Pular para o conteúdo principal

Postagens

C# - Notação Big O

Falaremos hoje da notação "Big O", ela não é exclusiva do C#, muito pelo contrário, pode e deve ser aplicado a qualquer tipo de algoritmo, mas como nossos exemplos serão com essa linguagem o classificamos dessa forma. A notação big O é usada na análise de algoritmos para descrever a complexidade de um algoritmo. A ideia é fornecer uma maneira de comparar algoritmos permitindo que os desenvolvedores escolham o mais eficiente. É uma forma de descrever o limite superior da complexidade de tempo ou espaço de um algoritmo em relação ao tamanho da entrada. A notação big O é denotada por "O(f(n))", onde "f(n)" é uma função que descreve o comportamento do algoritmo. A função "f(n)" geralmente é uma expressão matemática que envolve a entrada "n" (por exemplo, "n^2" ou "2^n"). Se o tempo de execução de um algoritmo é proporcional ao quadrado do tamanho da entrada, podemos dizer que sua complexidade de tempo é O(n^2). Isso s
Postagens recentes

C# - Primeiros passos com Docker

Hoje veremos como disponibilizar uma aplicação console criada com .Net a partir de um contêiner, mas antes vamos entender melhor o que é o Docker, o que exatamente estamos criando e ai sim criar nosso primeiro exemplo. O que é o Docker? " Docker é uma plataforma de software que permite criar, testar e implantar aplicativos em contêineres. Os contêineres são ambientes isolados que contêm todo o software necessário para executar um aplicativo, incluindo código, bibliotecas, dependências e configurações. Eles permitem que os aplicativos sejam executados de forma consistente em diferentes ambientes, como desenvolvimento, teste e produção. " Em resumo, com ele conseguimos empacotar aplicativos e dependências em contêineres portáteis e executá-los em qualquer máquina que possua o Docker instalado. Podemos dizer que temos os seguintes passos para esse processo: Criar uma imagem: possui um conjunto de informações para dizer como um container deve funcionar; Criar um contêiner: com ba

PHP - Construtores e destrutores

Neste post, vamos mostrar como usar construtores e destrutores em scripts PHP para serem executados na linha de comando, incluindo exemplos práticos (você pode ver o que já publicamos sobre o PHP aqui ). Construtores em PHP Construtores são métodos especiais que são chamados automaticamente quando um objeto é criado. Eles geralmente são usados para inicializar as propriedades de um objeto. Por exemplo, a seguinte classe "Pessoa" tem um construtor que inicializa as propriedades "nome" e "idade": class Pessoa { public $nome; public $idade; public function __construct($nome, $idade) { $this->nome = $nome; $this->idade = $idade; } } Destrutores em PHP Destrutores são métodos especiais que são chamados automaticamente quando um objeto é destruído. Eles geralmente são usados para liberar recursos alocados pelo objeto, como conexões com banco de dados ou arquivos abertos. Por exemplo, a seguinte classe &quo

C# - Design Patterns - Template Method

Olá! Seguindo a proposta de padrões de projeto com C#, falaremos hoje sobre o padrão comportamental Template Method.  Para ver outros padrões que já visitamos por aqui consulte esse link . Esse tema foi tratado de forma brilhante  aqui . Template Method Como dito anteriormente ele é um padrão comportamental que define etapas a serem seguidas, ou seja, com esse padrão podemos determinar etapas e a sequencia de execução delas, deixando a cargo de quem está implementantado como será a implementação dessas etapas. E que vantagem Maria leva? Bom, o grande diferencial aqui é poder ter um contrato que não só define o que deve ser feito mas também garante a sequencia a ser seguida, processos que seguem o mesmo roteiro porém de diferentes formas podem se beneficiar desse padrão: Frameworks fornecem métodos abstratos ou hooks para as subclasses personalizarem o comportamento; Algoritmos que têm uma estrutura comum mas detalhes diferentes, como ordenação, compilação ou  mesmo criptografia; Classe

PHP - Encapsulamento e modificadores de acesso

Neste post, vamos mostrar como usar encapsulamento e modificadores de acesso em PHP, incluindo exemplos práticos (você pode ver o que já publicamos sobre o PHP aqui ). Encapsulamento em PHP Encapsulamento é a prática de esconder o estado e comportamento interno de um objeto do mundo externo e fornecer uma interface pública para interagir com o objeto. Isso pode ser alcançado usando modificadores de acesso, como "public", "private" e "protected". Por exemplo, a seguinte classe "ContaBancaria" encapsula a propriedade "saldo": class ContaBancaria { private $saldo; public function __construct($saldoInicial) { $this->saldo = $saldoInicial; } public function depositar($valor) { $this->saldo += $valor; } public function sacar($valor) {

C# - Design Patterns - Chain of Responsibility

Olá a  todos! Seguindo a proposta de padrões de projeto com C#, falaremos hoje sobre o padrão comportamental  Chain of Responsibility . Para ver outros padrões que já visitamos por aqui consulte esse link . Esse tema foi tratado de forma brilhante  aqui . Chain of Responsibility O padrão de projeto Chain of Responsibility é um padrão de design comportamental que permite passar uma solicitação ao longo de uma cadeia de objetos até que um deles a trate. Cada objeto na cadeia tem a chance de tratar a solicitação. É útil quando há múltiplos objetos que podem responder a uma solicitação e você não sabe antecipadamente qual objeto será o responsável. No C#, a implementação deste padrão envolve a definição de uma interface para as solicitações, criação de classes concretas para tratar as solicitações e definição de uma lógica de encadeamento entre essas classes. Ao receber uma solicitação, cada objeto na cadeia verifica se pode tratá-la e, se não puder,

PHP - Herança e polimorfismo

Neste post, vamos mostrar como usar herança e polimorfismo em PHP, incluindo exemplos práticos (você pode ver o que já publicamos sobre o PHP aqui ). Esses dois elementos que iremos tratar hoje dizem respeito a base do paradigma de orientação a objetos, entende-los é fundamental para criar boas aplicações com recursos reutilizáveis e também compreender recursos e complementos externos a nossa aplicação, sejam das linguagens de programação com as quais estamos lidando como também o uso de plugins e extensões de terceiros. Herança em PHP A herança é um mecanismo que permite que uma classe herde as propriedades e métodos de outra classe. Isso permite a reutilização de código e a organização hierárquica de classes. Por exemplo, a seguinte classe "Estudante" herda da classe "Pessoa" e adiciona a propriedade "matricula": class Estudante extends Pessoa {     public $matricula; } Polim