Rilasciato Parancoe 2.0

Posted by Lucio Benfante Sat, 01 Nov 2008 16:57:00 GMT

Dopo una lunga gestazione abbiamo rilasciato la versione 2.0 di Parancoe.

Leggete l’annuncio ufficiale nel sito di Parancoe:

http://www.parancoe.org/news/2008/11/01/parancoe-2-0-released/

Non mancate anche di leggere la nuovissima Parancoe Reference Guide, sia in HTML, sia in PDF.

Posted in  | Tags  | 1 comment

Parancoe@Jazoon2007

Posted by Enrico Giurin Sun, 10 Jun 2007 23:21:00 GMT

On June 26th Parancoe will be showed at jazoon.

Parancoe is a project aiming to simplify the release of web applications promoting the convention over configuration philosophy and the DRY principle. This project is promoted by the JUG Padova, and everybody can partecipate. Parancoe purpose is to give to developers a set of libraries ready to build standard web applications (which in most cases are just crud applications) without worrying of long and harmful configurations files. Parancoe will be composed of a full MVC stack.

Take a look here for event details.

Posted in  | Tags , , , ,  | no comments | no trackbacks

JUGMeeting #35

Posted by Enrico Giurin Tue, 15 May 2007 05:47:00 GMT

Quando: Sabato 19 maggio 2007 dalle 09:15 alle 12:30

Dove: aula De – piano terra del DEI, via Gradenigo 6/B (ingresso studenti), Padova

Programma:
09:15 Apertura meeting, caffè, caffè, caffè.
09:30 Automatic Acceptance Testing with FIT / FitNesse, a cura di Mariano Ceccato (video)

Si stima che l’85% dei difetti del software siano dovuti al fatto che i requisiti sono spesso ambigui, incompleti, silenti e, a volte, inconsistenti e contraddittori. Le metodologie agili prevedono che i requisiti siano espressivi e precisi. Alcuni extreemers si spingono ancora oltre, sostenendo che solo i casi di test possono chiarire i requisiti. La metodologia FIT/FITNESSE può essere usata sia per automatizzare i test di accettazione sia per chiarire requisiti inconsistenti e ambigui.

10:30 Intervallo, pausa caffè.
10:45 Validazione dati in Parancoe, a cura di Andrea Nasato (video)

Parancoe permette di concentrare all’interno del persistent object tutto il codice necessario alla validazione tramite opportune annotazioni. In più non è necessario scrivere alcuna configurazione. Durante la presentazione vedremo come funziona il meccanismo di validazione di Spring MVC per poi passare a quello usato in Parancoe. Infine faremo un breve accenno all’integrazione della validazione di Parancoe con DWR.

11.15 Parancoe@Jazoon2007, a cura di Parancoe team.
Preparazione, discussione del seminario di parancoe a Jazoon
12:30 Pizza, Pizza, Pizza!!!

Posted in  | Tags , ,  | no comments | 1 trackback

JUGMeeting #34 - Assemblea Annuale dei soci

Posted by Enrico Giurin Tue, 24 Apr 2007 10:51:00 GMT

Quando: Sabato 28 Aprile 2007 dalle 09:15 alle 12:30

Dove: aula De – primo piano del DEI, via Gradenigo 6/B (ingresso studenti) Padova

Programma:
09:15 Accoglienza
9:30 Assemblea annuale del JUG Padova (in seconda convocazione) a cura del Consiglio Direttivo del JUGPadova
10:15 Java Break – Pausa caffe’
10:30 Enrico Giurin: integrazione di ACEGI in Parancoe (video)
10:50 Lucio Benfante: scrivere e usare un DAO in Parancoe (video)
12:30 Fine meeting 34
13:00 Pizza con chi vuole fermarsi con noi ;-)


L’ ingresso è e rimane sempre libero!

Vi aspettiamo numerosi!!!

Posted in  | Tags , , ,  | 2 comments | no trackbacks

JUG Meeting #32

Posted by Lucio Benfante Wed, 24 Jan 2007 15:45:00 GMT

Quando: Sabato 10 Febraio 2007 dalle 09:00 alle 13:00

Dove: aula De – piano terra del DEI, via Gradenigo 6/B (ingresso studenti), Padova

Programma:
09:00 Apertura meeting, caffè, caffè, caffè.
09:15 Introduction to Extreme Programming, a cura di Paolo Foletto (slides, video)

In this first presentation I will introduce the values, the roles and the tecniques. We will learn the terms tipical of xp and agile development.

The second presentation will be held in March and it will be more values and process oriented. The agile manifesto. Unified process versus light processes. Why XP works and why XP is not accepted in Italy?

10:45 caffè, caffè, caffè, caffè, caffè!
11:00 Approccio CoRE: Utilizzo di maven2 e continuum, a cura di Andrea Zoleo (video)

Esempio dell’utilizzo di maven2 e di continuum in un progetto reale.
  1. XP OSS e CoRE
  2. cos’e’ maven2
  3. cos’e’ continuum
  4. L’organizzazione dell’infrastruttura sistemistica.
    • svn
    • groupware
    • mailinglist
    • forum
    • issue tracking
    • ecc…
  5. Il file pom.xml di maven
  6. Vari plugin di maven
  7. core e parancoe ?
12:30 Update on the progress of the Parancoe project a cura del Parancoe Team

parancoe.dev.java.net

13:00 Pizza tutti assieme


(Malgrado titoli e riassunti, gli interventi saranno in italiano)

Posted in  | Tags , , , , ,  | 1 comment | no trackbacks

Un DAO in DUE minuti

Posted by Lucio Benfante Sat, 09 Dec 2006 12:40:00 GMT

Parancoe è un framework Web pensato per scrivere rapidamente applicazioni Web “di tutti i giorni”, cioè applicazioni senza requisiti particolari, quelle che nel 90% dei casi viene richiesto di sviluppare. Lo scopo quindi non è avere un framework iper-flessibile, capace di adattarsi a tutti i requisiti possibili, ma un framework che renda molto semplice la vita al programmatore sviluppando quel particolare tipo di applicazioni.

Il suo modulo di persistenza segue la stessa filosofia e permette di ottenere in pochi minuti le classi per accedere ai dati (DAO - Data Access Object) dell’applicazione, memorizzati in un database relazionale.

Ad esempio, supponiamo di avere una classe persistente Person, mappata sul DB mediante Hibernate. Per ottenere il suo DAO con Parancoe è sufficiente scriverne l’interfaccia:

@Dao(entity=Person.class)
public interface PersonDao extends GenericDao<Person, Long> {}

…e scriverne una semplice configurazione per Spring:

<parancoe:dao id="personDao"
    interface="org.parancoe.example.dao.PersonDao"/>

Già così avete ottenuto un DAO con i seguenti metodi:

  • Long create(Person newInstance);
  • Person read(Long id);
  • void update(Person transientObject);
  • void delete(Person persistentObject);

Notate che non sono metodi “generici”, ma usano il tipo dell’oggetto persistente, quindi non sono necessari cast.

Ma si può andare oltre. Supponiamo che abbiate bisogno di un metodo per ottenere la lista delle persone con un determinato nome e cognome. Con Parancoe è sufficiente modificare l’interfaccia, aggiungendo tale metodo:

@Dao(entity=Person.class)
public interface PersonDao extends GenericDao<Person, Long> {
    List<Person> findByFirstNameAndLastName(
        String firstName, String lastName);
}

Questo è tutto: non è necessario scrivere l’implementazione di tale metodo, nè modificare la configurazione del DAO.

Per saperne di più leggete questo tutorial nel wiki del progetto.

Se poi volete contribuire, anche solo per dare suggerimenti su come proseguire nello sviluppo, commentate questo articolo e visitate il sito del progetto:

http://parancoe.dev.java.net

Potete anche iscrivervi alle mailing-list del progetto:

https://parancoe.dev.java.net/servlets/ProjectMailingListList

Aggiornato 28/12/2006: è cambiato il modo di configurare i bean DAO.

Posted in ,  | Tags , , ,  | no comments | no trackbacks