-
Notifications
You must be signed in to change notification settings - Fork 46
DeveloperTips
Raul Metsma edited this page Sep 30, 2021
·
11 revisions
- Store openssl objects std::shared_ptr. Shared pointer keeps reference count and when coping objects the shared_ptr's inside both objects will be referring to the same underlying object. Also C++11 handles move operators.
- Avoid third party library includes (openssl, xerces-c...) in headers, especially public headers. Use forward declaration when needed. It also speeds up build and do not require third party developers adjust include paths.
- Keep public headers clean, even from documentation. It is easier to read and helps IDE-s with code completion. Write doxygen documentation in source files.
- Do not break ABI/API when absolutely needed. Public symbols are marked with "DIGIDOCPP_EXPORT". ToDo add tests (https://github.com/lvc/abi-compliance-checker). See https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B.
Official builds are provided through official distribution point id.ee. If you want support, you need to be using official builds. Contact for assistance by email www.id.ee .
Source code is provided on "as is" terms with no warranty (see license for more information). Do not file Github issues with generic support requests.