VCL is dead, Rad is dead
-- Topic that is not fully spoken in sd2c
In this year's sd2c, I hurried back, because there was something urgent to deal with, so I didn't have time to attend the course on the third day. And
In the same way, my topic was also in a hurry and there were many unclear points. One of them is the two
Assertions: "VCL is dead, Rad is dead ".
So I will re-post this time!
I. Transition from UI to system complexity
-----
How to construct the UI? On Windows and Linux and Mac platforms in the same period, the deconstruct of the UI is WIMP (Windows, icons, menu,
Point ). This abstraction was quite rational and once brought about the prosperity of the GUI. However, the interface technology is essentially
In the hands of platform technology vendors, such as the provision of MFC for Windows, you can only build a GUI on the basis of this MFC
Application. Therefore, Delphi's early success was to turn MFC into a more convenient programming form to replace it, although it is essentially still
It is the UI under the MFC framework, but it is more convenient than the latter, so we can talk about it with rad (Quick Application Development.
In the same way, Java has developed its own platform to isolate the virtual platform from the operating system platform. Therefore, there are
Swing, jface, and so on. application providers are also developing based on such platforms.
Under the grid system.
Now let's look at a software product, which is written in Delphi, Vc, Java, or in Linux.
Based on a GUI package, it is often seen from the interface at a Glance-because they are actually on different platforms
Wimp implementation. However, from the perspective of web, there is no such tendency to homogeneity. The web is brilliant, and different websites have different
Different features. Without the basic appearance of the so-called "software products", no one seems willing to admit that "web site" is
"Software products ".
However, by carefully analyzing the Web UI, you will find that its essential structure is "block + layer + link ". "Block + layer" is the performance Base
Quality, which is exactly the same as Photoshop and other plotting tools. Therefore, HTML can be used as long as it can be drawn using Photoshop.
As a result, the two can basically be converted in the same way-because they are essentially the same. Similarly, "Link" is used
The essence of user UI interaction is also the essence of WWW. Mac allows the mouse to have only one key, which is essentially the same. Use
User behavior, you only need to click a location to trigger, without the ambiguity of the location. If you need another behavior,
Change the location (for example, button). This is the meaning of "simplified UI" or "humanized UI.
Therefore, in fact, the success of the web is more humane than the traditional wimp UI, and more oriented to designers (such as PS
Master) has a direct relationship. On the other hand, the emergence of rad is closely related to wimp, Which is abstracted by wimp.
Interface "Basic Elements of componentization ".
The revolution in the UI has brought about the most direct problem: using the idea of wimp, Web UI cannot be developed. The most obvious example is Delphi.
. In fact, this includes the decline of virsul C/C ++. The two are the same: the original "visual programming"
The advantage has become a disadvantage.
Why?
What is "visual programming "? Delphi/VC/Pb/VF... you can drag a component to the window
And then configure properties, add behavior, and process logic.CodeAnd then "run ". Everything is OK. This is "Visualization ".
"," Fast (RAD) "programming. However, pay attention to the fact that this process requires a"ProgramComplete Parameter
And: the interface design tool and the code development tool are in the same environment and cannot be separated.
Therefore, in the era of rad, our UI designers must accommodate software developers. The UI Designer designed the interface and then
The developer said: Absurd! This interface cannot be done with Delphi! Then everything is pushed back. Client Software
Product development is a battle between design and developers. In addition, developers often win.
Developers do not have interfaces. The real interface requires a considerable level of graphic program development skills, so those who have such
People with good skills start to make components, such as very beautiful skin-changing controls. This -- looks pretty, but still not the interface design
The UI in your understanding.
The surface problem exposed from this is that it is best for developers to use Superman. The best programmer in Rad development is excellent
All of you. Whether it's networks, databases, graphics, operating systems, or everything, you 'd better understand it and have expertise.
In this way, you can get it done by using a module. It's because rad is not fast enough. It's a tool.
Not good enough, or you are not super enough.
However, our system is becoming more and more complex and is no longer a "One Person" task.
Next section -- >>>