Academic visual programming refers to programming using graphical symbols rather than text encoding. Visualization programming has not been adopted in the industry for two reasons.
- Most visual languages are more difficult to understand than text encoding than the general expectation that "a picture is more than a thousand words." The picture is easier to understand than the text because it is more specific. However, graphical symbols in visual languages are highly abstract and more difficult to capture than laymen.
- If there is no software library as rich as the industry language, such as Java, JavaScript, .Net Framework, etc., visual language can only have academic value.
On the other hand, text coding IDE has evolved into a rich graphical user interface. Therefore, Microsoft claims that their computer language is "visual language": Visual Basic, Visual C# and so on. Visual language researchers say these languages are not visual languages because they are text coding languages.
An alternative to "visual" and "text" is "no code programming." It does not use text encoding, but it is not a strict language. It tries to visualize the text encoding. Usually it is based on object programming and attempts to visualize various aspects of object creation and object linking. Several systems are moving in this direction. Some of them still use some text encoding.
Some "codeless programming" are domain-specific and very successful because they have powerful software libraries in specific domains and because of their specific visualization in a particular domain, for example, LabView for electronic device design. For general purpose programming, most "codeless" systems still lack a rich software library.
A promising "no code" approach is visual component programming. It visualizes existing industrial computer languages through visual event processing and visual object development. For Windows standard applications, it visualizes .Net Framework object creation and event handling. The complete .Net Framework library from Microsoft or any software developer and company is the native building block for this programming approach. The programming result of this programming method is also the native .Net Framework object, which can be directly used by other computer languages that support the .Net Framework.
This approach is feasible because most modern computer languages are component-based. A programming entity is a component. Components are defined by properties, methods, and events. The role of textual language is far less important than procedural non-component programming. In component-based programming, the text language acts as an adhesive to link components together to form new software, or as nails and rivets that link building blocks together.
It also uses Lego bricks to form structures. But the LEGO structure does not require glue, nails and rivets. This is because each LEGO brick is made of pins and sockets and interlocks with other LEGO bricks.
Modern software components are also made of pins and sockets to interlock with other components because components can be interlocked together by event processing. Event processing is a step forward in object-oriented programming. If you can use an object for this event processing, you don't need a text language to glue the components together. This is the idea of implementing codeless programming through visual component programming.
Because "objects" are easier to understand than textual languages, it is easier to understand by visually creating objects for programming and visually handling events than textual computer languages. If you can visualize component-based industry strength languages [such as Microsoft .Net Framework libraries, PHP, JavaScript, etc.], this approach will enjoy the vast and growing library of software available. Therefore, this programming method is both easy to use and has powerful features for handling business needs. There are some sample projects that use 3D libraries, some use sample projects with generic types, and web applications that use PHP for web server processing.
Orignal From: Visual and codeless programming
No comments:
Post a Comment