Assunto: COISAS QUE TODOS PRECISAM DE SABER SOBRE "O GAJO DA INFORMÁTICA"
1) O GAJO DA INFORMÁTICA dorme. Pode parecer mentira, mas O GAJO DA INFORMÁTICA precisa de dormir e descansar como qualquer outra pessoa. Esqueça que ele tem telemóvel e telefone em casa; ligue só para o escritório ou para o telemóvel entre as 09h00m e as 12h30 (manhã) ou entre as 14h00 e as 18h00 (tarde) de Segunda-feira a Sexta-feira. O GAJO DA INFORMÁTICA também precisa de descansar aos Sábados, Domingos, feriados e NOS DIAS QUE INDICOU DE FÉRIAS.
2) O GAJO DA INFORMÁTICA come. Parece inacreditável, mas é verdade. O GAJO DA INFORMÁTICA também precisa de alimentar-se e tem horas para isso, TODOS OS DIAS.
3) O GAJO DA INFORMÁTICA pode ter família. Esta é a mais incrível de todas. Mesmo sendo um GAJO DA INFORMÁTICA, precisa de descansar no fim de semana para poder dar atenção à família, aos amigos e a si próprio, sem pensar ou falar em informática, impostos, formulários, reparações e demonstrações, manutenção, vírus e etc.
4) O GAJO DA INFORMÁTICA, como qualquer cidadão, precisa de dinheiro. Por esta você não esperava, ah? É surpreendente, mas O GAJO DA INFORMÁTICA também paga impostos, compra comida, precisa de combustível, roupas e sapatos, e ainda consome xanax para conseguir relaxar. Não peça aquilo pelo que não pode pagar ao GAJO DA INFORMÁTICA.
5) Ler e estudar também é trabalho. E trabalho sério. Pode parar de rir. Não é piada. Quando um GAJO DA INFORMÁTICA está concentrado num livro ou publicação especializada ele está a aprimorar-se como profissional, logo, a trabalhar.
6) De uma vez por todas, vale reforçar: O GAJO DA INFORMÁTICA não é vidente, não faz tarôt e nem tem uma bola de cristal para adivinhar o que as outras pessoas pensam ou fazem. Se você julgou que era assim, demita-o e contrate um PARANORMAL, um BRUXO ou um DETECTIVE. Ele precisa de analizar, planear, organizar-se e que lhe expliquem DETALHADAMENTE o que é pretendido para assim ter condições de fazer um bom trabalho, seja de que tamanho for. Prazos são essenciais e não um luxo. Se você quer um milagre, ore bastante, faça jejum, e deixe o pobre dO GAJO DA INFORMÁTICA em paz.
7) Em reuniões de amigos ou festas de família, O GAJO DA INFORMÁTICA deixa de ser O GAJO DA INFORMÁTICA e reassume o seu posto de amigo ou parente, exactamente como era antes dele ingressar nesta profissão. Não lhe peça conselhos ou dicas. Ele também tem o direito de divertir-se.
8) Não existe apenas uma 'listagemzinha', uma 'rotininha', nem um 'textozinho', um 'programinha muito fácil para controlar isto e aquilo', um 'probleminha, que a máquina não liga', um 'sisteminha', uma 'visitinha rápida (aliás, conta-se de onde saímos e até chegarmos)'. Assim, esqueça os inha e os inho (programinha, textozinho, visitinha)', pois os GAJOS DA INFORMÁTICA não resolvem este tipo de problemas. Listagens, rotinas e programas são frutos de análises cuidadosas e requerem atenção, dedicação. Planear, organizar, programar com concentração e dedicação, pode parecer inconcebível a uma boa parte da população, mas serve para tornar a vida dO GAJO DA INFORMÁTICA mais suportável.
9) Quanto ao uso do telemóvel: o telemóvel é uma ferramenta de trabalho. Por favor, ligue apenas quando necessário. Fora do horário de expediente, mesmo que você ainda duvide, O GAJO DA INFORMÁTICA pode estar a fazer algumas das coisas que você nem pensou que ele fazia, como dormir ou namorar, por exemplo.
10) Pedir a mesma coisa várias vezes não faz O GAJO DA INFORMÁTICA trabalhar mais rápido. Solicite. Depois, aguarde o prazo dado pelO GAJO DA INFORMÁTICA.
11) Quando o horário de trabalho do período da manhã vai até 12h30m, não significa que você pode ligar às 12:28 horas. Se você só se lembrou do GAJO DA INFORMÁTICA a essa hora, azar o seu, espere e ligue após o horário do almoço (lembra-se do item 2?). O mesmo vale para a parte da tarde: ligue no dia seguinte.
12) Quando O GAJO DA INFORMÁTICA estiver a apresentar um projecto, por favor, não fique bombardeando-o com milhares de perguntas durante a reunião. Isso tira a concentração, além de dar-lhe cabo da paciência. ATENÇÃO: Evite perguntas que não tenham relação com o projecto, tipo "Quanto custou o seu portátil?" ou "O que acha que devo comprar para o meu filho jogar em casa, um portátil ou um desktop?.
13) O GAJO DA INFORMÁTICA não inventa problemas, não faz actualizações
auomáticas de Windows piratas, não tem relação com vírus, en resumo, NÃO É CULPADO PELO MAU USO DE EQUIPAMENTOS, INTERNET E AFINS. Não reclame! O GAJO DA INFORMÁTICA com certeza fez o possível e dentro da legislação em vigor para você pagar menos. Se quer fazer upgrades de borla, instalar programinhas giros, etc., faça-o, mas antes demita O GAJO DA INFORMÁTICA e contrate um PICHELEIRO.
14) Os GAJOS DA INFORMÁTICA não são os criadores dos ditados 'o barato sai caro' e 'quem paga mal paga a dobrar'. Mas eles concordam.
15) Existem vários tipos de GAJOS DA INFORMÁTICA e cada um tem a sua especialização. Se voce parte uma perna não vai ao oculista, pois não?. Assim, se o GAJO DA INFORMÁTICA é especialista em software e programação poderá não estar muito à vontade sobre HARDWARE ou REDES e vice-versa para realizar um trabalho de qualidade, portanto não lhe peça para executar trabalhos nos quais não é especialista.
Há sempre uma boa desculpa adicional: Comprem um Macintosh, e depois já serve a desculpa "Tens Windows? Epá, não percebo nada disso, só trabalho com macintosh...
Fonte: Enviado por um amigo (informático) :-)
segunda-feira, 19 de julho de 2010
segunda-feira, 5 de julho de 2010
[DEV] - Eventos no .Net
Os eventos no .Net são baseados nos delegates. Servem para notificar outros objectos que tenham demonstrado interesse e se tenham registado para receber essa mesma notificação.
Um exemplo bastante prático são as subscricões de feeds para os blogs. Fiz um codigo que ilustra isso mesmo usando eventos.
class Program
{
/*Declaracao de um delegate*/
public delegate void feedback(Object sender,Targs e) where Targs: EventArgs;
/*Declaracao de um tipo que deriva de eventsArgs que é a mensagem*/
public class msg:EventArgs {
public string _assunto, _corpoMsg;
public msg(string _ass,string _cor){
_assunto=_ass;
_corpoMsg = _cor;
}
public string ASSUNTO{
get {
return _assunto;
}
}
public string CORPOMSG {
get {
return _corpoMsg;
}
}
}
public class Blogspot {
/*Evento baseado no delegate criado anteriormente*/
public event feedback listaSubscricoes;
public string _nomeBlog, _ownerBlog;
int _max_size;
msg [] _myMSG=new msg [10];
int _nrMsg;
public Blogspot(string _nome, string _owner) {
_nomeBlog = _nome;
_ownerBlog = _owner;
_nrMsg = 0;
_max_size = 10;
}
public void novoPost(msg e) {
if (_nrMsg < class="Apple-style-span" color="#33FF33"> /*Se houverem subscritores entao lanca o evento*/
listaSubscricoes.Invoke(this, e);
}
}
}
}
public class netSurfer{
public string _nome;
public netSurfer (string _nome1){
_nome = _nome1;
}
/*Este metodo respeita o formato do delegate que definimos e vai ser registado no evento*/
private void novoPost(Object bs, msg e) {
Console.WriteLine("Olá , eu sou o {0} e recebi um post do blog {1}!!", _nome, ((Blogspot)bs)._nomeBlog);
Console.WriteLine("A assunto da mensagem é: '{0}' e o corpo da mensagem é o seguinte: '{1}'", e.ASSUNTO, e.CORPOMSG);
Console.WriteLine();
}
public void registaBlog(Blogspot bs) {
bs.listaSubscricoes += novoPost;
}
}
static void Main(string[] args)
{
/*Criacao das entidades*/
Blogspot bs = new Blogspot("Byte-Beats", "Wilson Govindji");
netSurfer ns1 = new netSurfer("zé");
netSurfer ns2 = new netSurfer("maria");
/*o ns1 subscreve que quer receber novos posts do blog*/
ns1.registaBlog(bs);
/*Novo post*/
bs.novoPost(new msg("CLR","O CLR é a maquina virtual que suporta o .Net"));
/*o ns2 tambem subscreve que quer receber novos posts do blog*/
ns2.registaBlog(bs);
/*Novo post*/
bs.novoPost(new msg("Eventos","Os eventos no .net baseiam-se nos delegates e são muito uteis"));
}
}
OUTPUT:
Um exemplo bastante prático são as subscricões de feeds para os blogs. Fiz um codigo que ilustra isso mesmo usando eventos.
class Program
{
/*Declaracao de um delegate*/
public delegate void feedback
/*Declaracao de um tipo que deriva de eventsArgs que é a mensagem*/
public class msg:EventArgs {
public string _assunto, _corpoMsg;
public msg(string _ass,string _cor){
_assunto=_ass;
_corpoMsg = _cor;
}
public string ASSUNTO{
get {
return _assunto;
}
}
public string CORPOMSG {
get {
return _corpoMsg;
}
}
}
public class Blogspot {
/*Evento baseado no delegate criado anteriormente*/
public event feedback
public string _nomeBlog, _ownerBlog;
int _max_size;
msg [] _myMSG=new msg [10];
int _nrMsg;
public Blogspot(string _nome, string _owner) {
_nomeBlog = _nome;
_ownerBlog = _owner;
_nrMsg = 0;
_max_size = 10;
}
public void novoPost(msg e) {
if (_nrMsg < class="Apple-style-span" color="#33FF33"> /*Se houverem subscritores entao lanca o evento*/
listaSubscricoes.Invoke(this, e);
}
}
}
}
public class netSurfer{
public string _nome;
public netSurfer (string _nome1){
_nome = _nome1;
}
/*Este metodo respeita o formato do delegate que definimos e vai ser registado no evento*/
private void novoPost(Object bs, msg e) {
Console.WriteLine("Olá , eu sou o {0} e recebi um post do blog {1}!!", _nome, ((Blogspot)bs)._nomeBlog);
Console.WriteLine("A assunto da mensagem é: '{0}' e o corpo da mensagem é o seguinte: '{1}'", e.ASSUNTO, e.CORPOMSG);
Console.WriteLine();
}
public void registaBlog(Blogspot bs) {
bs.listaSubscricoes += novoPost;
}
}
static void Main(string[] args)
{
/*Criacao das entidades*/
Blogspot bs = new Blogspot("Byte-Beats", "Wilson Govindji");
netSurfer ns1 = new netSurfer("zé");
netSurfer ns2 = new netSurfer("maria");
/*o ns1 subscreve que quer receber novos posts do blog*/
ns1.registaBlog(bs);
/*Novo post*/
bs.novoPost(new msg("CLR","O CLR é a maquina virtual que suporta o .Net"));
/*o ns2 tambem subscreve que quer receber novos posts do blog*/
ns2.registaBlog(bs);
/*Novo post*/
bs.novoPost(new msg("Eventos","Os eventos no .net baseiam-se nos delegates e são muito uteis"));
}
}
OUTPUT:
Subscrever:
Mensagens (Atom)
