Curso de Java #01 - História do Java - Gustavo Guanabara

Curso de Java #01 - História do Java - Gustavo Guanabara

Introdução ao Curso de Java

Apresentação do Professor e Objetivo da Aula

  • Gustavo Guanabara dá as boas-vindas aos alunos e apresenta o curso de Java, enfatizando a demanda por esse conteúdo.
  • O "Curso em Vídeo" oferece uma variedade de cursos gratuitos, com acesso a pacotes e certificados disponíveis no site oficial.

Importância da História da Tecnologia

  • Para entender uma tecnologia, é essencial conhecer sua origem. Gustavo menciona que irá explorar a história dos computadores para contextualizar o desenvolvimento do Java.

A Evolução dos Computadores

Primeiros Computadores: ENIAC

  • O ENIAC, um dos primeiros computadores, ocupava um andar inteiro e não possuía uma linguagem de programação específica; sua programação era feita manualmente através de botões.
  • Os primeiros computadores utilizavam válvulas e funcionavam na base decimal, ao contrário da base binária moderna.

Transição para Linguagens de Programação

  • Com a evolução dos computadores, surgiram linguagens de alto nível. Um exemplo mencionado é a linguagem Pascal.
  • Pascal é descrita como uma linguagem antiga que muitos estudantes aprenderam em suas formações acadêmicas.

Entendendo Linguagens de Alto Nível

Exemplo Prático: Código em Pascal

  • Gustavo explica um programa simples em Pascal que exibe "Olá Mundo", destacando como mesmo quem não conhece a linguagem pode entender seu funcionamento básico.
  • O código fonte em Pascal é considerado uma linguagem de alto nível porque se aproxima da compreensão humana, diferentemente das microinstruções que os computadores entendem.

Necessidade do Compilador

  • Apesar do código fonte ser compreensível para humanos, os computadores não conseguem interpretá-lo diretamente; eles precisam das microinstruções específicas.
  • Um compilador é necessário para traduzir o código fonte em algo que o computador possa entender.

Entendendo o Processo de Compilação

O que é Código Executável?

  • O código executável é a forma que o computador entende, resultante da transformação do código fonte por um compilador. Este curso é introdutório e visa ensinar os fundamentos para iniciantes.

Componentes do Processo de Compilação

  • Além do compilador, existem outros componentes como linker, montador e interpretador. É importante entender que este curso foca em usuários iniciantes, respeitando o ritmo de aprendizado.
  • O processo tradicional envolve a criação de um código fonte que passa por uma compilação para gerar um código executável, que pode ser executado no computador sem problemas.

Limitações da Compilação Tradicional

  • Um dos principais problemas do processo de compilação é a dependência da plataforma; o código executável gerado só funciona na plataforma específica onde foi compilado.
  • Por exemplo, se um programa for compilado no MS-DOS, ele não funcionará em sistemas como Linux ou MacOS sem adaptações.

A Linguagem C e sua Multiplataforma

  • A linguagem C é uma das mais antigas e importantes devido à sua capacidade de compilar em diferentes plataformas. Isso permite que programas escritos em C sejam utilizados amplamente.
  • Ao compilar um programa simples em C (como "olá mundo"), você pode usar diferentes compiladores para gerar códigos executáveis específicos para cada plataforma.

Importância Histórica da Linguagem C

  • A linguagem C revolucionou a programação ao permitir a criação de softwares multiplataforma. Essa característica fez com que fosse utilizada em muitos sistemas operacionais modernos, incluindo Windows e Linux.
  • Apesar das promessas dos livros sobre portabilidade total, na prática era necessário fazer pequenas adaptações no código fonte para funcionar corretamente em diferentes plataformas.

Evolução da Linguagem C

  • O Firefox é um exemplo notável de software desenvolvido em C, funcionando em diversas plataformas como Windows, Linux e dispositivos móveis.
  • A evolução natural do C levou ao surgimento do C++, que introduz conceitos modernos como orientação a objetos. O operador "++" simboliza esse acréscimo na linguagem.

A Evolução das Linguagens de Programação: C, C++ e C#

A Transição do C para o C++

  • A linguagem C é considerada a linguagem tradicional, enquanto a linguagem C++ é uma extensão da mesma, incorporando a Orientação a Objetos.
  • O nome "C++" sugere uma evolução, onde cada "+" representa um acréscimo em relação ao C. O próximo passo na evolução é o C#, que simboliza mais dois "+".

Importância do C++ e Introdução ao Curso

  • O apresentador destaca a relevância do C++ em projetos específicos e faz uma pausa para introduzir o curso de Java que está sendo oferecido gratuitamente.
  • Ele menciona que a qualidade dos cursos oferecidos é superior à média e agradece aos patrocinadores que tornam isso possível.

Patrocinadores do Curso

  • O primeiro patrocinador mencionado é a "Host Net", uma empresa de hospedagem de sites com um bom serviço e suporte no Brasil.
  • O segundo patrocinador é o "Sistema Educandus de Ensino", que oferece preparatórios militares e forma profissionais em tecnologia.

História da Sun Microsystems e Criação da Linguagem Oak

  • Em 1990, a Sun Microsystems estava desenvolvendo um projeto utilizando o C++, mas enfrentou dificuldades devido à falta de microprocessadores adequados.
  • Para resolver os problemas encontrados, foi criado um novo grupo chamado Green Team, que desenvolveu uma nova linguagem chamada GreenTalk.

Nomeação da Linguagem Oak

  • A GreenTalk evoluiu rapidamente para se tornar conhecida como Oak em 1991, inspirado pela visão de um carvalho da janela do escritório de James Gosling.
  • Essa nova linguagem levou ao desenvolvimento do Star Seven, um dispositivo inovador para sua época com várias funcionalidades tecnológicas avançadas.

A Evolução da Tecnologia Interativa

O Projeto Star Seven e suas Inovações

  • Em 1991, foi apresentado o projeto Star Seven, que permitia controlar a casa inteira através de uma tela sensível ao toque de 6", incluindo eletrodomésticos como televisão e vídeo cassete.
  • O usuário poderia ajustar configurações da TV, como brilho e volume, além de escolher canais e visualizar a programação. Essa interatividade era inovadora para a época.
  • Apesar do potencial revolucionário do Star Seven, apenas seis unidades foram fabricadas e nenhuma empresa se interessou em comercializá-lo, levando ao seu arquivamento em 1992.
  • A falta de interesse das empresas pode ter sido devido à natureza avançada da tecnologia na época, resultando no projeto sendo "engavetado".
  • A história do Star Seven ilustra que nem sempre inovações são reconhecidas imediatamente; muitas vezes é necessário tempo para que ideias revolucionárias sejam valorizadas.

A Linguagem Oak e sua Relevância

  • Após o arquivamento do projeto Star Seven, a linguagem Oak também foi deixada de lado até que Tim Berners-Lee começou a desenvolver HTML em 1994.
  • Os avanços trazidos por Berners-Lee foram fundamentais para o surgimento da linguagem Java, conectando as ideias anteriores com novas tecnologias web.
  • O objetivo era combinar as interatividades do Star Seven com as capacidades da web emergente através do novo projeto chamado WebRunner.

O Nascimento da Linguagem Java

  • O WebRunner pretendia ser um navegador interativo similar aos atuais Internet Explorer ou Firefox, mas enfrentou problemas com o nome "Oak" já registrado.
  • Durante uma reunião sobre o nome da nova linguagem, os programadores mencionaram "café" como algo que os animava; isso levou à escolha do nome "Java".
  • A referência ao café forte cultivado nas Ilhas de Java se tornou parte importante da identidade cultural associada à nova linguagem.
  • Assim nasceu a linguagem Java, simbolizada por uma xícara de café quente, refletindo tanto a cultura quanto a energia necessária para programar.

Conclusão sobre a Evolução Tecnológica

  • A trajetória desde o projeto Star Seven até o desenvolvimento da linguagem Java demonstra como inovações podem ser inicialmente ignoradas antes de serem integradas em novas tecnologias.

A Evolução do Java e seu Impacto

O Renascimento do Projeto WebRunner

  • O projeto WebRunner foi renomeado para HotJava, visando trazer a interatividade da linguagem Java para a web. A popularidade de Java cresceu rapidamente, sendo considerada "a linguagem do futuro".

A Relação entre Java e JavaScript

  • A Netscape lançou o JavaScript como uma estratégia de marketing, embora não tenha relação com a linguagem Java. Essa confusão surgiu devido ao sucesso da linguagem criada pela Sun Microsystems.

Interatividade e Dispositivos Externos

  • A Sun Microsystems buscou criar interações externas através do Java, permitindo que dispositivos como televisores fossem controlados via web. Um exemplo inicial foi o projeto do Java Ring.

Contribuições da NASA e Popularização do Java

  • Em 2004, um robô enviado à Marte utilizava Java para se comunicar com computadores na Terra, contribuindo para a popularização da linguagem.

Código Aberto e Software Livre

  • O conceito de código aberto é frequentemente associado ao Linux e LibreOffice. No entanto, muitos outros projetos populares também são de código aberto, incluindo Firefox e PHP.

A Transição da Sun Microsystems para Oracle

  • Em 2009, a Sun Microsystems foi vendida à Oracle por 7,4 bilhões de dólares. Após essa transação, o controle sobre o Java passou para a Oracle.

Presença Atual do Java no Cotidiano

  • Hoje em dia, o Java está presente em diversos aspectos da vida cotidiana: sistemas bancários exigem instalação de componentes em Java; aplicativos Android são majoritariamente desenvolvidos nessa linguagem; até mesmo Blu-rays utilizam tecnologia baseada em Java.

Java e sua Presença no Cotidiano

A Influência do Java em Diversas Tecnologias

  • O menu de opções mencionado é controlado por um sistema em Java, destacando a versatilidade da linguagem.
  • O sistema Ginga, utilizado na TV Digital brasileira para interatividade, também é desenvolvido em Java.
  • O software da Receita Federal para declaração do Imposto de Renda é feito em Java, mostrando sua presença até em tarefas cotidianas.
  • A próxima aula abordará as diferenças entre Java e C, enfatizando que apesar das semelhanças, existem distinções importantes entre as linguagens.
  • O instrutor incentiva os alunos a se inscreverem no canal para receber atualizações sobre novas aulas.

Como Colaborar com o Canal

  • Inscrever-se no canal ajuda a manter o projeto ativo e garante que os alunos não percam novas aulas.
  • As playlists organizadas facilitam o acesso às aulas de Java; assistir diretamente no canal gera monetização que beneficia o projeto.
  • A sustentabilidade do canal depende tanto de patrocínios quanto da visualização dos vídeos pelos usuários.
  • Agradecimento aos patrocinadores como a Hostnet, que contribuem significativamente para a manutenção do curso.
  • Assistir aos anúncios antes dos vídeos ajuda a gerar renda para o canal e mantém o conteúdo disponível.

Recursos Adicionais e Interação

  • Os alunos são incentivados a se inscreverem no site cursoemvideo.com para acessar pacotes futuros relacionados ao curso de Java.
  • Ao final do curso, os alunos terão acesso ao certificado após completar aproximadamente 25 aulas.
  • O instrutor valoriza a interação com os alunos e agradece pelo apoio contínuo ao projeto Curso Em Vídeo.

A Importância do Apoio dos Alunos

Reerguendo o Curso

  • O instrutor enfatiza a necessidade de apoio dos alunos para o reerguimento do curso, destacando que essa ajuda é fundamental.
  • Ele pede que os alunos assistam aos vídeos e playlists repetidamente, sugerindo que isso será benéfico para todos.
  • A ideia central é que a dedicação dos alunos em revisar o conteúdo pode contribuir significativamente para o sucesso do curso.

Reconhecimento aos Alunos

  • O instrutor envia um abraço especial aos alunos que acompanharam desde o início do Curso Em Vídeo, mencionando cursos anteriores como HTML e PHP.
  • Ele também acolhe novos alunos, incentivando-os a estudar com afinco para aproveitar ao máximo o curso de Java.
  • A mensagem final reforça a importância da dedicação e do esforço no aprendizado, prometendo um curso estruturado para facilitar a compreensão.
Video description

Aula Completa em http://www.cursoemvideo.com/lesson/historia-java/ A História da Linguagem Java se inicia em 1990, quando a Sun Microsystems criou uma equipe chamada Green Team, liderada por James Gosling. Até o momento, as Linguagens de Programação como Pascal e C, precisavam de compiladores específicos para cada plataforma. Sem isso, os programas só seriam executáveis para um único sistema. Foi aí que o grupo criou o projeto GreenTalk, que virou a Linguagem Oak, capaz de ligar dispositivos diferentes e fazer com que eles pudessem se comunicar. O Star Seven (*7) surgiu em 1991 e era um aparelho multimídia capaz de controlar vários dispositivos da sua casa. Infelizmente o projeto não foi aceito na época e tudo foi engavetado em 1992. Em 1994, com o advento da World Wide Web (www) e da Linguagem HTML, o projeto da Sun foi reestabelecido com o objetivo de criar um Navegador Web capaz de rodar aplicativos em Oak. O nome "Oak" não poderia ser utilizado por questões de direitos relacionados. A linguagem foi rebatizada em homenagem a uma gíria relativa a "Café Quente": Java Coffee. Surgem então o navegador HotJava e a linguagem Java, que ficou famosa por conta de matérias veiculadas pela imprensa da época. A partir daí, vários projetos surgiram para usar Java em todo lugar. O Java Ring e Sondas Espaciais da NASA são exemplos disso. Em 2006 a Linguagem Java se tornou Open Source, que tem seu código livre para consultas, pesquisas e personalizações. Java usa a licença GPL (General Public Licence) Em 2009 a Sun Microsystems foi vendida para a Oracle por US$7,4 bilhões. Atualmente, a Linguagem Java pode ser encontrada em chips de cartão de crédito, discos de blu-ray, vídeo games (PS4 roda Java), leitores de e-books (Kindle roda Java), smartphones (Android roda Java), TV digital (o padrão Ginga é feito em Java), relógios inteligentes (Moto 360 roda Java) e até mesmo no programa para a Declaração de Imposto de Renda. Curso em Vídeo Site: http://www.cursoemvideo.com YouTube: http://www.youtube.com/cursosemvideo Facebook: http://www.facebook.com/cursosemvideo Twitter: http://twitter.com/cursosemvideo Google+: http://plus.google.com/112666558837414979080 Patrocínio HOSTNET: http://www.hostnet.com.br SISTEMA EDUCANDUS: http://www.sistemaeducandus.com.br EDUCANDUS ONLINE: http://www.educandusonline.com.br