Стиль программирования
Хотелось бы узнать кто какого стиля придерживается и почему? А так же какие шаблоны ипользуете? И у кого какие "Ага!" моменты сохранились в памяти?
|
Один из "Ага!" моментов произошел тогда, когда я понял что наилучших результатов в JavaScript можно достичь если не пытаться копировать методы написания кода не присущие JS , а использовать особенности языка выгодно отличающие его от других (литералы объектов ,функций, массивов; динамическая типизация; функции-данные, замыкания, прототипы и т.д.). Для повтрного использования кода использовать копирование и смешивание объектов, "применять" функции, отказаться от классического наследования.
Именование. Для имен функций camel case: thisIsFunction(); Для имен модулей и классов: Module.some_prop; new SomeMagicClass(); Для данных: some_piece_of_data = 100; |
Переменные предпочитаю объявлять как можно ближе к месту использования и с одним var:
var str = 'some string', // для строк одинарные кавычки т.к. часто '<a class="slide"></a>' num = .007, arr = [1, 2, 3], obj = { x: 100, y: 200, z: 300 }; |
предпочитаю camelCase, underscore, а также венгерскую нотацию (это когда в функции дофига переменным с разными типами)
например, вместо : function count(){ var vsego = a+v, sdacha = b-h, message= sdacha > 0 ? 'foo' : 'bar' ; } предпочту function count(){ var i_a = a+v, i_b = b-h, s_c = sdacha > 0 ? 'foo' : 'bar' ; } |
То есть ты пытаешься эмулировать строгую типизацию? Для JS по-моему это излишество. Для того что явно показать предназначение переменной, лучше просто давать более ясные имена:
var txt_msg = 'text message', year_in_days = 365, man = new Man(), is_cool = true |
Цитата:
function count () { var i_sum = a+b, i_sdacha = h - j, // например , тут b_good = i_sum > i_sdacha, // или тут s_message = "Вы foobar", i_message = 1000; } короче говоря, при использовании переменных определенного типа. чтобы вместо s_message не написать пользователю i_message,например |
Цитата:
var foo = { text : 'some', count : 10 }; куда понятней и наглядней |
ну, объекты,память, все дела :)
не люблю |
венгерская нотация очень редко используется, как это было задумано. И соответственно редко приносит пользу. Чаще приносит вред. Речь шла не о типе данных, хранящихся в переменной, а о том, что хранится в переменной. Т.е. с помощью префиксов можно выделять отдельные категории переменных. Вот хорошие примеры применения
|
Часовой пояс GMT +3, время: 13:05. |