{{ :futurepages2:logo-intro.png }} ===== Visão Geral ===== **Futurepages** é focado no desenvolvimento de aplicações Java Web (JEE). Encapsula várias ferramentas, entre elas, dois //frameworks// populares - **Mentawai** e **Hibernate**. Tem o propósito principal de prover ao desenvolvedor um alto nível de abstração e agilidade no tocante às atividades comuns a aplicações Web que utilizam acesso a base de dados relacional, através de automatizações e uso APIs direcionadas. ==== Objetivos ==== O **Futurepages** foi desenvolvido com as seguintes preocupações: * Organização por modularização de recursos correlatos; * Boas práticas de programação orientada a gerência modularizada; * Módulos com alto teor de reusabilidade; * Camadas bem definidas e coesas. ==== Valores ==== Para desenvolver-se uma aplicação Futurepages tirando-se maior proveito, é preciso que o desenvolvedor tenha em mente os seguintes valores: * Padronização; * Liberdade; * Modularização; * Reusabilidade; * Orientação a Objetos; * Coesão de Recursos. ===== Tecnologias ===== O **//futurepages//** está consolidado sobre dois pilares que sustentam-se sobre a plataforma Java Web (JEE). O Primeiro pilar é a arquitetura MVC, //Model View Controller// (originalmente baseado no Mentawai), o segundo é a manipulação OO do banco de dados (provido pelo Hibernate) como explicitados respectivamente: - Tratar fluxo das ações através de configurações e um poderoso //Controller// ([[http://www.mentaframework.org/|Mentawai]]); - Prover a manipulação de objetos persistentes que refletem entitades de um banco de dados de forma abstrata e produtiva ([[http://www.hibernate.org/397.html|Hibernate Annotations]]). Na figura a seguir temos uma visão geral da plataforma e os pilares que dão força ao //framework// e formam o produto (aplicação **//futurepages//**). {{ :futurepages2:overview.jpg }} O desenvolvedor desfturará de automatizações e melhorias baseadas no modelo conceitual do Hibernate para a camada de modelo e do Mentawai para a camada de controle. Tendo em vista estes modelos conceituais já consolidados pelo mercado de //software//, é notável a baixa curva de aprendizagem neste //framework//. Alguns aspectos relevantes a este respeito: * As anotações nas entidades persistentes e a configuração do banco de dados são feitos assim como no Hibernate Annotations; * O controle do fluxo das ações e os conceitos de //action, filtros, input, output, consequences// são semelhantes ao Mentawai. ===== Estudando Futurepages ===== Você pode estudar o futurepages desenvolvendo aplicações simples seguindo os nossos [[futurepages2:start#tutoriais_quickstart|Tutoriais Quick Start]]. Bom Estudo!