Hi Nour,
Thanks for fielding this... I must admit I'm hardly ever on our IRC
channel. Maybe as our community grows.
Anyway, below I've pasted in your transcript, and I've responded with
some inline comments.
Cheers
Dan
(09:09:23 PM) mnour: Ruudjah: Hi
(09:09:33 PM) mnour: welcome on Apache Isis IRC channel :)
(09:59:29 PM) Ruudjah: hi
(10:00:25 PM) Ruudjah: naked object pattern always assumes ui will be
generated?
(10:00:44 PM) Ruudjah: Is there a synergy beteen isis and EMF (Eclipse
model framework)?
Dan: the NOF framework predated EMF, and also in the early days we
wanted NOF to be cross-platform (.NET and also Java). So, although we
did look at EMF, it didn't do anything that we hadn't already developed
for ourselves.
(10:03:31 PM) Ruudjah: central to emf is the metamodel; a model to
describe models
(10:03:36 PM) mnour: and for Isis, yes it is more for applications using
a GUI to interact with
(10:03:45 PM) mnour: in that regard yes
(10:04:32 PM) mnour: Isis uses a metamodel to describe what
features/facets you defined on ur model besides the model itself which
can be written in Java or Groovy
(10:04:34 PM) Ruudjah: As I assume isis will have a metamodel too
Dan: indeed it does.
...
(10:06:06 PM) mnour: can u describe the problem u have
(10:06:08 PM) Ruudjah: which is wiki assisted coding
(10:06:31 PM) Ruudjah: I have an icon and a wiki page for every
class/abstractClass/interface
(10:06:49 PM) Ruudjah: also
(10:07:06 PM) Ruudjah: I have a description and title string getters for
every class/aClass/interface
(10:07:42 PM) Ruudjah: the description comes from a wiki page (of the
class/aClass/interface)
(10:08:35 PM) Ruudjah: So when I have a class implementing an interface
whch in turn inherits from the Meta interface (with
title/description/icon etc getters)
(10:08:57 PM) Ruudjah: the generated java model code class needs to have
this interface autoimplemented
(10:09:10 PM) Ruudjah: thats basically the problem i have
Dan: we aim to avoid that sort of coupling: of requiring that classes
implement specific interfaces. We do this by wrapping each domain
object in an adapter (ObjectAdapter).
(10:11:42 PM) Ruudjah: EMF natively supports code generation extension
(10:12:04 PM) Ruudjah: meaning I can extend emf to implement the meta
impls for me
(10:12:25 PM) Ruudjah: Im not sure about code generation in isis
(10:12:42 PM) mnour: thats why I am asking you to send ur question over
the mailing list :D
(10:12:51 PM) Ruudjah: mainly about two-way code generation
(10:13:10 PM) Ruudjah: e.g. generate a class, edit class manually, then
regenerate code without touching manual stuff
Dan: Isis is definitely *not* about code generation. Everything is done
at runtime. So if you are looking for a code-gen solution, then Isis
isn't for you.
(10:13:39 PM) Ruudjah: does isis support gwt?
Dan: a GWT-based viewer has been developed (by one of our committers)
but it was closed source. It's definitely doable. If we did it again
open source, I would push to use Vaadin instead, and hit the JSON
protocol we have recently started to implement (see
https://cwiki.apache.org/confluence/display/ISIS/Restful+Json+Protocol).
On 03/07/2011 19:02, Mohammad Nour El-Din wrote:
Hi...
Please find the attached text file of an IRC chat log happened
between me and Ruudjah and he asked some questions mainly comparing
between Apache Isis and EMF, I tried to answer as much as I know, and
also encouraged him to send an e-mail on isis-dev@ but seems he
didn't, I hope I am not the reason :D.
But anyway, he has mentioned some good questions that I want to know
the answer about and maybe we come out with some ideas from them.
Looking forward to your feedback.