-
Notifications
You must be signed in to change notification settings - Fork 7
Home
Opes em Latim significa "abundância", "riqueza". E o seu nome é justamente um contraponto à anemia generalizada na construção de objetos de negócios em sistemas Java. A discussão é longa e complexa, mas acredito que o modelo de negócios nos sistemas que construímos pode ser bem mais do que simples JavaBeans com todas as suas propriedades consistindo de tipos primitivos expostos por getters e setters.
Uma leitura interessantíssima e obrigatória sobre o assunto é o artigo "When to Make a Type" do Martin Fowler, publicado pela IEEE: http://martinfowler.com/ieeeSoftware/whenType.pdf
O Projeto Opes consiste de uma biblioteca contendo vários "tipos" comumente utilizados em projetos de casos de uso do Brasil. Exemplos como CPF, CNPJ, Telefone, CertificadoDigital, Email, InscricaoEstadual etc são repetidamente copiados e colados em sistemas diferentes. Ou pior, são tratados como meras String
s nos projetos.
Aos que desejam utilizar as classes do Opes em entidades persistentes, o projeto contém UserType
s do Hibernate prontos para serem utilizados para cada tipo.
Este projeto foi criado na pretensão de que seja útil para alguém além dos desenvolvedores da Ínsula Tecnologia. Afinal, faremos um mundo melhor fazendo software melhor.
Bom proveito!
Adicione o seguinte repositório no elemento <repositories>
do seu pom.xml
:
<repository>
<id>maven-oss-insula</id>
<name>Insula Maven OSS Releases Repository</name>
<url>http://maven-oss.insula.com.br/releases</url>
</repository>
E a seguinte dependência no elemento <dependencies>
do seu pom.xml
:
<dependency>
<groupId>br.com.insula</groupId>
<artifactId>opes</artifactId>
<version>1.4.0</version>
</dependency>