segunda-feira, 22 de novembro de 2010

Evolução das GUI's

Nos próximos posts Seu Fontes dará a conhecer um pouco da história das GUI's.


O estudo das Interfaces gráficas do utilizador teve inicio na década de 60, na universidade norte-americana de Stanford, o grupo de investigação era liderado por Douglas Engelbart começou por desenvolver o uso de hiperligações de texto que podiam ser manipuladas por um indicador de posição electrónico. Em 1963, Ivan Sutherland desenvolveu um sistema baseado em ponteiros chamado Sketchpad, que usava uma caneta de luz para guiar a criação e manipulação de objectos em desenhos de engenharia.


Década de 70


O conceito de hiperligações foi aperfeiçoado e ampliado por pesquisadores da Xerox PARC. Estes últimos procuraram ir para além da interface de texto,utilizando uma interface gráfica como a principal interface do computador Xerox Alto, influenciando, consequentemente, a maioria das interfaces gráficas modernas desde então.
A partir de 1979, iniciado por Steve Jobs e liderado por Jef Raskin, os investigadores da Apple Computers continuaram a desenvolver as ideias da Xerox.

quarta-feira, 17 de novembro de 2010

O Regresso de Seu Fontes - o que é um GUI?

Seu Fontes está de volta e agora para falar dos GUIs (Interface Gráfica do Utilizador).

A Interface gráfica do utilizador (GUI - graphical user interface) permite interagir com o computador ou outros dispositivos digitais através de imagens, símbolos e outros indicadores visuais, sem haver a necessidade de memorizar e escrever correctamente complexos comandos, como é o caso do interface da linha de comando. 

Hoje a maior parte dos programas disponibiliza um GUI e a interacção do utilizador com o interface pode ser feita através de por exemplo um rato ou teclado (caso do ambiente de trabalho do Windows). As aplicações utilizam elementos da interface gráfica do utilizador, incorporadas no sistema operativo adicionando-lhes novos elementos.

domingo, 26 de setembro de 2010

Um dos que poderia ter sido... o melhor jogador de futebol do mundo

Diego Milito, nasceu a 12 de Junho de 1979, e iniciou a sua carreira no Racing Club em 1999.
Desde cedo que mostrou o instinto goleador e em 2004 assinou pelo Génova, e mais tarde pelo Zaragoza onde marcou mais de 50 golos na LFP, em 2008 voltou para a serie A assinando novamente pelo Génova onde fez duas brilhantes épocas até 2009.
Este jogador sempre permaneceu de uma certa forma "escondido" no futebol até que no ano de 2009 assinou pelo Inter de Milão comandado por José Mourinho.
Apenas um ano foi preciso para que Milito, aos 30 anos mostra-se a sua mestria num dos melhores clubes mundiais, exemplo disso foram os dois golos na final da UEFA Champions League frente ao Bayern de Munique.
Tal como Il Speziale disse: " É crime um jogador como o Milito apenas ter sido encontrado aos 30 anos de idade", podemos concordar...

Linguagem Java

A linguagem Java pertence ao grupo das linguagens de 4ª geração, as  mais sofisticadas das linguagens de programação.
Foi criada em 1995 pela Sun Microsystems, tem como função a programação de aplicações avançadas, tendo principal destaque para os videojogos.
Sendo uma linguagem de 4ª geração, possui já muitas funções implementadas e componentes para a criação de ambientes gráficos (daí o destaque para os videojogos), o que torna a programação bastante mais simples, como se pode comprovar pelo programa de adição de dois números em comparação com os anteriores:

public class AddNumbers{
  public static void main(String[] args) {
    System.out.println("Addition of two numbers!");
    int a = Integer.parseInt(args[0]);
    int b = Integer.parseInt(args[1]);
    int sum = a + b;
    System.out.println("Sum: " + sum);
  }

Linguagem C++

Desenvolvida em 1985 (tendo tido várias revisões ao longo dos anos) por Bjarne Stroustrup na Bell Labs, a C++ surgiu como reformulação da linguagem C.
A linguagem C++ pertence ao grupo das linguagens de programação de 3ª geração, é uma linguagem multiparadigmática em que cada instrução segue uma lógica de acções, é legível ao utilizador e corresponde a um grande conjunto de instruções em linguagem máquina.

Programa de adição de dois números (a,b)  em C++
#include<iostream>
#include<cmath>

using namespace std;

int main void(){
float a;
float b;
float sum;
cout << "Enter a and b" << endl;
cin >> a >> b ;
sum = a+b;
cout << endl << "Sum equals" << sum;
return 0;
}

Linguagem Assembly

Primeira mensagem da segunda ronda de posts sobre a matéria dada em AIB.

A linguagem Assembly, é uma linguagem de 2ª geração (baixo nível), criada na década de 50. Cada instrução em Assembly é traduzida numa instrução de hardware (linguagem máquina), esta linguagem é por isso considerada a fronteira entre as linguangens de programação de baixo e alto nível.
ADD e INC são dois exemplos de programas de adição em Assembly.

programa ADD:

TITLE ADD
.model small
.stack 100h
.data

add_msga    db    10,13, "Enter Number 1: $"
add_msgb    db    10,13, "Enter Number 2: $"
add_num1    db  ?
add_num2    db    ?
add_result    db    ?

.code
main PROC
mov ax,@data
mov ds,ax

call AddNumbers

mov ax, 4c00h
int 21h
main ENDP


AddNumbers PROC
;get num1
    mov ah, 09h
    mov dx, offset add_msga
    int 21h
    
    mov ah, 1h
    int 21h
    mov add_num1, al
    
;get num2
    mov ah, 09h
    mov dx, offset add_msgb
    int 21h
    
    mov ah, 1h
    int 21h
    mov add_num2, al

;add [numbers]
    mov al, add_num1
    add al, add_num2
    mov add_res, al
    
;output result
    mov ah, 09h
    mov dx, offset add_res
    int 21h

    ret

AddNumbers endp

END main.

sábado, 25 de setembro de 2010

Breve explicação sobre o Processamento de Linguagem Natural

Este é o último da 1ª série de posts relativos ao trabalho da disciplina.


O processamento de linguagem natural é o conjunto de métodos formais para a análise de textos e compreensão de frases escritas em linguagem humana.
O Processamento de Linguagem Natural tem como finalidade fornecer aos computadores a capacidade de compreender linguagem humana e obedecer a ordens dadas pelo utilizador através desta.