Digital Drops Blog de Brinquedo

O poder do Javascript

Por em 2 de julho de 2009

Update:
[Este post já havia sido publicado em um blog pessoal, e por isto todo o seu conteúdo foi excluído do Meio Bit. Assim como não permitimos que ninguém copie nossos posts, aqui no Meio Bit só entra conteúdo inédito. Pedimos desculpas aos nossos leitores pelo deslize, e garantimos que daqui para a frente tomaremos mais cuidado ao filtrar artigos enviados.]

emSoftware

Firefox 3.5 – Rio Negro vai subir ainda mais

Por em 30 de junho de 2009

Pode acreditar! Hoje, no mínimo, vai chover.

Depois de sucessivos adiamentos, foi finalmente lançada a versão 3.5 do Firefox. Com o lançamento, a Fundação Mozilla não pretende mudar a web para sempre, mas pelo menos seu navegador parece ter ficado muito melhor. As principais mudanças foram:

Segurança

Agora é possível habilitar o porn-mode. Dessa fora, seu navegador não irá registrar cookies, senhas, quanto menos o histórico dos sites que você andou visitando com uma mão só.

Caso tenha esquecido de habilitar o porn-mode, digo, “Private Browsing”. Outra novidade é poder limpar o histórico de um único site: basta ir ao histórico do navegador, clicar com o botão direito em qualquer ocorrência do site que você quer excluir e selecionar "Limpar tudo sobre esse site".

Velocidade

Agora o Firefox incorpora a engine TraceMonkey para renderizar os códigos Javascript. Segundo a própria Mozilla, essa mudança representa 10x mais velocidade na execução dos scripts em relação a versão 2.0 do navegador, e 2/3 mais velocidade que a última versão disponível.

Organização de abas

A exemplo do que já existe no Chrome, agora se você arrastar alguma aba para fora da área das abas, uma nova janela é automaticamente criada exibindo o conteúdo dessa aba que foi arrastada. Isso é muito útil quando se tem muitas abas abertas, e o espaço de uma só janela não está comportando todas elas.

HTML 5

O Firefox é o primeiro navegador a começar a implementar o novo HTML 5. A primeira característica apresentada é a possibilidade de exibir vídeos (no formato OGG) sem a necessidade de plug-ins proprietários. Além disso, como todo outro elemento HTML, o visual dos controles do vídeo podem ser alterados via CSS ou Javascript.

Adeus Flash Player…

Localização física do navegador

Agora o Firefox pode compartilhar com os sites que você visita, a localização física do navegador. Dessa forma, o site poderá oferecer conteúdos personalizados de acordo com a sua localização.

Ainda não sei exatamente como isso funciona. Talvez seja uma forma de reduzir o trabalho de pegar o IP do visitante e compara-lo em uma tabela de localização.

De qualquer forma, segundo a Mozilla, essa função pode ser desabilitada.

Todas novidades podem ser vistas no site da fundação Mozilla. Uma lista dos recursos que o Firefox possui, incluindo os adicionados na nova versão, podem ser vistos na página de Features.

emSoftware

Lançado oficialmente o PHP 5.3.0

Por em 30 de junho de 2009

Lançado hoje (30/06/2009), oficialmente, a versão 5.3.0 do PHP. Segundo o time de desenvolvimento, essa foi a maior implementação das versões série 5. Ela traz, além de várias novidades, uma porção de bugs corrigidos (mais de 140…).

Algumas novidades em destaque, são:

Namespaces

“Namespace” é um conceito amplamente utilizado em várias áreas da informática, é uma forma de encapsular itens. Para facilitar o entendimento, imagine o sistema operacional que tenha dois arquivos com o mesmo nome. Eles não podem existir dentro do mesmo diretório, certo? Sendo assim, criamos caminhos de diretórios diferentes para cada um deles. No PHP seria como criar variáveis dentro de namespaces.

Qualquer código PHP pode ser colocado em namespaces, mas apenas três tipos de código (Class, Funções e Constantes) são afetados por elas.

A utilidade disso é evitar conflito com nomes de variáveis do sistema ou de programas feitos por terceiros. Também evita ter que ficar criando nomes longos para os objetos para impedir que não haja conflitos com outros objetos do mesmo nome.

Assim como algumas outras funções PHP (como a header() por exemplo), os namespaces devem ser definidos antes de qualquer echo ou print.

Vale dizer também que existem dois tipos de namespaces: os namespaces comuns e os sub-namespaces. Veja um exemplo de declaração de namespaces:

[quote]

<?php

namespace MeuProjeto; // namespace simples

const CONNECT_OK = 1;
class Conexao { /* … */ }
function conectar() { /* … */ }

namespace MeuProjeto\Sub\Nivel; // subnivel do namespace ‘MeuProjeto’

const CONNECT_OK = 1;
class Conexao { /* … */ }
function conectar() { /* … */ }

?>

[/quote]

Late StaticBinding

Outra novidade é a implementação do conceito de "Late Static Binding". Usando Late Statics Bindings, a resolução de métodos não é mais feito na classe onde ele foi criado, mas sim de forma hierárquica, seguindo a ordem de execução. Para entender melhor, veja o exemplo comparativo entre a implementação que tínhamos, e a nova possibilidade:

[quote]

<?php

class A {

public static function quem() {
echo __CLASS__;
}

public static function testa() {
self::quem();
}

}

class B extends A {

public static function quem() {
echo __CLASS__;
}
}

B::testa(); // sai ‘A’

?>

[/quote]

Agora com Static Bindings temos:

[quote]

<?php

class A {

public static function quem() {
echo __CLASS__;
}

public static function testa() {
static::quem(); // aqui vem o Late Static Bindings
}

}

class B extends A {
public static function quem() {
echo __CLASS__;
}

}

B::testa(); // sairah ‘B’

?>

[/quote]

GC (Garbage Colector)

Agora é possível armazenar o resultado de variáveis em cache. Dessa forma, mesmo que o estado de sua variável mude, é possível resgatar um valor anterior. Veja o exemplo de uso:

[quote]

<?php

gc_enable (); // ativa o cache que irah salvar os resultados

$valor = ‘Primeiro valor';
echo $valor. ‘</ br>';
$valor = ‘Segundo valor';
echo $valor. ‘</ br>';

$anteriores = gc_collect_cycles(); // pega os valores anteriores em cache

$valor = $anteriores [‘valor’] [0]; // pega a posicao 0 da posicao de nome ‘valor’

gc_disable($anteriores); // limpa os valores pegos e desaloca da memoria

echo $valor . ‘</ br>';

/*
Esse script irah retornar:

Primeiro valor
Segundo valor
Primeiro valor
*/

?>

[/quote]

Funções Anônimas

Funções Anônimas permitem criar funções sem um nome específico. Elas são muito úteis quando usadas como parâmetros de funções de callback (como preg_replace_callback), mas podem ter vários outras utilidades. Veja um exemplo:

[quote]

<?php

$variavel = function($name)
{
echo(‘Digitou:’ . $name);
};

$variavel(‘Hello’);
$variavel(‘World’);

?>

[/quote]

Além dessas novas funções, existem alterações nos drives de conexão com o MySQL, alterações de comportamento em funções já amplamente utilizadas como a função session(), md5(), opendir(), e por ai vai…

Para conferir o anúncio, visite o site do PHP.net. Para conhecer a lista completa de alterações visite o ChangeLog do PHP5.

emSoftware

Opera Unite

Por em 17 de junho de 2009

Sabe aquelas vezes que você pensa: – “Como ninguém pensou nisso antes?” Pois é, hoje isso aconteceu comigo.

Foi alertado aqui no Meio Bit a alguns dias (acho que pelo Cardoso) que a Opera (o melhor browser que ninguém usa) iria anunciar ontem algo que “mudaria a Internet”.

Confesso que fiquei muito curioso. Como uma empresa que não conseguiu fazer seu browser decolar depois de vários anos, tem o “despeito” de anunciar algo que “mudaria a Internet”? Teria a Opera, depois de tantos anos de fracasso, perdido a noção do ridículo? Tenho a impressão que não…

Nada das abas que se abrem automaticamente com os últimos sites visitados; Nada de exibição de feed de forma organizada e limpa; Nada de um cliente de email embutido; Nada de permitir a busca em N sites diferentes diretamente aonde se digita a URL; Nada de permitir usar movimentos com mouse para navegar entre as páginas; Nada de um sistema de bloqueio de conteúdo e scripts maliciosos; Nada de um sistema de proteção com suporte a Extended Validation; Nada disso… Aliás, quem usa o Opera hoje (alguém ai??) já conta com essas funcionalidades.

O que a Opera aprontou dessa vez foi simplesmente incorporar um servidor Web ao seu browser!

Ou seja: Você instala um browser de 7mb para navegar na Internet e de brinde ganha um webserver. Você continua usando o Opera para acessar conteúdo dos servidores, mas também pode disponibilizar facilmente seus conteúdos. Sacou? Simples assim.

Mas espera aí! Mas como ninguém (MS, Google, Mozilla) pesou nisso antes???

Chamado Opera Unite, a tecnologia proposta pela Opera busca expandir a forma de interação na web. Como já foi dito, ela permite que o usuário possa, além de acessar conteúdo, disponibilizar o seu próprio conteúdo para quem quiser. Até para ele mesmo, podendo acessar seus arquivos pessoais de onde estiver.

Pode parecer coisa de maluco ou, a principio, complicado para ser utilizado. Mas não estamos falando de Apache ou ISS. Instalei a versão beta e, em 5 minutos, criei minha conta, disponibilizei uma página HTML, e alguns arquivos de um determinado diretório…

A disponibilização dos conteúdos pode ser feito no modo público, restrito (somente tiver sua senha) ou apenas para você. Entende-se como conteúdo vídeos, fotos, documentos, página web (somente em html). E tudo pode ser acessado em qualquer lugar, através de qualquer outro browser pois a interface é web (incluindo Mobile).

Tudo com uma pitada de rede social.

Além disso, recados podem ser deixados em um mural de recados, suas músicas podem ser ouvidas remotamente, e também é possível criar um chat com outros usuários do Opera Unite.

Será que isso irá mudar a Internet para sempre? O grande feito foi permitir disponibilizar qualquer conteúdo em sua máquina de forma simples e fácil. Muito mais fácil do que qualquer outra coisa que eu já tenha visto. Tudo sem ter que fazer upload.

O número de usuários de Opera finalmente irá crescer além dos fiéis escudeiros? Afinal, os recursos podem ser habilitados instalando o Opera em sua máquina mas você não é obrigado a navegar por ele. ;)

No meio dessas dúvidas me vem uma certeza: Por enquanto o Opera continua ser o melhor browser menos usado e é questão de tempo para mais esse recurso ser copiado pela concorrência.

Se quiser saber mais acesse Opera Unite.

emAnálise Internet Software