Revista PROGRAMAR nº 47 — Dezembro 2014

A poucas horas do Natal, aqui temos mais um edição da Revista PROGRAMAR!  Nesta edição trazemos até si, como artigo de capa, o artigo Integrar a Cortana numa aplicação Windows Phone, de Sara Silva.  Nesta 47ª edição pode ainda encontrar os seguintes artigos:

Clique aqui para fazer o download desta edição!

Continuaremos também a premiar os autores dos três melhores artigos, dado o sucesso nas edições anteriores. E os leitores devem dar a sua opinião para que possamos premiar correctamente. Para isso vote em http://bit.do/ProgramarED47_V.

Lorem ipsum

Os anos passam, mais um ano termina, e esta edição é a última do ano, com toda a nostalgia que isso possa trazer. Não obstante, o passar do tempo, significa que se evoluiu, se cresceu, se acrescentou algo, se viveu, se aprendeu, se mudou, sem esquecer de onde se veio.

Nesta edição escolhi para título o Lorem ipsum, pelo contexto histórico do texto normalmente conhecido por Lorem ipsum, mais concretamente o seu contexto ligado à tecnologia. Há algumas gerações atrás, um dos mais conhecidos softwares de desktop publishing, disponível para Macintosh e Windows, chamado PageMaker, da Aldus Corporation, fazia as delícias de jornalistas, escritores, autores, entusiastas e demais público, que vivia “fascinado” com o grande salto tecnológico que se vivia na década de oitenta do século passado, apresentava como texto padrão para alinhamento e formatação: o Loren ipsum. Este texto não é mais do que um misturar de palavras em grego, de um texto do século primeiro antes de Cristo, intitulado Finibus Bonorum et Malorum (A Origem do Bem e do Mal), escrito por Cícero, adaptado por Richard McClintock, como resultado de uma pesquisa que fez, de uma das palavras mais obscuras do latim (consectetur), criando um texto que não faça sentido algum, seja ele sintáctico ou gramatical. Este texto é ainda nos dias de hoje usado como texto padrão para ajuste de dimensões durante as fazes de paginação de obras de diversos tipos.

Continuar a ler

Integrar a Cortana numa aplicação Windows Phone

Este artigo tem como objetivo apresentar um exemplo de como integrar a Cortana com uma aplicação de Windows Phone.

Introdução

Uma das funcionalidades interessantes no Windows Phone 8.1 é a Cortana. A Cortana não é mais do que uma assistente pessoal, que ajuda os utilizadores em tarefas básicas, tais como ligar a um amigo, marcar na agenda um acontecimento e outras tarefas.

Continuar a ler

Estruturas de Dados Genéricas

Introdução

Quando cursamos disciplinas de Algoritmos e Estruturas de Dados nos cursos de computação e áreas afins, em geral, aprendemos a criar Estruturas de Dados (EDs) básicas, como listas, pilhas, filas, capazes de trabalharem apenas com números inteiros. Isto não é essencialmente um problema, uma vez que o intuito destas disciplinas é apresentar os principais tipos de EDs, as operações relacionadas a elas, bem como as formas de uso (aplicação) das mesmas; o que não depende do tipo de dados armazenado pela estrutura.

Contudo, quando vamos para a prática do desenvolvimento e utilização destas EDs, seja num trabalho prático da disciplina ou em outro tipo de aplicação, o nosso desejo é trabalhar com EDs capazes de armazenar qualquer tipo de elemento e não apenas de números inteiros. Por exemplo, nosso interesse pode ser criar uma lista de alunos ou uma fila de processos a serem atendidos por um determinado sistema operacional, entre outros. Obviamente, alunos e processos são entidades complexas (por exemplo, o registro de um aluno pode conter nome, matrícula, data de nascimento, entre outros dados), uma vez que são compostas por outros tipos de dados mais simples, e não pertencem aos tipos primitivos de qualquer linguagem de programação de propósito geral.

Continuar a ler

Sencha Touch – Parte I

Actualmente, como todos nós sabemos, o universo dos smartphones e das aplicações móveis vieram para ficar. O mercado das apps está em constante evolução e todos os dias aumenta o seu número nas diversas stores existentes. O problema existente é que cada fabricante obriga a uma linguagem de programação. Se queremos desenvolver uma aplicação para iOS, temos que programar em Objective-C, para Android, em Java, e Windows Phone somos obrigados a usar o C#, por exemplo. Ora, programar em todas estas linguagens é bastante complicado.

A solução para esta questão passa pela utilização de uma framework híbrida. Este tipo de frameworks permitem ao programador desenvolver uma aplicação em HTML5 e Javascript capaz de ser executada em qualquer sistema operativo móvel com o look and feel de uma aplicação nativa.

Exemplo deste tipo de frameworks é o Sencha Touch. Com esta framework é tão simples desenvolver uma aplicação com um design atrativo e cross-plataform. É importante referir que esta framework é totalmente gratuita e open-source.

Continuar a ler

Registo de Todos os Comandos Executados num Sistema Informático

Este relatório descreve a análise efetuada a quatro ferramentas que permitem o registo de todos os comandos efetuados num sistema informático. Nota-se, mais uma vez, que não existe segurança absoluta, por um lado, e por outro, que as ferramentas que possibilitam maiores níveis de segurança são igualmente as que têm maiores custos, a nível de trabalho humano e computacional.

Introdução

O objetivo principal deste projeto é estudar, de um ponto de vista da segurança do sistema, a possibilidade de registar (log) todos os comandos executados por um utilizador. A segurança (correspondendo ao inglês security e não safety) será abordada quer pela perspetiva de um ataque intencional ao sistema, quer pela possibilidade de uma utilização negligente poder permitir explorar vulnerabilidades existentes ou criar novas.

Continuar a ler

Como Suportar Diferentes Idiomas numa App Android

O mundo das aplicações móveis é cada vez mais abrangente, fazendo já parte do dia-a-dia de qualquer um dos mortais com smartphone. Esta fragmentação e abrangência na utilização de aplicações móveis torna complicada a tarefa de ter um público-alvo bem definido, pois “geralmente” as aplicações estão disponíveis para a globalidade dos utilizadores e não limitadas a regiões.

Esta situação torna a definição dos idiomas para o público-alvo da aplicação um requisito fundamental para o correto desenvolvimento de uma aplicação. Neste pequeno tutorial irei dar a conhecer uma forma de implementar o suporte a múltiplos idiomas numa aplicação Android.

Continuar a ler

Desenvolvimento de Aplicações Profissionais em Android

O livro Desenvolvimento de Aplicações Profissionais em Android, de Ricardo Queirós, destina-se principalmente a programadores que pretendam evoluir os seus conhecimentos sobre Android conhecendo as especificidades e novidades introduzidas pela versão 4.4 (a versão KitKat é a utilizada por Ricardo Queirós ao longo da obra). Embora este livro possa ser utilizado por aqueles que pretendem iniciar-se no desenvolvimento de aplicações Android, considero que poderá haver algumas dificuldades em alguns capítulos, prevendo que seja necessário recorrer a alguns exemplos mais simples antes de implementar os exemplos que acompanham este livro.

Ricardo Queirós começa por introduzir, no capítulo 1 do seu livro, as ferramentas de desenvolvimento—Eclipse e Android Studio (atualmente em fase Beta)—e um dos conceitos mais básicos de programação para Android: as atividades, que representam a interface gráfica perante o utilizador.

Continuar a ler

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