Questions and Prospects of C Builderx
Raptor [Mental Studio] http://eental.mentsu.com
(Zi three, outlook, end)
Said that BCBX has so many questions, so I will talk about our prospects.
First, start from the product positioning. Everyone knows that every language has its applicable field, there is no language to eat all the development work, C is the same, although C can be considered in the broadest language in the development field, almost Used in the development of most applications or systems, but in many cases, it is just "can". For example, in the field of enterprise application development, C is not a good choice (although the BCB is basically done), but usually chooses Java or .NET to solve the problem faster.
For the current situation, there are two large aspects of the development field of C , one is system-level application development, such as operating systems, drivers (both applications are more important to use C and compilation, but some can Use C ), compiler, virtual machine, industrial data acquisition, communication, system services, etc .; the other is general application development, mainly referring to non-enterprise applications or non-database applications, such as general GUI applications, tool software, images Treatment, multimedia, etc. (although these applications can also be developed with virtual machine technology such as .NET, in some critical partial requirements, it is still necessary for C and other native development languages).
For these reasons, as BCBX positioned in General C development tools, you should have a place in the C development tools (temporarily do not say that it does not have the wish to revitalize the BC31), it should combine the actual situation of C language, this The application development of the two aspects is unique. .
First, system-level application development. For system-level applications, GUI is usually not important, and it is more focused on performance and commissioning of development tools. That is, the compiler is required to generate highly optimized code, and the target program is stable, providing convenient underlying debugging. Moreover, such software is relatively large, and the requirements for project management are relatively high.
Corresponding to these requirements, future BCBX should strengthen the functions of compiler, debugger and project management. For example, in terms of compiler, BCC5.6, now BCBX, is certainly unable to meet the requirements, although BCBX supports the use of other compilers, but as a complete development tool, not just an IDE, BCBX can't be borland himself translater. However, it is said that Borland is developing a new cross-platform C compiler-BCCX, which is waiting for it; in terms of debugger, this is one of the strengths of Borland, now it has not yet, but can also consider working with other companies or pass Integrated third-party products to achieve; as for project management has always been one of Borland's weaknesses, and for such complex projects, even if it is implemented as VS.NET, this can consider providing a Makefile management tool. Implementation, after all, this is the best Makefile, but its writing maintenance is more troublesome, if you can provide a guide to generate Makefile and a tool that can easily manage makefile, is also quite good.
Let's take a general application development. For this application development, a good GUI development tool is very important, in addition to the compiler, debugger, project management also has a certain requirement. Because end users of such applications are generally general computer users, different from system applications are professional users, so the requirements for interface requirements are usually high, not only to make standard GUI interfaces, often need to be realized. Some fancy interface functions. This puts a higher requirements for GUI Framework: it is not only easy to use, simple, and it is necessary to easily expand. The VCL is a great GUI Framework, but unfortunately, it is not cross-platform, although it comes to Borland has launched a cross-platform CLX, but it uses QT libraries, and QT library License For business applications, it is not free, which limits the application of CLX, especially now Borland has been suspended (maybe stop) Kylix product line, which is tantamount to CLX. Since the VCL and CLX roads are unless, BCBX's only way out is to use a new GUI Framework, and it seems that Borland will choose wxwindows. But this brings a question: Because the BCB's product line has stopped, BCBX must take the BCB user, and how to transition from VCL to wxwindows is a major problem facing BCBX. However, there is a message that Borland has provided a solution, which will use an open GUI DESGNER in the new BCBX, support a variety of GUI Framework, known WXWindows and Javabean, and for non-cross-platform VCLs in new BCBX will be achieved through a thing called "VCL Bridge". In this way, this feature can be relatively perfect in the future BCBX.
Let's see the development of enterprises. Although the current situation, the development technology based on the virtual machine (Java or .Net) has become the mainstream of enterprise application development, and C is not a language suitable for virtual machines (although MS will join .NET , But the situation is not good, but C is suitable for developing virtual machines), whether in terms of development efficiency and product quality, use C to do this, even in product performance, C The advantages that can be achieved are also reduced.
But this market still exists. First, in some cases, enterprise application systems still need to interact with some underlying applications (such as hardware drivers or other native code programs, etc., when using virtual machine-based technology is not convenient (.NET is relatively good) On the other hand, it is possible to meet the requirements in some applications that have more demanding requirements for performance, may not meet the requirements with a virtual machine. This is why the native code application in BEA's Tuxedo has a considerable market reason.
After better implementation of the development requirements of the previous two applications, BCBX is fully able to enter this area. For BCBX such a cross-platform development tool, the middleware technology used must of course be cross-platform. The COM technology supported by Midas / DataNap is certain, but only the EJB developed by Java is certainly not, unique. The rest is CORBA. Although BCBX now provides Visibroker's CORBA application wizard, the function is still too weak relative to Midas / DataSnap. Even with TOGETHER, BCBX is still far from a decent enterprise application development tool. There is also a question is: Although Borland's Visibroker (now there is a Visibroker version of Borland Enterprise Server-BES), it is the first CORBA product ranked first in the global market share, even now it is one, but there are still many Other CORBA products can be selected, such as ORBIX, ORBIX, Open Source, which is now the first Iona, as well as Open Source (only supporting C ). If BCBX cannot accept them in an open gesture, it is still difficult to achieve great achievements in the CORBA. At this point, Borland should have experience, JBuilder is because it can be combined with the BEA's WebLogic to achieve today's victory. Forcing IBM has to give up Visual Age for Java (that is, it becomes Open Source Eclipse), although VAJ is still advantageous than JBuilder, and IBM's WebSphere is not better than WebLogic, however Borland and BEA's strong join hands is too powerful. If JBuilder only holds IAS (Inprise Application Server now BES's predecessor), it is really difficult to have something big in the Java development tools, because in front of WebLogic and WebSphere, IAS is too far away. . So now JBuilder supported EJB Container is more and more, in addition to the previous commercial products, Open Source's JBoss is also supported.
BCBX can learn from this experience of JBuilder, support integration including various CORBA products such as Iona Orbix, ACE / TAO, relatively, this point is much easier than integrated GUI Framework, because the CORBA specification is defined by OMG Standard, the difference between different products is relatively small. So the key to the problem is whether Borland is willing to do this, after all, this may affect the market of Bes. Honestly, Borland has been very failed in the enterprise middleware market. Since the early years, the ENTERA has been acquired by the acquisition OEC, but it is forced to give up because of the rise of COM and CORBA; after the acquisition of Visigenic, after Visibroker, although he is following Netscape The cooperation has achieved certain success, but with Netscape's decline, Visibroker's leading position is also replaced by Iona's Orbix; later starting Java middleware from IAS, and has always been only without WebLogic and WebSphere The market is divided into a little bit. Instead of making BCBX companies have not fallen with BES, it is not as sacrificed as JBuiler, and the success of BCBX, after all, developing tools is true main business.
Of course, light has no support for CORBA, after all, corporate application development is a big problem, and it is still much supported. Although BCBX now has a convenient database access technology, it lacks a system's Framework, a thing similar to Midas / Datasnap. In addition, it is necessary to develop the MDA development of TOGETHER, and must have a data persistence technology similar to ECO. There is also a small support for SOAP / WebService. Although it is not a universal technology as it is boasting like MS, there is still a lot of places to need it. Especially when you need to communicate with other applications, although communication with Java can communicate with the RMI Over IIOP, it is necessary to communicate with .NET applications or other applications, SOAP is still a better solution.
With such a strong enterprise development environment, it is like the "Too Scary" (9cbsid: Comanche) before I recommend ACE / Tao before I: "There is no MS in this world, no sun, which can be very beautiful."
As I said earlier, the current BCBX is a kind of man, however, if the future BCBX really can join these Features, including a perfect IDE, an excellent compiler, a convenient and efficient GUI development environment, And a powerful company developed Framework et al, then BCBX is really like a Powerful C development tool (let me think of Borland's BC31 advertisement ^ _ ^), and the scenery of the BC31 is not impossible.
It was almost finished here, but Borland probably in order to appease the user's dissatisfaction with BCBX, recently launched a BCBX Preview package (downloaded in the Borland website), by installing this package into BCBX, can be roughly learned What is the future version of BCBX looks like. I simply tried, so I have to add some views on this preview.
This preview includes two parts: one is integrated with WXWindow's GUI development environment, and the other is a new C compiler BCCX preview version. The following is a description, respectively:
First come to see this GUI Designer. In the IDE's New Wizard, two pages are added, one of which is WX Framework (another page is preview), there are two items: New WX Framework Project and New WX Framework Form. Create a new WX app with the former, you can see that it generates an XRC file, which is an XML style interface resource file, similar to DFM / XFM. There is a desktop Tab at the bottom of the page, click to open the GUI Designer.
This GUI Designer and the previous BCB's GUI Designer are still very similar, including three parts of the control bar, design area, and Object Inspector. The control bar is also above the page, but the control is much less, with only 18 controls in three pages. Different from the design area and BCB, it is no longer independent Form Design, but is embedded in the page as Visual Studio / Galileo, and the positioning of the control is not used for the previous eight-point box, but a blue thick frame, also No Grid positioning. Object Inspector is also different, first changed on the right side of the page, the same style as JBuilder, of course, the content is even more different, after all, the current Framework is wxwindow instead of VCL. Let's see the BCCX compiler. Also in the iDE's New Wizard, there is a page of PREIVEW, including three projects, in fact, there is no difference between the code generated in the Project page, but the include directory used (Preview has a new include file And start code) and compiler settings are slightly different. In addition, an increase in the compilation option of the IDE: "Borland® C Compiler Preview for Windows (IA-32) Tools". Look at the BCCX command line prompt, its version information is: Borland C Compiler 6.0 Preview. It can be seen that this is a new version of the new version of Borland, which is also a set of INCREMENTAL LINK with it. It is also version 6.0.
I don't know if it is different from the new compiler configuration. I only compiled through a very simple program in the IDE, and I have not successfully compiled wxwindow applications. It seems that it needs to be studied.
Of course, this is just preview, the problem is still. In addition to the compiler of the above compiler, GUI Designer is also a problem, the biggest problem is slower. On my 512M machine, BCBX also accounted for only more than 300 M memory, and did not use physical memory, but the speed of GUI Design was more slow than using JBuilder to do Gui. Many, this is really It is unbearable. Second, one problem is that it does not support Chinese. Inputs in the properties of the control will become garbled, it is estimated that the XRC file uses the UTF-8 encoding to use the UTF-8 encoding (the same problem should have the same problem) without correct processing.
This article has been disconnected for more than a month, and finally I can tell a paragraph. Finally, I have to give Borland's comments: Borland's several products in 2003, the completion is not high, including JBuilderx I am not too understanding, C # Builder, C Builderx and Delphi8 I tried it It is basically not available to the extent of available. I hope this year Borland can learn from the lesson, launch a new version of BCBX.
[Mental Studio] Raptor
2004-1-13 23:45