domingo, 5 de junho de 2011

Linguagens de programação

Os computadores são funcionários quase perfeitos. Fazem tudo o que mandamos, não reclamam, não se importam de trabalhar até tarde da noite, não cobram hora extra nem tiram férias. Mas, em compensação também não pensam. Para que façam qualquer coisa é preciso explicar tudo com os mínimos detalhes e na língua deles.


Considerando que tudo o que os computadores conseguem entender são seqüências intermináveis de números binários, fornecer estas "instruções" pode ser muito penoso para um ser humano. Você consegue se imaginar lendo um manual de 5.000 páginas e decorando um a um centenas de códigos binários que representam as instruções do processador?


Se os programadores precisassem programar diretamente em binários, decorando seqüências como 10111011101101101110110011001010 para cada instrução do processador e para cada endereço de memória a ser acessado, provavelmente não teríamos mais programadores... já estariam todos loucos.


Para facilitar as coisas, começaram a ser desenvolvidas as linguagens de programação, que diferem na sintaxe e recursos, mas tem um ponto em comum, que é a existência de um compilador. Seja programando em C, ou seja em Kylix, você usará um editor para escrever seu programa, respeitando as regras da linguagem escolhida e em seguida rodará o programa compilador, que interpretará os comandos que inclui no programa e os transformará em binários, as instruções que são entendidas pelo processador.


A vantagem é que você poderá trabalhar com instruções como if, else, etc. além de todas as facilidades oferecidas pela linguagem ao invés de gigantescos endereços binários. Sem dúvida muito mais simples.


Existem diversas linguagens de programação, meu objetivo é dar algumas noções básicas sobre as peculiaridades e utilidade de cada uma.


Para começar, existe uma linguagem "básica" para quem quer aprender a programar, ensinada nos cursos de lógica da programação, o pseudocódigo. Ele não e uma linguagem "de verdade", mas e uma maneira mais simples para aprender os fundamentos usados em todas as linguagens de programação.


Podemos começar com um exemplo simples. Vamos fazer um programa capaz de tomar uma decisão fácil. Ele pergunta a nota do aluno e diz se ele passou ou não. Para um ser humano isso seria um problema muito elementar, mas para o computador as coisas não são tão simples assim. Lembre-se que ele e burro e precisa ser orientado passo a passo. Nosso programinha em pseudocódigo poderia ficar assim:


escreva: "Qual é a nota do aluno?"
leia nota
se nota maior ou igual a sete
então:
escreva "Ele passou"
senão:
escreva: "Ele foi reprovado"
fim do se
fim do programa
Este programinha perguntaria a nota e com base no numero que for digitado avisaria se o aluno passou ou não.


Ele poderia ser escrito em qualquer linguagem, mas a lógica seria a mesma. De acordo com os recursos oferecidos pela linguagem escolhida ele poderia ter uma interface simples em modo texto, uma interface gráfica mais trabalhada, aparecer no meio de uma pagina web e assim por diante.


As linguagens de programação são conjuntos de padrões e comandos que você pode usar para dar ordens para nossos amigos burros.


Assim como nas línguas faladas, existem diferenças de sintaxe, gramática e existem linguagens mais simples ou mais complicadas de aprender e linguagens mais adequadas para tipo de tarefa a realizar. Veja alguns exemplos de linguagens de programação:


Assembly


O Assembly foi provavelmente a primeira linguagem de programação da história, surgida na década de 50, época em que os computadores ainda usavam válvulas. A idéia do assembly é usar um comando em substituição a cada instrução de máquina.


No assembly, cada uma destas instruções, equivale a uma instrução do processador. Ao invés de usar instruções como 10101011 você pode usar outras bem mais fáceis de entender e de memorizar, como add, div, mul, and, or, not, etc. Você também pode criar variáveis, que são pequenos espaços na memória RAM reservados para guardar algum tipo de dado, que o programa precisará mais tarde. Você pode usar aquelas instruções que citei para lidar com elas. Por exemplo, a instrução "add" faz com que o processador some duas variáveis; "add x, y" por exemplo, soma os valores de x e y.


Apesar de ser exaustivamente trabalhoso, você pode perfeitamente desenvolver pequenos programas em assembly, para isso só vai precisar de um compilador e bastante paciência para aprender. Você pode baixar um gratuíto em http://www.web-sites.co.uk/nasm nesta mesma página você vai encontrar alguns manuais que podem ajudar bastante.


O compilador transforma o código escrito em assembly em linguagem de máquina, que finalmente poderá ser entendida pelo processador.


Existem também os decompiladores, que fazem o trabalho inverso, de transformar um programa já compilado, em um código em linguagem assembly. Este recurso é chamado de engenharia reversa. É assim que conseguem crackear programas, quebrar códigos de proteção (como o do DVD), etc. Claro que para isso, é preciso alguém que conheça muito de assembly e que tenha disposição para ficar estudando o código até encontrar o que procura.


Por causa desta característica de permitir trabalhar diretamente com as instruções do processador, o assembly é chamado de linguagem de baixo nível. Existem também linguagens de alto nível, como C++ ou Pascal, onde é possível usar várias funções já prontas ou mesmo ferramentas visuais, como o Kdeveloper ou o Kylix, que são ainda mais fácies.


Fortran


O Fortran foi uma das primeiras linguagens de alto nível da história. Enquanto o Assembly é chamado de linguagem de baixo nível, por nele utilizarmos diretamente as instruções e endereços do processador e memória, numa linguagem de alto nível temos várias funções prontas, o que facilita muito a programação, mas em compensação torna em muitos casos o programa maior e mais pesado, já que o compilador jamais conseguirá gerar um código tão otimizado quanto um programador experiente conseguiria.


Fortran é a contração de "Formula Translator". A primeira versão do Fortran foi criada no final da década de 50, mas a linguagem começou a ser usada em larga escala apartir da metade da década de 60, quando surgiram várias versões diferentes. Atualmente o Fortran é pouco usado, mas existe um ícone mágico para instalar o compilador no Kurumin.


Pascal


O Pascal é outra linguagem de alto nível, criada durante a década de 60. O Pascal é uma linguagem bastante estruturada, com regras bastante rígidas, o que a torna difícil de usar. Hoje em dia o Pascal original é pouco usado, mas seus descendentes diretos como o Free Pascal evoluíram muito. O próprio Kylix (unto com o Delphi) é uma evolução do Pascal.


Cobol


Cobol significa "Common Business Oriented Language". Esta linguagem foi desenvolvida no final da década de 50, com o objetivo de ser uma plataforma de desenvolvimento para aplicações bancárias e financeiras em geral. Comparado com o Pascal e o Assembly, comuns na época, o Cobol é uma linguagem bastante amigável, o que garantiu uma grande aceitação. Até hoje esta linguagem é usada em muitos sistemas bancários, o que explica a grande procura por programadores experientes nesta linguagem na época do bug do ano 2000.


C


O C foi desenvolvido durante a década de 70, mas ainda é largamente utilizado. A grande vantagem do C é permitir escrever tanto programas extremamente otimizados para a máquina, como seria possível apenas em assembly, e ao mesmo tempo vir com várias funções prontas, como uma linguagem de alto nível, que podem ser utilizadas quando não for necessário gerar um código tão otimizado.


A maior parte dos programas Linux e o Kernel quase todo foram escritos em C, o que explica o por que do sistema ser tão rápido em algumas tarefas.


C++


O C++ mantém os recursos do C original, mas traz muitos recursos novos, como recursos orientados a objetos, sendo também bem mais fácil de utilizar. O C++ é bastante usado atualmente para desenvolver muitos programas para várias plataformas, ele é por exemplo a linguagem oficial do KDE (a interface gráfica usada por padrão no Kurumin) e da maioria dos programas para ele.


Python


O Python é uma linguagem de programação com uma sintaxe muito simples e intuitiva e ao mesmo tempo bastante poderosa, que pode ser usada por toda classe usuários. É uma boa opção de linguagem para quem está começando a programar.

Tipos de linguagens

O computador só entende uma linguagem conhecida como código binário ou código máquina, consistente em zeros e uns. Ou seja, só utiliza 0 e 1 para codificar qualquer ação. 


  As linguagens mais próximas à arquitetura hardware se denominam linguagens de baixo nível e as que se encontram mais próximas aos programadores e usuários se denominam linguagens de alto nível. 


Linguagens de baixo nível 


São linguagens totalmente dependentes da máquina, ou seja, que o programa que se realiza com este tipo de linguagem não pode ser migrado ou utilizado em outras máquinas. 


Ao estar praticamente desenhado a medida do hardware, aproveitam ao máximo as características do mesmo. 


Dentro deste grupo se encontram: 


A linguagem máquina: esta linguagem ordena à máquina as operações fundamentais para seu funcionamento. Consiste na combinação de 0's e 1's para formar as ordens entendíveis pelo hardware da máquina. 
Esta linguagem é muito mais rápida que as linguagens de alto nível. 
A desvantagem é que são bastante difíceis de manejar e usar, além de ter códigos fonte enormes onde encontrar uma falha é quase impossível.
A linguagem Assembler é um derivado da linguagem máquina e está formada por abreviaturas de letras e números chamados mnemotécnicos. Com o aparecimento desta linguagem se criaram os programas tradutores para poder passar os programas escritos em linguagem assembler a linguagem máquina. Como vantagem com respeito ao código máquina é que os códigos fontes eram mais curtos e os programas criados ocupavam menos memória. As desvantagens desta linguagem continuam sendo praticamente as mesmas que as da linguagem assembler, acrescentando a dificuldade de ter que aprender uma nova linguagem difícil de provar e manter.


Linguagens de alto nível 


São aquelas que se encontram mais próximas à linguagem natural que à linguagem máquina. 
Estão dirigidas a solucionar problemas mediante o uso de EDD's. 


Nota: EDD's são as abreviaturas de Estruturas Dinâmicas de Dados, algo muito utilizado em todas as linguagens de programação. São estruturas que podem mudar de tamanho durante a execução do programa. Permitem-nos criar estruturas de dados que se adaptem às necessidades reais de um programa.


Trata-se de linguagens independentes da arquitetura do computador. Sendo assim, à princípio, um programa escrito em uma linguagem de alto nível, pode ser migrado de uma máquina a outra sem nenhum tipo de problema. 


Estas linguagens permitem ao programador se esquecer completamente do funcionamento interno da máquina/s para a que está desenhando o programa. Somente necessita de um tradutor que entenda o código fonte como as características da máquina. 


Costumam usar tipos de dados para a programação e existem linguagens de propósito geral (qualquer tipo de aplicação) e de propósito específico (como FORTRAN para trabalhos científicos). 


Linguagens de Médio nível 


Trata-se de um termo não aceito por todos, porém certamente vocês já devem ter escutado. Estas linguagens se encontram em um ponto médio entre as duas anteriores. Dentro destas linguagens poderia se situar C já que pode acessar aos registros do sistema, trabalhar com endereços de memória, todas elas características de linguagens de baixo nível e ao mesmo tempo realizar operações de alto nível. 


Gerações 


A evolução das linguagens de programação pode ser dividida em 5 etapas ou gerações. 


Primeira geração: Linguagem máquina.
Segunda geração: Criaram-se as primeiras linguagens assembler.
Terceira geração: Criam-se as primeiras linguagens de alto nível. Ex: C, Pascal, Cobol…
Quarta geração: São linguagens capazes de gerar código por si só, são os chamados RAD, com o qual pode-se realizar aplicações sem ser um expert na linguagem. Aqui também se encontram as linguagens orientadas a objetos, tornando possível a reutilização de partes do código para outros programas. Ex: Visual, Natural Adabes…
Quinta geração: Aqui se encontram as linguagens orientadas à inteligência artificial. Estas linguagens ainda estão pouco desenvolvidas. Ex: LISP

quarta-feira, 1 de junho de 2011

A montanha-russa da morte

Ao entrar nela você só tem uma certeza: a de que não sairá vivo do passeio. Criada pelo designer lituano Julijonas Urbonas, a Euthanasia Coaster seria uma espécie de morte divertida para pacientes terminais que decidissem encerrar a vida. Embora o projeto seja apenas teórico, todos os seus sete loopings foram calculados para garantir que nenhum passageiro sobreviva. Veja como seriam os 3'20" dessa sua última jornada.

Um toque de humor negro


No ano passado, Julijonas Urbonas teve uma ideia inusitada para seu doutorado em design na Royall College of Art, em Londres: criar uma montanha russa da morte. Após três meses, o lituano de 29 anos concluiu todos os cálculos e desenhos de sua Euthanasia Coaster.
O que é esse projeto?
É basicamente uma montanha russa que mata o passageiro de forma rápida e elegante. Ela poderia ser vista como uma máquina de eutanásia alternativa, mas também um aparelho de ficção científica com um toque de humor negro. É claro que ela é hipotética; o projeto consiste em cálculos de engenharia e fisiológicos. Ela é real somente na parte científica; poderia ser construída hoje, mas acho que na atual situação cultural e sócio-política nós não estaríamos preparados para algo do tipo.
Mas você aprovaria sua construção?
Sim, se eu tivesse certeza de que os passageiros terminalmente doentes quisessem isso – e que ela não se tornaria uma espécie de máquina nazista da morte. Por outro lado, ela poderia ser levemente modificada para se tornar uma das montanhas-russas mais extremas do mundo.
Você teve a ajuda de especialistas, como médicos?
Eu conversei com o Dr. Michael Gresty, do Imperial College, Londres, para resolver várias questões fisiológicas. Ele ajudou a me familiarizar com medicina espacial e aeroespacial. Ele não acredita em eutanásia – aliás, foi muito difícil encontrar conselhos de pessoas da área, já que é um assunto muito delicado. Na verdade, parece não haver nenhuma referência documentada relatando o que acontece com alguém que passa por uma aceleração tão grande. Consegui achar alguns cientistas que deram seus palpites de quanto tempo e força uma pessoa precisaria para uma dose letal, mas eles pediram que seus nomes não fossem mencionados.


Cientistas desenvolvem o menor transistor do mundo


Uma pesquisa realizada pela Chungbuk National University, na Coreia do Sul, conseguiram aplicar o efeito quantum em semicondutores, obtendo como resultado o menor transistor do mundo. A novidade é resultado de um trabalho conjunto entre cientistas da Coreia do Sul, Japão e Reino Unido, e tem como líder o professor Choi Jung-bum.
Além de conseguir diminuir o tamanho de transistores a escalas manométricas, o time foi bem sucedido em fazê-los funcionar corretamente em temperaturas normais. Segundo um pesquisador da universidade, a descoberta pode representar avanços significativos na capacidade de processamento em dispositivos móveis.
Segundo o professor Choi Jung-bum, os transistores possuem tamanho de somente dois nanômetros, e devem modificar totalmente o paradigma desse tipo de dispositivo. Ainda não há previsões de quando a tecnologia estará disponível para produção em larga escala, nem informações relacionadas ao interesse de alguma empresa pela novidade.

Estes óculos protegem os olhos do Sol e de quebra gravam vídeos em HD


Cuidado ao cruzar com alguém que esteja usando esses óculos escuros. Eles podem estar filmando tudo em qualidade bastante razoável sem que ninguém saiba.
Esses óculos foram criados pela Thanko, loja japonesa especialista em gadgets curiosos. Entre as lentes há uma câmera que grava vídeos no formato AVI com resolução de 1280x720 pixels a 30 quadros por segundo. Ela também registra fotos com resolução de 4032x3024 no formato JPG.
Provavelmente você está se perguntando: e essas imagens vão para onde? Simples: um cartão microSD em uma das laterais.  Os óculos têm uma entrada compatível com cartões de até 32 GB. Depois, basta conectar o slot ao computador através de um cabo USB 2.0 e transferir vídeos e fotos.





A proposta da Thanko é que o aparato seja utilizado para filmagens com as mãos livres e também durante atividades esportivas (ski e ciclismo como exemplos). Mas é inevitável pensar que estes óculos são perfeitos para qualquer um que queira fazer filmagens escondidas — tanto para o bem quanto para o mal. A ideia parece ótima para reportagens investigativas, mas igualmente ótima para invasão de privacidade.
O mais curioso: não se trata de um projeto ou protótipo. Esses óculos já estão à venda no Japão pelo preço de U$ 74.

Quando vale a pena trocar a placa-mãe do computador?


Assim como o nome do componente deixa claro, a placa-mãe é uma peça de hardware essencial para qualquer computador. Afinal, esse dispositivo é responsável por estabelecer comunicações entre o processador, pentes de memória RAM, disco rígido e a placa de vídeo, vitais para o funcionamento de qualquer máquina.
Como nem sempre uma simples mudança de periféricos é suficiente para melhorar o desempenho obtido, muitas vezes é preciso tomar uma decisão importante e investir na compra de uma nova placa-mãe. Tal atitude muitas vezes pode significar investir em um computador totalmente novo, principalmente quando as demais peças estão desatualizadas.
Para tornar mais fácil tomar essa decisão importante, neste artigo listamos quais os principais motivos que indicam quando é hora de trocar esse componente essencial. Lembre-se de que nem sempre o último dispositivo a sair no mercado é recomendado para todos os tipos de usuários, e que, muitas vezes, não há problemas em investir na compra de peças de hardware um pouco mais antigas.

Placa antiga estragada

Esse é o melhor motivo para investir na compra da uma nova placa-mãe. Afinal, mesmo que os demais componentes da máquina não sofram de nenhum problema, não será possível usá-los corretamente se a peça responsável por estabelecer comunicações entre eles está danificada.
Porém, antes de investir na compra de um novo hardware, é preciso se certificar de que a escolha feita possui os soquetes necessários para a conexão dos demais dispositivos. Esse é um detalhe que deve ser levado a sério, já que investir em uma peça errada pode obrigar o usuário a ter que adquirir um processador novo ou substituir o tipo de memória RAM utilizada, por exemplo.
Portanto, antes de pensar em comprar uma placa-mãe substituta, anote detalhadamente todas as características dos demais dispositivos utilizados. Isso é especialmente importante quando se fala em peças de hardware antigas, que possuem características bastante específicas quanto ao tipo de equipamento em que podem ser utilizadas.
Nas placas-mãe mais recentes, a padronização de tecnologias torna esse processo mais tranquilo. Porém, isso não significa que a atenção deve ser diminuída: lembre-se sempre de que, sem o dispositivo adequado, não será possível aproveitar nenhum recurso do computador.

Sistemas desatualizados

O próprio fato de a placa-mãe ter apresentado algum problema grave que a tenha feito parar de funcionar pode indicar que ela não é a única peça que se deve substituir, especialmente quando se trata de máquinas mais antigas. Afinal, isso pode indicar que a vida útil dos componentes da máquina já está próxima do fim, o que nos leva ao item abaixo.

Melhoria geral do computador

Especialmente quando se trata de hardwares desatualizados, nem sempre vale à pena investir somente na compra de uma placa-mãe substituta. Afinal, isso muitas vezes significa gastar dinheiro para continuar usando um computador com baixo desempenho e que tem dificuldades em abrir até mesmo os aplicativos mais simples disponíveis atualmente.
Como os modelos de processador e memória utilizados pela máquina limitam as escolhas da nova peça de hardware comprada, nem sempre aquilo que se acredita ser uma melhoria de desempenho apresenta uma vantagem real. Afinal, não é nada vantajoso investir em uma peça de hardware nova com o único objetivo de reviver aquele computador com processador Celeron e memória RAM máxima de 512 MB.

Muitas vezes, uma placa-mãe antiga, além de difícil de encontrar no mercado, está disponível por um preço muito próximo ao de um computador totalmente novo, incluindo peças como processador, memória RAM e disco rígido mais potentes. Isso fica especialmente evidente quando a intenção é comprar uma máquina com características simples, cujo preço está a cada dia mais acessível.
Caso decida investir em um componente inteiramente novo, lembre-se de que isso também pode implicar em ter que investir também em um novo processador, pentes de memória, placa de vídeo e, em alguns casos, até mesmo em um gabinete inteiramente diferente. Dessa forma, procure se planejar financeiramente antes de decidir que é a hora de fazer uma melhoria geral no hardware utilizado.

Componentes “futureproof”

Quem gosta de trabalhar com aplicações pesadas ou de se divertir com jogos de última geração também deve ficar atento à placa-mãe utilizada e procurar investir em peças “futureproof”. Esse conceito envolve investir em peças com tecnologias apontadas como tendência pela indústria e que devem se manter vigentes pelos próximos anos.

Claro, se a intenção é investir somente em uma máquina básica, praticamente qualquer placa-mãe disponível no mercado serve. Basta saber qual o processador que se deseja utilizar para construir todo o resto da máquina basead em suas características – história bastante diferente em computadores de alto desempenho.
Comprar uma placa-mãe um pouco mais cara pode significar não ter que se preocupar com esse tipo de componente durante um bom tempo. No longo prazo, o investimento necessário se dilui, e melhorar o computador se trata de uma questão de adquirir somente mais memória, discos rígidos com maior capacidade ou uma placa de vídeo mais recente.
Para conferir mais detalhes sobre como investir na compra de uma placa-mãe adequada às tecnologias mais recentes do mundo da informática, confira o artigo “O que uma placa-mãe top de linha deve ter?”.

Casos muito específicos

Existem casos bastante específicos em que a mudança de algum dispositivo também pode implicar em investir em uma placa-mãe nova. Embora não seja mais uma situação tão comum, investir em uma placa de vídeo de uma fabricante diferente daquela que se possui pode significar ter que comprar uma peça de hardware que possua os soquetes de conexão apropriados.
Felizmente, isso é algo cada vez mais raro, já que as fabricantes estão investindo cada vez mais em modelos com conexões híbridas. O fato de empresas diferentes optarem pelos mesmos padrões de tecnologia também beneficia os consumidores, embora ainda haja casos em que as entradas disponíveis nas placas-mãe limite bastante as opções de componentes a utilizar.

Os próximos sensores que poderão estar presentes no seu celular



 
Há tempos que nossos telefones celulares deixaram de ser simples máquinas de fazer e receber ligações para se tornar itens indispensáveis em nosso dia a dia. Suas inúmeras funcionalidades adicionais, como localização via GPS ou internet wireless os transformaram em nossos assistentes digitais inseparáveis.
Além da gigantesca melhora na capacidade computacional, um dos principais fatores que contribuíram para que chegassem a esse ponto foi a adição de novos dispositivos sensoriais, permitindo que nossos smartphones interajam com o mundo a nossa volta das mais diferentes maneiras.
Muitas outras tecnologias sensoriais já estão em desenvolvimento e, em breve, poderemos fazer ainda mais coisas usando apenas o que temos no bolso. Algumas aplicações se destacam mais que as outras, mas as mais notáveis são:

NFC



O uso do NFC já foi bastante abordado pelo Tecmundo, e suas aplicações são inúmeras. Essa tecnologia usa rádio frequência para comunicação a curta distância, menos de 10 centímetros. Como o alcance é fisicamente limitado (diferente do Bluetooth que pode chegar a até 10 metros), torna-se ideal para aplicações como o acionamento de fechaduras eletrônicas, ignição do carro e até pagamento eletrônico.
Além disso, o NFC é nativamente compatível com o RFID (Radio-frequency identification), possibilitando usar o celular como um leitor de pôsteres e etiquetas de preço eletrônico. Imagine como seria poder baixar informações sobre o preço ou o valor nutricional de produtos no supermercado diretamente para o telefone, precisando apenas que você toque na embalagem com o aparelho em sua mão.
Uma parceria entre a Google e os serviços financeiros nos Estados Unidos colocaram em prática os primeiros sistemas de pagamento eletrônico e pretendem viabilizar o serviço para todo o país ainda este ano. Clientes do Citigroup Mastercard com a tecnologia PayPass vão poder aproveitar a novidade antes.

Localização Vertical

Testes com mapeamento vertical no Bing Maps 

Microaltímetros em conjunto com o GPS possibilitariam indicar a altura do usuário em relação ao nível do mar, mas com precisão suficiente para determinar sua posição em um prédio.
Esse tipo de tecnologia iria facilitar muito a localização de cada pessoa em shopping centers, por exemplo, permitindo que usuário saiba a distância da loja para onde ele quer ir. Aplicações semelhantes estão em funcionamento em estabelecimentos estadunidenses, mas fazendo o uso de mapeamento da rede Wi-Fi.

Condições climáticas




Em breve, tudo isso pode estar em seu celular 
Usando sensores como o barômetro e o termômetro, seu celular poderia fazer previsões instantâneas do tempo, chegando próximo ao trabalho de uma estação meteorológica, sem a necessidade de uma conexão com a internet. Outra aplicação seria utilizar medidores de umidade do ar para determinar se o local onde o usuário está pode danificar o aparelho.

Humor do usuário

Sensores de batimentos cardíacos poderiam ajustar a lista de aplicativos de acordo com o humor do usuário. Outra aplicação é ajustar o nível de dificuldade em um jogo, por exemplo, usando o grau de excitação do jogador como parâmetro.
O uso de sensores biológicos tem um grande potencial para a área médica, e aplicativos que fazem uso da tecnologia já estão em desenvolvimento. Uma das funcionalidades seria alertar o usuário de quando ele deve usar seu medicamento para asma, a partir de leituras de seu ritmo cardíaco e respiratório.

Telas de múltiplas camadas

 
Tecnologias de telas de múltiplas camadas, ou MLD (Multi Layer Display), prometem deixar a interação com telas touchscreen ainda mais intuitivas, levando o conceito de haptics ao extremo.
Essas telas usam vários painéis de LCD sobrepostos para criar a sensação de profundidade. Dessa forma, a reação ao toque de um botão poderia ser ainda mais natural, já que a animação que destaca o botão acionado poderia saltar entre as camadas.
O uso prático da tecnologia já foi demonstrado durante o evento Wireless Japan, em um protótipo da KDDI. Os primeiros modelos a usar a tecnologia devem ser produzidos usando apenas duas camadas, mas os desenvolvedores afirmam que até seis telas já foram sobrepostas com sucesso.

Aplicações conjuntas

É provável que as aplicações mais impressionantes para todas as novas tecnologias sensoriais ainda estejam para ser formuladas, fazendo o uso da combinação de várias ao mesmo tempo.
O mesmo já foi observado com o iPhone: usando a localização GPS, bússola e o acelerômetro foi criado um App que traz informações sobre uma estrela, bastando apenas que o usuário aponte o aparelho para o céu. Só o tempo dirá o que o futuro aguarda para os dispositivos móveis.