[squeak-dev] Re: [Esug-list] Re: GSoC Idea: GLORP & Magritte integration/refactoring

Niall Ross nfr at bigwig.net
Fri Mar 12 10:55:57 UTC 2010

I'd say 'advanced'.

Mariano Martinez Peck wrote:

> Ok...Done. I put you as Юрий Мироненко as mentor (BTW, which is your 
> name with this alphabet ?) and Diógenes Moreira as co-mentor.
> Which difficult we should put ?  beginner, intermediate or advanced ? 
> Thanks
> Mariano
> 2010/3/12 Юрий Мироненко <tallman at inbox.ru <mailto:tallman at inbox.ru>>
>     Glorp and Magritte both map between model-layer objects and other
>     domains; in Glorp's case, the relational database, in Magritte's
>     case, the web. The truth is that Magritte is a meta-description
>     framework for all kind of descriptions. However, it is mostly used
>     for web applications.
>     There are many similarities in how each framework manage
>     model-layer class - accessing model's fields, mapping those fields
>     to it's representation, caching/commiting/rollbacking, condition
>     checking/validation and so on. Lot of business applications are
>     RDS-based, CRUD-like systems, with GUI structure close to model
>     structure, and model structure close to database structure. So,
>     developers sometimes feel they are repeating themselves when they
>     code first the Glorp descriptors and then the Magritte
>     descriptors, or vice versa.
>     The goals of this project are:
>      Detect common aspects of both frameworks
>      Compare implementation of those common aspects in both
>     frameworks, and choose/compile "best" one
>      Detect any limitations of one framework revealed by comparison
>     with the other
>      Refactor the stuff, splitting it to three groups: "common
>     metamodeling", "Generic ORM" and "GLORP-related"
>      Cleanup GLORP from "common metamodeling" and "Generic ORM" stuff.
>     The output is both a refactored codeset with three level of
>     abstractness, and an analysis of why functionality was splitted in
>     this exactly way.
>     Technical Details
>     ===========
>     Glorp and Magritte have good test suites. XP development to ensure
>     existing facilities remain functional will protect the student
>     from breaking some facilities as they experiment with
>     refactorings. Maintaining, where possible, deprecated methods that
>     call new API in terms of old API may be appropriate in the
>     project, and may also assist introduction of the results to the
>     community.
>     There are at least two projects to observe, one is for
>     magritte-based SQL mapping without GLORP, another one - generator
>     of simple GLORP mappings with Magritte descriptors.
>     Maybe it will be necessary to make some tools for describing
>     domain-specific Magritte things. For example, something like "with
>     this domain-specific descriptor you should use this
>     domain-specific memento for caching".
>     Benefits to the Student
>     ===============
>     Glorp and Magritte are two meta-modelling/mapping frameworks with
>     impressive capabilities solving real problems: the student who
>     does this project will acquire significant practical knowledge of
>     this kind of meta-modelling. Glorp and Magritte are also important
>     parts of one way of writing web applications: the student who does
>     this project will have skills that can be turned to practical
>     account in web development.
>     Benefits to the Community
>     ===============
>     Decreasing complexity and entry level for projects with both
>     Magritte and GLORP inside (a lot of enduser applications really).
>     Increasing quality of both Magritte and GLORP. Decreasing
>     complexity of GLORP, which is very complex now becouse of all the
>     stuff for meta-describing inside.
>     And avoiding double-efforts in future, so when  we'll upgrade
>     Magritte, we'll upgrade GLORP simultaneously.
> ______________________________________________________________________
> This email has been scanned by the MessageLabs Email Security System.
> For more information please visit http://www.messagelabs.com/email
> ______________________________________________________________________
>Esug-list mailing list
>Esug-list at lists.esug.org

More information about the Squeak-dev mailing list