quinta-feira, 7 de julho de 2011

Herança em Javascript

Para aqueles que estão começando a desenvolver em javascript, um gostinho de OOP. Fácil e simples, como javascript deve ser.


Father = function(){
  var self = this; //Mantém até o fim o seu contexto
  self.class = "Father"; //Devolve o nome da classe (opcional)
  self.sayHi = function() {
      console.log('hi, from father');
  }; //Método que será sobrescrito
  self.sayHey = function() {
      console.log("hey, ... let's go!");
  }; //Método que será herdado
  return self; //O retorno deve ser seu contexto, ou seja, "o objeto"
};
Daugther = function(){
  var self = new Father(); //Em vez de se usar o próprio contexto, vamos usar o da classe pai e simplesmente sobrescrever os métodos que nos convir
  self.super = Father; //Mantém o acesso a classe pai ex.: (new Daugther).super().class será 'Father'
  self.sayHi = function(){
      console.log('hi, from daugther');
  }; //Método que sobreescreve o da classe pai
  self.class = "Daugther"; //Retorna 'Daugther' (opcional)
  return self; //O retorno deve ser o contexto do pai ("seu objeto") alterado
};

Abraços

quarta-feira, 19 de janeiro de 2011

M$ = Pirataria de Software?

Trabalho com desenvolvimento web a não mais que 4 ou 5 anos, mas o que mais me incomoda é ter te fazer os "ajustes" para funcionar no IE, porque ele tem de "funcionar" tão diferente dos outros navegadores?

A resposta é simples, ele incentiva a pirataria, pense bem, html 5 está chegando, finalmente com suporte a websockets, o que fará com que softwares estilo "delphi" possam finalmente desaparecer, tornando a grande parte de aplicativos independente de plataforam. Porém pensem, se sua importância de mercado ou seu desinteresse por padrões fosse menor, essas especificações poderiam já ter sido implementadas a muito tempo e a maioria dos softwares do dia-a-dia poderiam estar na rede.

Quem usa qualquer software proprietário sabe que há sempre um modo de não se pagar, bem, quase, na internet não há, com um servidor razoavelmente seguro se pode obrigar usuários a comprarem o produto, já que o mesmo não se encontra instalado no computador do cliente, e seu login depende disso.

Sem IE, não culpo usuários por escolherem mal, mas seus desenvolvedores por fazerem do desenvolvimento web uma tarefa mais complexa a cada IE, a experiência na web seria muito mais interativa e útil, podendo substituir aos poucos os "softwares de caixinha".

Com mais e melhores softwares multi-plataforma (e já existem incontáveis hoje) e um mínimo de noção, utilizar de sistemas operacionais proprietários no ambiente doméstico é bobagem.

Web, padrões, software livre. Esses são os passos para erradicar a pirataria de software.


Reflitam e comentem,
Obrigado.