Arquivo de etiquetas: java

Projetos de POO em JAVA

O livro Projectos de POO em JAVA, de Mário Martins, destina-se principalmente a estudantes de grau universitário e secundário, bem como a profissionais de tecnologias de informação de uma forma geral, apresentando a programação orientada a objectos com a linguagem Java, segundo o paradigma da orientação a objectos.

Ao longo do livro, são encontrados exercícios que reforçam a aprendizagem dos conteúdos, bem como promovem a aplicação do conhecimento transmitido a cada capítulo, pela via da sua utilização prática.

Conforme se vai avançando na leitura, os conhecimentos necessários passam a ser encadeados de exercício em exercício, aumentando a complexidade e dando uma visão mais abrangente sobre a aplicabilidade dos conceitos a problemas reais.

Continuar a ler

JSF – Parte 3 (Managed beans)

Este é o 3º artigo da série. Assume portanto que já tem um projeto de exemplo JSF a funcionar. É altura de fazer algumas experiências, nomeadamente criar um “backing bean”.

Um backing bean é uma classe Java que responde a pedidos e gere o estado dos componentes JSF. É uma espécie de “servlet de alto nível”. Entre várias outras funções, faz a ligação à camada dos serviços que pode ser uma BD, um servidor remoto ou outro. Uma aplicação pode conter múltiplos backing beans.

Os backing beans mais conhecidos em Java são os “managed beans” e os “named beans” (ou CDI beans). Os primeiros são mais comuns; os segundos mais flexíveis. Os conceitos são muito semelhantes. Usaremos os primeiros devido à facilidade de utilização e porque o Tomcat apenas suporta esses.

Continuar a ler

Interação com voz no Android: Aprenda a desenvolver um aplicativo com interação por voz no Android

Do que se trata no artigo: Este artigo demonstra os passos básicos para desenvolver um aplicativo que utiliza a interação por voz, posterior reconhecimento do que foi dito e com isso realizar uma determinada acção (no nosso exemplo, faremos uma simples mudança na interface).

Em que situação o tema é útil: Será útil para os programadores que desejem ter uma experiência inicial com a API de reconhecimento de voz.

Desenvolvendo aplicações para Android: A utilização de smartphones tem crescido no mundo todo, tendo como um dos principais sistemas operativos o Android, o qual conta com diversas aplicações para atrair novos utilizadores. Pensando nisso, a Google disponibilizou o Android SDK, uma plataforma gratuita para o desenvolvimento de aplicações. Este artigo apresenta os passos necessários para o desenvolvimento de uma aplicação que utiliza uma busca por voz, e através dessa busca retorna resultados que serão analisados e uma nova acção será tomada de acordo com essa análise.

Continuar a ler

Threads, Semáforos e Deadlocks – O Jantar dos Filósofos

Neste artigo o nosso assunto central será a programação concorrente. Este paradigma foca-se principalmente na interação e execução de multitarefas, assim sendo, uma das principais preocupações quando nos deparamos com um algoritmo deste género são os problemas que podem ocorrer na sincronização e na partilha de recursos.

As vantagens da programação concorrente são o aumento do desempenho do programa, devido ao aumento da quantidade de tarefas que podem ser executadas durante um determinado período de tempo.

Ao longo das próximas linhas vamos debruçarmo-nos sobre alguns factos deste género de programação.

Continuar a ler

Exercícios em Java – Algoritmia e Programação Estruturada

Quem está a dar, ou já deu, os seus primeiros passos na programação, sabe como tudo parece um bicho de sete cabeças. Seja qual for a linguagem de programação, existe um conjunto de regras mais simples do que a gramática da língua natural do programador, mas não deixa de ser tanto ou mais restritiva do que esta. Temos então o processo natural de aprendizagem de uma linguagem que passa normalmente pela leitura de texto explicativos destes conceitos, que numa primeira fase, por assentarem numa base lógica muito forte, se tornam muito complicados para a mente criativa do ser humano. Uma maneira de colmatar esta dificuldade na absorção de informação e processos, é a prática. Assim como o exercício físico repetitivo cria flexibilidade e memória muscular, o exercício mental cria a mesma flexibilidade mental assim como molda o pensamento aos conceitos usados.

Continuar a ler

AndroidIPC – Inter Process-Communication

As aplicações de Android correm sobe uma máquina virtual de Java, de nome Dalvik. Uma das particularidades desta máquina virtual, é que as aplicações estão limitadas a uma Sandbox de execução, ou seja, o seu espaço de memória é privado. Este sistema é muito semelhante ao comportamento as aplicações nativas do sistema operativo subjacente do Android, o GNU/Linux.

Uma das consequências disto, é que a troca de informação entre aplicações excluí logo à partida a partilha de informação através de memória partilhada. O que resta, é a troca de mensagens entre aplicações.

O Android fornece vários mecanismos para envio de mensagens entre aplicações, alguns são mais apropriados que outros, dependendo do cenário de utilização. Temos por exemplo os BroadcastReceivers, que se tratam de classes que recebem informação que é enviada para o sistema operativo, e este trata de re-transmitir a informação para as várias aplicações que se registaram como “Receivers” para esse tipo de informação.

Continuar a ler