+2

Adianti Framework - Uma abordagem diferente para desenvolver sistemas

criado por Pablo Dall'Oglio em 21/02/2013 11:41pm
No último mês de Dezembro, foi realizado o lançamento do Adianti Framework. Enquanto alguns se perguntam "Por que outro framework PHP?", outros dizem "Finalmente lançado!". O Adianti Framework (www.adianti.com.br/framework) é um projeto de código-livre desenvolvido desde 2007 pela Adianti Solutions e que até o momento tinha seu uso restrito para uso próprio e para alguns de seus clientes. Suas versões anteriores já auxiliaram no desenvolvimento de sistemas de gestão, inclusive de ERP’s para gestão universitária. A camada de modelo do framework é baseada em Active Records, Design Pattern amplamente utilizado. Para facilitar a geração, o framework acompanha uma IDE que gera toda a camada de modelo, a partir de modelos UML no formato XMI.

<?php
class User extends TRecord
{
    const TABLENAME = 'user';
    const PRIMARYKEY= 'id';
    const IDPOLICY =  'max'; // {max, serial} 
}
?>
O criador do Adianti Framework, Pablo Dall’Oglio, afirma que o framework não é voltado para quem quer construir sites, blogs ou páginas públicas web, para isso já existem ótimos frameworks disponíveis. A ideia central do framework é tornar ágil o desenvolvimento de sistemas de gestão, aplicações corporativas. Para isso, conta com uma série de componentes prontos para montagem de interfaces com formulários e listagens, além de um ambiente de produtividade próprio, o Adianti Studio, que permite desenhar as interfaces da aplicação por meio de um editor gráfico. Não bastasse isso para diferenciar o framework dos demais, a ferramenta permite que o desenvolvedor crie aplicações tanto para a web quanto desktop (utilizando o GTK). Dessa forma, ao escrever um único código-fonte, o resultado pode ser visto pelo navegador ou como um aplicação desktop com visual nativo no Linux, Mac OS e Windows. A seguir, um exemplo de um controlador de páginas:

<?php
class PersonForm extends TStandardForm
{
    protected $form; // form
    
    function __construct()
    {
        parent::__construct();
        
        parent::setDatabase('samples');
        parent::setActiveRecord('City');
        
        $this->form = new TQuickForm('form_user');
        $id        = new TEntry('id');
        $name      = new TEntry('name');
        $address   = new TEntry('address');
        $birthdate = new TDate('birthdate');
        $gender    = new TCombo('gender');
        $options = array('M'=>'Male','F'=>'Female');
        $gender->addItems($options);

        $this->form->addQuickField('id',        $id,        100);
        $this->form->addQuickField('name',      $name,      200);
        $this->form->addQuickField('address',   $address,   200);
        $this->form->addQuickField('birthdate', $birthdate, 100);
        $this->form->addQuickField('gender',    $gender,    200);
        $this->form->addQuickAction('Save', new TAction(array($this, 'onSave')), 'ico_save.png');
        parent::add($this->form);
    }
}
?>

E caso ainda tenha alguém torcendo o nariz dizendo "Como é recém-lançado, não deve ter documentação", o site do framework apresenta dezenas de exemplos de como montar as telas, e interagir com o banco de dados. Além disso, são disponibilizadas três aplicações como exemplo: a aplicação tutor: para demonstrar os recursos do framework; library: um sistema de bibliotecas; e o changeman: um sistema de controle de chamados técnicos (tickets). Não bastasse isso, também foi lançado o livro em português "Adianti Framework para PHP", do mesmo criador da ferramenta.

Endereço do livro "Adianti Framework para PHP":
http://www.adianti.com.br/bkframe

Vídeo explicativo sobre o framework:
http://www.youtube.com/watch?v=IOp1iox9eiM

Vídeo explicativo sobre o Studio:
http://www.youtube.com/watch?v=CyO-VqU7Qbk

Comentários:

Mostrando 1 - 9 de 9 comentários
kaizen disse:
Thank you for your sharing. Thanks to this article I can learn more things. Expand your knowledge and abilities. Actually the article is very practical. Thank you!
https://bodakyellowlyrics.com
27/02/2018 3:58am (~6 anos atrás)

Oi Lyma,

O framework vem com algumas aplicações de exemplo. Uma delas (Library) tem exemplo de autenticação e autorização:
http://www.adianti.com.br/framework-library

Como isso faz parte do contexto da aplicação, cada uma pode ter um mecanismo a parte...

abraços,
Pablo
22/07/2013 9:09pm (~11 anos atrás)

Lyma disse:
Olá Pablo!

Muito bom framework.
Apesar de afastado da área de desenvolvimento há algum tempo, mesmo assim arranjei algum tempo para analisar superficialmente seu framework e gostei MUITO do que vi: maturidade e simplicidade.

Desejo sucesso nesta sua empreitada e boas vendas ao livro.

Lyma.

PS: sempre senti falta de alguma forma simples de autenticação e autorização no CodeIgniter e alguns outros frameworks pré-históricos que eu usei... O "seu" terá algo neste sentido?
17/07/2013 9:37am (~11 anos atrás)

João Assef disse:
Legal
05/07/2013 10:02am (~11 anos atrás)

Olá Pablo,

Parabéns pela iniciativa e coragem em lançar mais um framework no mercado.

Vou fazer apenas uma pequena crítica, há alguns anos atrás quando eu comecei a estudar POO eu comprei o seu livro sobre o assunto, e uma coisa que não me agradou, e depois vi em alguns fóruns que também não agradou a outras pessoas, é o uso da letra "T" no início das suas classes. Agora percebi que você também utiliza do mesmo recurso em seu framework.

Na minha opinião, isso é uma coisa desnecessária e deixa o código feio. Eu sei que o objetivo disso provavelmente é para separar as classes do framework das classes específicas da aplicação, evitando conflito com duplicidade de nomes. Porém, se esse for o único motivo, isso já pode ser facilmente resolvido com o uso de namespaces.

Então fica aí uma dica pra quem sabe você implementar em uma futura versão do framework.

Um abraço!
11/03/2013 12:01am (~11 anos atrás)

Olá Alex,

O Adianti Framework é open-source, você não precisará adquiri-lo. O livro (http://www.adianti.com.br/bkframe) é o material mais completo sobre o framework e traz inclusive alguns exemplos de como gerar relatórios tabulares (http://www.adianti.com.br/doc-framework-Presentation-Report-TabularReport) com uma biblioteca que vem junto.

O Adianti Studio Pro (http://www.adianti.com.br/studio-pro) irá ajudar em muito na criação das telas, formulários e listagens.

De qualquer forma, a melhor fonte para construir relatórios é o livro Criando Relatórios com PHP (http://www.adianti.com.br/bkrpt). Atualmente estamos finalizando a segunda edição. Deve estar nas bancas em pouquíssimo tempo.

um abraço,
Pablo
03/03/2013 5:43pm (~11 anos atrás)

Alex Dantas disse:
Oi Pablo,

Gostaria de adquirir o framework junto com o livro e também a IDE (Studio) para desenvolver uma aplicação pequena, com objetivo de ajudar-me a gerenciar os pedidos recebidos na minha loja virtual. Então, eu gostaria de saber se com o Adianti e com o Studio eu consigo criar relatórios básicos, com imagens?

Abraços
Alex
02/03/2013 9:37pm (~11 anos atrás)

Oi Leonir,

O projeto está chamando bastante a atenção das pessoas, justamente por ter esse foco em sistemas ERP e vir com uma IDE/RAD focada no framework. O pessoal tem gostado bastante do Studio também. O Framework é open-source, você pode baixá-lo e estudá-lo. Recomendamos a aquisição do livro para um melhor aprendizado, pois o mesmo é bem completo.

um abraço,
Pablo
25/02/2013 12:42pm (~11 anos atrás)

Leonir Alves disse:
Olá! Achei muito interessante este projeto. Como desenvolvedor a maioria dos meus trabalhos são na área de criação de ERP's e este framework me chamou a atenção. Gostaria de saber se há algum repositório publico do projeto para que possa fazer um fork e estuda-lo melhor?
24/02/2013 2:32pm (~11 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)