Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

C++ Secure Coding Standard

"OOP00-CPP. Declare data members private"

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0638a3c42cd0d558-33cc1792-49174b48-8b3fb270-afba17bbbe795938c6f420d9"><ac:plain-text-body><![CDATA[

[[SCG 2007

AA. Bibliography#SCG 07]]

Guideline 3-2: "Define wrapper methods around modifiable internal state"

]]></ac:plain-text-body></ac:structured-macro>

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="06d02770a47f8281-964da66f-45824883-aa99a148-2663801611956d55aafa823a"><ac:plain-text-body><![CDATA[

[[Bloch 2008

AA. Bibliography#Bloch 08]]

Items 13: Minimize the accessibility of classes and members; 14: In public classes, use accessor methods, not public fields

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="a4016e1f0484cadb-f9e1214d-42b94925-a047a1a2-aac4ebb1d19d813685b3366d"><ac:plain-text-body><![CDATA[

[[JLS 2005

AA. Bibliography#JLS 05]]

[§6.6 "Access Control"

http://java.sun.com/docs/books/jls/third_edition/html/names.html#6.6]

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="875e7e28e3a0c13e-c778fd10-47bb4e3d-b8f2978f-af12f375098fcd65441a9024"><ac:plain-text-body><![CDATA[

[[Long 2005

AA. Bibliography#Long 05]]

§2.2, Public Fields

]]></ac:plain-text-body></ac:structured-macro>

...

OBJ00-J. Limit extensibility of classes and methods with invariants to trusted subclasses only      04. Object Orientation (OBJ)      OBJ02OBJ03-J. Never confuse immutability of a reference with that of the referenced object