C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
C# para iniciantes - Programação orientada a objetos em C#: Classes, objetos, métodos e variáveis de instânciaQuantidade de visualizações: 31138 vezes |
|
A melhor forma de entender a programação orientada a objetos é começar com uma analogia simples. Suponha que você queira dirigir um carro e fazê-lo ir mais rápido pressionado o acelerador. O que deve acontecer antes que você seja capaz de fazer isso? Bem, antes que você possa dirigir um carro, alguém tem que projetá-lo. Um carro geralmente começa com desenhos feitos pelos engenheiros responsáveis por tal tarefa, tal qual a planta de uma casa. Tais desenhos incluem o projeto de um acelerador que possibilita ao carro ir mais rápido. O pedal do acelerador "oculta" os mecanismos complexos responsáveis por fazer o carro ir mais rápido, da mesma forma que o pedal de freio "oculta" os mecanismos que fazem o carro ir mais devagar e o volante "oculta" os mecanismos que fazem com que o carro possa virar para a direita ou esquerda. Isso permite que pessoas com pequeno ou nenhum conhecimento de motores possam facilmente dirigir um carro. Infelizmente, não é possível dirigir o projeto de um carro. Antes que possamos dirigí-lo, o carro deve ser construído a partir do projeto que o descreve. Um carro já finalizado tem um pedal de aceleração de verdade, que faz com que o carro vá mais rápido. Ainda assim, é preciso que o motorista pressione o pedal. O carro não acelerará por conta própria. Agora vamos usar nosso exemplo do carro para introduzir alguns conceitos de programação importantes à programação orientada a objetos. A execução de uma determinada tarefa em um programa exige um método. O método descreve os mecanismos que, na verdade, executam a tarefa. O método oculta tais mecanismos do usuário, da mesma forma que o pedal de aceleração de um carro oculta do motorista os mecanismos complexos que fazem com que um carro vá mais rápido. Em C#, começamos criando uma unidade de programa chamada classe para abrigar um método, da mesma forma que o projeto de um carro abriga o design do pedal de acelerador. Em uma classe fornecemos um ou mais métodos que são projetados para executar as tarefas da classe. Por exemplo, a classe que representa uma conta bancária poderia conter muitos métodos, incluindo um método para depositar dinheiro na conta, outro para retirar dinheiro, um terceiro para verificar o saldo, e assim por diante. Da mesma forma que não podemos dirigir o projeto de um carro, nós não podemos "dirigir" uma classe. Da mesma forma que alguém teve que construir um carro a partir de seu projeto antes que pudessémos dirigí-lo, devemos construir um objeto de uma classe antes de conseguirmos executar as tarefas descritas nela. Quando dirigimos um carro, o pressionamento do acelerador envia uma mensagem ao carro informando-o da tarefa a ser executada (neste caso informando-o de que queremos ir mais rápido). Da mesma forma, enviamos mensagens aos objetos de uma classe. Cada mensagem é uma chamada de método e informa ao objeto qual ou quais tarefas devem ser executadas. Até aqui nós usamos a analogia do carro para introduzir classes, objetos e métodos. Já é hora de saber que um carro possui atributos (propriedades) tais como cor, o número de portas, a quantidade de gasolina em seu tanque, a velocidade atual, etc. Tais atributos são representados como parte do projeto do carro. Quando o estamos dirigindo, estes atributos estão sempre associados ao carro que estamos usando, e cada carro construído a partir do projeto sofrerá variações nos valores destes atributos em um determinado momento. Da mesma forma, um objeto tem atributos associados a ele quando o usamos em um programa. Estes atributos são definidos na classe a partir da qual o objeto é instanciado (criado) e são chamados de variáveis de instância da classe. Veremos agora como definir uma classe em C# e usar um objeto desta classe em um programa. Se estiver usando o Visual C# 2005 ou 2008, a forma mais comum de adicionar uma classe ao seu projeto é clicando com o botão direito no namespace do projeto (o primeiro filho do solution explorer) e escolhendo a opção Add -> Class. Em seguida dê o nome "Cliente.cs" para a classe e clique o botão Add. Imediatamente o código inicial para a classe será exibido, contendo o namespace e alguns using padrões. Agora faça sua classe Cliente parecida com o código abaixo (não altere nada em relação ao namespace):
class Cliente{
private String nome;
// Um método que permite definir um valor
// para a variável privada nome
public void setNome(String nome){
this.nome = nome;
}
// Um método que permite obter o valor
// da variável privada nome
public String getNome(){
return this.nome;
}
}
Agora vamos aprender a usar esta classe a partir da classe principal do programa (aquela que contém o método Main). Veja:
static void Main(string[] args){
// Cria uma instância da classe Cliente
Cliente c = new Cliente();
// Define um nome para o cliente
c.setNome("Osmar J. Silva");
// Obtém o nome do cliente
string nome = c.getNome();
Console.WriteLine(nome);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
|
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço do...while da linguagem C#Quantidade de visualizações: 12217 vezes |
O laço do...while (faça...enquanto) é usado quando queremos repetir uma instrução ou bloco de instruções ENQUANTO uma condição for satisfatória. A única diferença entre este laço e o laço while, é que, no laço do...while a condição de parada é testada após a iteração, o que garante que o laço do...while será executado no mínimo uma vez. No laço while a condição é testada antes da iteração. Veja um exemplo:
static void Main(string[] args){
int valor = 1;
do{
Console.WriteLine("{0}", valor);
valor++;
}while(valor <= 10);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Este trecho de código conta de 1 até 10. Veja que após cada iteração do laço nós testamos se o valor da variável de controle é menor ou igual a 10. A próxima iteração acontece somente se esta condição for satisfeita. Note ainda que dentro de cada iteração nós incrementamos o valor da variável de controle. Isso é feito para que o laço não seja executado infinitamente. Veja um outro exemplo de laço do...while, desta vez simulando um menu de opções:
static void Main(string[] args){
// variável que registra a opção do usuário
int opcao;
// laço do..while que mostra as opções do menu enquanto
// o valor -1 não for informado
do{
// lê a opção
Console.Write("Informe a opção 1, 2 ou 3" +
" (-1 para sair): ");
opcao = int.Parse(Console.ReadLine());
switch (opcao){
case 1:
Console.WriteLine("Executando a opção 1");
break;
case 2:
Console.WriteLine("Executando a opção 2");
break;
case 3:
Console.WriteLine("Executando a opção 3");
break;
default:
Console.WriteLine("Opção incorreta");
break;
}
}while(opcao != -1);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
O laço do...while não é tão usado quanto o laço while. Use-o naquelas situações em que o laço deverá ser executado no mínimo uma vez. |
PHP ::: Dicas & Truques ::: Data e Hora |
PHP para iniciantes - Como obter a diferença em horas entre duas datas (e suas respectivas horas)Quantidade de visualizações: 1 vezes |
|
Nesta dica eu mostro como podemos usar as funções mktime() e gmdate() da linguagem PHP para obter e retornar a diferença em horas entre duas datas, e suas horas, é claro. Note que vamos fornecer duas datas diferentes (e suas horas) e vamos obter a diferença entre elas em segundos. Veja o código completo:
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// data e hora inicial = 23/11/2006 - 13:23:15
$data_inicial = mktime(13, 23, 15, 11, 23, 2006);
// data e hora final = 23/11/2006 - 10:23:15
$data_final = mktime(22, 23, 15, 11, 23, 2006);
$segundos = $data_final - $data_inicial;
echo "A diferença em horas entre as duas
datas é: " . gmdate("H:i:s", $segundos);
?>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: A diferença em horas entre as duas datas é: 09:00:00 |
PHP ::: Sistemas Completos com Código Fonte ::: Contas a Pagar e a Receber |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimentoQuantidade de visualizações: 24952 vezes |
Como criar um Sistema de Gestão Financeira em PHP e MySQL, com contas pagas, recebidas, a pagar e a receber.![]() Antes de adquirir este código-fonte você pode testar a demonstração online aqui: Clique aqui para visualizar a demonstração (Live Demo) desse sistema. O usuário é "admin" e a senha é "admin". Pode testar o sistema à vontade e ficaremos gratos se você nos informar sobre algum bug ou até mesmo alguma sugestão para melhoria. Você ainda controla todos os seus gastos usando planilhas do Excel? Sua empresa usa um emaranhado de planilhas do Excel para o seu fluxo de contas a pagar e a receber, receitas e despesas, cadastro de clientes e fornecedores e históricos de atendimentos? Você não está sozinho! Como desenvolvedor eu conheço várias empresas que ainda não possuem um Sistema de Gestão de Contas a Pagar e a Receber, ou seja, usam Planilha de Contas a Pagar e Receber em Excel. Nada contra as planilhas do Excel, mas chega um momento que as informações são tantas que nos perdemos no meio de tantas planilhas. Assim, depois de atender vários clientes com esta demanda eu resolvi fazer um software financeiro e disponibilizar o código fonte de um sistema de contas a pagar e a receber para os visitantes do site. Note que o visual é bem limpo e agradável. E o melhor: a facilidade de uso. Você pode usá-lo em sua empresa, nas empresas de seus clientes e até mesmo em casa, para controlar as suas finanças pessoais. Quais recursos foram usados para o desenvolvimento do software? O código fonte deste software de gestão de controle financeiro foi escrito em PHP e MySQL. Para os recursos visuais eu usei o Bootstrap, jQuery, CSS, jChart, Datatables e algumas outras ferramentas. Todo o código está comentado e não há nada de exibicionismo não, apenas código simples e funcionando 100%. Todas as bibliotecas acompanham o código, de forma que você não precisará baixar e instalar mais nada. Posso testar o código fonte antes de comprar? Sim, colocamos aqui no site uma demonstração do sistema em funcionamento. Você pode acessá-lo clicando no link Clique aqui para visualizar a demonstração (Live Demo) desse sistema. O usuário é "admin" e a senha é "admin". Pode testar o sistema à vontade e ficaremos gratos se você nos informar sobre algum bug ou até mesmo alguma sugestão para melhoria. O sistema é fácil de instalar? Sim, junto com o código fonte nós adicionamos instruções detalhadas de como criar a base de dados e as tabelas do MySQL. Em seguida você só precisa ajustar o servidor, usuário e senha do banco de dados no arquivo config.php, definir o caminho para os uploads das fotos dos usuários, clientes e fornecedores e anexos dos pagamentos e recebimentos e executar o index.php. E o melhor de tudo: com apenas alguns "copiar-colar" você adiciona mais funcionalidades ao sistema, tornando-o ainda mais útil. Como posso obter este código fonte? Para mais informações sobre como adquirir este código fonte, instruções para instalação e até mesmo solicitar alterações ou adições no sistema, basta me chamar no WhatsApp +55 (062) 98553-6711 Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto PHP do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes. |
Nossas 20 dicas & truques de programação mais populares |
|
AutoCAD .NET API C# - Como selecionar uma linha no AutoCAD e mostrar a equação da reta correspondente usando AutoCAD .NET C# API |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Java - Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e Engenharia C - Como escrever uma função is_numeric() em C que verifica se uma string contém apenas dígitos de 0 a 9 |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







