[squeak-dev] Re: [Esug-list] Re: GSoC Idea: GLORP & Magritte
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 ?
> 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
> 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