Category: Desenvolvimento WEB

PHP – Porque usar uma IDE e qual escolher

image

Todo mundo quer ser mais produtivo, cometer menos erros e escrever bons códigos. Claro, que tudo depende de você, mas na maioria dos casos, ambientes de desenvolvimento integrado (IDEs) pode ajudá-lo a atingir esses objetivos com mais facilidades. Infelizmente, a escolha da IDE correta é muito difícil porque ha muitas necessidades a serem considerados, sendo que o site de quase todos os IDE nos diz que sua IDE é a melhor.

Neste post, vamos dar uma olhada nas mais populares PHP IDEs, explorando suas funções, comparando-as em uma tabela e tirando algumas conclusões. Com sorte, você terá uma idéia do que cada IDE PHP tem para oferecer e qual melhor se adapta às suas necessidades.

A seguir, veremos algumas das características que eu achei importante considerar.

 

Características


1. Realce da Sintaxe (Syntax highlighting)

Bom, a sintaxe destaca melhora a legibilidade do código.
Basta olhar para isto:

image

 

2. Complemento do Código (Code completion)

image

Sugestões automática de código pode evitar que o desenvolvedor tenha de escrever muito, IDEs que suportam classes personalizadas e phpDoc pode até salvá-lo de ter que ler a documentação do projeto, completar código também pode evitar erros de digitação. Por exemplo, if typing $cotroller-> não mostra qualquer sugestão, você saberá que algo está errado… deve ser de it should be $controller!
O code completion poderá informa-lo se muitas variantes são mostradas ou métodos de sua classe não foram apanhados.
Também é bom ter code completion em arquivo HTML src = "PHP include and require.

 

3. Navegação

Uma das coisas mais chatas é ficar tentando descobrir onde uma determinada variável foi definida ou usado. Algumas IDEs podem ajudar com o comando "Ir a" (GoTo) com ações, como ir para definição.
Outra característica importante é a pesquisa, a busca não deve demorar muito tempo, mesmo com grandes projetos, ela pode se tornar ainda melhor é se o IDE permite que você se move rapidamente para a próxima ocorrência de uma frase de busca, como o Firefox faz com o seu recurso Pesquisa rápida.

image

4. Erros e avisos em destaque

On-the-fly, verificação de sintaxe pode evitar vários erros tipográficos e erros comuns de programação. No exemplo abaixo, o IDE indica que você pode ter usado = em vez de ==:

image

Quanto mais erros a IDE detectar, melhor, com exceção de falsos positivos.

 

5. Refatoração e geração de código (Refactoring and code generation)

Refatoração é basicamente um conjunto de técnicas para transformar o código fraco em código sólidos. A sua aplicação em IDEs para PHP é muito fraco comparado com IDEs para linguagens Java e C, mas ainda é muito útil.

Refatoração em PHP básico inclui:

  • "Move", garante que ao mover o arquivo para outro diretório o mesmo terá suas referencias alteradas em todo o projeto .
  • "Rename", Renomeia algo é garante que ele seja renomeado em todo o projeto.
  • "Safe delete", garante que a exclusão de um arquivo não prejudique outras partes do projeto.

image

Além de refatoração de base, algumas IDEs pode gerar código para a classe construtores, getters / setters e mesmo sobre os métodos para uma classe pai.

image

 

6. Depuração (Debugging)

A depuração não é tão crítica em PHP, porque você poderá adicionar echos ou usar algo como FirePHP, mesmo sem ter que recompilar seu código. Mas para aplicações complexas em que você precisa adicionar echo após cada linha para ver o que está acontecendo, ao depurar você poderá economizar horas.
Se o IDE for boa mesmo, ela ira lhe fornece um passo-a-passo sobre a depuração e permitirá que você veja os valores atuais das variáveis no espaço.

image

7. Versionamento (Versioning system)

Versionamento é extremamente útil para a equipe e para desenvolvimento pessoal. Ela mostra que mudanças que foram feitas em um arquivo, quando foram feitas e por quem. Uma boa IDE permite comparar visualmente as revisões, mudanças de uma cópia de uma versão para outra, reverter para estados anteriores e mesclar as alterações feitas por diferentes membros da equipe.

image

Ao executar verificações comum e se comprometer, integrando um sistema de controle de versão, como CVS, SVN, git ou Mercurial na sua IDE é geralmente bem melhor do que correr uma aplicação separada.


8. Client-side, características

Utilizar PHP por si só é muito raro, CSS e JavaScript quase sempre estão em algum lugar no seu projeto. Então, para um bom projeto usar IDEs com opção para outras linguagens e tecnologias em conjunto com o PHP lhe pouparia tempo.

image

Como escolher uma boa IDE?

Cada IDE fornece uma grande quantidade de recursos. Algumas dessas características são muito úteis, outras não. Aqui estão algumas diretrizes a serem seguidas para facilitar sua escolha:

  • Tente usar uma IDE com licença Gratis (software livre). Seu conjunto de recursos pode ser suficiente para você, e você não precisará pagar por uma licença.
  • Em primeiro lugar, certifique-se que a mesma tenha as características que você deseja e que são aqueles que você realmente precisa, verificar se eles funcionam corretamente na IDE de sua escolha.
  • Se você encontrar uma IDE que se encaixa bem, mas está faltando um ou dois recursos, tente ferramentas especializadas.
  • Depois de escolher uma IDE, brinque com ela por uma semana antes de implementa-la em um grande projeto. Seu hábitos de trabalho vai te dizer se você se sente confortável com ela.

 

Quadro Comparativo

Junto com Vladimir Statsenko, que ajudou com a seção sobre o Aptana, foi preparado uma tabela de comparação.


O que foi coberto
:


Ferramentas baseadas em Eclipse

PDT Eclipse, Zend Studio 6, Aptana e Aptana Studio Pro são construído sobre a plataforma Eclipse. Isso significa que você pode usar qualquer um dos milhares de plug-ins do Eclipse existentes, se um recurso que você precisa não está integrado na IDE em si, é bem provável que ele esteja disponível como um plug-in de terceiros.
Eclipse foi uma das primeiras IDEs freeware com capacidade complexas de code completion, navegação de código, apoio a projectos, etc.
A maioria deles ainda estão livres e são muito poderosas.

NetBeans
NetBeans é a nova estrela do PHP, não é construído sobre a plataforma Eclipse, tem a maioria dos recursos de outros IDEs e ainda mais…, e é grátis também.
O desenvolvimento desta IDE é público, aberto e rápido, na seqüência do desenvolvimento do blog podem ser testadas novas compilações que sempre ficam disponíveis ao publico, isso é muito interessante, mesmo se já existe uma versão estável disponível (v6.7).


O que não estava coberto

Há uma abundância dos blocos poderosos como PSPad, Notepad + +, TextMate, vim e Emacs. Alguns são muito semelhantes as IDEs e ainda melhor se você quer um editor de texto bom, mas não trazem a experiência de uma IDE completa. Rever todas as boas IDEs, não seria possível (existem muitas), por isso apenas as grandes IDEs são comparados aqui.

 

IDEs Testadas

Aqui está a lista das IDEs para PHP incluídas em nossa análise:

  • PDT 1
  • PDT 2.0
  • Zend Studio 6
  • NetBeans 6.5
  • NetBeans 7 (development version)
  • Aptana PHP
  • Aptana Studio Pro
  • Codelobster *
  • Nusphere PhpED 5.6 *

Decidimos que seria interessante permitir que nossos leitores possam editar a tabela hospedada no Google Docs. Sinta-se livre para adicionar sua IDE favorita se ela não estiver lá, ou adicionar notas de algumas características das que constam na tabela.

The full table at Google Docs (not editable snapshot)

* Codelobster and Nusphere PhpED were filled in by Russian community members

 

Conclusão

Você ainda não usa uma IDE?, Você pode estar perdendo tempo, teste e verá a diferença.

PDT e NetBeans são boas IDEs, se você precisar de um monte de plug-ins, Eclipse é a melhor escolha, se as ferramentas de edição e finalização de código é mais importante para você, escolher o NetBeans. NetBeans é um pouco mais sensível, também, se você estiver na maior parte edição de HTML e CSS, tente Notepad + +, vim, TextMate ou o Emacs. Todos eles têm muito boas em capacidades de edição HTML e pode ser configurado para a conclusão do código simples, são mais rápidos e mais leves do que IDEs plenamente caracterizados.

Se você estiver editando o JavaScript complexo, tente Aptana, o que é surpreendente para JavaScript ou Spket o plug-in para o Eclipse tem quase as mesmas características.
E lembre-se, IDEs não são destinadas a mudar a maneira que você pensa. Eles simplesmente acelerar o processo de desenvolvimento.

 

Comercial vs Freeware

Por mais estranho que possa parecer, IDEs comerciais, tais como IDEs such e Zend Studio, Aptana Studio Pro não tem mais vantagens que as alternativas livres como PDT2.0 e NetBeans, sendo que ambos são muito boas.

Com Aptana Studio Pro, você obtém uma boa IE para depurar JavaScript, SFTP, FTPS e alguns outros recursos úteis por US $ 99.

Como NetBeans, o Zend Studio oferece code completion e detecção de erros do PDT, um formatador de código muito bom e personalizável, as capacidades de refactoring (que NetBeans também tem) e alguns assistentes para o Zend Framework. Sua licença custa 399 dólares.

 

Recursos

  • PDT Project – Official Eclipse PHP Development Tools website.
  • Zend Studio – Web site oficial Zend Studio.
  • NetBeans – Web site oficial do NetBeans.
  • NetBeans for PHP weblog – Aqui você pode aprender sobre os novos recursos a serem incluídos em futuros lançamentos e discuti-las como estão sendo desenvolvidos.
  • Aptana – Web site oficial Aptana.

 

Sobre o autor

Alexander Makarov é um desenvolvedor web profissional na Rússia. Ele também é a pessoa por trás RMCreative, um blog russo dedicado aos desenvolvedores web, designers e todos os interessados em como a Web é construída.

Por Alexander Makarov
Tradução: Sérgio Rocha

PHP 5.3.0 traz novidades e mudanças

A nova versão do PHP foi lançada, trazendo novidades principalmente na área de orientação a objetos.

Dentre as novidades podemos destacar:

  • Correção de 140 bugs;
  • Implementação de manespace;
    (namespace tem o objetivo de coibir problemas de nomes de variáveis no escopo do projeto ou bibliotecas muito extensas);
  • Implementação de late static bindings.
    (late static bindings tem a função de referenciar a classe para a herança estática);
  • A opção de ativar ou não um garbage collection para referencias cíclicas;
  • Nova biblioteca para acesso ao MySQL, feita para substituir a atual que foi desenvolvida pela própria MySQL especialmente para o PHP.
  • Novo Operador (?), parecido com o já existente operador ternário, o “?:” retorna o valor não vazio entre 2 expressões.
  • __DIR__ método mágico para saber a localização do script em questão.

No geral, essa versão é aproximadamente 15% mais rápida. Os itens que se destacam nessa melhoria são: otimização de acesso a memória, melhora no tratamento de exceções e redução das chamas ao sistema pelos métodos require(_once) e include(_once).

Fonte:
http://www.joaopedrobarros.com.br/2009/07/11/php-5-3-novidades-mudancas/

YouTube deixará de suportar o IE6

O YouTube anunciou que em breve deixará de oferecer suporte ao Internet Explorer 6. Usuários que visitarem o site com o IE6 verão uma mensagem pedindo para que migrem para "navegadores mais modernos" como o IE8, Firefox e Chrome.

Assim com o YouTube, o Digg também deixará de suportar o IE6. Com dois sites como o YouTube e o Digg encorajando os usuários a migrarem para novos navegadores, não deve demorar muito até que a maioria dos webmasters comecem a fazer o mesmo.

Hoje diversos sites estão fazendo campanhas apoiando a descontinuação do Internet Explorer 6 do mundo e promovendo outros browsers como o Firefox, Opera, Safari e Internet Explorer 8. Isso não vai resolver o problema imediatamente, mas um primeiro passo deve ser dado, abaixo alguns sites que estão participando da campanha:

iMaster, Brasil – Campanha  – Atualize seu navegador

Tableless, Brasil – A internet tem que avançar sem o IE6

Fini.no, Noruega – Norwegian media against Internet Explorer

End 6! – Yes, Internet Explorer 6 was amazing… in 2001

Stop IE6, Itália – http://www.stopie6.org/

Links para estatística de uso dos navegadores:

Browser Statistics
http://www.w3schools.com/browsers/browsers_stats.asp

Browser Stats
http://www.thecounter.com/stats/2008/December/browser.php

 

Participe da nossa campanha e Diga não ao Internet Explorer 6

Como testar seu site

image

Como todo webdesigner/desenvolvedo sabe, existem vários browsers que não são compatíveis com os padrões W3C (Consórcio World Wide Web).

A cada novo browser lançado, nós desenvolvedores termos um pouco mais de trabalho, ainda mais se tratando de Internet Explorer. Quem é desenvolvedor sente na pele o que eu estou falando.
Uma boa compatibilidade cross-browser é essencial para qualquer projeto web e o grande problema é justamente saber como seu web site vai ser renderizado corretamente em diferentes browsers sem ter instalado todos os browsers. Dispor de vários browsers na mesma máquina pode ser complicado, pois alguns deles só rodam em sistemas operacionais específicos.

Hoje existem diversas maneiras de solucionar esse problema dependendo do SO que você está trabalhando no seu projeto.

 

A baixo segue algumas das alternativas:

Xenocode Browser Sandbox disponibiliza versões portáveis de vários browsers com a possibilidade de virtualizá-los sem a necessidade de instalação.

IETester atualmente é uma app gratuita para Windows Vista e Windows XP, sua versão 0.3.1 renderiza os seguintes browsers: IE8 RC1, IE7 IE 6 e IE5.5

Expression Web SuperPreview é uma ferramenta desenvolvida pela Microsoft para você efetuar comparações de renderização entre várias versões do Internet Explorer.

Litmus é uma boa ferramenta, mas sua versão gratuita é limitada a 50 testes e somente os Browsers IE7 e Firefox 2.

Browsershots é uma aplicação web que gera screenshots das capturas de tela em vários browsers e Sistemas Operacionais. Selecionar vários browsers pode implicar em uma lentidão no sistema.

IE NetRenderer é semelhante a opção anterior, mas somente para Internet Explorer.

Multiple IE nos dá a possibilidade de ter várias versões do Internet Explorer instaladas no mesmo PC. Você pode instalar versões como: IE3 IE4.01 IE5 IE5.5 e IE6.

 

Fonte:
http://www.pinceladasdaweb.com.br
http://www.rafaelrp.com.br/blog/?p=207

Microsoft Web Platform Installer

image image

A Microsoft Web Platform Installer (Web PI) é uma ferramenta gratuita que torna simples baixar, instalar e manter-se atualizado com os últimos componentes da plataforma Web da Microsoft, incluindo o Internet Information Services (IIS), SQL Server Express, .NET Framework e do Visual Web Developer. Além disso, ele também pode ser usado para instalar aplicações web populares baseadas em ASP.NET e PHP, como o WordPress, DasBlog e outras.

Popular Web Apps
Instale aplicações web populares baseadas em ASP.NET e PHP web apps tais como DotNetNuke e WordPress.

.NET Framework
Instale a versão mais recente do. NET Framework.
Inclui tudo o que você precisa para trabalhar com ASP.NET.

IIS e Extensões
Instale a última versão do IIS, incluindo as últimas extensões como Web IIS IIS Media Services.

SQL Server
Instale a versão mais recente do SQL Server 2008 Express.
Inclui tanto o banco de dados de motores e ferramentas.

Visual Web Developer
Instale a versão mais recente do Visual Web Developer Express.

Extra e Goodies
Além de tudo, a Web PI também inclui a versão mais recente da comunidade PHP para Windows.

 

Sistemas Operacionais:
Windows Vista, Windows Vista SP1, Windows XP SP2 +, Windows Server 2003 SP1 +, Windows Server 2008.

Para saber mais acesse:
Microsoft WEB

HeidiSQL

 image

HeidiSQL é uma ótima ferramenta para gerenciar banco de dados MySQL, O programa é sem dúvida a melhor opção gratuita para administrar banco de dados MYSQL.

O aplicativo pode ainda exportar ou importra dados, tabelas, monitora o status e rendimento do servidor além de possuir um assistente para criar consultas SQL complexas, confira a seguir algumas características do programa:

  • Gerar ótimos arquivos SQL (exportar dados);
  • Sincroniza duas tabelas entre dois bancos de dados;
  • Gerencia permissões de usuários ;
  • Importa arquivos txt;
  • Exporta dados como CSV, HTML and XML
  • Vizualiza e edita tabelas e dados em uma Grid;
  • e muito mais…

HeidiSQL é um programa livre e cliente código-aberto para o MySQL desenvolvido pelo programador alemão Ansgar Becker conhecido pelo seu pseudônimo Anse (www.anse.de).

Doenload aqui.

Mensagem de erro ao clicar em um nó de bases de dados do SQL Server

image

Bati um pouco a cabeça quando migrei para o SQL Server 2008, tive que deixar de usar o SQL Server Management Studio Express 2005 para usar o SQL Server Management Studio Express 2008, pois o 2005 é incompatível com o SQL Server 2008, ai veio o problema. Sempre que tentava acessar um nó de base de dados no SQL Server Management Studio do SQL Server 2008 recebia a seguinte mensagem de erro:

Falha ao recuperar dados para essa solicitação. (Microsoft.SqlServer.Management.Sdk.Sfc)

Ocorreu uma exceção ao executar um lote ou uma instrução Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

The server principal "xx" is not able to access the database "xy" under the current security context. (.Net SqlClient Data Provider)

Pensava eu que o problema tinha relação com o Microsoft SQL Server 2008, então comecei a pesquisar sobre o erro, mas não consegui achar uma solução.

Reinstalei o Microsoft SQL Server 2008, e o problema persistiu, instalei o Microsoft SQL Server 2005, e acessei o mesmo com o Microsoft SQL Server Management Studio 2005 então o nó foi exibido, em seguida acessei com o Microsoft SQL Server Management Studio 2008 e o erro voltou a se repetir.
Então tirei a conclusão de que o erro não era do SQL Server 2008 e sim do Microsoft SQL Server Management Studio 2008.

Agora que já identifiquei de quem era o problema, comecei a pesquisar pelo erro e encontrei o seguinte:

Mensagem de erro quando clica o nó de bases de dados no SQL Server Management Studio do SQL Server 2008: "Falha ao obter dados para este pedido".

Mensagem de erro:

Falha ao obter dados para este pedido (Microsoft.SqlServer.Management.sdk.sfc)

Causa:

Este problema ocorre quando uma das seguintes condições for verdadeira:

  • Bases de dados de um ou mais estão no modo "off-line".
  • SQL Server Management Studio corretamente não é possível ler um ou mais bases de dados. Assim, não é possível obter determinadas propriedades de uma base de dados.

Nestas situações, um conjunto de objetos não aparece no painel de Explorador de objetos ou no painel Detalhes do Explorador do objeto . Por conseguinte, determinadas propriedades da base de dados não são calculadas como um grupo na coleção de objetos.
Nota Este problema também ocorre se não for um membro do grupo Sysadmins.

Contornando o problema:

Para contornar este problema, siga estes passos:

  1. Feche a mensagem de erro.
  2. Pressione F7 para abrir o painel de detalhes do Explorador do objeto .
  3. Clique os cabeçalhos da coluna com o botão direito do mouse e desmarque a coluna Agrupamento.
  4. Clique com o botão direito do mouse no nó de bases de dados e, em seguida, clique em Atualizar .

Agora o nó será exibido.

A Microsoft confirmou que este problema ocorre nos produtos Microsoft listados abaixo:

  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Reporting Services

Aptana Studio – IDE

Aptana studio é um ambiente completo de desenvolvimento web 2.0 que acompanha um conjunto de bibliotecas com suporte para:
Ajax, PHP, HTML, CSS, Javascript, Ruby on Rails, Adobe Air, Python entre outras. A ferramenta é gratuita em sua versão “Studio Community Edition” e de código fonte aberto, baseado nas ferramentas da plataforma Eclipse.
O programa possui suporte a diversas linguagens de programação, auxilia no desenvolvimento e digitação dos códigos exibindo sugestões de comandos enquanto os códigos são digitados. O assistente de código html inclui todos os elementos e propriedades html.

Com um visual limpo e organizado, gratuito e poderoso não dá para não deixar de usar.

Aptana Studio Community Edition apresenta suporte a FTP sendo possivel fazer uploads, downloads e sincronização de arquivos diretamente com o servidor, também traz suporte Nativo para quase todas os frameworks de Js existentes (tais como jQuery, extJs, YIU, Dojo, MooTools, Scriptaculous, e por aí vai.

Para quem já usa o Zend Studio for Eclipse, o Aptana pode ser adicionado como Plugin.

O vídeo acima mostra as principais características da IDE Aptana Studio para PHP, abrangendo todos os conceitos básicos e algumas funcionalidades avançadas edição também.

Baixe aqui a versão Gratuita.

Instalando PHP no Windows Vista e IIS7

Inicialmente acesse o Painel de Controle, Programas e Recursos, clique em Ativar ou desativar recursos do Windows e marque os seguintes itens:

image

Clique em OK, apos a instalação reinicie o computador.

Faça o download do php no seguinte endereço: http://www.php.net/downloads.php.
Deve ser feito o download do pacote ZIP pois o installer não funciona no Vista.

Crie um diretório para colocar os arquivos do zip baixado do PHP, neste exemplo vou utilizar C:\PHP, mas pode ser qualquer um.
Extraia todo o conteúdo do arquivo Zip do PHP para este diretório.

Renomeie o arquivo php.ini-recommended para php.ini

Abra o arquivo php.ini em um editor de texto e procure pelo parâmetro extension_dir, atribuindo o valor c:\php\ext. (local onde o php foi copiado).

Copie o arquivo php.ini para C:\windows.

Abra o IISManager em Painel de Controle, Ferramentas Administrativas, Gerenciador do Serviços de Informações da Internet (IIS).

Clique no ícone do Conexões (esquerda) e a seguinte tela aparecerá na direita (já marquei nesta tela os itens que serão utilizados)

image

Em Mapeamento de Manipulador clique em Adicionar Mapeamento de Script do lado direito e configure: Caminho da solicitação = *.php ; Executável = C:\PHP\php5isapi.dll ; Nome = PHP ISAPI

image

Clique em Documento Padrão e acrescente index.php, default.php.

Reinicie o IIS clicando no ícone do seu server em Conexões e Reiniciar no menu do lado direito da tela.

Para testar crie um novo documento com o editor de texto e o conteúdo dele deve ser : <?php phpinfo(); ?>.

Salve este documento com o nome de phpinfo.php no diretório c:\inetpub\wwwroot (ou no path raiz do IIS caso ele tenha sido mudado

Acesse via browser o endereço http://localhost/phpinfo.php, uma tela parecida com esta deve aparecer:

image

NetBeans com suporte para o PHP

php-debugger-cut

 

A IDE NetBeans agora tem suporte ao PHP, a novidade veio a partir da versão 6.1, A Sun também implementa o uso de sua mais nova aquisição, o banco de dados relacional de Código Aberto MySQL. 

As ferramentas PHP para uso no NetBeans vêm em uma IDE à parte do sistema principal.

 

O que é o NetBeans:

*NetBeans é um projeto Open Source de sucesso com uma ampla base de usuários, uma comunidade crescente, perto dos 100 parceiros pelo mundo (e aumentando!). A Sun Microsystem fundou o projeto Open Source NetBeans em junho de 2000 e continua sendo seu principal patrocinador.

*O NetBeans IDE é um ambiente de desenvolvimento – uma ferramenta para programadores escrever, compilar, depurar e implantar programas. É escrito em Java – mas pode suportar qualquer linguagem de programação. Existem também um enorme número de módulos para aprimorar o NetBeans IDE. O NetBeans IDE é um produto gratuito sem restrições de como ser utilizado.

*Fonte – NetBeans.org

Download NetBeans