Starting out
Starting out
- Subject: Starting out
- From: "Jerry W. Walker" <email@hidden>
- Date: Sat, 6 Mar 2004 09:45:35 -0500
Jeremy,
Sorry that I didn't put my 2 cents in earlier, but (very productive
get-WO-business) meetings occupied me most of the week.
Someone mentioned earlier that you get and read
http://developer.apple.com/documentation/WebObjects/JavaForWODev/
JavaForWODev.pdf
I can't recommend this highly enough as a starting point for using Java
in WebObjects. But it's only a starting point. Eventually you will
need a better reference on Java and I recommend O'Reilly's Java in a
Nutshell as such a reference. As someone else pointed out, it also has
a chapter that identifies the differences between C and Java which can
be quite helpful for building on your C/C++ background.
Regarding design patterns, the developers of WebObjects had a thorough
understanding of them and if you know them you will find them used
throughout the frameworks. However, as a WO developer, there is only
one design pattern on which I think that your WO success will depend
and that is the Model-View-Controller (or MVC) pattern. All of WO is
built to support it and violating it is one of the most common
distinguishing characteristics between excellent WO developers and
those who "just don't get it."
The other design patterns can be incredibly helpful if you run into the
problems that they address, but understanding this one is critical to
your successful use of WO.
There is much written on MVC on the web and in the WO documentation.
It's also in the book by the gang of four (Design Patterns) and they
probably gave it it's name. Learn it, understand it, and do everything
in your power to avoid violating it and your WO programs will gain much.
WO training is also VERY HELPFUL to your WO success. I would say
critical, but there are those successful WO developers who actually got
there without it. Typically, these were people who worked with a very
helpful expert, but there are even rare exceptions to that. Maybe you
can be one of them, but don't count on it.
If you get lucky, maybe Apple will be offering WO training again soon.
Their two classes WO Development I and II are invaluable resources when
it comes to putting it all together. However, last I looked, they were
still not offering either one on the web site, and... as I look
again, they don't even reference these incredible resources. Perhaps
this is a sign that all readers of this list should start beating on
them again to provide the resource.
Meanwhile, I know that Ubermind ( http://www.ubermind.com/ ) provides
WO training. I haven't seen their training, but they've got a set of
top WO developers and I expect that it's good. Perhaps others on this
list can supply other worthwhile leads.
You will need some book to replace the overview that those classes give
you. Unfortunately, I've only read two such books that were published
soon after Apple took WO to Java and I wouldn't recommend either of
them.
Finally, thoroughly study the books Apple provides on Enterprise
Objects Frameworks (EOF). EOF is one of the major reasons that WO
stands out from the competition. Unlike any other Java-DB middleware,
it truly abstracts the database as a persistence layer and is the only
one that doesn't make you construct some sort of SQL or SQL substitute
select and dump a result set in your lap.
Rather, it provides you with an EOModel that allows you to view your
database as an abstraction and allow you to encapsulate the relational
to object model translation. Using that model at run time, it will
allow you to fetch some set of OBJECTS (which it will construct for
you) out of the database and then simply follow the links in the object
graph that directly results from your fetch. Other rows in the database
that are related to the objects you fetched are automatically fetched
from the database when needed and again provided to you as OBJECTS
appropriately linked into your object graph.
Before I get flamed on this statement, as your experience with WO
grows, you will need to understand how EOF serves these objects up and
how it relates to the underlying SQL, but for simple projects without
heavy scaling and performance requirements, it provides very elegant
solutions right out of the box.
As performance and scaling become issues in your development, WO has
all you need to do it better than most other products out there, but by
then you will need a much deeper understanding of the role EOF plays.
(Note the number of questions on this list regarding that role.)
You will also need some solid understanding of HTML to successfully use
WO professionally. WO provides you with the WebObjects Builder tool
which is a VERY helpful dynamic web page editor. However, WO's role is
to provide an object adaptor to solve the dynamic HTML problem.
Understanding HTML will give you insights into the problems that WO
solves before you end up trying to redundantly solve them your own way.
For that, I recommend as reference, the O'Reilly HTML reference by
Musciano and Kennedy.
Beyond that, of course, stay connected with the community on this list
and on the OmniGroup WO mailing lists.
Good luck.
--
__ Jerry W. Walker
c o d e f a b - "High Performance Industrial Strength Internet
Enabled Systems"
email@hidden
212 465 8484 X-102 office
212 465 9178 fax
I have some basic C/C+ training that I've taken, albeit a few years
old. I'm very interesting in WO development/deployment. I have some WO
books, but I know little about Java, so it's somewhat useless to me so
far. What kind of training/education/reading material would you
recommend? Most of my peers have recommended basic/advanced Java books
andd classes, some Cocoa and Obj-C, XML, and some DB basics. One
person recommended "Design Patterns", but I haven't got anything else
solid. So if my goal is to be a WO master, where do I begin?
-jeremy
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.