- **Comment**:

This is a 4.6 ticket for continue code re-factoring of the AMF service for 4.6. 
The work started with #94 in 4.4 and continued in #713. 
This ticket is to continue the work started in #94 and #713 to get a more 
maintainable and understandable code base. We should aim for many small changes 
instead of few big ones. 
An ordered list of things to work on:
- Use bool which is a native type in C++ (and remove SaBoolT)
- Reduce number of casts in the code (introduced because of C++ files)
- Use stl::maps (instead of patricia trees)
- Use stl::vector/list (instead of legacy/home made lists)
- Use STL instead of own data structures
- Remove use of EDU and do direct encode/decode
- Convert model derived C structs to classes and change functions into methods
- Change macros to (inline) methods
- Change bit fields (flags) to boolean attributes (see 
https://sourceforge.net/p/opensaf/tickets/717/#d4b2)
- Use references instead of pointers
- Introduce two builds, debug and product, e.g debug build can be used for 
various support during development, e.g. defensive programming , additional 
compiler options, e.g. -Weffc++ , etc.
- Improve cyclomatic complexity (McCabe) numbers.
- Use design patterns where appropriate.
- Clean run of google's cpplint on the code base
- Use UML, (which tool?) to document parts of the design,  sequence diagrams, 
state charts, etc.
- Investigations that can be done:
   * Introduce unit-test when  refactoring code into units.
   * Investigate if pointers in data structure can be changed to a class 
(owns/uses relationships) that maintains referential integrity in the internal 
data structures.
Non C++ related changes:
- split up long functions into smaller ones doing one things and not many
- use const as much as possible
- ...



---

** [tickets:#1142] AMF refactoring for 4.6**

**Status:** unassigned
**Milestone:** 4.6.FC
**Created:** Tue Sep 30, 2014 07:45 AM UTC by Hans Feldt
**Last Updated:** Tue Sep 30, 2014 07:45 AM UTC
**Owner:** nobody

This is a 4.6 ticket for continued code re-factoring of the AMF service for 
4.6. The work started with #94 in 4.4, continued with #713 in 4.5.

Tasks:
tbd


---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to