a question about basic libraries and "cosmestic" ones ... (OT ?)
That will be a long post, maybe a little OT. But I needed to ask the experts.
I was wondering why there is a lot of work and libraries related to laf, painters, visual effects, etc and too few about some basic and fundamental issues (from my point of view, of course) like making a quick, easy to code database connected form or report.
From my work experience, I think that most systems in most bussines follows some form of Paretto's law: the 80% of important issues or functionality are handled by 20% of programs (or less). The remaining 80% of programs deals with auxiliary (lookup) tables maintenance and things like that. All needed, but not the "core" of the bussines. Something that needs to be done very quickly to have more time to devote to bussines goals.
From my early programming days, I was told that I should acomplish functionality first and, once done, improve presentation later.
I used to code, still do it, in C language using some third party libraries which let me draw the form (an ascii file), positioning "screen" fields and setting the name of the database field each "screen" is linked to. I can start data entry inmediatelly using an ad-hoc program to "run" the form.
If a database field was referencing a lookup table (foreign key) that libraries showed something like a combobox filled with the values of lookup table. All I had to do is use a "IN " keyword in form code. This "combobox" let me find and select elements in the list, without any further coding. All in character mode. It was developed in Unix systems with dumb terminals. (remember Wyse 60 terminals ?).
Each "screen" field could have some properties : screen field name, database field name, foreign key table, some basic validation rules (not null, <, >, not in (value1, value2, ..., value N), in (value1, value2, ..., valueN), between X and Y. Easy, indeed.
I know, there were no object - relational issues because database was some sort of ISAM db. Now, Java and databases have great features and some complications too, but for many bussines system, it should be a great time saving feature something like this "form editor" and "form interpreter". Something like iReport form data entry forms.
I most java lists there is a recurring question: how to make a simple desktop data entry form, with basic capabilities. I can do one with swing and JDBC, but what if a have to do 20, 30 or 50 of them ?. What about some basic validation ?. I think there is need for a really simple solution, XML free.
"Form Editor" already exists, and is really, really good : Matisse.
I was trying to find the "Form Interpreter" part (or code generator) that make me works faster, without luck. Besides, I don't have the time (neither brain, I guess :-) ) to code it myself. Maybe someone knows something like that. Please give me a link, an idea or a opinion.