Aula 1 – Introdução
Nesta aula aprenderemos o que é Java, quais suas principais características, como funciona. Discorrerei sobre suas tecnologias atuais, onde se aplica cada uma, quais as diferenças entre elas, e, no final, quais programas instalar para podermos começar à programar em Java.
1.1 – Java
Java é foi desenvolvida pela Sun Microsystems em 1995, inicialmente usada para rodar Applets via internet por meio do navegador HotJava (que acompanhava a linguagem), como o passar do tempo a Microsoft e a Netscape também incorporaram a nova tecnologia em seus navegadores.
1.1.1 - O que é Java?
Java é uma linguagem de programação. Por favor não confundam Java com Java Script, enquanto uma é uma poderosa linguagem de programação com vastos recursos, a outra é uma linguagem de script para internet, com recursos limitados se comparados à primeira.
1.1.1.1 – Características da linguagem
Java uma linguagem orientada à objetos, interpretada, multiplataforma, case sensitive, e multithread. Segue um breve resumo de cada uma de suas características.
1.1.1.2 – Java é Orientada à objetos
Os tópicos sobre uma linguagem orientada à objetos são um pouco extensos, sendo assim, as principais características e vantagens da programação orientada à objetos serão apresentados na aula 2.
1.1.1.3 – Java é Interpretada e multiplataforma
Quando desenvolvemos uma aplicação em Java não ficamos presos à uma dada plataforma, sendo assim, ao desenvolvermos no sistema operacional Windows por exemplo, não precisaremos recompilar o código inteiro para rodar a mesma aplicação no Linux. Basta somente instalar o interpretador da Java, que é também mantido pela Sun Microsystems, para o sistema operacional específico, logo o pacote compilado no Windows vai rodar no Linux, MacOS, Solaris, ou em qualquer outro sistema operacional que possuir um interpretador Java.
1.1.1.4 – Java é Case Sensitive
Dizer que Java é case sensitive significa dizer que a mesma é sensível as variações de letras em maiúsculo e minúsculo, ou seja, se por exemplo, você declarar uma variável A e declarar outra variável a, Java fará distinção entre as duas.
1.1.1.5 – Java é Multithread
Em Java podemos executar dois comandos simultaneamente, sem um saber que o outro existe, sendo que cada um possui uma chamada diferente na mesma aplicação, também é possível retardar uma tarefa enquanto não executemos outra, como por exemplo, esperar até que todas as vendas abertas no momento sejam fechadas para podermos fechar o caixa diário.
1.1.2 – Porquê programar em Java?
Java já não é mais novidade e conforme os anos avançam surgem novos recursos, sendo assim um bom investimentos, com uma recursividade bastante elástica tem suas principais características como principal ponto forte.
Com o passar dos anos o interpretador foi melhorando a principal justificativa para não programar em Java (de que era uma linguagem “lerda” por ser interpretada) foi caindo, com o avançar da tecnologia e o barateamento de custos do hardware, hoje em dia é considerável (na grande maioria dos casos) que você perca alguma performance para poupar custos com manutenção e tempo de resposta ao cliente.
1.1.3 – Java no mercado de trabalho atual
Atualmente Java está melhor difundida na faixa de sistemas para Web, com suas novas plataformas de desenvolvimento encurtando o tempo do mesmo e facilitando a vida dos programadores, o tempo de resposta ao cliente está cada vez mais curto e, com isso, aumentando a fatia do mercado de trabalho ocupada pela Java.
1.2 – Ferramentas Java
A Java contém várias ferramentas que podem ser chamadas através de um terminal, vou descrever as mais usadas no começo, pois posteriormente, quando precisar das outras, você utilizará uma IDE que acionará as mesmas automaticamente.
1.2.1 – JDK (Java Development Kit)
JDK é o kit de desenvolvimento da linguagem Java, cada Tecnologia Java contém o seu JDK específico.
1.2.1.1 – O que contém?
O JDK contém todas as ferramentas necessárias para se desenvolver aplicações em dada tecnologia Java, por exemplo o JDK SE vem com todas as ferramentas necessárias para desenvolvermos aplicações para Core/Desktop.
1.2.2 – JRE (Java Runtime Evironment)
O JRE é a máquina virtual Java, é ele que interpreta da linguagem Java para a o sistema operacional instalado na máquina, traduzindo as instruções da aplicação para o mesmo.
1.2.3 – Javac
O Javac é o compilador Java, ele vem junto com o JDK. Atua transformando o código fonte para o código que vai ser interpretado pela JRE.
1.3 – Tecnologias Java
Com Java podemos desenvolver sistemas para três setores:
Core/Desktop – JSE
Web – JEE
Mobile – JME
1.3.1 – JSE (Java Standart Edition)
Quando se fala em fazer um curso de Java estão falando de um curso sobre JSE, é aqui onde aprende-se as principais funções, a sintaxe e a pensar em Java. Contém os recursos para desenvolvermos aplicações locais (Core/Desktop).
1.3.2 – JEE (Java Enterprise Edition)
JEE é uma extensão da JSE adicionando a mesma mais recursos, é a tecnologia mais avançada da Java, justamente por conter todos os recursos da JSE e mais os recursos da JEE, com ela desenvolvemos não somente as aplicações para Core/Desktop mas também aplicações Web.
1.3.3 – JME (Java Mobile Edition)
JME é a tecnologia responsável pelo desenvolvimento de aplicações mobile, com ela podemos programar para celulares e palms.
1.4 – O que instalar?
Para começar a aprender Java você precisa simplesmente do JDK JSE e de um editor de texto qualquer, nada mais.
Para baixar o JDK, simplesmente entre no site da Sun e escolha o apropriado para o seu sistema operacional.
Para editor de texto eu recomendo o Notepad++, além de ter o text hilight para Java ele também contém um plugin que completa automaticamente as funções chamadas em Java, parecido com uma mini IDE em modo texto.