Suggestion for a mixed camelCase & PascalCase notation
D-Sturbed
someone at somewhere.fr
Sat Jun 1 13:42:46 PDT 2013
On Saturday, 1 June 2013 at 20:34:42 UTC, D-Sturbed wrote:
> On Saturday, 1 June 2013 at 20:18:53 UTC, Nick Sabalausky wrote:
>> On Sat, 01 Jun 2013 21:58:27 +0200
>> "D-Sturbed" <someone at somewhere.fr> wrote:
>>
>>> Hello, I know that everybody will hate that, as most of the
>>> people coming to D are also coming from the C world, but,
>>> anyway I suggest this data naming convention:
>>>
>>> class cMyClass
>>> struct sMyStruct
>>> template tMyTmp
>>> parameter aParam ( + exception: someParams to denote arrays)
>>> local lVolatileStuff (local: ESP/RSP stuffs)
>>> interface iContextualMethods
>>> pointer pMyClass
>>> field fMyField
>>> enum eMyEnum (as type only: private eMyEnum fMyEnum)
>>> delegate dMyPrototype
>>>
>>> stream Str (aStr,lStr,...)
>>> void* Ptr (aPtr,lPtr,...)
>>> data Dt (aDt,lDt,...)
>>>
>>> camelcase with technical identifier as first letter.
>>> a-f-l being mandatory to avoid name conflicts in the
>>> implementation,
>>> as in a method you'll usually have parameters, fields and
>>> local data.
>>>
>>> advantages:
>>> - code completion: you can target what you want, usefull when
>>> you are not an expert of an API/SDK: you basically know its
>>> an enum, you don't remember the name, you type "e", you
>>> scroll a bit, you have it.
>>> - D compliance: this respects the camelcase convention with a
>>> little touch of the pascal naming conv.
>>> - it avoid confusion in the implementation: you can have a
>>> aStuff(param) temporarly copied to a lStuff(local data) in
>>> order to set a fStuff(protected/private field)...
>>>
>>> disadvantages/problems:
>>> - template classes: leads to some declarations such as
>>> cTemplatizedClass!int, while we would expect tSomething
>>> before a "!". "ct" (standing for ClassTemplate) can be used
>>> in this case.
>>> - the small case "l" is know for leading to some confusion
>>> with "1" with some particular fonts.
>>>
>>> Give me your mind `bout this
>>> D-Sturbed.
>>
>> That's basically a variation of hungarian notation, which has
>> been
>> mostly disappearing for good reasons: While it's hugely useful
>> under
>> weak-typing, weak-typing has (outside of asm) been going away
>> (also
>> for good reasons). Under strong typing (and under modern
>> editors - let
>> alone fancy IDEs) hungarian notation (and its variations)
>> provides
>> little to no benefit and creates programmer overhead.
>
> And your answer can be seen as an overhead from a douche, I
> guess ;)
Sorry...
More information about the Digitalmars-d
mailing list