Universidade Federal de Minas Gerais Interfaces Gráficas para Linux Apresentação Oficina de Língua Portuguesa Alunos: Luiz Alberto Borges Jr. Rodolfo Oliveira Fortes
SUMÁRIO 1 Sumário 1 Objetivo 2 2 Interface Gráfica 2 3 Importância das Interfaces Gráficas 2 4 História das Interfaces Gráficas 3 4.1 Década de 1980............................ 3 4.2 Década de 1990............................ 4 5 Interfaces Gráficas e Software Livre 4 6 Interfaces Gráficas para Linux 4 6.1 Gnome................................. 4 6.1.1 História............................ 5 6.2 KDE.................................. 5 6.2.1 História............................ 6 6.3 FluxBox................................ 6 6.3.1 História............................ 6 7 Comparações Entre as Interfaces Gráficas 6 7.1 Gnome vs KDE............................ 6 7.2 Gnome e KDE vs FluxBox..................... 8 8 Conclusão 9
1 OBJETIVO 2 1 Objetivo O presente trabalho tem como objetivo analisar as diferentes interfaces gráficas que fazem parte do universo linux, expondo fatores como vantagens e desvantagens de algumas das interfaces gráficas mais conhecidas. 2 Interface Gráfica Inteface Gráfica é um tipo de interface do utilizador que permite a interação com dispositivos digitais através de elementos gráficos como ícones e outros indicadores visuais, em contraste a interface de linha de comando. A interação é feita geralmente através do mouse ou de um teclado, com os quais o usuário é capaz de selecionar símbolos e manipulá-los de forma a obter algum resultado prático. Esses símbolos são designados de widgets e são agrupados em kits. 3 Importância das Interfaces Gráficas Ambiente gráfico é um software feito para facilitar e tornar prática a utilização do computador através de representações visuais do sistema operacional. Antes da era das interfaces gráficas toda interação entre o usuário e a máquina era feita por meio de linha de comando. Tal processo de interação ainda existente nos dias atuais, porém seu uso para a grande gama dos clientes se mostrava bastante dispendioso, principalmente pelo método de interação, que pode ser simplificado como sendo o usuário digita um comando e espera a respota do sistema do mesmo, outro grande problema recorente pode ser descrito da seguinte maneira, já que toda a interação era feita por meio de comandos explícito os usuários frequentemente se esqueciam dos comandos, ou tinham dificuldade na ordem e squência correta dos mesmos, o que tornava o processo de interação entre a pessoa e o computador muito menos eficiênte do que a mesma poderia ser. Pode-se dizer que a interface gráfica veio para suprir tal necessidade, ou seja a necessidade de uma interação mais eficiênte e rápida, além de que com a mesma pode-se paralelizar a utilização dos recursos computacionais pelo cliente de forma muito mais elegante e organizada para o mesmo. No presente momento quase todas as aplicações de grande porta para as massas são feitas utilizando alguma interface gráfica, de modo que programas que somente se executam por meio de linha de comando são raros hoje em dia, sendo feito basicamente para públicos bastante específico, como por exemplo programas para solução de problemas lineares. Outra grande vantagem da interface gráfica é que a mesma consegue distribuir a informação na tela de maneira muito mais ótima do que a sua sucessora. O que torna possível poder disponibilizar muito mais informação e de uma maneira que se consiga uma absorção muito melhor da mesma pelo usuário.
4 HISTÓRIA DAS INTERFACES GRÁFICAS 3 4 História das Interfaces Gráficas O precursor das interfaces gráficas do utilizador foi inventado por pesquisadores do Instituto de Pesquisa de Stanford, liderados por Douglas Engelbart. Durante a década de 1960, eles desenvolveram o uso de hiperligações de texto manipuladas com um rato para o NLS. Ivan Sutherland desenvolveu um sistema baseado em ponteiros chamado Sketchpad em 1963, que usava uma caneta de luz para guiar a criação e manipulação de objetos em desenhos de engenharia. Durante a década de 1970, o conceito de hiperligações foi posteriormente refinado e estendido por pesquisadores da Xerox PARC, que foram além da interface de texto, usando uma interface gráfica como a principal interface do computador Xerox Alto, que influenciou a maioria das interfaces gráficas modernas desde então. A Interface do Utilizador da PARC consiste de widgets gráficos com janelas, menus, caixas de opção, caixas de seleção e ícones. Ela usa um dispositivo de ponteiro em adição ao teclado. Seguido desse sistema PARC, o primeiro modelo baseado somente em interface gráfica foi o Xerox 8010 Star Information System, de 1981. 4.1 Década de 1980 A partir de 1979, iniciado por Steve Jobs e liderado por Jef Raskin, os times de desenvolvimento do Lisa e do Macintosh na Apple Computer continuaram a desenvolver as idéias da Xerox. O Macintosh foi lançado em 1984, e representou o primeiro produto de sucesso a usar uma interface gráfica. Ele utilizava uma metáfora em que os arquivos pareciam folhas de papel, e os diretórios pareciam pastas de arquivo. Havia também um conjunto de utilitários como calculadora, bloco de notas, despertador e lixeira de arquivos.. A Digital Research (DRI) criou o Graphical Environment Manager, desenvolvido para trabalhar com sistemas oepracionais já existentes como CP/M e MS-DOS. A similaridade com Macintosh resultou numa ação judicial da Apple Computer. O GEM foi bastante usado no mercado a partir de 1985, quando tornou-se a interface padrão do TOS, sistema operacional da linha de computadores Atari ST. Mas acabou caindo em desuso com a saída do Atari ST do mercado em 1992 e com a popularidade do Microsoft Windows 3.0. O Amiga foi lançado pela Commodore em 1985 com uma interface gráfica chamada Workbench. Como praticamente todos os sistemas da época, o sistema do Amiga também seguia o modelo da Xerox, mas também era fornecia uma interface de linha de comando para estender a funcionalidade do sistema. Na linha 16 bit da Microsoft, o Windows 1.0 foi uma interface gráfica para o MS-DOS, usada na linha PC e compatíveis desde 1981. O sistema foi seguido pelo Windows 2.0, mas foi somente a partir de 1990, com o Windows 3.0, que popularidade do sistema cresceu. Baseada no Common User Access, a interface se manteve estável desde então. A linha 16 bit do Windows foi descontinuada com a introdução do Windows 95 e do Windows NT durante a década de 1990. Seguindo mais ações legais, a Apple processou a Microsoft em 1988 por violação de direito autoral da interface gráfica do Lisa e do Macintosh. O sistema de janelas do padrão do Unix é o X Window System, lançado em meados da década de 1980, cujo precursor foi o W Window System, de 1983. Desde então, o sistema é a base de todos os sistemas Unix e derivados, como o Linux.
5 INTERFACES GRÁFICAS E SOFTWARE LIVRE 4 4.2 Década de 1990 A adoção em massa da plataforma PC popularizou os computadores entre pessoais sem treinamento formal do equipamento. Isso criou um grande mercado, que podia explorar a oportunidade de interfaces de uso fácil. Também, o desenvolvimento de tecnologias gráficas como mais bits de cor por pixel e placas de vídeos mais rápidas favoreceram o aparecimento de sistemas mais sofisticados. Após o Windows 3.11, a Microsoft começou a desenvolver o Windows 95, com uma versão melhorada do MS-DOS e uma interface gráfica remodelada. Na mesma época houve a guerra dos navegadores, quando a World Wide Web começou a ganhar grande atenção na cultura popular. Entratanto, o Windows 95 possuía somente um serviço online próprio da Microsoft, o The Microsoft Network, sem acesso à Internet. Com o lançamento de navegadores como Netscape Navigator e Internet Explorer, o Windows passou suportar esse novo paradigma. A interface gráfica do Windows 95 seguiu com Windows 98, Windows ME, Windows 2000 e Windows XP, sendo descontinuada a partir do Windows Vista. Já na Apple, houve atualizações da interface gráfica com o System 7 e com o Mac OS X. 5 Interfaces Gráficas e Software Livre Com o sucesso das interfaces gráficas, e muitas não sendo de código aberto, deparou-se com a emergente necessidade de se desenvolver interfaces gráficas de código aberto. A própria filosofia do linux não permitia um outro tipo de código para a interface gráfica que seria adotada seja ela qual for. Neste sentido, pode-se dizer que as interfaces de código livre tiveram muito sucesso em suas impreitadas, pois as mesmas tiveram um desafio que era gerar interfaces que sejam portateis para outras plantaformas, já que a maioria dos usuários de computador não utilizam linux. Com isto se desenvolveram interfaces robustas e novas técnicas tanto de criação como de utilização das mesmas foram geradas. O surgimento de interfaces gráficas livres (de código aberto) se mostraram e se mostram a cada com mais força e vem arrebatando cada vez mais seguidores e usuários. 6 Interfaces Gráficas para Linux Abaixo serão apresentadas as interfaces gráficas mais comuns para linux. 6.1 Gnome GNOME (acrônimo para GNU Network Object Model Environment) é um projeto de software livre abrangendo o Ambiente de Trabalho GNOME, para os usuários, e a Plataforma de Desenvolvimento GNOME, para os desenvolvedores. O projeto dá ênfase especial a usabilidade, acessibilidade e internacionalização. O desenvolvimento do GNOME é supervisionado pela Fundação GNOME, que representa oficialmente o projeto junto a empresas, organizações e a sociedade como um todo. O projeto conta ainda com uma série de equipes com missões específicas, inclusive com uma equipe de engenharia de lançamentos, responsável
6 INTERFACES GRÁFICAS PARA LINUX 5 pelo característico calendário de lançamentos semestrais. A comunidade de desenvolvimento do GNOME conta tanto com voluntários quanto com empregados de várias empresas, inclusive grandes empresas como Hewlett-Packard, IBM, Mandriva, Novell, Red Hat, e Sun. Por sua vez, o GNOME é filiado ao Projeto GNU, de onde herdou a missão de prover um ambiente de trabalho composto inteiramente por software livre. Por isso mesmo, O GNOME pode ser utilizado por vários sistemas baseados em Unix, principalmente por sistemas Linux e sistemas BSD. 6.1.1 História O projeto GNOME foi criado em agosto de 1997 pelos mexicanos Miguel de Icaza e Federico Mena Quintero, como uma resposta ao Windows 95. O projeto KDE já estava em andamento, mas para ser usado ou desenvolvido era necessário instalar o Qt, um conjunto de ferramentas que na época não tinha uma licença livre. Miguel de Icaza descartou a ideia de reimplementar a API do Qt usando software livre porque projetos análogos, como o GNUstep, Wine and LessTif, mostravam um progresso muito lento. Antes da criação do GNOME, Miguel e Federico tinham tentado colaborar com o GNUstep, mas desistiram por considerar sua comunidade desorganizada, e seu código cheio de erros. A plataforma de desenvolvimento aproveitou e aprimorou o GTK, um conjunto de ferramentas usado pelo editor de imagens GIMP, em cujo desenvolvimento Federico Quintero estava também envolvido. Miguel de Icaza ficou muito impressionado com a arquitetura COM quanto passou por uma entrevista na Microsoft, e o reflexo foi o desenvolvimento da biblioteca Bonobo, incorporada ao GNOME 1.4. Além de permitir o reaproveitamento de componentes de software, o Bonobo colaborou para que o desenvolvimento de aplicativos para o GNOME pudesse ser feito com qualquer linguagem de programação. Outra característica da plataforma de desenvolvimento do GNOME é ser completamente escrita em C, o que também facilita a criação de bindings para outras linguagens de programação. A plataforma de desenvolvimento do GNOME tem suporte a C++, Java, Perl e Python, e mais recentemente a JavaScript. Toda a plataforma de desenvolvimento do GNOME usa a licença GNU Lesser General Public License, uma licença livre que permite a utilização da plataforma GNOME por software proprietário. O lançamento do GNOME 2.0 marcou uma guinada nos rumos do projeto, que passou a enfatizar a usabilidade em vez da configurabilidade. A plataforma foi quase inteiramente reescrita, trazendo várias melhorias como melhoria de desempenho, melhor internacionalização (usando Unicode internamente), suavização da renderização de fontes, e principalmente a estreia de sua plataforma de acessibilidade. 6.2 KDE O KDE se baseia no princípio da facilidade de uso e da personalização. Todos os elementos da interface gráfica podem ser personalizados de acordo com o gosto do usuário, tanto na posição quanto na aparência: paineis, botões das janelas, menus e elementos diversos como relógios, calculadoras e miniaplicativos. A extrema flexibilidade para personalização da aparência levou a que muitos de-
7 COMPARAÇÕES ENTRE AS INTERFACES GRÁFICAS 6 senvolvedores disponibilizassem seus próprios temas para serem compartilhados por outros usuários. 6.2.1 História O projeto foi iniciado em outubro de 1996 pelo programador alemão Matthias Ettrich, que buscava criar uma interface gráfica unificada e livre para sistemas tipo Unix. No início, buscou sua inspiração no CDE, um ambiente gráfico já bastante difundido na plataforma Unix. O KDE é inteiramente escrito na linguagem C++, e baseado no toolkit Qt, de propriedade da empresa Nokia, enquanto que o GNOME, outro ambiente gráfico para Unix, é baseado na biblioteca GTK, do Projeto GNU. A biblioteca Qt é gratuita para aplicações GPL ou LGPL, e as bibliotecas do KDE são licenciadas como LGPL ou BSD-compatível. Desde a versão 4.2, o KDE tem suporte nativo ao GTK, podendo rodar tanto aplicações baseadas em GTK como em Qt com a mesma aparência, suportando tanto temas GTK quanto temas Qt. 6.3 FluxBox O FluxBox é uma das interfaces gráficas que menos utiliza recursos do sistema, por ser pequeno e rápido o Fluxbox é o gerenciador de janelas padrão da distribuição Damn Small Linux. Damn Small Linux é uma distribuição cujo live CD tem menos de 50 MB, e, segundo o seu website, ela é leve o bastante para rodar em um 486DX com 16 MB de memória RAM. 6.3.1 História O FluxBox é derivado do código do BlackBox 0.61.1 sob a licença MIT/X11, essa licença permite o uso, modificação e copia do software contanto que se inclua a licença original junto ao novo código ou distribuição. 7 Comparações Entre as Interfaces Gráficas Esta sessão visa comparar as interfaces gráficas mais comum para linux, afim de que as mesmas sejam expostas a ponto de se elucidar seus pontos positivos e negativos presentes em cada uma. 7.1 Gnome vs KDE Serão avalidadas aqui as versões mais recentes das duas distribuições, o gnome 2.32 e o KDE 4. Quando se observa atentamente as duas interfaces gráficas, pode-se concluir que as mesmas diferenças entre as mesmas são principalmente superficiais.
7 COMPARAÇÕES ENTRE AS INTERFACES GRÁFICAS 7 KDE 4.0 Gnome 2.32 FluxBox 1.1.1
7 COMPARAÇÕES ENTRE AS INTERFACES GRÁFICAS 8 Os críticos a favor do KDE advogam sob as seguintes causas: Um ambiente mais agradável e mais facíl de usar para um usuário que está migrando para o linux. Possui mais recursos de configuração que o Gnome. Vem com mais programas que o Gnome. Possui mais informação distribuida ao longo da tela, fazendo com que o usuário tenha que a informação que deseja de forma mais eficiênte. Precisa-se usar muito menos o terminal que o principal concorrente (Gnome). Foi escrita em Qt. Os defensores do Gnome, já argumentam o seguinte: O Gnome é bem mais leve que o KDE. Mais limpo, ou seja, deixa a tela menos poluida com informações desnecessárias. É mais simples de usar e configurar que o KDE. Vem por padrão com uma configuração básicas, mas pode ser personalizado tanto quanto se queira, bastando-se instalar pacotes para o mesmo. Efeitos visuais mais sofisticados. Para usuários linux que preferem o terminal, ele dá mais acesso e se integra melhor com a linha de comando. Escrita em GTK. 7.2 Gnome e KDE vs FluxBox A comparação entre as interfaces Gnome e KDE com o FluxBox é um pouco difícil, do ponto de vista de facilidade para o usuário e beleza o Gnome e KDE vencem com facilidade o FluxBox, a vantagem do FluxBox reside em seu desempenho. Todos os itens com vantagens do Gnome e KDE foram listados anteriormente, as vantagens do FluxBox são: Tamanho: Leve, ele é fácil de se inserir em pequenas distribuições nas quais o fator espaço de armazenamento é critico. Desempenho: Há pouco consumo de memória e processamento para o seu funcionamento. da simplicidade possui recursos avançados como agrupamento de janelas em abas, disponível em interfaces maiores como o KDE mas não disponível no Gnome.
8 CONCLUSÃO 9 8 Conclusão O ambiente linux nos dias atuais contém uma gama interfaces gráficas,com visuais, configurações e personalizações bastante diferentes, porém todas atendem as funcionalidades necessárias para que o usuário possa navegar com segurança, velocidade e comodidade. Estas diferenças de visuais e usabilidade provocadas pelas diferentes interfaces, são um aspecto bastante positivo no mundo linux, já que com esta gama de opções se pode agradar os mais diferentes usuários, sejam de que gosto for, ele encontrará uma interface a seu gosto e poderá personalizar a vontade.isto faz com que as interfaces para linux possam atender tanto a gregos como a troianos. Não existe uma melhor interface gráfica, mas sim uma que atende melhor a suas exigências. Temos por certo que essa diversidade e concorrência, se pode assim dizer, beneficía principalmente o usuário, que sempre está recebendo cada vez mais interfaces gráficas cada vez melhores. As interfaces Gráficas do mundo do software livre, também possui as mesmas vantagens de outro software livre qualquer, um usuário pode baixar seu código fonte, editar e colaborar com a comunidade da mesma, fazendo com que o aprendizado e a diseminação de informação se extendam ainda mais.