-
- Тема_Ебли_Нераскрыта! - IBAH(17.10.2018 18:17)
- Вот_Этот_Стиль_Бесит, потому что два разделителя - заглавная буква и подччеркивание. На хрена? - VLLV(18.10.2018 14:20)
- Чуть ниже объяснял. А ещё некоторые коллеги попадают в ступор от while(2) - Vit(18.10.2018 16:24)
- на мой взгляд for(;;){} более эстетичен - =AlexD=(19.10.2018 07:58)
- Так вот почему Vit такой злой, оказывается, в него бесы вселились :) Молчу, молчу... - Экспериментатор(18.10.2018 16:00,
)
- void ЗатоТакойСтильПриятенПонятен(uint32_t TimeToMarket); - бомж(18.10.2018 14:28)
- Да, такой стиль мне тоже по душе! :-) Только параметры функций пишу через строчную p - pTimeToMarket, чтобы в коде функции сразу было видно, где параметр, а где остальные переменные. - FDA(18.10.2018 14:36)
- Убей в себе венгра! Ну или выдавливай его по капле - кому как нравится. - SciFi(18.10.2018 14:39, ссылка)
- Ст. 282 УК РФ ждет вас :) - Экспериментатор(18.10.2018 16:03,
)
- Полностью венгерскую нотацию не поддерживаю. Но для совместной работы над проектами мы у себя следующую нотацию используем: FDA(637 знак., 18.10.2018 14:44)
- Для себя использую следующее: Скрипач(470 знак., 18.10.2018 17:23 - 17:28)
- Для CMSIS camelCase не подойдет, там нужен CamelCase, либо ГМО с ЖД платформой :) - Экспериментатор(18.10.2018 16:08,
)
- Таки советую вам перейти на нормальный текстовый редактор. Вы не поверите, но за последние десятилетия там был существенный прогресс. Обоснованность большинства этих правил сразу покажется весьма сомнительной. - SciFi(18.10.2018 14:48)
- Вы не поверите, но редактор в MPLAB X прекрасно выделяет основные языковые конструкции. Но вот параметры функций, локальные и глобальные переменные для него одинаковы! Поэтому правила использования префиксов очень сильно помогают быстро FDA(20 знак., 18.10.2018 16:37)
- Это спорно. Курсив в принципе не перевариваю, болд на большинстве моноширинных шрифтов выглядит коряво, сделал разделение глобальных, локальных, параметров и членов класса разными оттенками синего... нууу, так себе. И не все редакторы это могут. - =AlexD=(18.10.2018 15:03)
- Ст. 282 УК РФ ждет вас :) - Экспериментатор(18.10.2018 16:03,
- Убей в себе венгра! Ну или выдавливай его по капле - кому как нравится. - SciFi(18.10.2018 14:39, ссылка)
- Да, такой стиль мне тоже по душе! :-) Только параметры функций пишу через строчную p - pTimeToMarket, чтобы в коде функции сразу было видно, где параметр, а где остальные переменные. - FDA(18.10.2018 14:36)
- Чуть ниже объяснял. А ещё некоторые коллеги попадают в ступор от while(2) - Vit(18.10.2018 16:24)
- Вот_Этот_Стиль_Бесит, потому что два разделителя - заглавная буква и подччеркивание. На хрена? - VLLV(18.10.2018 14:20)
- Нихеранепонятно, КГ/АМ. Если снесеный опрос был в подобном стиле - снос одобряю. - Andreas(17.10.2018 12:27)
- Я тоже за снос темы в помойку... - max(17.10.2018 21:56)
- Тебе что, мешает? - MBedder(17.10.2018 22:01)
- Я тоже за снос темы в помойку... - max(17.10.2018 21:56)
- ТеКсТ зАпИсаНнЫй в КамЕлКасЕ оБлАдаЕт поДвЫшенНоЙ чИтаЕмоСТьЮ. Идентификаторы должны быть такими, чтоб умещались в голове и могли копироваться без буфера обмена (т.е. не больше полутора десятков символов с осмысленной нагрузкой). Смысл они fk0(781 знак., 17.10.2018 11:59)
- Интерес в первую очередь представляет название объекта или модуля, на которые действует функция или переменная, их желательно указывать. В документации они обычно идут ЗАГЛАВНЫМИ буквами. Из-за этого возникает вопрос, чем пожертвовать в названии. Экспериментатор(147 знак., 17.10.2018 13:51,
)
- Использую: ИмяФункции, имя_переменной, МАКРОС или префиксМакрос. Значение физической величины добавляется редко. - VLLV(17.10.2018 13:03 - 13:25)
- Приведите пример, как Вы назовете фунцию чтения регистра TCCR1. - Экспериментатор(17.10.2018 13:36,
)
- А зачем читать TCCR1? У меня InitSysTimer(), внутри - просто по железу, без оберток. Скрипач(285 знак., 17.10.2018 15:58 - 16:07)
- Между прочим, любой аппаратный таймер позволяет без всяких прерываний отмерять время, глядя на разницу между текущим значением и прошлым, хранящимся в переменной. Но не больше, чем время между двумя переполнениями, конечно. Активно этим пользуюсь. - SciFi(17.10.2018 16:05)
- Переход от "железного" таймера к абстракции "время в миллисекундах" стоит отдельной абстракции, IMHO. Скрипач(96 знак., 17.10.2018 16:09 - 16:12)
- Понеслось г..но по трубам. Может кто-то этим таймером детали считает, Вам какое дело? Удалите или переместите, пожалуйста, весь мусор про макросы и правильное использование таймеров. Если есть что сказать, то отвечайте на опрос. - Экспериментатор(17.10.2018 16:16,
)
- Нах пшел! *) Иди считай детали таймером, у тебя компилятор ошибки выдаёт :) - Скрипач(17.10.2018 16:18)
- Ну это уже вопрос эстетики. Кстати, миллисекунды тоже могут работать без прерываний. У меня вот так: SciFi(262 знак., 17.10.2018 16:12)
- Понеслось г..но по трубам. Может кто-то этим таймером детали считает, Вам какое дело? Удалите или переместите, пожалуйста, весь мусор про макросы и правильное использование таймеров. Если есть что сказать, то отвечайте на опрос. - Экспериментатор(17.10.2018 16:16,
- Переход от "железного" таймера к абстракции "время в миллисекундах" стоит отдельной абстракции, IMHO. Скрипач(96 знак., 17.10.2018 16:09 - 16:12)
- Между прочим, любой аппаратный таймер позволяет без всяких прерываний отмерять время, глядя на разницу между текущим значением и прошлым, хранящимся в переменной. Но не больше, чем время между двумя переполнениями, конечно. Активно этим пользуюсь. - SciFi(17.10.2018 16:05)
- макрос TCCR1_GET() - Vit(17.10.2018 15:33)
- Можно вопрос? Чем "v = TCCR1_GET()" лучше, чем "v = TCCR1"? - SciFi(17.10.2018 15:35)
- Да не то, чтобы лучше - скорее единообразно, выражает действие, и, если нужно, то напаковывается дополнительными плюшками и/или заменяется на функцию. Например, чтение асинхронного таймера без фриза. - Vit(17.10.2018 15:48)
- Можно вопрос? Чем "v = TCCR1_GET()" лучше, чем "v = TCCR1"? - SciFi(17.10.2018 15:35)
- функцией быть не может, только макросом. Наверное GET_CONTROL_TIMER(1) - VLLV(17.10.2018 13:51)
- Рискуете налететь на рекурсию. Например, для чтения переменной "a" без макроса никак не обойтись: "#define B() (a)". Ну а этот макрос просто обязан быть завёрнут в другой макрос: "#define C() (B())". В общем, вы поняли, куда я клоню. - SciFi(17.10.2018 14:52)
- Это уход от вопроса :) Насколько я помню AVR, там есть TCCR1H и TCCR1L, поэтому вполне можно написать инлайн функцию. Суть вопроса не в конкретном модуле, а в общем подходе. - Экспериментатор(17.10.2018 13:57,
)
- ну так переформулируйте вопрос. я сегодня встал в 3, пропилил 400 км и отвечаю на совещаниях ) - VLLV(17.10.2018 15:20)
- Нужно функции организовывать не от железа, а от необходимого для потребителя функционала. - lloyd(17.10.2018 13:38)
- Потребительский функционал имеет теже проблемы. Кстати, жду Вашего ответа на опрос :) - Экспериментатор(17.10.2018 13:59,
)
- Потребительский функционал имеет теже проблемы. Кстати, жду Вашего ответа на опрос :) - Экспериментатор(17.10.2018 13:59,
- А зачем читать TCCR1? У меня InitSysTimer(), внутри - просто по железу, без оберток. Скрипач(285 знак., 17.10.2018 15:58 - 16:07)
- Приведите пример, как Вы назовете фунцию чтения регистра TCCR1. - Экспериментатор(17.10.2018 13:36,
- Где возможно использую Камел_Кейс. Ибо использую а-ля ОО формирование имен - свойства или методы идут после модуля/объекта. IMHO, прекрасно читается. И префикс с подчеркиванием легко и удобно заменить на префикс со стрелкой или точкой Vit(87 знак., 17.10.2018 13:19)
- Не, USART1_Tx_Post плохо читается. Строчные буквы посередине названия мешает только. Визуально кажется, что это опечатка. - FDA(17.10.2018 22:26)
- Нужно разделять слова или подчёркиваниями - UART_TX_POST или регистрлм букв - usart1TxPost. Всё вместе немного нелепо выглядит. Стиля нет. - FDA(17.10.2018 22:29)
- Большими буквами у меня макросы. Насчет пользы подчеркиваний написал. Для меня слитно выглядит нелепо - выглядит как тяга к олдфагному - сразу вспоминается см4 и и такой же старый фортран, 8 символов на имя файла и соответствующая безудержная Vit(45 знак., 18.10.2018 02:59 - 05:01, ссылка)
- В том-то и дело, что пара букв посередине идентификатора не так бросаются в глаза. Поэтому легко спутать переменную с макросом. Конечно, современные IDE позволяют подсвечивать макросы другим цветом, но стиль есть стиль. - FDA(18.10.2018 08:23)
- Вам может не нравиться, что-то может не бросаться, но это стиль. Gson, например, его обзывает UPPER_CAMEL_CASE. Макросы для не спутать именую большими буквами. Поверьте, я не один вижу целесообразность подчеркиваний. Если бы оно мне не Vit(78 знак., 18.10.2018 09:10)
- Да не в подчёркиваниях дело, а в малом различии переменных и макросов. По сути они отличаются тут только регистром пары букв в названии. - FDA(18.10.2018 09:13)
- Все буквы большие - макрос. Что не так? - Vit(18.10.2018 09:22)
- В том, что наличие строчных букв посередине названия внешне путает - сложно понять, это макрос или переменная. - FDA(18.10.2018 11:05)
- Все макросы и типы только большими, переменные - маленькими с разделением подчеркиванием. Пришлось переучиваться на такое, но понравилось. Макросы с типами все равно не спутаешь, в разных местах стоять. Ну и большими еще имена регистров, ибо CMISIS - Andreas(18.10.2018 10:19)
- "Кроме того, CMSIS рекомендует следующие соглашения для идентификаторов: Экспериментатор(409 знак., 18.10.2018 10:46,
)
- Низкоуровневая требуха обычно вынесена в отдельные файлы и правится редко, ну кроме регистров. Теперь сочувствую любителям верблюдов. - Andreas(18.10.2018 11:11)
- Я думаю, Вам пора ответить на опрос. Там должен быть Ваш случай. - Экспериментатор(18.10.2018 11:17,
)
- Написанакакаятохуетападонковскимстилеминичегонепонятно. - Andreas(18.10.2018 11:20)
- Любители верблюдов сочувствия не вызывают. А вот верблюдов жалко, да. - SciFi(18.10.2018 11:15)
- Я думаю, Вам пора ответить на опрос. Там должен быть Ваш случай. - Экспериментатор(18.10.2018 11:17,
- Низкоуровневая требуха обычно вынесена в отдельные файлы и правится редко, ну кроме регистров. Теперь сочувствую любителям верблюдов. - Andreas(18.10.2018 11:11)
- имею плохую привычку к именам типов добавлять суффикс _t, а сами имена типов никогда не писал только большими. - Vit(18.10.2018 10:41)
- Тоже так раньше писал и ВерБлюдом переменные, после принудительного переучивания оценил новый стиль: писать удобнее и чуть нагляднее. Но ИмХо, ессно. - Andreas(18.10.2018 11:08)
- У меня привычка от Delphi названия типов начинать с заглавной T: TMode, TState, TCommonParams. - FDA(18.10.2018 11:07)
- я на Дельфи не писал, у меня ровно наоборот tMY_TYPE - VLLV(18.10.2018 14:17)
- +1 - =AlexD=(19.10.2018 08:00)
- я на Дельфи не писал, у меня ровно наоборот tMY_TYPE - VLLV(18.10.2018 14:17)
- "Кроме того, CMSIS рекомендует следующие соглашения для идентификаторов: Экспериментатор(409 знак., 18.10.2018 10:46,
- GNU C: "большие буквы следует использовать для макросов и enum-констант, а также в качестве префиксов для имен, следующих общим соглашениям." На двух стульях усидеть пытаетесь, прямо как настоящий йог. - Экспериментатор(18.10.2018 10:00,
)
- если не понимаешь, то лучше бы молчал. и второй раз предупреждаю - Vit(18.10.2018 10:35)
- Все буквы большие - макрос. Что не так? - Vit(18.10.2018 09:22)
- Да не в подчёркиваниях дело, а в малом различии переменных и макросов. По сути они отличаются тут только регистром пары букв в названии. - FDA(18.10.2018 09:13)
- Вам может не нравиться, что-то может не бросаться, но это стиль. Gson, например, его обзывает UPPER_CAMEL_CASE. Макросы для не спутать именую большими буквами. Поверьте, я не один вижу целесообразность подчеркиваний. Если бы оно мне не Vit(78 знак., 18.10.2018 09:10)
- В том-то и дело, что пара букв посередине идентификатора не так бросаются в глаза. Поэтому легко спутать переменную с макросом. Конечно, современные IDE позволяют подсвечивать макросы другим цветом, но стиль есть стиль. - FDA(18.10.2018 08:23)
- Большими буквами у меня макросы. Насчет пользы подчеркиваний написал. Для меня слитно выглядит нелепо - выглядит как тяга к олдфагному - сразу вспоминается см4 и и такой же старый фортран, 8 символов на имя файла и соответствующая безудержная Vit(45 знак., 18.10.2018 02:59 - 05:01, ссылка)
- Нужно разделять слова или подчёркиваниями - UART_TX_POST или регистрлм букв - usart1TxPost. Всё вместе немного нелепо выглядит. Стиля нет. - FDA(17.10.2018 22:29)
- Кто удалил мой комментарий к ответу Vit? Еще раз повторю, что приведенные им примеры не являются camelCase, что противоречит тексту вначале его сообщения. - Экспериментатор(17.10.2018 14:35,
)
- Я удалил. У меня являются. - Vit(17.10.2018 14:36)
- Для розового - мне кажется ты хотел меня обозвать. Предупреждаю - настроения нет. - Vit(17.10.2018 14:35)
- Даже в мыслях не было. Я вообще не склонен переходить на личности. - Экспериментатор(17.10.2018 14:37,
)
- Даже в мыслях не было. Я вообще не склонен переходить на личности. - Экспериментатор(17.10.2018 14:37,
- Не, USART1_Tx_Post плохо читается. Строчные буквы посередине названия мешает только. Визуально кажется, что это опечатка. - FDA(17.10.2018 22:26)
- Читал мульку, что изначально в венгерской нотации именно что предполагалось использовать не тип переменной, а ее физический смысл. Но автор не смог донести свою мысль до погромистов в силу плохого владения английским :) - LightElf(17.10.2018 12:12)
- Венгерская нотация - это от бедности. Ребята из мелкософта не могли себе позволить текстовый редактор, показывающий тип переменной. А бесплатные опен соус низзя - начальство загрызёт. - SciFi(17.10.2018 12:17)
- Не, изначально (во времена Win 3.0) предполагался именно смысл. hWnd - тип ULONG, смысл - handle. cWidth - тип LONG, смысл - count (т.е. положительное значение) и т.д. Но чувак, составляя coding guide, по недостаточному знанию ангельского LightElf(113 знак., 17.10.2018 12:27)
- Знаете, "variable mean" тоже весьма неоднозначно, могло привести к более тяжёлым последствиям. Ящетаю, начальство поступило мудро :-) - SciFi(17.10.2018 20:22)
- Агась. Но теперь все плюваются на идиотские ulWidth - LightElf(17.10.2018 23:37)
- Знаете, "variable mean" тоже весьма неоднозначно, могло привести к более тяжёлым последствиям. Ящетаю, начальство поступило мудро :-) - SciFi(17.10.2018 20:22)
- Не, изначально (во времена Win 3.0) предполагался именно смысл. hWnd - тип ULONG, смысл - handle. cWidth - тип LONG, смысл - count (т.е. положительное значение) и т.д. Но чувак, составляя coding guide, по недостаточному знанию ангельского LightElf(113 знак., 17.10.2018 12:27)
- Венгерская нотация - это от бедности. Ребята из мелкософта не могли себе позволить текстовый редактор, показывающий тип переменной. А бесплатные опен соус низзя - начальство загрызёт. - SciFi(17.10.2018 12:17)
- Интерес в первую очередь представляет название объекта или модуля, на которые действует функция или переменная, их желательно указывать. В документации они обычно идут ЗАГЛАВНЫМИ буквами. Из-за этого возникает вопрос, чем пожертвовать в названии. Экспериментатор(147 знак., 17.10.2018 13:51,
- Автору следует обратиться в наркодиспансер. - fk0(17.10.2018 11:49)
- постепенно перехожу с 1 на 3 - bp(17.10.2018 11:34)
- 5 несмотря на пояснение. И присоединяюсь к пункту 6 от VLLV. Переформулируй без выебонов, мы и так знаем, что ты дохуя умный. - Codavr(17.10.2018 09:23 - 09:27)
- 6. Чертовски лень продираться через притянутые заумствования, хотя тема интересная. МФТИ детектед, вторая стадия заболевания ) - VLLV(17.10.2018 09:03)
- Что там заумного, неужели Вам не ясно, что ЖД платформы выглядят так: "читаю_пургу_от_VLLV"? - Экспериментатор(17.10.2018 09:18,
)
- вообще-то правильно писать "КВВК" - Крок(17.10.2018 11:28)
- Что там заумного, неужели Вам не ясно, что ЖД платформы выглядят так: "читаю_пургу_от_VLLV"? - Экспериментатор(17.10.2018 09:18,
- Тема_Ебли_Нераскрыта! - IBAH(17.10.2018 18:17)