1. Desenvolvendo
Aplicações Livres em
Java
1º Workshop Sobre Desenvolvimento de Software Livre – Tchelinux
Porto Alegre – 31/03/2007
Palestrante: Thiago Regal da Silva
3. Java, como começou?
● Oak Project
● Green Project
● Objetivos
– Orientada a objetos
– Permitir a execução em diferentes SO`s W.O.R.A.
– Conter suporte nativo para redes
– Execução segura à partir de fontes remotas
– Fácil de usar e que aproveite as coisas boas de outras linguagens
● A integração com o Netscape Browser
● Applets, Java 2, evolução do desenvolvimento
4. Quem “manda” no Java?
● JCP – Java Community Process
● Qualquer um pode se inscrever
● O processo é aberto desde o início
● O papel da Sun
8. JVM – O segredo da portabilidade
● Java Virtual Machine é, a grosso modo, um
interpretador de bytecodes
● Interpreta os bytecodes e transformaos em uma
série de intruçÕes nativas, utilizando recursos do
SO
● É a base de toda a plataforma Java
● Contém a API, o gerenciamento de memória, e
todos os recursos base utilizados pelas outras
“edições”
9. A API Java
● Conjunto de funcionalidades “nativas” da linguagem
● Carga dinâmica de bibliotecas
● Abstração do sistema operacional
● O que não estiver implementado, é facilmente integrado
● Não é “engessado”. O programador pode fazer suas
próprias implementações
11. Detalhes sobre a plataforma
● J2ME (Java ME): é, basicamente, um subset da
J2SE, utilizada para ambientes “embedded”
● É a tecnologia mais utilizada no mundo para
dispositivos embedded
● Pode rodar numa infinidade de dispositivos:
telefones celulares, PDA`s, TV`s, impressoras, etc
● Possui um robusto sistema de segurança,
protocolos de comunicação integrados, e todas as
características de portabilidade do Java
12. Detalhes sobre a plataforma
● J2EE (Java EE): é a plataforma de
desenvolvimento de aplicacoes enterprise
● É contruída sobre a J2SE
● Provê recursos para desenvolvimento de
aplicações de grande porte, multicamadas,
portáveis e escaláveis
● Possibilita o desenvolvimento da aplicação,
livrando o programador de criar do zero estruturas
altamente complexas e que não estão diretamente
relacionadas à lógica da aplicação
14. Considerações filosóficas
● Quais as motivações de desenvolver software
livre?
– Cada um tem uma, mas uma das mais fortes é
compartilhar o conhecimento e desenvolver algo útil que
as pessoas utilizem
15. Por quê Java?
● O processo sempre foi aberto
● A Sun liberou o códigofonte de toda a plataforma
(GPL)
● A estratégia dos grandes (IDEs, ferramentas)
● É um padrão de indústria
● As características favorecem a usabilidade
● A disputa entre .Net x Java
● Possui um grande portfólio de aplicacoes
opensource
● Foi “adotada” pela indústria como alternativa às
soluções fechadas
17. Ferramentas de desenvolvimento
● Netbeans
– Opensource
– Multiplataforma
– Grande gama de plugins e recursos
– Desenvolvimento para todas as “edições”
– Extremamente intuitivo
– Demonstração
18. Demonstração
● Instalacao da JDK
● Download da documentação
● Instalacao do Netbeans
● Instalação dos pacotes adicionais