+1

— Mark

On Oct 7, 2017, at 9:14 AM, Markus Ruggiero 
<mailingli...@kataputt.com<mailto:mailingli...@kataputt.com>> wrote:

Andre,

please take this seriously

Chick Hill wrote:

And it will also show you the correct and effective way to leverage WO and 
Wonder.  The architecture is quite different from most other frameworks and if 
you don’t make the adjustment to that, you will be forever struggling against 
the intention of the frameworks.

One important thing to note (and this seems to be a major stumbling block for 
all non-WOers): We are programming objectoriented, we are not programming SQL / 
database stuff!!

When you think "OO" you think "object". An object encapsulates state and shows 
behavior. When you start to learn oo-programming you usually have instance 
variables and methods. The object's state is kept in the instance vars and the 
behavior is defined by the methods. It is good and strongly recommended style 
to make instance variables private (or maybe proteced) and create public 
accessors (getter and setter methods). One should never access an object's 
state directly (instance variables) from outside the object but access them 
through the getter and setter methods. This allows the object (actually the 
programmer writing the class) to re-implement the internal representation of 
state in any way that makes sense. Any piece of code using the getter/setter 
methods won't be affected by that.

The EOF allows you to implement objects in a way so that their internal state 
is not kept in instance variables but is connected to a database record. 
Correct oo-thinking says "I access the object's state via accessor methods. I 
don't care where/how the object manages to store that state". Your enterprise 
objects are based on classes that inherit from framework classes. There is 
functionality in those classes to pull/push state to/from a relational 
database. You as the "user" of the object DO NOT CARE! The EOF framework 
manages this for you.

You MUST NOT THINK "database/table/record" but THINK "OBJECT".

Instead of asking "how do I retrieve customer records from the database?" you 
should think "how do I make the framework give me a list of customer objects 
that have their state backed by a record in the database?". With this in mind 
EOF becomes almost trivial to use. Any programmer coming from "standard java" 
background has a problem with this thinking because most persistence frameworks 
are more or less nicely built "sql generators". Thus one's thinking is often 
closer to "data record" instead of "object". Not so with Wonder and EOF. Just 
think "object" and you are all set.

With the EOModel you basically tell the EOF framework how to "map object 
thinking into a relational database". Let the framework do it, you are an 
oo-programmer!

Hope this clears things a bit.

Have fun
---markus---


On 6 Oct 2017, at 16:38, André Rothe 
<andre.ro...@zks.uni-leipzig.de<mailto:andre.ro...@zks.uni-leipzig.de>> wrote:

Hi Markus,

I'm on part C of the book...

Best regards
Andre

On 06.10.2017 15:51, Markus Ruggiero wrote:
Hi Andre,

I am the author of Learning the Wonders. If you have any question
regarding the book you can reach me here or directly by writing to
aut...@learningthewonders.com<mailto:aut...@learningthewonders.com> 
<mailto:aut...@learningthewonders.com>.
I'll be glad to help you get started.

---markus---

PS
Chuck and Theo, thanks for the recommendation :-)))
Yes, I use the book as official coursebook in formal education in
Switzerland for the module "Object Oriented implementation of Multiuser
Applications". This in itself has nothing to do with Wonder but
everything with oo-concepts and I use Wonder/WebObjecs as a showcase for
clean oo design.


On 5 Oct 2017, at 23:12, Theodore Petrosky 
<tedp...@yahoo.com<mailto:tedp...@yahoo.com>
<mailto:tedp...@yahoo.com>> wrote:

"Learning the Wonders" is the best book to start with. The author uses
that book in classes he teaches (I believe in Germany).

I would recommend that book to start with over the others that are
available.

All of the videos are available in the iTunes podcasts. I know the
other links sometimes don’t work.

Use the iTunes podcasts. go to podcasts, then select Store, then
search for WebObjects.

I know you mentioned that you viewed the two chapters of Leaning the
Wonders. It really gets going after that.

Ted



On Oct 5, 2017, at 3:31 PM, Chuck Hill 
<ch...@gevityinc.com<mailto:ch...@gevityinc.com>
<mailto:ch...@gevityinc.com>> wrote:

Here is a good place to start:

https://www.amazon.com/Learning-Wonders-Markus-Ruggiero-ebook/dp/B00FCDHDAA<https://urldefense.proofpoint.com/v2/url?u=https-3A__www.amazon.com_Learning-2DWonders-2DMarkus-2DRuggiero-2Debook_dp_B00FCDHDAA&d=DwMFaQ&c=BNNF-YNv0CLLslhP2Bcx5Q&r=R0ZqsewJs3eSJk7vLCqZv0r5kJlLXQLnGTeg9t8MlqA&m=dLIjBz764eJDvZ58wjM2hkBUeFqpRryWvlq9mCHWfHk&s=YVZSAP9y2Ho1ZKt_b01ikuHNy8XJT7P68Q3ylL0wdVY&e=>
http://learningthewonders.com


Chuck

On 2017-10-05, 12:25 PM, "Webobjects-dev on behalf of André Rothe"
<webobjects-dev-bounces+chill=gevityinc....@lists.apple.com on behalf
of andre.ro...@phosco.info> wrote:

  Am 2017-10-05 20:10, schrieb Theodore Petrosky:
You are working too hard!!!!!

  :-)

you need to look at all the examples. what you are asking for is so
simple (when you know how).

  LOL, exact. When you know how and where... The problem is, that a
lot of
  WebObjects links on the internet are dead.

Have you used EOModeler to build your model?

  Yes, I have.

I recommend you look at these videos:

  50% of these videos I have already watched (and downloaded). A lot
  things you don't understand at the first time you will watch the
video,
  because the WO community has its own "language", so it is hard to
follow
  the concepts.

  Nevertheless, I have downloaded the examples for the WebObjects
  Developer's Guide. This book is not bad, but it doesn't summarize the
  workflows. So I have to read all the pages to find a hint for a
specific
  problem. That is also a problem to find something, if you cannot name
  the problem with the correct "WO Community term".

  My question refers to WOTable. In the meantime I have decompiled
  WORepetition and find out, that you have to set components into the
  WOTable tags, one component for every column of the database table,
  which I need. The output of WOTable base on the "list" attribute,
which
  needs an NSArray or List and the "item" attribute, which is of the
type
  of the underlying database table.

  As I sent my question, I thought, that WOTable creates output for all
  attributes of the "item" automatically, so I tried to reduce the
  attributes of "item" before it will be visible to WOTable. But that
was
  a fault.

  Sorry for my "simple" questions, but this is a learning process. And
  there are almost 20 years between my knowlegde of WebObjects and the
  knowledge of the other readers here.

  Best regards
  Andre
   _______________________________________________
  Do not post admin requests to the list. They will be ignored.
  Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
  Help/Unsubscribe/Update your Subscription:
  https://lists.apple.com/mailman/options/webobjects-dev/chill%40gevityinc.com

  This email sent to ch...@gevityinc.com



_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      
(Webobjects-dev@lists.apple.com<mailto:Webobjects-dev@lists.apple.com>
<mailto:Webobjects-dev@lists.apple.com>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/mailinglists%40kataputt.com<https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.apple.com_mailman_options_webobjects-2Ddev_mailinglists-2540kataputt.com&d=DwMFaQ&c=BNNF-YNv0CLLslhP2Bcx5Q&r=R0ZqsewJs3eSJk7vLCqZv0r5kJlLXQLnGTeg9t8MlqA&m=dLIjBz764eJDvZ58wjM2hkBUeFqpRryWvlq9mCHWfHk&s=72m5mDTO3o7ti2ZB2kS4RAFbo9a1wC4RPzZMQdte4DA&e=>

This email sent to mailingli...@kataputt.com<mailto:mailingli...@kataputt.com>



_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      
(Webobjects-dev@lists.apple.com<mailto:Webobjects-dev@lists.apple.com>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/andre.rothe%40zks.uni-leipzig.de<https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.apple.com_mailman_options_webobjects-2Ddev_andre.rothe-2540zks.uni-2Dleipzig.de&d=DwMFaQ&c=BNNF-YNv0CLLslhP2Bcx5Q&r=R0ZqsewJs3eSJk7vLCqZv0r5kJlLXQLnGTeg9t8MlqA&m=dLIjBz764eJDvZ58wjM2hkBUeFqpRryWvlq9mCHWfHk&s=ZfMY5hUh7nw4T9WXe07yC765o25ZJSU-N2hBwprAqs8&e=>

This email sent to 
andre.ro...@zks.uni-leipzig.de<mailto:andre.ro...@zks.uni-leipzig.de>


--
UNIVERSITÄT LEIPZIG
Medizinische Fakultät
Zentrum für Klinische Studien Leipzig – KKS
André Rothe
CIO
Härtelstr. 16-18, 04107 Leipzig

Tel: 0341/ 97 16118
Fax: 0341/ 97 16189
WWW: 
http://www.zks.uni-leipzig.de<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.zks.uni-2Dleipzig.de&d=DwMFaQ&c=BNNF-YNv0CLLslhP2Bcx5Q&r=R0ZqsewJs3eSJk7vLCqZv0r5kJlLXQLnGTeg9t8MlqA&m=dLIjBz764eJDvZ58wjM2hkBUeFqpRryWvlq9mCHWfHk&s=9APZ1nibdDW63k3VSC73yiYO9UJO_ZXbElm-gNno1p4&e=>


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      
(Webobjects-dev@lists.apple.com<mailto:Webobjects-dev@lists.apple.com>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/mark.morris%40experian.com

This email sent to mark.mor...@experian.com<mailto:mark.mor...@experian.com>

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to