RSS

Monthly Archives: August 2013

JavaFX

So, initially I was considering a whole run on guiding established OOP programmers to binding and property oriented material; but honestly, I’m not feeling qualified for that just yet. I’m still learning a lot myself. There have been a few major changes in the software community lately, and many of these changes run directly against long held design patterns. The majority of these, for me, have been implemented in my quest to learn JavaFX, which Oracle has announced will be replacing Swing in the near future.

Honestly, I can understand why. It’s lightning fast, completely compatible with a number of other JVM-based languages (such as Scala and Jython), uses the graphics hardware to its full potential (with one exception that I’ll discuss momentarily), and can be coded extremely quickly. It uses bindings and properties in a manner that makes even the old and tested design of Java Beans look amateurish. Additionally, the long-held notion that programming objects must, in some manner, be visualizable as literal objects, has rightly been taken into question. A property-oriented object is more like a gear; what it does is an inherent and inseparable part of what it is.

This will be a chronicle of my adventures and experiments with JavaFX. For a decent read on modern JavaFX, I recommend “Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology“, published by Apress. It’s just getting your feet wet, not teaching you to swim; but it’s a magnificent start.

Where GUIs are concerned, I come from two universes, that of Swing and that of OpenGL. JavaFX is a fusion between the two, implemented as a raw API. It cuts straight from JVM virtual machine code to the GPU. Whether that’s an nVidia Quadro K6000 or a 2008-era Intel Graphics Chipset, that is a significant amount of red tape cut. The only caveat is that on some architectures, a few features have not yet been implemented. It’s not a lack of planning or concern that has done this, but a lack of available man-hours; the situation will resolve itself. But, as an example, the amazing Perspective 3D mode, on Linux, is only available for nVidia GPUs with the proprietary driver; otherwise, the Java2D pipeline is defaulted to instead. So, if you have an amazing Radeon GPU in your machine, you will have to wait for that particular feature to be implemented. (Or, join up and implement it yourself, if you have the time and the know-how.) Thankfully, the era of wondering about GPU compatibility seems to be coming to a close with the imminently released JavaFX 8.0.

There are a thousand very good basic tutorials on the web alone; this is my focus on the issues that I have run into with the bindings of JavaFX, and how to get around them. I look forward to seeing the absolutely beautiful GUIs that people will construct with this technology.

Advertisements
 
Leave a comment

Posted by on August 17, 2013 in JavaFX, Programming

 

Tags: , , , , , , , , , , , , , , , , , , , , ,

So, what in the name of god have I been doing all this time?

Writing. No, seriously. In fact, I have completed the book in full, and am actively looking for an agent. And where I haven’t been writing, I’ve been programming; enough to inspire a how-to guide, from the front, for people accustomed to all of the good habits of Object-Oriented Programming, that now need to learn to deal with the very different world of Binding-Oriented Programming. Beyond that, I’ve been working my day job as an inventory manager, cooking more than you would guess, and on my break time gathering a squadron of friends to aid me in “Guns of Icarus Online“… Which I turned out to be a freakin’ maniac bad-ass in, but that’s beside today’s point.

Today’s point is, I want to apologize to you, the reader, for nigh-forgetting this blog. I’m adding a whole series of new items in the near future—that’s a promise—including a few new original recipes. Some of the guides will even be more like open questions, as Binding-Oriented Programming is very new to me.

I have a recipe that I’m experimenting with right now for bosc pears, hollowed out and filled with a bread-pudding like custard, then dipped in a hard dark chocolate. (Possibly also poached in rum and honey, not sure how that will work yet.) I already devised an excellent recipe for a white kidney beat (cannellini bean)-mango-pork chilli, which was fantastic and easily modified to be vegan. (Which I’m still not.) It’s definitely going up, just give me some time to get some photos and a proper recipe together.

This is all contending with my efforts to get an agent and get published again, but I’ll find time. I may also begin work on the subsequent book, which it will be easier to establish a framework for while passing through the completed book. Writing isn’t an on-or-off process for me, it’s a calculative and architectural skill; I’ll stare blankly at the screen considering my topic for half of an hour before I’ll start typing, and then I’ll throw two thousand words down in ten minutes.

So anyway, I’m back, and I have some new treats with me.

 
Leave a comment

Posted by on August 17, 2013 in State of the Moment

 

Tags: , , , , , , , , , , , , , , , , , , , ,