Coding standards : member variables

Coding standards zijn, naar het lijkt, redelijk hot momenteel. Komt waarschijnlijk vooral omdat we naast C++ en VB nu ook C# hebben. Over Java hebben we het hier niet. In ieder geval niet in positieve zin! 😉


Anyway, ik las zojuist een stukje op Omar Shahine’s weblog, waar hij het heeft over member variables. Vroeger noemden we dat globale variabelen, tegenwoordig moet je ze via properties bekend maken! 😉 Hij noemt de volgende mogelijkheden.




  • _memberVariable
  • m_MemberVariable
  • m_memberVariable
  • this.memberVariable


  • Da’s wel grappig, want uiteraard hebben we hier bij Cap Gemini Capgemini* nóg een andere methode, namelijk mMemberVariable.
    Persoonlijk geef ik de voorkeur aan _memberVariable. Dan blijf je vasthouden aan je camelCasing en is het overal meteen duidelijk dat het om een private member gaat.


    p.s. Cap Gemini Ernst & Young krijgt een nieuwe naam. Ernst & Young wordt om (voor mij) onbekende redenen weggelaten en Capgemini aan elkaar, met kleine g. Hebben wij nog niets te klagen. CMG in LogicaCMG is met drie hoofdletters geschreven! 😉

    You may also like...

    8 Responses

    1. Jan says:

      Ik zie ook graag _memberVariable omdat dit zowel in C# als VB.NET gebruikt kan worden.

    2. Hahahaha, inderdaad… want size voor member en Size voor property werkt niet in VB.NET! 🙂

      Eerst moet je wennen aan case sensitive coden, maar daarna heerst het wel hoor! 🙂

    3. Jan says:

      Yep! In de guidelines van ons bedrijf staat dat je case sensitive code moet vermijden. Ik dacht ook dat het boek "Code Complete" dit heeft afgeraden.

      De pret begint pas echt als je bijv. in C# case sensitive stuff gebruikt in je publieke interface, en je moet deze component vanuit VB.NET gebruiken…

    4. "ons bedrijf" ???

      Jij werkt toch bij hetzelfde bedrijf als ik? Ik kan me die coding standards niet herinneren! 🙂

      Maar

      string _myNumber;

      public Number

      {

      get { return _myNumber; }

      }

      is de juiste manier! De enige.

    5. Jan says:

      Ik denk niet dat ik in ‘t zelfde bedrijf als jouw werk hoor! 😛

      Btw, ik heb toch een opmerking over je laatste code voorbeeld. Ik zou _myNumber nooit in een string steken, eerder een int of zoiets… 🙂 LOL

      cu

      Jan

    6. Niet als dat nummer 3 voorloop nullen kan hebben! 😉

    7. Foei Dennis. Het prefixen van member fields is al sinds de introductie van C# afgeschaft. Kijk maar naar de Microsoft Design Guidelines.

    8. Dennis van der Stelt says:

      @Dennis : Dit artikel komt uit 2004!!! Hoewel ik het er nog steeds mee eens ben en gewoon blijf volhouden! 🙂

      Sinds C# 2.0 heeft Microsoft die _ weggelaten, want daarvoor deden ze het juist wel.

    Click on a tab to select how you'd like to leave your comment

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.