ACE (Adaptive Communication Environment), meaning in Chinese is the self-adaptive communication environment. ACE is an excellent C framework for developing network programs. It has a wide range of uses abroad, and some companies in China have developed and communications products. Also use. I have been in contact with ACE for a while, although it is not long, but I still feel that ACE is really a good thing, there is a great help to enrich your knowledge. Although our project is currently developing in C language, you will find "Hey, the original program can be like this" after contacting the ACE. For example, I think that the Reactor framework in Ace is a very thing. When we develop online programs, we often use poll to monitor a variety of online events, but after using this frame, you just need to be related to your business logic, After a specific network event occurs, the framework will call your business logic. In fact, according to this idea, we can use C to implement similar functions. When you finish this, you will find that you have originally written in the C-language process style code that has OO's taste.
ACE is really a good thing, but it is not easy to master, we still need step by step to make this elephant.
Thousands of high-rise buildings, first we still understand the ACE directory structure, from the whole, there is a understanding of ACE, and lay a foundation for further learning.
After unlocking the ACE compressed package, you will find an ACE_WrapPers directory, this directory is also the Home directory, which contains some subdirectory:
ACE: This directory is the most important directory in ACE. It contains all the source code of the ACE, but unfortunately, all the Source files of the ACE and the full pile of head files are in this directory, which may also be a lot of open source software. . In fact, the ACE code can be divided into different directions, for example: Reactor framework and thread framework code can be divided, I think a good code organized a good ACE, which will give you a great benefit. I will give a method of ACE code division in the later article; ACEXML: This directory contains an XML parser implemented by ACE; apps: This directory contains some larger applications implemented with ACE, for example : Jaws, a web server;
ASNMP: ACE-based SNMP implementation; bin: Contains an Perl script that is easy to develop in the case, for example: When developing a DLL on Win32, you need to export the DLL interface; DOCS: ACE Some help documents, where Ace-subsets.html Documentation, there is a great help for our code of ACE;
Examples: Some examples written in ACE, easy to learn and understand Ace; include: is also a more important directory in ACE, which contains compilation rules, compilation rules for compilation on different platforms. Waiting; Netsvcs: Some ACE-based procedures commonly used in distributed systems, such as distributed system log systems, network locks, time synchronization, etc .;
TAO: ACE-based real-time CORBA implementation, TAO is used in a distributed system, and it is also a non-much good resource; Tests: It is used to return to ACE, and provide a good example of learning ACE. ;