C++ Network Programming, Volume I: Mastering Complexity with ACE and Patterns
I l @ ve RuBoard |
We're focusing our future efforts on ACE as follows : Improved documentation. ACE's lack of comprehensive and easy-to-use documentation has impeded its mainstream success somewhat. A large, multifaceted effort to remedy this problem is underway and will continue to be a focus in the future. In 2000, Carlos O'Ryan and Darrell Brunsch spearheaded an effort at UCI to convert ACE's reference material generation to Doxygen [Dim01]. Doxygen provides better expression of ACE's usage and the resulting reference material is much easier to use. The improved reference material and the upcoming publication of The ACE Programmer's Guide [HJS] and C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks [SH] will help many more C++ developers make the most of ACE's power and flexibility. New and updated platforms. We will continue to improve and extend ACE to support new releases of its existing operating systems. New platforms will be explored, driven primarily by interest and demand from the ACE user community and Riverace customers. ACE's C++ feature usage will also expand. ACE works with most C++ compilers, some from the days of Cfront. As time goes on and more compilers adhere to the C++ standard, ACE's "window of compiler support" will slide, instead of being enlarged. This evolution will allow ACE to leverage modern C++ standard features, such as native exceptions, partial template specialization, template member functions, and the Standard C++ Library. Increased robustness. ACE has an extensive set of regression tests that run on dozens of platforms continuously each day. These tests automatically detect compilation errors, configuration errors, run-time errors, and memory errors. At any point in time, you can keep track of the status of ACE by examining the output of these regression tests at http://ace.ece.uci.edu/scoreboard/. Since ACE is a large piece of software, we'll keep expanding its regression testing capabilities to ensure that its quality and robustness continue to improve. Reduced memory footprint. The core ACE library's size ranges from 700KB to 1.5MB on common OS platforms, and is significantly larger when built with full debugging information. In some environments, particularly memory-constrained embedded systems [NW01], the memory footprint of ACE can be a hindrance. We have therefore embarked on an effort that enables subsets of ACE to be built so applications only incur the memory overhead for parts they need, without incurring overhead for parts they don't. For more information on the ACE subsetting effort see $ACE_ROOT/docs/ACE-subsets.html in the ACE software release. Let us know if you're interested in getting involved in these projects! |
I l @ ve RuBoard |