O que é um widget?

Um widget é um componente de uma interface gráfica do usuário (GUI), o que inclui janelas, botões, menus, ícones, barras de rolagem, etc.

Outro emprego do termo são os widgets da área de trabalho, pequenos aplicativos que flutuam pela área de trabalho e fornecem funcionalidade específicas ao utilizador (previsão do tempo, cotação de moedas, relógio, etc.)

Alguns widgets tem por objetivo receber dados do usuário e com isso gerar algum tipo de registro, como os controles de formulário. Componentes como entrada de texto, caixa de seleção, menu de seleção, botões de múltipla escolha e outros são capazes de definir a natureza dos dados a serem coletados, e dessa forma enumerar todas as possibilidades de dados a serem apresentados pelo usuário. Entradas de texto melhor representam dados de multiplos tipos, ao passo que menus de seleção e grupos de botões de múltipla escolha determinam um conjunto finito de possibilidades para o usuário.

Afirma-se que o termo widget é uma derivação da junção de duas palavras inglesas, "window" e "gadget", porém isto é improvável. A primeira ocorrência desta foi encontrada em Beggar on Horseback (1924), uma peça escrita por George S. Kaufman e Marc Connelly. A peça se refere à protagonista que vivencia a dúvida entre ser um artista, com pouco ou nenhum retorno financeiro ou trabalhar em uma linha de produção de widgets, em que o autor se referencia claramente a objetos inanimados com um valor puramente mercantil e sem nenhuma ligação espiritual ou artística.

Classificação

Podemos classificar os widgets em duas categorias principais, os widgets de baixo nível e os widgets de alto nível.

Widgets de baixo nível são utilizados na confecção do sistema operacional e fazem parte do núcleo do sistema. Alguns exemplos são:

  • Windows 32/64 API;
  • MAC Carbon;
  • Unix X-Windows.

Este núcleo é acessado por outros widgets de alto nível que por fim montam a GUI.

Widgets de alto nível seriam os objetos finais propriamente ditos. Muitas vezes fazem referências a objetos de baixo nível fornecidos pelo comando do sistema operacional. Estes objetos são facilmente encontrados em bibliotecas de desenvolvimento (toolkit) ou em frameworks. Alguns exemplos são:

  • wxWidgets (anteriormente chamada de wxWindows) é um pacote open source com ferramentas para criação de interfaces gráficas multi plataforma.
  • O sistema operacional da Apple Inc., a partir do Mac OS X v10.4 (Tiger), possui o Dashboard, que é uma camada transparente destinada a mostrar pequenas aplicações (widgets);
  • Cocoa e Aqua da Apple Inc. Mac OS X v10.4;
  • Microsoft Foundation Classes (MFC), usada por quase todos desenvolvedores da plataforma Microsoft Windows;
  • Windows Template Library (WTL), uma extensão tipo template, baseada em ATL e utilizada como substituto para partes do MFC;
  • Motif usado no Common Desktop Environment (Unix CDE);
  • Lesstif, Código aberto (LGPL), uma versão do Motif;
  • GTK+, Código aberto multi-plataforma, utilizado no ambiente GNOME.
  • Abstract Windowing Toolkit - AWT, É utilizado em aplicativos Java. Normalmente utiliza widgets de baixo nível como base (Multi-plataforma);
  • Swing da Sun Microsystems é um substituto pra AWT nas versões mais novas de Java (Multi-plataforma).
  • SWT/JFace (do projeto Eclipse - eclipse.org) é uma biblioteca de API para GUI que utiliza widgets nativos atraves de camada JNI (encapsulamento em Java de código nativo). Permite fazer GUI com performance nativa a partir de API em Java.

VOLTAR

  • 2 Utilizadores acharam útil
Esta resposta foi útil?

Artigos Relacionados

O que é um domínio Internet?

Domínio é um nome que serve para localizar e identificar conjuntos de computadores na internet....

O que é uma mídia social?

As "ferramentas de mídias sociais" são sistemas projetados para possibilitar a interação social...

O que é DNS?

O Domain Name System ( DNS ) é um sistema de gerenciamento de nomes hierárquico e distribuído...

O que é computação em nuvem?

O conceito de computação em nuvem (em inglês, cloud computing) refere-se à utilização da...

O que é o protocolo de Internet IPv6?

IPv6 é a versão mais atual do Protocolo de Internet. Originalmente oficializada em 6 de junho de...

Powered by WHMCompleteSolution