O BlueSeed Framework

O BlueSeed Framework tem o intuito de ser uma ferramenta de desenvolvimento simples, que não requeira grande conhecimento para iniciar a utilização.

Ele é um framework de propósito geral, focado em simplicidade sem ser simplista e que permite ao desenvolvedor preocupar-se com o que é mais importante, ou seja, as funcionalidades do seu sistema.

 

Eu começei o desenvolvimento dele em torno de Janeiro de 2010, um pouco antes até, quando recebi a visita de um antigo amigo preocupado com uma entrega de software e nesse dia, devido a necessidade do projeto, começei a escrever um conjunto de ferramentas de suporte geral, não ligada ao négocio do projeto, mas que pudesse ajudar a completa-lo e que hoje chamo de BlueSeed.

O nome BlueSeed, não vem do manga mas de um brainstorm realizado no escritorio do @ramcoelho, no qual ele, eu e o @gigantedesouza ficamos discutindo que nome podia ser até eles perceberem que eu tinha uma fixação sem tratamento pelo azul e chegarmos a conclusão de que o objeto do framework seria ser uma semente de um sistema, que poderia se desenvolver da maneira que precisasse a partir dele.

Durante um tempo, por necessidades de trabalho, o desenvolvimento ficou um pouco parado e finalmente, quando tive tempo, voltei a trabalhar nele.

O objetivo sempre foi pensar no que o programador precisava de ferramenta e como fazer o uso ser o mais simples possivel e continuo trabalhando com isso na cabeça, pois sei que tem muito trabalho pela frente ainda.

Porém, o estágio em que o BlueSeed se encontra hoje, ja permite que aplicações de produção sejam desenvolvidas com ele, permitindo que ele saia do laboratório, para dar a cara a tapa por ai.

Os principais pontos do BlueSeed são seu suporte a MVC, sua camada de ORM baseada em ActiveRecord, a possibilidade de usar anotações nos métodos e a simplicidade de uso, que é o foco, sempre.

A lista completa de recursos até o momento:

  1. MVC
  2. Active Record
  3. Log
  4. Registry
  5. Session
  6. Observer
  7. Database Collection
  8. Annotations
  9. Query Object

E agora, nesse momento do framework, ao invés de focar em novas funcionalidades, eu quero trabalhar com os seguintes dados, gerados pelo phploc (criado pelo genial Sebastian Bergman).

Directories:                                          4
Files:                                               25

Lines of Code (LOC):                               1778
  Cyclomatic Complexity / Lines of Code:           0.08
Comment Lines of Code (CLOC):                       860
Non-Comment Lines of Code (NCLOC):                  918

Namespaces:                                           4
Interfaces:                                           5
Classes:                                             18
  Abstract:                                           4 (22.22%)
  Concrete:                                          14 (77.78%)
  Average Class Length (NCLOC):                      50
Methods:                                            126
  Scope:
    Non-Static:                                     103 (81.75%)
    Static:                                          23 (18.25%)
  Visibility:
    Public:                                         102 (80.95%)
    Non-Public:                                      24 (19.05%)
  Average Method Length (NCLOC):                      7
  Cyclomatic Complexity / Number of Methods:       1.60

Anonymous Functions:                                  0
Functions:                                            1

Constants:                                            2
  Global constants:                                   1
  Class constants:                                    1

Quero melhorar pontos do BlueSeed, reduzir o código e aperfeiçoar alguns algoritmos pois sei que existe espaço para isso.

Vou ficar feliz em saber se você estiver utilizando o BlueSeed e mais feliz ainda se você reportar features e bugs através do github ou meu e-mail iannsp at gmail dot com.

Outra coisa também, sinta-se em casa para participar. Usando o github, é só fazer um fork e  pull requests das alterações que julgar interessante.

É isso ai. Simples assim. 😉

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s