Страница: 1 | 2 |
Вопрос: Как насчёт стандарта обявления переменных?
Добавлено: 19.06.10 14:20
Автор вопроса: Филюс | Web-сайт:
В VB 6 есть очень полезная штука, помогающая избегать лишних объвлений. Предлагаю договориться в назначении определённых буковок для самых часто используемых типов. Примерно так:
DefBool B: DefByte C: DefDbl D: DefLng I: DefLng J: DefLng K
DefLng N: DefStr S: DefDate T: DefInt W
Ответы
Всего ответов: 24
Номер ответа: 1
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #1
Добавлено: 19.06.10 15:31
http://www.google.ru/search?hl=ru&newwindow=1&client=opera&hs=Xtw&rls=ru&q=%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5+%D0%BF%D0%BE+%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8E+%D0%BA%D0%BE%D0%B4%D0%B0&aq=f&aqi=&aql=&oq=&gs_rfai=
По ходу ты решил сделать свой "+1", смекаешь?
Номер ответа: 2
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #2
Добавлено: 19.06.10 16:11
Предлагаю договориться вверху каждого модуля писать Option Explicit таки)
Номер ответа: 3
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #3
Добавлено: 19.06.10 16:57
Бо( C# негодуэ
Номер ответа: 4
Автор ответа:
Филюс
ICQ: 7116156
Вопросов: 3
Ответов: 14
Web-сайт:
Профиль | | #4
Добавлено: 19.06.10 18:12
Существуют рекомендации для префиксов, но в них обычно указывают использовать несколько букв (например, dt для типа Date) или букву l для типа Long (l слишком похожа на 1, поэтому её использование нежелательно), а есть и такая рекомендация, в которой написано использовать d как для типа Double, так и для Date. В def же можно указывать только одну букву и, естественно, разную для каждого типа.
Номер ответа: 5
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #5
Добавлено: 19.06.10 18:38
Нельзя начинать переменные с цифр, так что l - однозначно эль.
Нет такого понятия как лишние объявления переменных. Зато есть правило называть переменны так, чтобы это отражало их суть, а одна буква явно этого не сделает. И есть дурная практика вообще не объявлять ничего, не представляю как можно при этом написать большую программу.
Номер ответа: 6
Автор ответа:
Филюс
ICQ: 7116156
Вопросов: 3
Ответов: 14
Web-сайт:
Профиль | | #6
Добавлено: 19.06.10 18:44
Ну вот поймите, что тут написано:
l = l1
l2 = 1 + l3 - l4
Человек - существо разумное, и по одной букве всё поймёт. К тому же в def нельзя (!) использовать несколько букв, да и краткость - сестра таланта.
Номер ответа: 7
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #7
Добавлено: 19.06.10 19:58
Макконнелла на вас нет...
Номер ответа: 8
Автор ответа:
Филюс
ICQ: 7116156
Вопросов: 3
Ответов: 14
Web-сайт:
Профиль | | #8
Добавлено: 19.06.10 21:08
Мда... Маконелл советует вместо цифр в именах переменных использовать массивы...
А между прочим, обращение к элементу массива в VB 6 как минимум в 1,5 раза дольше, чем к обычной переменной. К тому же массив займёт дополнительные 24 байта. А если обращение к переменной идёт в цикле, то задержка умножается на число повторов. Вообщем, должно быть понятно что для нескольких переменных надо использовать именно цифры, а не массив.
Но пишет и что надо избегать использования похожих символов: 1 и I, 1 и l, O и 0, S и 5, G и 6. С этим вот абсолютно согласен. Из них самые трудно различимые: l и 1, 0 и О. Так что врядли стоит l в качестве префикса использовать. Кстати, вместо неё, насколько замечал, больше всего n пишут и по-моему правильно делают.
Номер ответа: 9
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #9
Добавлено: 19.06.10 21:58
Массивы используют там где надо использовать массивы) Типа, если нужно получить нормально распределенную случайную величину объемом 1000 штук, то явно нужен массив. Если же нужно хранить опции программы, то стоит использовать отдельные переменные названия которых хоть отдаленно напоминают о том, что собой представляет хранимая величина. Думаю всё так, а не иначе.
Номер ответа: 10
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #10
Добавлено: 19.06.10 22:00
Не, ну если делать наоборот, то это однозначно будет доставлять, смекаешь?
Номер ответа: 11
Автор ответа:
Филюс
ICQ: 7116156
Вопросов: 3
Ответов: 14
Web-сайт:
Профиль | | #11
Добавлено: 19.06.10 22:40
Мне будет доставлять когда в сообщениях VBDUNit станет чуть побольше смысла.
По делу предложений не будет? Какие сами префиксы используете?
Номер ответа: 12
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #12
Добавлено: 19.06.10 22:53
иногда добавляю префиксы к контролам frm sld cmd, переменные как придется, но объявляю все обязательно
Номер ответа: 13
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #13
Добавлено: 20.06.10 00:07
а я не парюсь с названиями переменных.. как есть так и пишу.. вот только с java привычка осталась - начало переменной всегда с маленькой буквы писать...
Номер ответа: 14
Автор ответа:
UnDeAdZak
Вопросов: 80
Ответов: 476
Профиль | | #14
Добавлено: 20.06.10 02:44
))) Вы бы видели как я обьявляю переменные У меня всё в кучу и буквенные обозначения и слова, притом русские слова пишу английскими буквами и очень редко смысл слова совпадает с тем, для чего нужна переменная.У меня в одной программе может быть , для примера:
Хотя часть из них и несёт какуюто информацию, но вот с остальными...
Номер ответа: 15
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #15
Добавлено: 20.06.10 04:20
DefLng etc это тяжкое наследие фортрана.
Венгерская нотация это говно.