Capítulo 12. Aplicações de ambiente de trabalho
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Java ganhou fama e glória em com o poder dos applets - elementos interactivos incríveis numa página Web. Hoje em dia parece banal, mas na altura era uma maravilha. Java também tinha suporte multiplataforma na manga e podia executar o mesmo código em sistemas Windows, Unix e macOS. Os primeiros JDKs tinham um conjunto rudimentar de componentes gráficos conhecidos coletivamente como Abstract Window Toolkit (AWT). O "abstrato" em AWT vem do uso de classes comuns (Button, Window, etc.) com implementações nativas. Escreve aplicações AWT com código abstrato e multiplataforma; o computador executa a aplicação e fornece componentes concretos e nativos.
Infelizmente, essa combinação elegante de abstração e nativo vem com algumas limitações bastante sérias. No domínio abstrato, encontras designs do "menor denominador comum" que apenas te dão acesso a funcionalidades disponíveis em todas as plataformas suportadas pelo JDK. Nas implementações nativas, mesmo algumas funcionalidades disponíveis em todo o lado eram nitidamente diferentes quando eram apresentadas no ecrã. Muitos desenvolvedores de desktop que trabalhavam com Java naqueles primeiros dias brincavam que o slogan "escreve uma vez, roda em qualquer lugar" era na verdade "escreve uma vez, depura em qualquer lugar". O pacote Java Swing foi criado para melhorar este estado ...