SlideShare uma empresa Scribd logo
1 de 4
’
Bibliotecas de interface gráfica em C
O que é interface gráfica
Uma interface tem diversos significados diferente, porem o quesito mais importante que se irá
exemplificar e estudar é na área de informática. Na área de tecnologia geralmente se refere a uma
forma de comunicação entre dois ambientes distintos entre si. Um exemplo é a comunicação entre
uma placa de vídeo e uma placa mãe que se da através de uma interface ou barramento.
Observando de modo geral interface gráfica é uma forma de interação entre o usuário do
computador e um programa por meio de uma tela ou representação visual, normalmente entendido
como a “tela” de um programa. Logo é o modo de dispor em uma interface itens para se apresentar,
como imagens, desenhos, barras, menus, etc.
Bibliotecas
Existem muitas bibliotecas gráficas, para diversas linguagens de programação, cada uma tendo uma
visão de pontos de vantagem e desvantagem. Muito dos pontos a serem analisados para estabelecer
qual é a melhor escolha, os critérios geralmente são,portabilidade, rapidez de execução, custo de
desenvolvimento, estabilidade do software a qual vai ser utilizada a interface, entre outros
requisitos.
As bibliotecas podem ser de dois tipos diferentes, aquelas acopladas a um sistema, e as
desacopladas, para exemplificar usaremos dois exemplos de bibliotecas, as API nativas e as
bibliotecas de terceiros, desconsiderado a de sistemas embarcados. As API nativas são sistemas
quem acabam por implementar certos recursos , como uma interface gráfica no próprio sistema ,
que é o caso do Windows cuja a parte gráfica se encontra dentro do núcleo do sistema. Já as
bibliotecas de terceiros são externos que você pode instalar em um sistema, geralmente, elas são
vistas como bibliotecas de nível inferior, que ainda assim conseguem disponibilizar maior conforto.
Cada biblioteca tem seus requisitos para instalação, grande parte delas apenas exige a linguagem de
programação correta e uma plataforma compatível e em alguns casos é possível se deparar com
instalações complexas como é o caso do “Graphapp” para o Windows, já em outros casos é possível
achar as instalações bem simples e diretas como o “Allegro” também para Windows.
Allegro:
Aleegro é uma de uma extensa quantidade de bibliotecas de interfaces gráficas que podem ser
encontradas para utilização, essa biblioteca possui seu código fonte aberto e normalmente é a mais
buscada quando o assunto é interface de jogos. Um dos motivos pelo qual é muito buscado, é o
independência da plataforma de operação, o mesmo código fonte , sem uma única mudança de
caracteres, deve compilar e executar corretamente em qualquer plataforma suportada.
O seu principal uso é no escopo da programação de jogos. Atualmente ela possui uma grande
comunidade pois além de possuir diversos recursos nativamente (gráficos 2D, 3D com OpenGL,
entrada de dados pelo teclado e mouse, RLE-Sprites, exibição de vídeos e controle de som) a API é
bastante extensível fazendo que com existam diversos addons disponíveis.
’
A interface pública de acesso da biblioteca é escrita em C, porém há alguns extensores (não-oficiais)
para outras linguagem de programação. Internamente seu código fonte é escrito em uma mistura de
C, Assembly (drivers i386), C++ e Objective-C.
As principais plataformas suportadas são:
DOS/Watcom
Windows/MSVC
Windows/MinGW32
Windows/Cygwin
Windows/Borland
Linux (console)
Unix (X)
BeOS
QNX
Mac OS/MPW
Com bibliotecas de interface gráfica como Allegro, é muito mais simples o desenvolvimento de jogos,
além de expandir a forma que pode ser utilizada a programação em C, além de aperfeiçoar o
conhecimento em linguagens de programação me geral. Já existem diversos códigos de jogos criados
que podem ser achados facilmente, jogos clássicos como jogo da velha, forca, tetris, porem não se
limita a apenas esses, também existem alguns jogos com códigos mais extensos.
Jogo da velha desenvolvido em allegro
’
Logro de uma interface gráfica:
Existem outras maneiras de criar jogos ou simular interfaces gráficas sem o uso direto de bibliotecas
gráficas, mas sim manipulando o uso de caracteres especiais ou mesmo caracteres normais. A
qualidade diminui obviamente porem a funcionalidade geralmente é igual, só variando de acordo
com uma boa criatividade para se usar os caracteres. A utilização desse método, porem só poderá
ser usado de uma boa maneira com jogos ou interfaces simples, como por exemplo, o jogo da velha
ou mesmo o brinquedo connect foursendo colocado como um jogo virtual.
Através da tabela ASCII é determinado quais os possíveis e mais adequados caracteres a serem
utilizados nessa manipulação de interface, por meio da numeração que representa tal caractere. Esta
tabela pode facilmente ser encontrada ou até mesmo ser acessado pelo próprio C através de um
código especifico.
tabela ASCII
A opção de fazer um logro de uma interface gráfica fica a critério do objetivo do desenvolvedor.A
qualidade gráfica será extremamente baixa quando utilizar tal método independente se for para
jogos ou não, é mais recomendado a utilização dessa técnica para aqueles que exigem apenas um
escopo ou meio de criar testes simples a ser utilizado nos códigos, ou até mesmo para problemas de
compatibilidade das bibliotecas com os compiladores, dessa forma é possível criar um código e testa-
lo até que o problema seja resolvido. Abaixo segue um exemplo do jogo connect fourusando este
meio de manipulação em C++.
’
Logro de interface gráfica.
Conclusão:
O uso de bibliotecas é extremamente útil para agilizar, auxiliar, e melhorar códigos de programação,
sendo algumas vezes impossível criar bons programas ou jogos com qualidade sem biblioteca
alguma, como é o exemplo do uso de interface gráfica. Dependendo do programa ao qual se tem
interesse em criar será necessário certo conhecimento básico front-end e ainda saber utilizar bem
interfaces gráficas, que torna a aplicação de apreciação visual adequada e tornando a utilização sem
auxílios, por isso é necessário o conhecimento da utilização de bibliotecas e interfaces gráficas.
Referencia:
http://www.geocities.ws/weissengeist/allegro.html
http://pt.kioskea.net/faq/10999-bibliotecas-para-interfaces-graficas-gui
http://www.explorando.com.br/o-que-e-interface-grafica
https://sites.google.com/a/liesenberg.biz/cjogos/home/software/interfaces-graficas-em-c
Link jogo da velha:http://www.4shared.com/zip/20IFsbse/Jogo_da_Velha.html
Link jogo Connect four + codigo:
http://www.4shared.com/rar/9sbDtIPU/ConnectFour.htmlOu
https://mega.co.nz/#!NZtFEbbK!X8boEXuXo4Q7ZJY4BEhApyfZeBNhC-yhB8CyWGedU9g

Mais conteúdo relacionado

Mais procurados

Metodologias de desenvolvimento de sistemas de informação
Metodologias de desenvolvimento de sistemas de informaçãoMetodologias de desenvolvimento de sistemas de informação
Metodologias de desenvolvimento de sistemas de informaçãoJean Carlos
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
 
Ppt conhecendo o windows 7
Ppt conhecendo o windows 7Ppt conhecendo o windows 7
Ppt conhecendo o windows 7Eduardo Sena
 
Historia das redes de computadores
Historia das redes de computadoresHistoria das redes de computadores
Historia das redes de computadoresAlessandro Fazenda
 
Resumo básico de introdução à informática
Resumo básico de introdução à informáticaResumo básico de introdução à informática
Resumo básico de introdução à informáticaDaiana de Ávila
 
Sistema Operativo Servidor
Sistema Operativo ServidorSistema Operativo Servidor
Sistema Operativo ServidorDaniel Barros
 
Escalonamento no Windows
Escalonamento no WindowsEscalonamento no Windows
Escalonamento no WindowsFee Kosta
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSCleber Ramos
 
Introduo Informtica Mdulo 1 1193933851888380 4
Introduo Informtica Mdulo 1 1193933851888380 4Introduo Informtica Mdulo 1 1193933851888380 4
Introduo Informtica Mdulo 1 1193933851888380 4Jose Verissimo
 
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmicoParadigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmicoAdriano Teixeira de Souza
 
Sistema de Informação na Empresa
Sistema de Informação na EmpresaSistema de Informação na Empresa
Sistema de Informação na EmpresaAdeildo Telles
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação CGercélia Ramos
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionaisvini_campos
 
Sistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxSistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxLuiz Arthur
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para JogosRicardo Leite
 
Manual-de-php
Manual-de-phpManual-de-php
Manual-de-phpdiogoa21
 

Mais procurados (20)

Metodologias de desenvolvimento de sistemas de informação
Metodologias de desenvolvimento de sistemas de informaçãoMetodologias de desenvolvimento de sistemas de informação
Metodologias de desenvolvimento de sistemas de informação
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Ppt conhecendo o windows 7
Ppt conhecendo o windows 7Ppt conhecendo o windows 7
Ppt conhecendo o windows 7
 
Windows 7
Windows 7Windows 7
Windows 7
 
Projeto de Software
Projeto de SoftwareProjeto de Software
Projeto de Software
 
Historia das redes de computadores
Historia das redes de computadoresHistoria das redes de computadores
Historia das redes de computadores
 
Resumo básico de introdução à informática
Resumo básico de introdução à informáticaResumo básico de introdução à informática
Resumo básico de introdução à informática
 
Sistema Operativo Servidor
Sistema Operativo ServidorSistema Operativo Servidor
Sistema Operativo Servidor
 
Escalonamento no Windows
Escalonamento no WindowsEscalonamento no Windows
Escalonamento no Windows
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFS
 
Introduo Informtica Mdulo 1 1193933851888380 4
Introduo Informtica Mdulo 1 1193933851888380 4Introduo Informtica Mdulo 1 1193933851888380 4
Introduo Informtica Mdulo 1 1193933851888380 4
 
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmicoParadigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
 
Sistema de Informação na Empresa
Sistema de Informação na EmpresaSistema de Informação na Empresa
Sistema de Informação na Empresa
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação C
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Sistemas Mac OS
Sistemas Mac OSSistemas Mac OS
Sistemas Mac OS
 
Sistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxSistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/Linux
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para Jogos
 
1ª aula sistema operacional
1ª aula  sistema operacional1ª aula  sistema operacional
1ª aula sistema operacional
 
Manual-de-php
Manual-de-phpManual-de-php
Manual-de-php
 

Semelhante a Bibliotecas GUI C (20)

Desenvolvimento de Jogos
Desenvolvimento de JogosDesenvolvimento de Jogos
Desenvolvimento de Jogos
 
Paradigmas de Linguagem
Paradigmas de LinguagemParadigmas de Linguagem
Paradigmas de Linguagem
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Microsoft .NET Framework
Microsoft .NET FrameworkMicrosoft .NET Framework
Microsoft .NET Framework
 
Apostila chardwere
Apostila chardwereApostila chardwere
Apostila chardwere
 
C hardware
C hardwareC hardware
C hardware
 
Delphi6bd
Delphi6bdDelphi6bd
Delphi6bd
 
Csharp
CsharpCsharp
Csharp
 
Aula de C para Linux
Aula de C para LinuxAula de C para Linux
Aula de C para Linux
 
Linguagem de java
Linguagem de javaLinguagem de java
Linguagem de java
 
Apostila de C# & Asp.Net
Apostila de C# & Asp.NetApostila de C# & Asp.Net
Apostila de C# & Asp.Net
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
apostila de dev.pdf
apostila de dev.pdfapostila de dev.pdf
apostila de dev.pdf
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Apostila de devc++ novo
Apostila de devc++ novoApostila de devc++ novo
Apostila de devc++ novo
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores Digitais
 
Programação de jogos eletrônicos
Programação de jogos eletrônicosProgramação de jogos eletrônicos
Programação de jogos eletrônicos
 
FLTK Summer Course - Part I - First Impact
FLTK Summer Course - Part I - First ImpactFLTK Summer Course - Part I - First Impact
FLTK Summer Course - Part I - First Impact
 
.NET Open Source
.NET Open Source.NET Open Source
.NET Open Source
 

Bibliotecas GUI C

  • 1. ’ Bibliotecas de interface gráfica em C O que é interface gráfica Uma interface tem diversos significados diferente, porem o quesito mais importante que se irá exemplificar e estudar é na área de informática. Na área de tecnologia geralmente se refere a uma forma de comunicação entre dois ambientes distintos entre si. Um exemplo é a comunicação entre uma placa de vídeo e uma placa mãe que se da através de uma interface ou barramento. Observando de modo geral interface gráfica é uma forma de interação entre o usuário do computador e um programa por meio de uma tela ou representação visual, normalmente entendido como a “tela” de um programa. Logo é o modo de dispor em uma interface itens para se apresentar, como imagens, desenhos, barras, menus, etc. Bibliotecas Existem muitas bibliotecas gráficas, para diversas linguagens de programação, cada uma tendo uma visão de pontos de vantagem e desvantagem. Muito dos pontos a serem analisados para estabelecer qual é a melhor escolha, os critérios geralmente são,portabilidade, rapidez de execução, custo de desenvolvimento, estabilidade do software a qual vai ser utilizada a interface, entre outros requisitos. As bibliotecas podem ser de dois tipos diferentes, aquelas acopladas a um sistema, e as desacopladas, para exemplificar usaremos dois exemplos de bibliotecas, as API nativas e as bibliotecas de terceiros, desconsiderado a de sistemas embarcados. As API nativas são sistemas quem acabam por implementar certos recursos , como uma interface gráfica no próprio sistema , que é o caso do Windows cuja a parte gráfica se encontra dentro do núcleo do sistema. Já as bibliotecas de terceiros são externos que você pode instalar em um sistema, geralmente, elas são vistas como bibliotecas de nível inferior, que ainda assim conseguem disponibilizar maior conforto. Cada biblioteca tem seus requisitos para instalação, grande parte delas apenas exige a linguagem de programação correta e uma plataforma compatível e em alguns casos é possível se deparar com instalações complexas como é o caso do “Graphapp” para o Windows, já em outros casos é possível achar as instalações bem simples e diretas como o “Allegro” também para Windows. Allegro: Aleegro é uma de uma extensa quantidade de bibliotecas de interfaces gráficas que podem ser encontradas para utilização, essa biblioteca possui seu código fonte aberto e normalmente é a mais buscada quando o assunto é interface de jogos. Um dos motivos pelo qual é muito buscado, é o independência da plataforma de operação, o mesmo código fonte , sem uma única mudança de caracteres, deve compilar e executar corretamente em qualquer plataforma suportada. O seu principal uso é no escopo da programação de jogos. Atualmente ela possui uma grande comunidade pois além de possuir diversos recursos nativamente (gráficos 2D, 3D com OpenGL, entrada de dados pelo teclado e mouse, RLE-Sprites, exibição de vídeos e controle de som) a API é bastante extensível fazendo que com existam diversos addons disponíveis.
  • 2. ’ A interface pública de acesso da biblioteca é escrita em C, porém há alguns extensores (não-oficiais) para outras linguagem de programação. Internamente seu código fonte é escrito em uma mistura de C, Assembly (drivers i386), C++ e Objective-C. As principais plataformas suportadas são: DOS/Watcom Windows/MSVC Windows/MinGW32 Windows/Cygwin Windows/Borland Linux (console) Unix (X) BeOS QNX Mac OS/MPW Com bibliotecas de interface gráfica como Allegro, é muito mais simples o desenvolvimento de jogos, além de expandir a forma que pode ser utilizada a programação em C, além de aperfeiçoar o conhecimento em linguagens de programação me geral. Já existem diversos códigos de jogos criados que podem ser achados facilmente, jogos clássicos como jogo da velha, forca, tetris, porem não se limita a apenas esses, também existem alguns jogos com códigos mais extensos. Jogo da velha desenvolvido em allegro
  • 3. ’ Logro de uma interface gráfica: Existem outras maneiras de criar jogos ou simular interfaces gráficas sem o uso direto de bibliotecas gráficas, mas sim manipulando o uso de caracteres especiais ou mesmo caracteres normais. A qualidade diminui obviamente porem a funcionalidade geralmente é igual, só variando de acordo com uma boa criatividade para se usar os caracteres. A utilização desse método, porem só poderá ser usado de uma boa maneira com jogos ou interfaces simples, como por exemplo, o jogo da velha ou mesmo o brinquedo connect foursendo colocado como um jogo virtual. Através da tabela ASCII é determinado quais os possíveis e mais adequados caracteres a serem utilizados nessa manipulação de interface, por meio da numeração que representa tal caractere. Esta tabela pode facilmente ser encontrada ou até mesmo ser acessado pelo próprio C através de um código especifico. tabela ASCII A opção de fazer um logro de uma interface gráfica fica a critério do objetivo do desenvolvedor.A qualidade gráfica será extremamente baixa quando utilizar tal método independente se for para jogos ou não, é mais recomendado a utilização dessa técnica para aqueles que exigem apenas um escopo ou meio de criar testes simples a ser utilizado nos códigos, ou até mesmo para problemas de compatibilidade das bibliotecas com os compiladores, dessa forma é possível criar um código e testa- lo até que o problema seja resolvido. Abaixo segue um exemplo do jogo connect fourusando este meio de manipulação em C++.
  • 4. ’ Logro de interface gráfica. Conclusão: O uso de bibliotecas é extremamente útil para agilizar, auxiliar, e melhorar códigos de programação, sendo algumas vezes impossível criar bons programas ou jogos com qualidade sem biblioteca alguma, como é o exemplo do uso de interface gráfica. Dependendo do programa ao qual se tem interesse em criar será necessário certo conhecimento básico front-end e ainda saber utilizar bem interfaces gráficas, que torna a aplicação de apreciação visual adequada e tornando a utilização sem auxílios, por isso é necessário o conhecimento da utilização de bibliotecas e interfaces gráficas. Referencia: http://www.geocities.ws/weissengeist/allegro.html http://pt.kioskea.net/faq/10999-bibliotecas-para-interfaces-graficas-gui http://www.explorando.com.br/o-que-e-interface-grafica https://sites.google.com/a/liesenberg.biz/cjogos/home/software/interfaces-graficas-em-c Link jogo da velha:http://www.4shared.com/zip/20IFsbse/Jogo_da_Velha.html Link jogo Connect four + codigo: http://www.4shared.com/rar/9sbDtIPU/ConnectFour.htmlOu https://mega.co.nz/#!NZtFEbbK!X8boEXuXo4Q7ZJY4BEhApyfZeBNhC-yhB8CyWGedU9g