Sugar Community Edition 6.4 Beta – DB layer refactoring

Il 23 Novembre 2011 è stata rilasciata la versione 6.4 beta 6 di SugarCRM Community Edition. La nuova beta può essere scaricata da SugarForge all’indirizzo http://www.sugarforge.org/frs/?group_id=6

Scrivo per esperienza personale, di quanto è stato introdotto e/o migliorato sulla nuova versione rilasciata è sicuramente interessante la parte che ricade nella Platform Enhancements e in particolare il lavoro svolto nell’operazione di DB Layer Refactoring, riporto un estratto della release notes:

Platform enhancements in Sugar 6.4.0 include, but are not limited to, the following:

DB layer refactoring — SugarCRM is planning a 3 phase, multi-release DB Layer refactoring to improve database independence and increase performance and stability. Release 6.4.0 includes the first of these phases which mainly focuses on moving database specific code and queries into a clean class hierarchy, eliminating the DB helper classes. These changes may affect customizations and custom modules which were built against older Sugar versions. It is imperative to test the upgrade process in a staging environment before proceeding with the production upgrade, especially if the system includes customizations or custom modules.

L’operazione di refactoring sullo strato del DB aiuta senza dubbio quei poveri “cristi” che devono sviluppare un nuovo driver per l’accesso ai dati. Sulle precedenti versioni scrivere un driver per l’accesso ai dati comportava mettere le “mani” su parecchie parti di codice fuori dal driver vero e proprio, come per esempio: SugarBean, SugarWidgets, SearchForm, etc…

Sulla nuova versione di SugarCRM è quindi possibile scrivere il proprio driver di accesso ai dati senza preoccuparsi dei vari if($GLOBALS[‘db’]->dbType == $myDB) sparsi nel codice al di fuori del codice che implementa il driver vero e proprio.

Da un veloce controllo sul codice sorgente questi sono i numeri che ho ottenuto ricercando la stringa mysql sul source tree delle versioni 6.3 e 6.4beta6 di SugarCRM:

  • 399 occorrenze sulla versione 6.3
  • 118 occorrenze sulla versione 6.4 Beta 6

E’ stato fatto sicuramente un bel lavoro di “pulizia del codice” che continuerà ancora fino al rilascio della versione GA, ma il punto subito in evidenza è l’indipendenza dello SugarBean dal driver.

Per maggiori approfondimenti vi rimando alla lettura dei post http://www.sugarcrm.com/forums/f9/sugar-6-4-0-beta-6-now-available-test-76502/ e Learn out the next generation of our DB layer at August’s SugarCRM Community Webinar

Buon driver a tutti !!!

0 Condivisioni

Antonio Musarra

I began my journey into the world of computing from an Olivetti M24 PC (http://it.wikipedia.org/wiki/Olivetti_M24) bought by my father for his work. Day after day, quickly taking control until … Now doing business consulting for projects in the enterprise application development using web-oriented technologies such as J2EE, Web Services, ESB, TIBCO, PHP.

Potrebbero interessarti anche...

Cos'è il progetto CIE/CNS Apache Docker - Developers Italia

In questo video https://youtu.be/TcAzn1POhsM introdurrò il progetto CIE/CNS Apache Docker di Developers Italia (https://developers.italia.it/it/cie/#resourcecontent-3) nato circa due anni fa.

L'obiettivo di questo progetto è quello di fornire un template pronto all'uso che realizza un sistema di autenticazione tramite la Smart Card TS-CNS (o CNS) e la CIE (Carta d'Identità Elettronica) basato su Apache HTTP. Ognuno può poi modificare o specializzare questo progetto sulla base delle proprie esigenze Si tratta di un progetto docker per la creazione di un container che implementa un sistema di mutua autenticazione o autenticazione bilaterale SSL/TLS.

Questo meccanismo di autenticazione richiede anche il certificato digitale da parte del client, certificato che in questo caso risiede all'interno della TS-CNS o della CIE. La particolarità del sistema implementato (attraverso questo container) è quella di consentire l'autenticazione tramite:

  • La TS-CNS (Tessera Sanitaria - Carta Nazionale Servizi), rilasciata dalla regione di appartenenza;
  • La CIE (Carta d'Identità Elettronica), rilasciata dal comune di residenza.

Nella versione 2.0.0 il progetto è stato aggiornato per essere uniforme alle linee guida di Bootstrap Italia. A seguire alcune risorse che possono essere utili.

  • Cos’è il progetto CIE/CNS Apache Docker (http://bit.ly/3aJ5Gbl)
  • CIE Carta d'Identità Elettronica (https://developers.italia.it/it/cie/)
  • Carta Nazionale dei Servizi (https://www.agid.gov.it/it/piattaforme/carta-nazionale-servizi)
  • Raspberry Pi – Un esempio di applicazione della TS-CNS (https://bit.ly/3hkJ8Aj)
  • Pubblicare il servizio CIE/CNS Apache Docker su Azure Cloud (http://bit.ly/3aPoq8V)
  • Come accedere al portale VETINFO tramite TS-CNS e Mac OS (http://bit.ly/2VFMKq7)