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.