Uncategorized

quarta, 07 de outubro de 2009

Estenda o JQuery e facilite sua vida

Escrito por: alberto

Após um longo periodo sem postar nada resolvi dar o ar da graça novamente :). Estava aqui trabalhando num projeto e fui criando alguns mini-plugins do jquery apenas para ir facilitando minha vida. Como é bem fácil criar este tipo de coisa, e está sendo bastante útil para mim, vou deixar aqui para que seja útil para outras pessoas também.

Para exemplificar meu problema, estou usando um plugin para listas de autocomplete,  por sinal ele é muito bom, bastante flexível e tranquilo de usar. Como eu queria ter o autocomplete em diversos lugares do site, pensei: “Vou criar uma função, isolar o código lá, e ficar só chamando ela passando  o id do campo que eu quero.” Só que o jquery deixa você estender seu comportamento de uma forma tão fácil que resolvi ir criando extensões para manter uma maior legibilidade do código.

Ao invés de ter no código 

adicionaAutoComplete("qqId","urlParaLoadDeTags")

eu passei a ter

$("#qqId").addAutoComplete("urlParaLoadTags")

. Aí para deixar mais fluente ainda, a gente pode ter

$("#qqId").autoCompleteComTags()

.  Para fazer este tipo de coisa, basta escrever algo parecido com:


jQuery.nomeDaSuaFuncao = function(algumParaOuNao){
// faz o que quiser aqui
jQuery(this).attr("value", "trocando o valor para exemplificar");
};

Bom era isso, espero que ajude nos seus códigos javascript :).

Java

programação

ruby

quarta, 15 de julho de 2009

API para acessar o delicious

Escrito por: alberto

Eu estava procurando uma api para acessar o delicious via Java, como nenhuma foi satisfatória, pelo menos para mim, resolvi fazer uma :). O código foi desenvolvido sob a idéia do máximo de fluência, então para tudo tem Tiny Types e os metodos foram programados para permitirem o encadeamento de chamadas, deixando o código mais fácil de ser lido. No começo achei que o beneficio do Tiny Type iria ficar restrito a fluência, mas no final, na hora de parsear o xml de retorno com o XStream, ele foi de fundamental importância para as conversões. O projeto está no github, e quem quiser pode acessar clicando aqui :).

Como eu precisava fundamentalmente fazer a busca dentro de todos os posts e também possibilitar inserção, só tá implementado estes 2 metodos, mas acho que logo logo todas as chamadas estarão disponíveis. Espero que ajude!

programação

sexta, 19 de junho de 2009

Programação e bom senso, tudo a ver!!

Escrito por: alberto

Hoje de manhã, não sei porque eu pensei, muito do nosso trabalho enquanto estamos programando é ter bom senso. Claro que precisamos estar sempre estudando, aprimorando nossas técnicas, mas na hora de programar em si, vale muito o bom senso.

Por exemplo, quando vamos criar alguma classe, tipo um Carrinho de compras, e o mesmo vai ser utilizado para várias lojas, o BOM SENSO manda programar para uma interface, pois a maneira de calcular o valor total do carrinho pode mudar de loja para loja. Agora caso você esteja implementando alguma coisa bem especifica para um cliente, para que criar uma Interface e tal, esse carrinho só vai ser utilizado por essa loja… não adiante problemas, tenha BOM SENSO :), seja ágil.

Outro assunto muito falado, com toda razão por sinal, são os testes. Vocês que não gostam de testar :), tenham BOM SENSO!!, provavelmente sua aplicação vai sofrer mudanças durante o tempo e se você não tiver testes como vai fazer?? Ficar rodando tudo para simular as coisas… argh!! Testar é que nem malhar ou comida japonesa, no inicio você pode até não gostar, mas depois que acostuma, não quer parar mais. Tenham BOM SENSO!!

Então é isso, na hora de programar tenham BOM SENSO!!, não se apegue a estilos batidos, para tal app tenho que fazer isso, para outra tenho que fazer aquilo, pare e pense no que é melhor para cada uma e faça o que é necessário, olha o BOM SENSO :)!.

Java

segunda, 15 de junho de 2009

Automatizando o composite pattern

Escrito por: alberto

Talvez esteja errado, mas em vários projetos temos algumas classes que implementam o Composite Pattern, ou algo parecido :). Com esses objetos, por exemplo, temos que criar algum metodo que retorne os possiveis pais para montar um combo ou então apresentá-lo de alguma forma, tipo avo/pai/filho e por aí vai. Para poupar um pouco de trabalho, criei um projetinho, hospedado no github :), que visa facilitar nossa vida. Caso tenham projetos desse tipo e ainda não tenham implementado algo para isolar isso, talvez valha a pena dar uma olhada :). Valeu!!!

tags: ,

Java

quarta, 10 de junho de 2009

Configurando Virtual Host no Tomcat

Escrito por: alberto

Recentemente tive que configurar um Virtual Host no Tomcat, como eu nunca tinha feito, tive que pesquisar e aprender. Um Virtual Host é útil quando você tem um único Tomcat atendendo vários dominios, tipico em hospedagens compartilhadas. Existem vários tutorias aí na internet, inclusive o do próprio site do Tomcat, que foi o que eu segui. Vou deixar aqui os passos e espero que sirva para vocês.

Comece criando uma pasta a partir da raiz da instalação do seu tomcat, por exemplo /usr/local/tomcat/nova_pasta, podemos dizer que isso já é o seu novo Virtual Host, ela está funcionando agora como a pasta webapps padrão do Tomcat, que por sinal é o Virtual Host default. Agora vem a hora de colocar seu projeto, pegue seu .war e descompacte dentro da pasta criada, para ele ser o root de seu Virtual Host, crie com o nome ROOT.war, procedimento idêntico ao que faria usando a webapps. Feito isso, dentro do contexto que você acabou de criar, ROOT por exemplo, crie a pasta META-INF e crie um arquivo context.xml, onde ficarão as configurações do seu contexto. Segue um exemplo:


<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="${CATALINA_HOME}/nomeDoSeuVirtualHost/nomeDoContexto">
<!-- Caso tenha um contexto -->
<Resource name="jdbc/xxxxx" auth="Container" type="javax.sql.DataSource"
username="xxx"
password="xxxx"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://xxxx:3306/xxx?autoReconnect=true"
maxActive="15"
maxIdle="7"
validationQuery="Select 1" />
</Context>

Feito isso, vem a última parte, que é configurar o tomcat para que ele ache seu Virtual Host. Vá em ${CATALINA_HOME}conf/server.xml e procure pela tag engine, aí você vai achar o que falamos no ínicio, a pasta webapps configurada para ser o Virtual Host default. Agora adicione o seu Virtual Host adicionando o seguinte trecho:


<Host name="www.seudominio.com.br" appBase="sua_nova_pasta">
</Host>

Pronto, feito isso, teoricamente tudo deve funcionar normalmente :), caso não funcione posta aqui ou manda email :).

Uncategorized

sexta, 29 de maio de 2009

Entre na onda do google!!

Escrito por: alberto

Tá bom, o trocadilho foi meio sem graça, mas a noticia é legal. O Google está lançando mais um de seus brinquedinhos, e ele se chama Google Wave. Resumindo, é um local onde você pode compartilhar informações dos mais ricos formatos, de texto a video e editá-los de forma concorrente. WEB 2.0 na veia!, várias pessoas, que fazem parte da mesma onda, interagindo na mesma hora sobre um mesmo conteúdo. Vale a pena dar uma olhada no Google Wave, rede social(acho que é pelo menos) que promete mudar nossas vidas!! Imagina fazer programação pareada online e provavelmente várias outras coisas que não estão vindo na minha agora!!

Eventos

Java

segunda, 25 de maio de 2009

Dividendos do Falando em Java 2009

Escrito por: alberto

Ontem aconteceu mais uma edição do Falando em Java, evento promovido pela Caelum e patrocinado por grandes empresas do nosso mercado, entre elas, Globo, Locaweb e JBoss. O evento contou com excelentes palestrantes, destaque para o Jim Webber, consultor da ThoughtWorks e que fez duas excelentes palestras sobre SOA.

Como já falei, é sempre muito legal participar destes eventos, além de excelente conteúdo, você tem a oportunidade de ampliar sua rede de contatos. Ontem conheci uma galera da ceJug, Grupo de Usuarios Java do Ceará, muito legal. Já conhecia de nome o Rafael Carneiro, um dos lideres, e ainda fiquei sabendo que a comunidade lá é muito ativa. De acordo com o Rafael só perde para a souJava, que é a mais ativa do Brasil. Conheci também um pessoal de Vitória-ES, eles estão pensando em iniciar um projeto opensource sobre TV Digital, e claro, me escalei para ajudar :). Para finalizar, conheci a galera da Caelum que participa do Stella, o Cauê, que por sinal vem palestrar em agosto para o Oxente Rails, e o Jonas.

Tenho que separar um paragrafo, para falar da galera do Rio, os caras são muito gente fina. Tinha feito curso com os caras ano passado na Caelum e eles estavam lá para o evento. Atualmente são instrutores da Caelum - Rio, em junho vou passear lá com minha namorada e já marcamos de ir no baile funk. Isso é, se os caras não enrolarem, porque se tem uma galera enrolada, são aqueles caras!!!.

No final do evento rolou um coquetel para a galera interagir mais e depois todo mundo foi para um bar chamado o O’Malleys(não sei bem se o nome é esse…), devo falar que a galera ficou um pouco alta :). Gostaria que tivesse mais conterrâneos meus lá, mas de qualquer forma achei muito bom o evento!!! Com o passar do tempo vou postando sobre as palestras, a do VRaptor 3, Guerrilha SOA e Para onde vai a plataforma Java foram as melhores na minha opinião.

tags: , , ,

Eventos

Java

carreira

quarta, 13 de maio de 2009

Falando em Java 2009

Escrito por: alberto

No dia 24/05 vai ser realizado mais um Falando em Java. O evento já é considerado o mais importante sobre Java no país e eu não vou perder!!! Estive falando com o pessoal da Caelum e está sendo esperado 600 participantes para esse ano. Espero que se tiverem oportunidade participem, muita gente legal e conhecimento circulando em alta!!!

Eventos

ruby

domingo, 10 de maio de 2009

Oxente Rails

Escrito por: alberto

Pessoal, vai rolar aqui no nordeste, especificamente em Natal/RN, o Oxente Rails!! Evento para falar exclusivamente de Ruby e assuntos relacionados. Quem puder, não deixe de participar!!! Quanto mais prestigiarmos estes tipos de eventos aqui no Nordeste mais eles acontecerão.

tags:

Java

Uncategorized

terça, 14 de abril de 2009

Brincando com Google App Engine para Java

Escrito por: alberto

O google lançou recentemente a versão do GAE para rodar aplicar em Java, e eu, um pouco atrasado é verdade, fiz apenas um teste simples subindo uma aplicação de exemplo para o ambiente deles, nada de mais, pelo menos por enquanto :). O ambiente contém algumas restrições, aqui você acha todas as classes que tem execução permitida. É muito legal termos um ambiente deste para testar algumas das nossas aplicações. Como ainda tá em fase beta é necessário fazer um cadastro e esperar a confirmação para o uso. Logo abaixo estarei falando do que tive de fazer para subir minha primeira app, então se tiver interessado em fazer o mesmo, continue lendo :).

Primeiro baixei o Eclipse Ganymede JEE, por conveniência mesmo, depois vem a hora de instalar o plugin do google para facilitar o desenvolvimento,  você encontra a explicação aqui. Feito isso, basta  você seguir os passos do tutorial do link anterior que vai conseguir construir sua primeira app. Finalmente é a hora de fazer o upload para o ambiente do google, bem, nessa hora tive uma dificuldade inesperada. O plugin faz o build do seu projeto para fazer o upload e durante este build ele usa javac para compilar algumas coisas. Para achar a localização do javac, ele faz uso do System.getProperties(”java.home”) para pegar a localização da JRE que o eclipse tá usando, caso não ache o javac na pasta bin ele tenta em ../bin/, ou seja, tenta achar bin no diretório acima. Quando instalei o Java aqui, pedi para instalar tanto o JDK quanto apenas a JRE, não me lembro o motivo agora, o importante é que o eclipse tava apontando justamente apenas para a JRE e, consequentemte, deu pau na hora de fazer o upload da app. Então, para consertar, você pode ir em, seu projeto->botão direito->Properties->Run/Debug Settings/sua_app/edit/aba jre/Installed JREs e escolher a pasta jre dentro da sua pasta Jdk. Quando o plugin for fazer o upload, ele não vai encontrar o javac dentro da pasta jre/bin mas vai encontrar  em ../bin/ e você vai ficar feliz. Caso esteja na mesma situação que eu me encontrei, espero que o post ajude, caso não esteja, realmente a leitura desse paragrafo pode ter sido meio sem sentido :)

Uma coisa bastante interessante, e que a comuninade vem testando bastante, é rodar as linguagens de script em cima da JVM no ambiente do google, então aproveite para colocar seu projeto JRuby on Rails nas nuvens do google!!!.

tags: , ,



newsletter

cadastre seu e-mail!  

últimas do twitter

» siga a settech no twitter

swTV

 


Atuando no mercado desde 1999, a SetWeb conta com um time de profissionais que busca soluções adequadas e eficazes para a sua empresa. Aliando estratégia à tecnologia, a SetWeb possui como foco principal o resultado de ações implementadas para cada negócio.
Esse é o nosso compromisso e o nosso desafio.