• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Starting out
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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.


  • Prev by Date: silly question installing the apple webobjects demo
  • Next by Date: Case Insensitive Query Question
  • Previous by thread: Re: Starting out
  • Next by thread: EOModeler syntax error
  • Index(es):
    • Date
    • Thread