About the two-generation languages. C/C ++, Java/C #

Source: Internet
Author: User
Don't think this question is sensational, but in the current situation, c/c ++ needs to exit the stage or be changed.
I think in the next one or two years, c/c ++ (whether it is mfc or bcb), one of the criteria for programmer level evaluation, will give way to three programming languages. c # 3.xml on sun's java2.windows Platform
In my opinion, the biggest reason is that the current applications are being transferred from an independent operating system to an internet-based platform.
We used to develop applications that relied on platform function calls. This was true for both mfc and bcb. the increasing popularity of internet programming is the least important thing about calling a platform. For example, to realize B2B e-commerce, we need to integrate different platforms, if I am a programmer, what I care about most is how to implement business logic.
Instead of communication and management between platforms. what we need most urgently is a language that has nothing to do with the call of various platforms. In this language, we only focus on the design of program logic rather than Platform calls. the c/c ++ we are familiar with is not designed for this (hehe cannot blame c/c ++ for knowing the internet in 1970s ). the purpose of c/c ++'s initial design was to design unix to generate a language that is highly efficient and inefficient for development between Assembler and advanced languages. he cares more about the physical structure of the system than any other advanced language, for example, the pointer that has always been a half of the reputation. the reason why the pointer is powerful is that it involves the management of the system's physical memory. he can make the programmer and the system a translucent state. however, this translucent state makes the pointer more unstable.
C/c ++ has no advantage in Internet-oriented programming. cross-platform E-commerce software is most afraid of taking into account the daily differences between various platforms for system calls, and is most afraid of crash due to memory leakage from time to time. the advantage of c/c ++ has become a disadvantage. even if you develop a solution based on windows dna on windows
The most commonly used dcom is vb rather than vc's atl dcom, because c/c ++ is efficient but easy to use.
An error occurs. If you release the memory nt accidentally, the resource will soon be insufficient.
Java is the first to see this situation. He uses jvm to implement platform-independent memory collection to ensure stability and robustness. however, many c/c ++ programmers complain that java is too slow. indeed, even when it reaches java2 speed, it is still a big problem. I used to be a strong supporter of c/c ++. I have been involved in many forums with java programmers. but I gradually realized that the speed problem of java is often a small flaw in the face of internet platforms rather than specific operating systems. we can imagine that an e-commerce website will use the pc on hand as the server. They are not sun

Chinke Technology Information Co., Ltd. Information Monitoring System reminds you: Sorry, because the content you submit or access contains keywords not allowed by the system or your IP address is restricted by access, this operation is invalid. The system has recorded your IP address and all data you have submitted. Please note that do not submit any content in violation of national regulations! The interception information is Taiwan independence.


Platform-independent (ms is really poisonous, and all languages are platform-independent. What advantages does java have? It is said that ms is developing asp + based on pascal smaltalk ).
Xml many people may think that languages similar to html and c/c ++, java, and c # are completely different from other languages. actually not. we know that both c # and java implement platform independence through unified ground computing. therefore, we must pay a price for performance. however, xml can be called between different languages. for example, one network uses java to implement one shipment function, and the other website uses dcom to implement one import function. if this website needs to implement B2B, the general method is to write the Conversion Program between them. xml uses markup language to describe their excuses. both ends call each other by parsing xml text, without any intermediate Conversion Program
Communication between bean and dcom can be realized as long as an xml text (to clarify the mechanism, we need a lot of xml concepts. If you are interested, please go to msdn.microsoft.com/xml?www.s3c.orgto see ). currently. net, the core technology of soap is xml-based Remote Process calling.
I have introduced so many things that may be difficult to understand. In fact, what I want to say most is that programmers in the 21st century should come out of the traditional methods for operating systems, learn a little about the technology and concept of programming for the Internet platform. do not argue about the fearless c/c ++ tools. I don't think bcb or mfc will be eliminated in a year or two,
At that time, we should argue whether bcb is better or mfc is better, but c # is better or java is better. as for xml, No matter sun or ms, any big IT company in the world, including Intel and hp, is struggling to study the technology. If they do not learn IT, they may be eliminated. as for c/c ++, it may fall into the current Assembly position, which can be seen in some sensitive aspects of system performance.
If you are a beginner in programming languages, I suggest learning java and paying attention to c #. First of all, they are simpler than c/c ++ and have no complicated macros or pointers, touch version and so on. moreover, it is completely object-oriented, and is much easier to learn than the object-oriented method of c/c ++. (I recommend that you study java now. After all, c # has not yet been released, and the newly released beta version of the compiler requires a high level of fear. Do not run the win2000 adv server without MB of memory. speaking of this, c # is the same as java. There is no big difference. I have learned how to use c # In the future)
For programmers in windows, the value of learning mfc is still a little bit, but not too great. at least be familiar with the internal mechanism of windows. however, I recommend that you pay attention to c #. In the future, windows.net will be based on c # Instead of mfc. moreover, c # is much simpler than mfc to implement the same windows desktop application c #. the development speed is two to three times faster than that of mfc and the performance loss is almost invisible. in visual studio 7.0, vc will be a secondary development tool. The most important development tools are c # And vb7.0. as for borland, I think it is impossible not to follow ms. At least on windows platforms. Maybe next year. there is a c # builder that serves as borland's main product rather than c ++ builder. speaking of a joke, wenny may soon turn it into www. c # help.net

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.