Você está na página 1de 4

Persistncia:

A capacidade de persistir dados ou armazenar informaes sem dvida um dos recursos mais importantes em qualquer linguagem de programao. Armazenar dados para uma posterior recuperao uma constante na maioria dos ambientes computacionais, seja para persistncia simples de parmetros de configuraes de algum sistema ou persistncia de informaes digitadas pelo usurio para alimentar algum banco de dados. No que diz respeito persistncia em ambientes computacionais, o complicador quando esse mesmo ambiente tem recursos de armazenamento restrito e, ainda, uma arquitetura de hardware e software bem diferente da encontrada em desktops ou grandes servidores, como o caso dos dispositivos mveis. Essas diferenas podem ser observadas tanto do ponto de vista do usurio (ergonomia de hardware e software), quanto do ponto de vista do desenvolvedor (ferramentas de software, APIs e recursos). Os telefones celulares conseguiram alcanar uma popularidade quase to grande quanto a observada na utilizao de computadores pessoais a partir da dcada de 80. Mas, assim como todos os dispositivos mveis, eles tambm trazem consigo algumas dificuldades, como, problemas relacionados ergonomia do teclado, uma interface visual simples porm limitada e a dependncia de baterias que requerem recarga constante. Nesse artigo, sero apresentadas as APIs que tratam da persistncia de dados disponveis no J2ME. Inicialmente, alguns fundamentos sero abordados e a seguir o pacote javax.microedition.rms, responsvel pelo gerenciamento de registros, ser detalhado atravs de definies e do uso de exemplos. A descrio do funcionamento de uma classe, quatro interfaces e cinco excees, tudo do que trata esse artigo. Comprovando, por incrvel que parea, toda a simplicidade e eficincia do pacote RMS.

Threads:

uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente. O suporte thread fornecido pelo prprio sistema operacional, no caso da linha de execuo ao nvel do ncleo, ou implementada atravs de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT).

Uma thread permite, por exemplo, que o usurio de um programa utilize uma funcionalidade do ambiente enquanto outras linhas de execuo realizam outros clculos e operaes. Em hardwares equipados com uma nica CPU, cada thread processada de forma aparentemente simultnea, pois a mudana entre uma thread e outra feita de forma to rpida que para o utilizador isso est acontecendo paralelamente. Em hardwares com mltiplos CPUs ou multi-cores, as threads so realizadas realmente de forma simultnea; Os sistemas que suportam apenas uma nica thread (em real execuo) so chamados de monothread enquanto que os sistemas que suportam mltiplas threads so chamados de multithread.

Sincronismo de Processos:

A sincronia de processos permite gerenciar o acesso concorrente a recursos do sistema operacional de forma controlada por parte dos processos, de maneira que um recurso no seja modificado em simultneo, ou que os processos no fiquem em espera que o recurso seja libertado. Os processos (aplicativos ou programas) de um computador compartilham determinados recursos da chamada regio crtica, que so as variveis globais, as instrues de E/S, algum banco de dados, etc. Neste compartilhamento podem ocorrer erros. Exemplo: Uma escola est fazendo sua matrcula apenas pela internet, o nmero de vagas 5, dois usurios esto fazendo a matrcula no exato momento, finalizam a matrcula . A operao que o programa usa da regio crtica: matrcula finalizada -1. Se os dois usurios fazem a operao ao mesmo tempo, quando a matricula for finalizada subtrai-se 1 vaga: Matrcula finalizada -1 (5-1)=4 Matrcula finalizada -1 (5-1)=4

Quando um terceiro usurio for fazer esta mesma matrcula,o nmero de vagas ser expresso como 4, sendo que na verdade deveria ser 3. Isto causar instabilidade e poder comprometer todo o sistema. A soluo para este tipo de

caso a certeza de excluso mtua, isto , apenas um processo pode acessar a regio crtica por vez; Os mecanismos que implementam a excluso mtua utilizam um protocolo de acesso regio crtica. Toda vez que um processo for executar sua regio crtica, ele obrigado a passar por um controle de entrada e outro de sada.

Interface com Usurios:

O conceito de Interface amplo, pode se expressar pela presena de uma ou mais ferramentas para o uso e movimentao de qualquer sistema de informaes, seja ele material, seja ele virtual. O dicionrio define interface como o conjunto de meios planejadamente dispostos sejam eles fsicos ou lgicos com vista a fazer a adaptao entre dois sistemas 1 para se obter um certo fim cujo resultado possui partes comuns aos dois sistemas, ou seja, o objeto final possui caractersticas dos dois sistemas. O ponto em que h controle entre dois dispositivos hardwares, entre um usurio e um programa ou sistema operacional, ou entre duas aplicaes. No hardware, a interface descreve as conexes lgicas e fsicas utilizadas, como no RS-232-C, sendo considerado em geral sinnimo de porta. A interface com o usurio se compe dos meios pelos quais um programa se comunica com o usurio, incluindo uma linha de comandos, menus, caixas de dilogos, sistema de ajuda on line, etc. As interfaces com os usurios podem ser classificadas com baseadas em caracteres ( texto ), baseados em menus ou baseadas em elementos visuais. As interfaces de software so APIs ( Application Program Interfaces ou Interfaces de Programas Aplicativos) e consistem em cdigos e mensagens utilizadas pelos programas para se comunicarem de forma transparente para o usurio. Uma interface com utilizadores que recorre ao mouse e imagens de mapa de bits para simplificar grandemente as operaes bsicas do computador para os usurios iniciantes. Os recursos tpicos da interface visual so os quadros de advertncia, clipboard ou reas de transferncia, os acessrios, de mesa, a metfora do desktop, os quadros de dialogo, as setas de paginao, a possibilidade de utilizao de diversas fontes na tela, a equivalncia entre contedo da tela e a pgina impressa e a abertura de vrias janelas na tela.

Criao e Manipulao de Banco de Dados: