I also prefer .html/.wod model because it's (close to) separating view and
controller.
I'm accustomed to receiving HTML from someone who, e.g., cuts the page,
provides images, puts in pro-forma tags for active elements. The supplier is
responsible to deliver a page (he wraps it in a little PHP) that is displayable
and tested across browsers (I think he tests against 17 of them). I then insert
the active elements, supply JavaScript, etc. I also may receive updates to the
page in HTML (in which case I'm doing some kind of diff on HTML and update on
HTML/wod).
It looks to me as if this process is going to become a lot more work on my side
and a lot more error prone if I go to this non-HTML/"single source" approach --
unless I get the HTML supplier to instead give me Seaside.
Am I understanding this correctly?
Tom
On Sep 28, 2011, at 9:38 AM, [email protected] wrote:
> Hi Chuck,
>
> I can feel your gears turning. That's a good thing!
>
> 1) PHP is nothing but a template file (with embedded programming)
>
> 2) WO has a template file, a programming file, and it also has "in-line"
> binding which I've never been a fan of. Then there is the OGNL too...
>
> 3) Seaside is nothing but programming logic.
>
> So PHP is on one side and Seaside is on the other. WO is in the middle.
>
> We all can agree that the PHP, JSP, etc. way is a nightmare. You can make
> good software but you have to work harder.
>
> WO way is better. For many years I really liked the way the .html / .wod was
> nothing but presentation and bindings. OGNL is cool for quick and dirty but
> it didn't feel right to me being too cluttered like the PHP way and hard to
> debug. Inline bindings also clutter the HTML file and never resonated with me
> either. Maybe... perhaps its cool for a WOString with a single value but
> anything other than that... I'd rather someone use the .wod file. The Apple
> way was insane, you had to do all inline bindings or none. The WOnder way is
> best, able to mix the two.
>
> In WO there is the minor hassle of finding the line in HTML that matches up
> with the .wod file. Using WOlips this is easy because it finds it for you and
> jumps you right there to synchronize the two files in a split view. One thing
> WOLips can't do is refactor that code. Only Java code is refactorable. You
> also have to be extremely astute that you output correct and balanced HTML
>
> Seaside way is best. By using a living language, everything is immediate, you
> don't feel the urge to cheat like with OGNL. By removing the template file
> entirely and using objects you get so many benefits.
>
> 1) No extra files to coordinate.
>
> 2) no HTML syntax problems.
>
> 3) you can refactor ALL of your code, not just the business logic.
>
> 4) you can still partition your presentation logic - but instead of putting
> it in a different file you put it in a method.
>
> 5) did I mention everything is alive? There isn't even a source code file to
> deal with. No compiling, no interpreting static files, no need for an add-on
> like JavaRebel. In Eclipse you can query for methods given part of a name you
> remember. In Smalltalk you can query for methods that take such and such
> parameters and evoke a certain value, you don't even have to know the method
> name. Smalltalk will immediately give you a handful of methods that do
> "greatest common denominator" for example. "Living" versus "Living Dead"
> there is a difference but I digress.
>
> Here is an example of how presentation is rendered in Seaside. Bare in mind
> that "renderContentOn" is akin to "appendToResponse". And that "html" is an
> object which gets passed into the method that is a bit like a WOContext and a
> String buffer rolled into one. In this example it is going to render an HTML
> table with table rows and table data cells:
>
> renderContentOn: html
>
> html table: [
> html
> tableRow: [
> html tableData: [html text: 'Table entry']];
> tableRow: [
> html tableData: [html text: 'Table entry']]].
>
> Look foreign? Perhaps but it's worth getting your feet wet and kicking these
> ideas around. I've seen many things and this is the first set of tools and
> processes that make me feel good. Like it is equivalent and perhaps better
> than WO. It's brain dead easy to install and there are a number of tutorials
> out there.
>
> -- Aaron
>
>
>
> From: Chuck Hill <[email protected]>
> To: [email protected]
> Cc: WebObjects Mailing List <[email protected]>
> Date: 09/27/2011 06:02 PM
> Subject: Re: Finding WO people for startups (cult of the dead)
>
>
>
> Hi Aaron,
>
>
> On 2011-09-27, at 9:19 AM, [email protected] wrote:
>
> > What is cool about Smalltalk / Seaside with respect to WO?
> >
> > 5) Even better than "in-line" binding it has no template file what-so-ever
> > by design. All your HTML output is coded in the programming language. No
> > more unbalanced DIV tags. Everything is refactorable.
>
> Is that better? In my imagination that makes it like PHP. Would that not
> obstruct what little view of page structure that is still there in WO?
>
>
>
> --
> Chuck Hill Senior Consultant / VP Development
>
> Practical WebObjects - for developers who want to increase their overall
> knowledge of WebObjects or who are trying to solve specific problems.
> http://www.global-village.net/products/practical_webobjects
>
>
>
>
>
>
>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list ([email protected])
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/webobjects-dev/blenko%40martingalesystems.com
>
> This email sent to [email protected]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to [email protected]