Венгерская нотация почему так называется?
Потому что венгр придумал?
Может быть. А почему именно он ее придумал? Потому что еблан?
Нет.
Потому что венгерский язык - один из самых сложных в европе. Слова у них часто бывают труднопроизносимыми.
Вот чтобы все мучались так же, как он сам, он эту падлу и выдумал.
Кто не верит - произнесите в разговоре m_lpczstrThisString. Сразу поймете.
2004-04-07 22:48:02
> сущТы глагДумаешь местЧто нарТак прилУдобнее глагЧитать?
йохир, "Ты" - это местоимение, "Что" - союз кажется, а не местоимение, "удобнее" - наречие. ты не ошибся только в глаголах :) вобщем, ТАКАЯ венгерская нотация точно никому не нужна. я понял - ты по жизни пишешь неправильные типы данных в префиксах, отсюда все твое недовольство :D пиши как тебе нравится и не епи мозк.
вообще есть такая мысль. если писать маленькие функции - по полэкрана макс., и не использовать глобальных переменных, (т.е. следовать заветам правильного программизма) то венгерская нотация не нужна.
йохир, "Ты" - это местоимение, "Что" - союз кажется, а не местоимение, "удобнее" - наречие. ты не ошибся только в глаголах :) вобщем, ТАКАЯ венгерская нотация точно никому не нужна. я понял - ты по жизни пишешь неправильные типы данных в префиксах, отсюда все твое недовольство :D пиши как тебе нравится и не епи мозк.
вообще есть такая мысль. если писать маленькие функции - по полэкрана макс., и не использовать глобальных переменных, (т.е. следовать заветам правильного программизма) то венгерская нотация не нужна.
2004-04-07 22:49:01
и мля! сделайте наконец приличное форматирование!!! а то спорят тут о высоких материях панимашь :D
2004-04-08 10:42:31
йохир, ты спроси мегася про баг в опенссл, когда они переменные i & j перепутали и в итоге кастомные экстеншены не работали
основная мысля то в чем - чтоб когда ты через ЭН лет читал свой код или кто-то другой это делал прям щас, не возникало трудностей в его понимании
а правильные имена аттрибутов/методов/аргументов/переменных этому как раз и способствуют
основная мысля то в чем - чтоб когда ты через ЭН лет читал свой код или кто-то другой это делал прям щас, не возникало трудностей в его понимании
а правильные имена аттрибутов/методов/аргументов/переменных этому как раз и способствуют
2004-04-08 11:18:35
2makz
йохир, ты спроси мегася про баг в опенссл, когда они переменные i & j перепутали... - это не аргумент ;)
если бы они назвали pos, size или l_nPos, l_nSize никакой разницы бы не было ;)
йохир, ты спроси мегася про баг в опенссл, когда они переменные i & j перепутали... - это не аргумент ;)
если бы они назвали pos, size или l_nPos, l_nSize никакой разницы бы не было ;)
2004-04-08 11:22:00
всем фтыкать: http://msdn.microsoft.com/library/def.. ..ary/en-us/dnvsgen/html/HungaNotat.asp
=====================================
A note from Dr. GUI: Long, long ago in the early days of DOS, Microsoft's Chief Architect Dr. Charles Simonyi introduced an identifier naming convention that adds a prefix to the identifier name to indicate the functional type of the identifier.
This system became widely used inside Microsoft. It came to be known as "Hungarian notation" because the prefixes make the variable names look a bit as though they're written in some non-English language and because Simonyi is originally from Hungary.
2 MakZ
да макс. если бы они назвали их l_nI и l_nJ то у них было бы все зашибись.
=====================================
A note from Dr. GUI: Long, long ago in the early days of DOS, Microsoft's Chief Architect Dr. Charles Simonyi introduced an identifier naming convention that adds a prefix to the identifier name to indicate the functional type of the identifier.
This system became widely used inside Microsoft. It came to be known as "Hungarian notation" because the prefixes make the variable names look a bit as though they're written in some non-English language and because Simonyi is originally from Hungary.
2 MakZ
да макс. если бы они назвали их l_nI и l_nJ то у них было бы все зашибись.
2004-04-08 12:00:54
ихор, я не говорю, что "l_nI и l_nJ" их бы спасло
я говорю про то, чтобы "не возникало трудностей" в понимании кода
кому-то для этого достаточно написать i,j
кому-то pos, len
кому-то nPos, nLength
пример с опенссл я привел как раз к тому, что 1-й способ больше способствует ошибкам чем второй просто за счет того, что во втором содержится больше инфы
следовательно т.к. в 3-ем способе есть еще дополнительная информация, то наверняка найдутся ситуации, в которых второй способ поспособствует ошибке, а 3-й нет.
точка
я говорю про то, чтобы "не возникало трудностей" в понимании кода
кому-то для этого достаточно написать i,j
кому-то pos, len
кому-то nPos, nLength
пример с опенссл я привел как раз к тому, что 1-й способ больше способствует ошибкам чем второй просто за счет того, что во втором содержится больше инфы
следовательно т.к. в 3-ем способе есть еще дополнительная информация, то наверняка найдутся ситуации, в которых второй способ поспособствует ошибке, а 3-й нет.
точка
2004-04-08 12:10:06
Ошибки типов в C++ отловятся на уровне компиляции. То же самое в C# или Java, в языках типа C, ASM, VB, PHP префиксы может быть и обоснованы, потому как другого способа отследить тип нет. Но имхо опять же значимая часть имени важнее, а значит должна идти раньше, следовательно не для типов не префиксы, а постфиксы нужны.
Да... кстати вот
http://dump.iof.ru/people/exor/golub/ccpp_02/html/index.html
Да... кстати вот
http://dump.iof.ru/people/exor/golub/ccpp_02/html/index.html
2004-04-08 13:57:53
кстати, йохир, еще на тему "сущТы глагДумаешь местЧто нарТак прилУдобнее глагЧитать?". в дискуссии на RSDN, которую ты привел, кто то справедливо заметил что в русском языке есть окончания, помогающие опрделять тип слова, а английском, например, таких окончаний нет - хрен ты поймешь, существительное там или глагол.
2004-04-08 14:34:11
do - сущ. ДО (нота)
get - приплод, потомство
set - комплект, набор, цикл, серия, телевизор :) и т.д.
и только с "is" ты прав %))
get - приплод, потомство
set - комплект, набор, цикл, серия, телевизор :) и т.д.
и только с "is" ты прав %))
2004-04-08 14:39:00
я думаю, если бы ты писал музыкальную программку, то DO явно для тебя был бы не только глаголом
если бы писал для фермеров учет животных, то get тоже был бы не только глаголом
про set ты наверно пошутил - RTFM std::set ;)
если бы писал для фермеров учет животных, то get тоже был бы не только глаголом
про set ты наверно пошутил - RTFM std::set ;)
2004-04-08 14:42:26
просто у тебя может тоже оказаться переменная с именем m и это никак не будет конфликтовать с методами m_smth()
2004-04-08 14:44:29
я знаю что когда использовать, не волнуйся
только когда делаешь какие-нибудь категоричные утверждения - сверься с чем-нибудь (Lingvo;) чтобы не выглядеть смешно ;)
только когда делаешь какие-нибудь категоричные утверждения - сверься с чем-нибудь (Lingvo;) чтобы не выглядеть смешно ;)
2004-04-08 14:45:52
ах прости я забыл сказать afair ;-). и еще подписать что автор этого поста не претендует на то, чтобы быть истиной в последней инстанции. :-).
[0][1][2]