News for hackers. Stuff that matters.
Re:A Picture of Java in 2020 by pjmlp on Tuesday September 22, 2020 @04:36AM (#24552255)
The same ones that rather spend one day doing an UI in code than 1h in a RAD GUI tool.
Re:A Picture of Java in 2020 by kitd on Tuesday September 22, 2020 @04:42AM (#24552284)
For initial scaffolding, or long-term maintenance? Because I'd pick the RAD GUI for the former and code for the latter.

You really don't want to add ephemeral designer tools to your list of hard project dependencies.

Re:A Picture of Java in 2020 by pjmlp on Tuesday September 22, 2020 @05:15AM (#24552476)
Both.

The Delphi, C++ Builder, Forms/WPF/UWP, Swing/JavaFX soul in me begs to differ.

In fact that is the biggest pain in Web projects to this day and I can hardly wait for stuff like Uno and Blazor to bring "Flash" back, if Web Components don't do it first.

Re:A Picture of Java in 2020 by monsieurbanana on Tuesday September 22, 2020 @08:06AM (#24553516)
After reading your comment I've spent a good 10 minutes trying to find out what are RAD tools (seems to stand for Rapid Application Development tools).

Still no idea. Seems to be a synonym of IDE, but not really?

Re:A Picture of Java in 2020 by badsectoracula on Tuesday September 22, 2020 @10:06AM (#24554494)
Think Visual Basic, Lazarus, Delphi, C++ Builder, etc. RAD IDE is essentially an IDE which has deep knowledge about the language and allows for visual design of the GUI - among others.

For example in Lazarus, Delphi and C++ Builder when you edit components in the visual editors (be it the form editor for making a GUI or a data module editor for non-visual components - e.g. editing the routing for HTTP requests in an fcl-web application) you are actually editing live objects which are serialized as part of your application when you save the project (contrast this to something like Qt Designer, Gtk's GLADE or wxFormBuilder for wxWidgets, which only create stand-in controls that pretend to be what you are designing). The IDE exposes the properties and events of those components by using their RTTI information of the object instances directly (instead of hardcoded knowledge of using some configuration file) and it has full knowledge of the source code you are editing so that it can automatically create event handlers, functions, variable declarations, etc for you (no need for special comments or whatever) as you edit the components and the code (this isn't just for component editing btw, in Lazarus you can do something like start writing a `for I:=0 to 100 do` loop, then move the cursor to the `I:=` part, press a key and have the IDE deduce the type and declare the `I` variable if it is missing).

One way to think of it is like if you are making a game in Unreal or Unity where you also work with live objects, but instead of those objects being levels, pick up items and monsters, they are forms, modules and buttons for your application.