Hoje venho aqui apresentar-lhes meu mais novo jogo para a plataforma iOS: Ship Hunt.
O objetivo do jogo é simples, você é um navio e tem que atingir outro navio afundado com um missíl. O míssil a ser disparado deverá ser controlado por você pelo acelerômetro do dispositivo, desviando dos obstáculos para acertar o alvo.
O jogo está disponível em uma versão gratuita com 1 capítulo e 10 fases jogáveis, e uma versão paga com 4 capítulos e 40 fases.
Download na Apple app store:
Free version: http://bit.ly/1whDGVj
Full version: http://bit.ly/1wdDYME
Confiram o trailer e algumas imagens do jogo:
Hoje falarei um pouco sobre um assunto abordado nas provas de certificação de programador Java: Classes Internas (Inner Class). O conteúdo a ser abordado aqui não é nem de longe completo, já que este assunto é bem extenso. No entanto, o propósito deste post é ser um guia rápido para sanar eventuais dúvidas sobre o assunto ou simplesmente introduzir novos programadores ao tema.
Existem três razões pelas quais é interessante o uso de classes internas:
- Organização: principalmente quando a classe não irá ser usada em muitos contextos.
- Acesso: uma vez que classes internas podem acessar variáveis do classes externa.
- Conveniência: ter que criar um arquivo para cada classe as vezes é desnecessário.
As classes internas são dividas em duas categorias: estáticas e não estáticas. Dessas categorias, separamos em quatro tipos de classes internas:
- Classes internas estáticas: declaradas como membros estáticos de outra classe.
- Classes internas de instância: declaradas como membros de instância de outra classe.
- Classes internas locais: declaradas dentro de métodos de outras classes.
- Classes internas anônimas: são como classes internas locais, porém, escritas de outra forma.
Vamos nos aprofundar melhor em cada variância das classes internas.
Hoje irei falar sobre um tema simples mas que surgiu durante um dia normal de desenvolvimento de software no serviço.
O que fazer quando o navegador salva informações para preencher formulários automaticamente e não queremos esse comportamento em nossos forms?
Para resolver isso temos uma propriedade chamada autocomplete que pode ser colocada como On ou Off. No caso, para evitar que o navegador preencha os campos do nosso formulário automaticamente utilizamos da seguinte forma a propriedade:
<input name="name" type="text" autocomplete="off" />A propriedade também pode ser utilizada no formulário inteiro. Neste caso, ficaria da seguinte forma:
<form action="demo.php" method="post" autocomplete="off">Por padrão, o autocomplete é On, portanto, não é necessário fazer nada se desejar que o navegador memorize os campos automaticamente.
Por fim, é importante salientar que essa propriedade tem suporte nos navegadores IE, Firefox, Chrome e Safari (para autocomplete no form) e IE, Firefox, Chrome, Safari e Opera (para autocomplete em campos).
Curta a fan page do site e receba atualizações antes de todo mundo!
Até a próxima :)
Além disso, a conferência tratará de alguns temas escolhidos pelo público, que são:
- Frameworks & Ferramentas
- APIs & Webservices
- Desafios e Tendências
- Estudos de Caso e Casos de Sucesso
- Segurança
- Mercado de Trabalho
Este book é interessante para:
- Quem está começando a aprender PHP com Oracle;
- Quem é um programador PHP e deseja aprender Oracle;
- Quem está inseguro sobre como instalar o PHP, ou Oracle;
- Quem pretende apenas saber as boas práticas de PHP e Oracle.
Este livro dá-lhe a base fundamental e necessária para criar aplicações web de alta performance com PHP e Oracle.
Hoje falarei um pouco de um problema relativamente comum entre os atuantes da área de desenvolvimento: acentuação.
Este tutorial foi testado no seguinte ambiente/situação:
- S.O.: CentOS 5.2
- PHP : 5.2
- OCI : Oracle Instant Client 10g
Ao tentar acessar (de outro servidor) uma view de um banco de dados Oracle, os caracteres especiais eram exibidos com '?' (interrogação).
Se você já usou Doctrine, sabe que ele se conecta ao banco de dados por PDO.
O erro apresentado era este: PDO::__construct() [pdo.--construct]: [2002] Invalid argument
Em outras palavras...
Você pode colocar configurações do Apache dentro deste arquivo para que somente o site em questão "entenda" essas configurações.
O erro descrito na imagem abaixo, ocorreu quando o Flex se comunicava com o PHP através do AMFPHP.
O erro nos diz que não foi possível fazer a inclusão de uma classe (PHP) embora ela exista.
Veja aqui como vai ficar o exemplo do tutorial finalizado (caso as abas não apareçam, é algum problema com esse servidor gratuito que eu arranjei, rs).
Printscreen das abas:
Utilizaremos neste tutorial jQuery UI. O jQuery UI fornece abstrações de baixo nível de interação e animação, efeitos avançados de alto nível, widgets personalizáveis, construídos em cima da jQuery JavaScript Library, que você pode usar para construir aplicações web altamente interativas (jQuery UI).
Para realizar este tutorial precisaremos da lib jQuery versão 1.4.2, jQuery UI versão 1.8.2 e do css da jQuery UI para montar as abas.
Todos estes arquivos e o projeto realizado neste tutorial, você pode baixar aqui.
Caso prefira fazer os passos do tutorial, baixe o arquivo do projeto e separe em um diretório os arquivos:
- jquery-1.4.2.min.js
- jquery-ui-1.8.2.custom.min.js
- css/smoothness/*
Crie uma página HTML com alguns checkbox. Coloque a propriedade "name" dos checkbox com o nome de chk[]. Na propriedade "value" coloque qualquer valor.
Este é o segundo de dois tutoriais destinados a iniciantes na tecnologia Java para web.
Os tutoriais que compõe esta série estão a seguir:
- Iniciando em JSF e RichFaces – Instalação e Configuração do Ambiente (Parte I)
- Iniciando em JSF e RichFaces – Hello World (Parte II)
Este tutorial irá mostrar como criar o famoso “Hello World” em JSF e RichFaces. Partirei do ponto que você já tem o ambiente de desenvolvimento configurado corretamente, conforme o tutorial que precede este: Iniciando em JSF e RichFaces – Instalação e Configuração do Ambiente (Parte I).
Olá!
Este é o primeiro de dois tutoriais destinados a iniciantes na tecnologia Java para web.
Os tutoriais que compõe esta série estão a seguir:
- Iniciando em JSF e RichFaces – Instalação e Configuração do Ambiente (Parte I)
- Iniciando em JSF e RichFaces – Hello World (Parte II)
Antes de começarmos, vamos dar uma breve definição sobre o que é JSF e RichFaces.
- JavaServer Faces (JSF) é um framework MVC para o desenvolvimento de aplicações Web, que permite o desenvolvimento de aplicações para a internet de forma visual, ou seja, arrastando e soltando os componentes na tela (JSP), definindo propriedades dos mesmos, etc. Mais informações no Wikipédia.
- RichFaces é uma biblioteca de componentes open source para aplicações web que trabalha com a framework JSF. Com ela, podemos fazer uma fácil integração de Ajax com as aplicações. Mais informações no Wikipédia.
Para este tutorial, utilizaremos os seguintes programas/ferramentas:
Nota: As versões dos programas abaixo listados, foram testados e são compatíveis entre si. Caso venha a instalar uma outra versão, verifique se existe compatibilidade entre as ferramentas.
- Eclipse 3.5.2 (Galileo) (baixe aqui)
- JBoss Tools 3.1.0.GA Stable Release (All plugins) (baixe aqui)
- Apache Tomcat 6.0.26 (baixe aqui)
Primeiramente baixe o eclipse e descompacte o arquivo no seu computador. Em seguida, acesse o diretório e execute o eclipse.
Se você pretende rodar aplicações web feitas em Java, um servidor que “entenda” a linguagem é necessário, e este tutorial visa justamente ajudar os iniciantes que desejam se aventurar nesta área.
O Tomcat é um servidor web Java, mais especificamente, um container de servlets. Embora o Tomcat possua características de um servidor de aplicação, não pode ser considerado um, já que não preenche alguns requisitos específicos. Para maiores informações, consulte o Wiki.
Este dica é referente a um erro encontrado e solucionado por Neil Tanaka, coordenador chefe da equipe de desenvolvimento do local onde trabalho, durante análises a um antigo site.
Descrição do problema: Em um site comum (PHP), existe um painel de login dentro de um iframe. Este arquivo que faz o login do usuário é chamado dentro do iframe, e ele envia para si mesmo, os dados do formulário de login. Ao validar um usuário, o arquivo abre uma janela popup. Esta janela popup, verifica se existe uma sessão em PHP antes de exibir o conteúdo. Caso não encontre nenhuma sessão ativa, ela exibe o texto "acesso restrito".
Em navegadores Internet Explorer, a sessão funcionava corretamente. Porém nos navegadores Mozilla Firefox e Google Chrome, a mensagem "acesso restrito" era exibida, indicando que a sessão não foi gravada. No entanto, o fato do Firefox e do Chrome não gravarem a sessão, não era uma regra. Em alguns computadores, a janela popup exibia o conteúdo corretamente, em outro computadores, "acesso restrito".
Os 4 passos para habilitar ou desabilitar a exibição de erros são os mesmos tanto no Windows como no Linux.
Vamos imaginar a seguinte situação: Você está desenvolvendo um site no seu computador pessoal (Windows) e possui instalado e rodando o Skype (programa de comunicação via internet). O Skype é um programa que opera por padrão na porta 80 (a mesma do Apache) ou na 443. Supondo que você não soubesse que o Skype opera na mesma porta que o Apache e tentasse iniciar o Apache, este emitiria um erro, informado que a porta está em uso.
Ao invés de você sair vasculhando seu computador todo, em busca de um programa que esteja rodando da porta 80, você poderia simplesmente trocar a porta de operação do Apache para a 8080! Simples não?!
Este foi só um exemplo, mas é um exemplo real.
Os passos para trocar a porta do Apache são os mesmos tanto no Windows como no Linux.
Mas como redirecionar o usuário usando somente HTML?

