Pular para o conteúdo principal

Postagens

Mostrando postagens de abril, 2010

Começando o desenvolvimento com Android

Olá pessoal! Nos últimos dois posts que fiz, o objetivo era apresentar os conceitos básicos da plataforma Android para que pudéssemos iniciar o desenvolvimento de aplicações de forma menos traumática, principalmente para aqueles que estão saindo do mundo Web e/ou Enterprise e entrando nessa área de mobilidade. Então, acho que já está mais do que na hora de colocarmos a mão na massa. Pra isso, vou fazer um guia rápido pra você deixar seu ambiente de desenvolvimento pronto e ai vamos fazer um primeiro "Hello World", apesar de não gostar muito desse tipo de exemplo. E para o post não ficar muito extenso, em uma continuação desse post vamos publicar a aplicação no Market. IDE e SDK A principal IDE utilizada para o desenvolvimento é o Eclipse que, com o download de um único e simples plug-in, você será capaz de criar projetos, debugar (inclusive direto do aparelho), criar telas através de editores gráficos (irei mostrar mais a baixo) e gerar os pacotes para distribuição da sua apl

JBoss In Bossa está quase aí!

Na próxima semana acontece em São Paulo a reunião anual promovida pela JBoss Brasil, o chamado JBoss In Bossa ! Este evento será muito especial porque contará com palestrantes internacionais que são líderes dos projetos open source da JBoss/RedHat, palestrantes da JBoss Brasil e convidados especiais da comunidade brasileira. Toda essa turma trará para os desenvolvedores, gestores e arquitetos as informações mais atualizadas sobre a família de tecnologias Java EE desenvolvida e fomentada pela JBoss. Estaremos lá contribuindo com o nosso conhecimento e experiência em algumas tecnologias Java EE ao oferecer para a comunidade uma visão sobre o JavaServer Faces (JSF) e o projeto ScrumToys num workshop com 2 horas de duração. Neste workshop serão ilustradas as diversas melhorias do JSF 2.0 através de códigos escritos para uma aplicação web simples que, chamada de ScrumToys, foi incorporada ao pacote de exemplos na última versão do NetBeans. Esta aplicação será executada através do JBos

Fatos e Fotos sobre o CasualClass TV Digital

Este CasualClass teve um tema muito especial, o assunto certo, na hora certa, com as pessoas certas: TV Digital com Java   Assunto certo na hora certa porque o Ginga foi recentemente aprovado como padrão Brasileiro, saiba mais no post do Dr. Spock aqui no Globalcoders. Pessoas certas porque tivemos toda a motivação e conhecimento de mercado do Dimas Oliveira , aliado à experência prática e visão de Desenvolvedor do Thiago Vespa que falou sobre Blu-ray e Ginga-J e o conhecimento de LWUIT do Neto Marin . Este CasualClass foi um pouco diferente dos anteriores pois, seguindo sugestões dos amigos que sempre participam do Casual Class, invertemos a ordem da pizza que foi servida logo no início do evento. Mas, as pessoas comeram mais rápido do que nós imaginávamos, e logo foram para o auditório, onde o Dimas Oliveira, engenheiro da Sun / Oracle teve "atitude" e começou a conversar informalmente com a galera, que respondeu e perguntou bastante. Sem dúvida a interação

Novidades relacionadas a Google App Engine na Globalcode

No último boletim tivemos dois anúncios relacionados a Google App Engine, a plataforma de Cloud Computing da Google, ambas em parceria com Rafael Nunes , instrutor e sócio da YouAndWe , Unidade Globalcode no ABC Paulista / São Bernardo do Campo. Novo Minicurso gratuito "Introdução a Google App Engine" Quer colocar aquela sua ideia genial pra funcionar? Quer compartilhar seus projetos open-source com a comunidade? Não quer se preocupar com infraestrutura de servidores e ter um poder de processamento e escalabilidade além do imaginável? Nós da comunidade Java temos todas as ferramentas que precisamos para criar aplicações igual ou superiores às que são criadas em outras plataformas, na verdade temos até mais. Vamos ver um pouco da estrutura do Google App Engine, sua plataforma e serviços, e como podemos nos beneficiar em executar nossos projetos na plataforma Java utilizando-se de toda a estrutura disponibilizada pelo Google. Seguindo a tendência da Open4Education2.0

3º Bate Papo do SP-GTUG - Divulgação

Pessoal, Teremos um novo bate papo do SP-GTUG, aberto e gratuito, acerca de mais uma tecnologia do Google: o Analytics. Este será o terceiro bate papo do SP-GTUG. Local e data O bate papo acontecerá no dia 28/04/10, das 19:00 às 22:00 na Globalcode. Para fazer sua inscrição e participar acesse a home da Globalcode e vá até a parte de "Minicursos Gratuitos da Semana " (ou acesse esse link para ir direto a página de inscrição). Conteúdo da apresentação Abaixo segue a descrição passada pelo palestrante: Título: "Google Analytics" Resumo: A idéia de agenda para a apresentação segue: - Apresentação pessoal; - Uma breve retrospectiva sobre a história do Web Analytics, quais as principais ferramentas, como funcionam, prós e contras; - Google Analytics: - Implantação (inserção de tags e desenho de métricas); - A interface web; - Contas e sub-contas;

Casual Class TV Digital - Agora com transmissão via Web

Amanhã, dia 23/04, a Globalcode estará realizando o seu 11 o Casual Class com o tema TV Digital . O objetivo deste Casual Class é trazer, para a comunidade de desenvolvedores Java, as informações necessárias para quem deseja ingressar no mercado de desenvolvimento de aplicações para a TV Digital Interativa. Se você ainda não conhece essa área de desenvolvimento, não se preocupe. De fato, este é um mercado que teve início na semana passada com a aprovação, pela ABNT (Associação Brasileira de Normas e Técnicas), do Ginga - o padrão brasileiro de TV Digital . Notícias da aprovação: Blog: Ginga aprovado, atenção redobrada! Publicação da ABNT em 13/04 Com a aprovação do padrão Ginga, as emissoras e fabricantes de aparelhos de TV podem dar início à exploração de aplicações interativas no ambiente de TV Digital, abrindo espaço para um novo formato de software que terá muita demanda de programadores e, em especial, programadores Java. Relação do Ginga com Java O Ginga é sub

Java no mundo das Telecomunicações

Este é meu primeiro post aqui no blog e gostaria de dizer que estou muito feliz em também poder contribuir com esta grande (e crescente) família Globalcode. Vou começar escrevendo aqui sobre um tópico pouco explorado no universo Java: o seu uso no mundo das telecomunicações. Vários de vocês podem ter trabalhado em projetos para empresas de telecom utilizando a tecnologia Java. Eu mesmo já participei de alguns, implantando sistemas de tarifação, faturamento, CRM e cobrança. Mas o objetivo deste post é um pouco diferente: estou falando do uso de Java na própria rede de telecom. Como vocês podem imaginar, esta rede que permite que ligações telefônicas sejam feitas de seu celular ou aparelho fixo é um tanto quanto complexa, lidando com aspectos como roteamento, bilhetagem, roaming , etc. E o Java está presente neste cenário também. Para provar que não estou mentindo, abram o site do JCP e cliquem no link "JSRs by Technology". Observem que uma das categorias lista é a JAIN ( Jav

O que é Lógica de programação?

Este é o segundo de uma série de posts voltados aos leitores do blog que estão dando início à carreira de desenvolvimento de software. O assunto de hoje é a lógica de programação. Para ler antes: Entendendo como funciona a programação de computadores: linguagens de programação, lógica, banco de dados A lógica de programação é um pré-requisito para quem quer se tornar um desenvolvedor de software, independente da linguagem de programação que se pretende utilizar. Mas o que é de fato a Lógica de Programação e como saber se eu tenho esse pré-requisito? A lógica de programação nada mais é do que a organização coerente das instruções do programa para que seu objetivo seja alcançado. Para criar essa organização, instruções simples do programa, como mudar o valor de uma variável ou desenhar uma imagem na tela do computador, são interconectadas a estruturas lógicas que guiam o fluxo da execução do programa. Isso é muito próximo ao que usamos em nosso cotidiano para realizar atividad

Primeira turma da Academia Agile na Globalcode

Cursei o primeiro módulo da Academia Agile - AG1 Implantando e Liderando Equipes Ágeis e fiquei agradavelmente surpreendido com o teor e a pedagogia aplicados pelos instrutores Felipe Rodrigues (Fratech) e Manoel Pimentel (Visão Ágil). Embora eu seja de geração mais antiga (não façam contas, por favor), tenho a atenção sempre voltada para os aperfeiçoamentos e, consequentemente, para novos aprendizados. As quebras de paradigmas, a utilização de princípios da psicologia e as dinâmicas em grupo superaram em muito minhas expectativas. Estou absolutamente convicto de que uma nova era, relativamente a conceitos de metodologia, está se firmando definitivamente. O primeiro módulo desenvolveu muito bem o papel do ' coaching ', fornecendo subsídios importantíssimos para aqueles que são ou pretendem tornarem-se líderes de equipes, enfocando aspectos que transcendem o ' modus operandi ' atualmente predominante, levando o interessado a 'pensar-se' em termos de co

Entendendo uma aplicação para Android

No post passado, o objetivo era apresentar aos que não conheciam, ou esclarecer melhor aos que sabiam pouco, a respeito da plataforma do Google para smartphones (e agora também para tablets), o Android. E antes de começarmos a falar diretamente de código, temos que entender como uma aplicação é estruturada e falar do que podemos chamar de os quatro pilares de uma aplicação para o Android. Os quatro pilares Uma aplicação Android se baseia em quatro tipos de classes principais: Activities, services, broadcast receivers e content providers. Cada um desses tipos representa uma forma de interação que sua aplicação irá ter com o usuário, plataforma ou com outras aplicações. Elas podem coexistir em uma única aplicação ou também podem existir separadamente. Mas, vamos entender isso melhor discutindo cada tipo. Activities As classes responsáveis pela interação visual da aplicação com o usuário são as que extendem de Activity . Essas classes irão apresentar menus, listas, formulários ou qualquer

Ginga aprovado, atenção redobrada!

Recebemos recentemente uma mensagem do prof. Luiz Fernando Gomes Soares , via Portal do Software Público Brasileiro (SPB), indicando a aprovação do Ginga-J. Leia o texto na integra: Caros amigos da comunidade Ginga, A boa notícia é que na semana passada foram aprovadas em consulta pública as Normas para o Ginga-J e sobre a definição das monomídias do Ginga. Agregadas ao padrão Ginga-NCL, aprovado desde 2007, agora o Ginga está COMPLETO, tanto para dispositivos fixos e móveis, quanto para dispositivos portáteis. Alguns produtos Ginga já começam a sair no mercado e em breve outros deverão surgir. Infelizmente, não existe ainda uma certificação para tais produtos, o que deixa nós, os consumidores, apreensivos. Como parcela mais envolvida da sociedade nesse processo, nossa responsabilidade aumenta. Temos de ficar atentos para que os produtos do mercado sejam CONFORME às normas aprovadas. Não podemos deixar, DE FORMA ALGUMA, que haja uma INVERSÃO no processo, ou seja, que a Normas sejam ad

Vamos falar de Android...

Nessa minha primeira aparição aqui no blog da Globalcode, vou falar de um assunto que vem sendo tópico frequente nos Twitters da equipe da GC e também de alguns amigos, o Google Android. Um pouco de história... Como já faz parte da estratégia conhecida do Google, em 2005 comprou uma start-up chamada Android e que estava trabalhando em uma distribuição de Linux (baseado no kernel 2.6) voltada para smartphones com o mesmo nome da empresa. Após essa compra muito se especulou e em 2007 os rumores foram confirmados com o anúncio do Google sobre a criação da Open Handset Alliance e os esforços para a solidificação da plataforma Android . A partir disso, muito se falou e muitos desenvolvedores (eu inclusive) não acreditavam que o Google teria força para entrar na briga com as fabricantes e operadoras. Mas então, a Nokia anunciou a compra de toda a Symbian Foundation, que controlava o desenvolvimento da plataforma Symbian, base de seus Smartphones da S60 (como por exemplo o N95, 5800, N9

Entendendo como funciona a programação de computadores: linguagens de programação, lógica, banco de dados

Nesse post, diferente dos últimos que foram mais enfáticos nas experiências com tecnologias, vou focar um pouco mais nos profissionais que estão começando, ou pretendem ingressar na área de desenvolvimento de software, falando sobre conceitos fundamentais relacionados a programação em geral . Mercado de trabalho para programação Conforme já sabemos, o mercado de desenvolvimento de software, especialmente no Brasil, continua em franca expansão, sendo que cada vez mais as empresas buscam desenvolver seus próprios sistemas usando as mais diferentes e novas tecnologias. Algumas matérias interessantes: As seis profissões mais valorizadas em 2010 no IDG Now! Muitas vagas e sensação de reaquecimento da economia Por isso, a área de desenvolvimento de software tem despertado interesse em muitos profissionais de outras áreas que desejam mudar de profissão, já que as oportunidades de trabalho tendem a ser maiores. Esse é um perfil presente em muitos dos clientes da Globalcode que acabou m

Globalcode + Fratech = Academia do Agile

Globalcode e Fratech juntas na criação da Academia Agile , somando a experiência em Agile da Fratech à experiência em educação da Globalcode em um curso diferente. Diferente na forma, no periodo, na carga-horária, no conteúdo e, claro, na abordagem. Esta formação é composta por 8 cursos que abordam todos os aspectos necessários para um profissional ágil. Desde o primeiro módulo " Implantando e Liderando Equipes Ágeis " o aluno entenderá que tipo de postura e qual a cultura necessária para atingir esse objetivo, através de dinâmicas. O objetivo é uma imersão profunda nos conceitos que fazem com que o auto-gerenciamento funcione. O aluno também aprende como trabalhar a especificação de produtos de maneira incremental e como realizar o gerenciamento ágil de requisitos no módulo " Criação de produtos com requisitos ágeis ". Através do framework Scrum, tratamos do planejamento da equipe no módulo AG6 - Gestão de Projetos com Scrum . O aluno aprenderá práticas

RichFaces, JSF 2.0, Twitter, Marretadas e Cerveja

Com o advento do Java EE 6 temos a nossa disposição o JavaServer Faces 2.0, que traz diversas melhorias, inclusive um suporte nativo para aplicações Ajax. Nas versões anteriores do JSF o suporte a Ajax é viabilizado através de Servlet Filters e JSF Phase Listeners constantes nas bibliotecas de componentes especializadas (RichFaces, IceFaces, ...) RichFaces é uma biblioteca importante para aplicações JavaServer Faces que oferece um poderoso conjunto de componentes Ajax, e sempre foi divulgada e utilizada aqui na Globalcode. Atualmente o RichFaces está na versão 3.x que é oficialmente compatível com JSF 1.2, enquanto que o RichFaces 4.0 atualmente em desenvolvimento será oficialmente compatível com JSF 2.0. E se você quisesse migrar sua aplicação JSF / Richfaces para o Java EE 6 ? Esperaria pelo release do RichFaces 4.0 ? Pois é, aconteceu comigo: Ao migrar aplicações instaladas no Glassfish V2, que suporta Java EE 5 e JSF 1.2 para o Glassfish V3 (Java EE 6, JSF 2.0), tropecei na

Dando o primeiro passo para se tornar um jEDI

Muitos anos atrás um grande mestre nos disse que para se tornar um mestre JEDI era necessário conhecer como funciona o Garbage Collector e como escrever o seu próprio ClassLoader . Como um Padawan dedicado que não media esforços para se tornar um mestre e sem medo de misturar Star Trek com Star Wars, comecei a estudar como fazer tuning em aplicações Java controlando a alocação de memória realizada pela JVM. Recentemente participei de duas consultorias onde foi necessário resolver problemas de performance fazendo uma análise da distribuição de memória entre as áreas geracionais dentro de uma JVM da Sun em execução e avaliar como a atuação do Garbage Collector influenciava a aplicação. Como parte dos estudos e dos trabalhos de consultoria realizados, consegui dar um pequeno passo em direção à força! Agora compartilho um pouquinho do que aprendi. Para ter uma ideia de como uma configuração errada da alocação de memória dedicada à JVM (normalmente via parâmetros de linhas de comando -