AngularJS – HTML mais dinâmico

O desenvolvimento de aplicações web durante muito tempo foi estático“. As possibilidades disponíveis para expôr documentos eram estáticas, as imagens, que logo se tornaram o grande diferencial, eram estáticas. O HTML foi um dos grandes percussores da internet, foi um dos primeiros dialeto que de forma estática expôs documentos, informações e imagens ao mundo através da rede.

O HTML, por sua vez,  não foi desenvolvido para dar dinamicidade, foi desenvolvido para suprir a necessidade de expôr informações através da internet, semelhantes ao que temos em livros, onde o leitor não pode alterar a posição dos parágrafos enquanto ler, apenas pode, ou deve, lê-los.

HTML is great for declaring static documents, but it falters when we try to use it for declaring dynamic views in web-applications. AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop.

O Javascript é utilizado para suprir essa necessidade, essa carência de dinamicidade. Desde o seu lançamento em 1995 foram desenvolvidas soluções, ou frameworks, para permitir via scripts a interação do usuário com o HTML, o controle de características dos navegadores, a comunicação assíncrona com servidores remotos e a alteração de informações mostradas na tela. A maioria desses frameworks possibilitavam a interação com as informações, com os dados apresentados, abstraindo alterações de estilo através do CSS, encapsulando funcionalidade com javascript e apenas alterando a  estrutura do documento.

Other frameworks deal with HTML’s shortcomings by either abstracting away HTML, CSS, and/or JavaScript or by providing an imperative way for manipulating the DOM. Neither of these address the root problem that HTML was not designed for dynamic views.

Continue lendo “AngularJS – HTML mais dinâmico”

Transações em JEE

Há algum tempo atrás escrevi um post  falando sobre a utilização da anotação @TransactionAttribute, mas não detalhei suficientemente através de exemplos a utilização de transações dentro do contexto JEE. Pensando nisso, resolvi ampliar o post, criando outro, explanando e exemplificando.

1. Conceitos de transação

In a Java EE application, a transaction is a series of actions that must all complete successfully, or else all the changes in each action are backed out. Transactions end in either a commit or a rollback.

Uma transação é composta por uma serie de ações subsequentes que serão executadas uma após a outra até que todas estejam concluídas. O resultado do processamento deve ser interpretado de duas forma:

  1. Processo efetuado com sucesso. Isso acontecerá quando todas as ações ocorreram perfeitamente.
  2. Desfazer todo o processo. Este resultado acontecerá quando uma ou todas as ações evolvidas no processo represente uma instabilidade nos dados, ou no estado dos dados.

Um exemplo comumente utilizado para expressar uma transações é o carrinho de compras. O usuário seleciona vários itens e adiciona ao carrinho, no final, antes de encerrar, ou efetuar a compra, é necessário validar o cadastro, endereço, escolher a forma de pagamento, aguardar liberação do pagamento, encerramento da compra e, caso pagamento esteja correto, efetuar o pedido.

Avaliando o exemplo é possível observar a criações de uma transação (processo de validação, pagamento e despacho dos itens). Está transação terá duas saídas validas:

  1. Sucesso: Validação e pagamento corretos, gerá o fechamento da compra e despacho dos itens para o usuário.
  2. Erro: Por conter erros na validação dos dados ou na forma de pagamento. Neste ponto o sistema não encerrará a compra e o usuário não receberá os itens.

Continue lendo “Transações em JEE”

Arquivo de Propriedades em JEE com CDI

Olá amigos, estou de volta, afinal o blog sempre é atualizado quando passo por uma necessidade. Hoje precisei utilizar um arquivo de propriedades, mas não queria usar da forma comum, então, resolvi utilizar CDI.

Demonstrarei de forma simples como efetuar o carregamento e injeção do aquivo de propriedade utilizando o CDI (Java EE 6 Specification,  EE5). Assumirei que é de conhecimento do leitor quais as configurações necessárias para utilizar as caracteristicas do CDI – Context Injection Dependence, tal como, a criação do aquivo beans.xml (Java EE 6 Specification,  EE20)) no PATH da aplicação.

Continue lendo “Arquivo de Propriedades em JEE com CDI”

Cursos e Apostilas Gratuitos

Olá Pessoal,

Aqui estou de volta, agora com um post rápido e incremental. Incremental porque será atualizado posteriormente de forma continua. Trata-se de uma lista de possível cursos e apostilas gratuitos, afim de tentar orientar os colegas que procuram iniciar em alguma relacionada a tecnologia, desenvolvimento de software, deseign de software, games, entre outros.

Java

 

Android

 

Continua…

Android Notification

O Assunto é Notificação, Notification para os íntimos!

Dispositivos móveis são modernos e rápidos, muitos possuem a capacidade de rodar jogos com resoluções altíssimas, na grande maioria das vezes é por isso compramos. É neste cenário que entram as notificações, naqueles momentos em que estamos aficcionados em uma corrida, procurando bater o record com o melhor tempo, que vibrar o celular e o seu record foi pelos ares, uma mensagem chegou e a tela do jogo foi colocada em segundo plano, ficando a tela da caixa de entrada de mensagens em evidência.

O android soluciona este exemplo de forma simples e inteligente, ao invés de tomar conta da tela simplemente notifica ao usuário que algum evento aconteceu.

Continue lendo “Android Notification”