What is the GUI for ?  I'm not sure I'm happy about it, but I think most
UI's are done in a browser now, and if you haven't checked out
clojurescriptone.com yet I'd take a look.



On Wed, Dec 5, 2012 at 5:38 PM, Christian Sperandio <
christian.speran...@gmail.com> wrote:

> Hi,
>
> I'm one of those bearded (Lin)Unixians person who love the black screen.
> I'm closer to back-office than front-office (it's may be my (too) pragmatic
> mind).
> But sometimes, for some programs, a GUI is a good thing for users. In
> particular when the sofware is not for barbed person :)
> First, I want to give details about my GUI development experience. For
> some years now, I developed GUI with Cocoa (OS X, before IPhone and iOS
> out). Recently, I did some development in HTML5/CSS/JS (and I hope, in the
> future, I'll learn ClojureScript).
>
> Back to now, I'd like to make a GUI for a Clojure program and being in the
> JVM world, I thought I would try a new framework: JavaFX2. Below, I give my
> feeling and anyone can write remarks about it.
>
> We are living in the 2010's years and with JavaFX we find another
> framework whose the conception is inheritance spirit. The first thing you
> do, is a subclass of Application. Well, what do you do with delegation?
> Composition? I had a lot of pleasure with Cocoa because there was no
> (almost) inheritance. All your work was done by delegation. I found that
> more elegant and cleaner. As far as I like no more the
> Apple's philosophy (but it's another discussion), for this point I found
> that the Cocoa's architecture was well-thought. And I find that the Clojure
> code is damaged by the JavaFX inheritance. You must write  :gen-class
> extends to just display a window. And when I read documentation about
> bindings, I thought it was complicated to make a simple thing (look at
> watch in clojure). OK, the JavaFX bindings work but I feel writing code for
> writing code.
>
> My second bad point for JavaFX, it's about the interactive development. I
> love languages like Groovy and Clojure because you can test the code in a
> console (GroovyConsole or REPL). Can we do that with JavaFX? My main
> problem is the following: for launching of your JavaFX application, you
> have to call the start method in your main. It blocks the current thread
> and the REPL waits for closing the window. While with Swing, you can create
> components on-the-fly (no start method to display your main frame) in the
> REPL. The "thing" lives and changes under your eyes. It's magic.
>
> Did I miss something ? Did I have a bad feeling too soon because the
> code's weight and difficulties? When I read code like
> callback<TableColumn<Person, String>,XXX<YYYY>>, sorry but I'm discouraged.
> Some people laugh at Clojure because of its parentheses. But in this case,
> we can talk about Java and its arrows.
>
> Finally, I think I'll turn to Swing. OK  it's less pretty and hype than
> JavaFX but the fact I can play with Swing inside REPL is fun. And
> seriously, why JavaFX's developers made something so unpleasant (I think
> again this inheritance point as soon as you want to launch a simple frame).
>
> If some people work with JavaFX and think it's great, I'm ready to read
> your posts. Even if I'm a bearded person, I'm ready to reassess. Perhaps, I
> missed something.
>
> Chris
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to