-
- как я рад, что минул всё это (благодаря Куб эМикс и ф-циям Хал). :-))) - Лaгyнoв(04.08.2022 19:20)
- По странному совпадению сегодня тыкал уарт и дма. Вот полная
конфигурация дма во всей её невообразимой сложности: SciFi(420 знак., 04.08.2022 18:43)
- А вокруг этого сколько всего? Мне прислали кучку файлов,
оформленных в проект, выдраных из другого проекта. Когда поиск по
файлам запускаешь, говорит поиск произведён по 111 файлам. Лучше бы
начал с нуля. Грёбаное импортозамещение, грёбаный Гигадивайс,
грёбаный СТМ и CMSIS. Верните мне ДСПик. А не то, пропью долото. - Бapбoc(04.08.2022 19:02)
- а что вас смущает кол-во файлов в проекте (многовато конечно) ???
удобно когда каждый модуль в своем файле, удобно переносить из
проекта в проект, а если еще слой bsp по уму сделан то вообще кайф! Aleksey_75(90 знак., 04.08.2022 19:16)
- Меня всё не смущает. Меня кое-что выводит из равновесия. Моя
программулька в МПЛАБ собирается за несколько секунд. А пока
собирается этот проект, я успеваю Сахару глянуть и пару сухариков
сжевать. Зачем так сложно? Впрочем, деваться некуда. Вот пивка
попил, вроде полегчало. - Бapбoc(04.08.2022 19:26)
- Нынче мода такая - чем больше обёрток у конфетки, тем больше кайфа у потребителя. Причём обёртки придумываются всё более замысловатые, вплоть до аналогов сейфов с кодовыми замками. Это чтобы кайфа было ещё больше. До эрекции - argus98(04.08.2022 22:16)
- Обязателен редактор с удобной навигацией по коду. Как минимум не
хуже, чем VS Code. - SciFi(04.08.2022 19:39)
- Notepad++ пойдёт? Или я просто не знаю, что есть "навигация по
коду"? - Бapбoc(04.08.2022 19:43)
- Не пойдёт. Срочно всё бросать и осваивать VS Code. Вы просто не
знаете, чего себя лишаете. - SciFi(04.08.2022 19:46)
- Refactoring C кода оно поддерживает? - RxTx(04.08.2022 20:53)
- Переименование функций, переменных, типов, полей. Может, ещё что-то
есть, но что ещё можно рефакторить в сях? - SciFi(04.08.2022 22:02)
- Что вспомнилось: двигать функции и переменные из файла в файл. Делать Extract function (из кода в функцию с автоматическим созданием параметров) и наоборот inline function в код в место вызова, extract variable, constant, macro, parameter (и наоборот). Преобразовывать switch в if между собой. Менять логические условия в if. У функции Change Signature (изменять порядок и количество параметров, втч автоматически в местах вызова), split in the declaration and assignment (и RxTx(82 знак., 04.08.2022 23:29)
- хм, может я что-то не так понимаю, но рефакторинг кода это совсем
не переименование функций и данных... выражение "Refactoring C кода
оно поддерживает?" меня ввело в ступор, типа отдельная кнопочка
"Refactoring" - Aleksey_75(04.08.2022 22:18)
- Я так понимаю, применительно к Си это именно переименование, ну и
упоминают поиск символов. Всё это там отлично работает. SciFi(1 знак., 04.08.2022 22:23, ссылка)
- ЧСХ, ни в Netbeans от Microchip, ни в Eclipse от ST (бывш Atollic)
у меня не работало даже банальное переименование. Только
живительные расстрелыCLion, Vim, только хардкор. - RxTx(04.08.2022 23:37)- И в MPLAB X и в Stm32CubeIDE рефакторинг работает как положено. - Argon(05.08.2022 15:22)
- хз короч... видимо не то я называю рефакторингом... у меня как
правило помимо косметической уборки идет и фактическая оптимизация
с порой кардинальной перепиской функций - Aleksey_75(04.08.2022 22:35)
- Я имел в виду автоматизированный рефакторинг, конечно. Много ли
бездушная машина может сама перелопатить? А так по определению
рефакторинг - изменение формы кода, не затрагивающее его функции,
там всякое разное можно придумать. - SciFi(04.08.2022 22:44)
- ааа. это типа replase ??? а что есть такие редакторы которые этого
не умеют ? еще скажите что выделение блоками alt+select не все
умеют ? - Aleksey_75(04.08.2022 23:38)
- Нет, не простой текстовый replace. Ищет и заменяет в правильном
пространстве имён. Скажем, не путает локальные и глобальные, не
смешивает имена типов и имена переменных. - SciFi(04.08.2022 23:41)
- хм, даже не знал о подобном, но я как истинный консерватор и
ретроград вртдиб доверил подобное... очень нет желания выискивать
потом почему "крокодил не ловится и не растет кокос" ))) - Aleksey_75(04.08.2022 23:44)
- Нормальная тулза делает не текстом, как это ты себе представляешь,
а зная семантику и типизацию. Проверяя возможность чего ты от нее
хочешь и даже вываливая тебе места где это надо делать (пометишь
чекбоксом) или отказываясь там, где чёт сомнительно (Visual
Studio). Вдобавок тулза у нормальных контор (JetBrains, Microsoft)
проходит внутренние тесты и протестирована миллионами хомячков уже
много-много лет назад, найдено подавляющее большинство багов. Все
это делает практически RxTx(308 знак., 05.08.2022 00:05)
- ))) отлично! у меня практически все проекты кроме основной логики
имеют до 32 модулей о которых ничего не знает основная логика, как
и модули ничего не знают об основной логике... все модули
компилится отдельно, да бут раскладывает модули при каждом
обновлении друг за другом в зависимости от текущего размера
модуля.. Чего это тузла нарефакторит ?? Aleksey_75(26 знак., 05.08.2022 00:19)
- Возьми да проверь. Никто за твой код ничего тебе не скажет. Всё что
я пытался до тебя донести это то что в инструментах с которыми я
работал рефакторинг намеренно сделан так чтобы прежде всего не
сломать. Если можно сломать, то (обычно) он не выполнится. Однако,
как известно, если дать одному персонажу в руки стеклянный хоай, то
он и хоай разобьёт и руки порежет :))))) Кстати, меня когда-то
много лет назад очень поразила нелинейная Local History в IDEA.
(Увы, она работает RxTx(261 знак., 05.08.2022 00:21 - 00:33)
- не, спасибо... "не лезьте в налаженный механизм и он будет
работать" , а уж непонятно зачем доверить "нахуевертить" программе
я не готов, клуб по созданию себе трудностей это без меня ... Aleksey_75(33 знак., 05.08.2022 00:25)
- Т.е. ты пишешь код и никогда-никогда его не меняешь? Лул. - RxTx(05.08.2022 00:34)
- не, спасибо... "не лезьте в налаженный механизм и он будет
работать" , а уж непонятно зачем доверить "нахуевертить" программе
я не готов, клуб по созданию себе трудностей это без меня ... Aleksey_75(33 знак., 05.08.2022 00:25)
- Возьми да проверь. Никто за твой код ничего тебе не скажет. Всё что
я пытался до тебя донести это то что в инструментах с которыми я
работал рефакторинг намеренно сделан так чтобы прежде всего не
сломать. Если можно сломать, то (обычно) он не выполнится. Однако,
как известно, если дать одному персонажу в руки стеклянный хоай, то
он и хоай разобьёт и руки порежет :))))) Кстати, меня когда-то
много лет назад очень поразила нелинейная Local History в IDEA.
(Увы, она работает RxTx(261 знак., 05.08.2022 00:21 - 00:33)
- ))) отлично! у меня практически все проекты кроме основной логики
имеют до 32 модулей о которых ничего не знает основная логика, как
и модули ничего не знают об основной логике... все модули
компилится отдельно, да бут раскладывает модули при каждом
обновлении друг за другом в зависимости от текущего размера
модуля.. Чего это тузла нарефакторит ?? Aleksey_75(26 знак., 05.08.2022 00:19)
- Наверное, и на заправке не разрешаешь гарсону помогать :-) - SciFi(04.08.2022 23:45)
- Нормальная тулза делает не текстом, как это ты себе представляешь,
а зная семантику и типизацию. Проверяя возможность чего ты от нее
хочешь и даже вываливая тебе места где это надо делать (пометишь
чекбоксом) или отказываясь там, где чёт сомнительно (Visual
Studio). Вдобавок тулза у нормальных контор (JetBrains, Microsoft)
проходит внутренние тесты и протестирована миллионами хомячков уже
много-много лет назад, найдено подавляющее большинство багов. Все
это делает практически RxTx(308 знак., 05.08.2022 00:05)
- хм, даже не знал о подобном, но я как истинный консерватор и
ретроград вртдиб доверил подобное... очень нет желания выискивать
потом почему "крокодил не ловится и не растет кокос" ))) - Aleksey_75(04.08.2022 23:44)
- Нет, не простой текстовый replace. Ищет и заменяет в правильном
пространстве имён. Скажем, не путает локальные и глобальные, не
смешивает имена типов и имена переменных. - SciFi(04.08.2022 23:41)
- ааа. это типа replase ??? а что есть такие редакторы которые этого
не умеют ? еще скажите что выделение блоками alt+select не все
умеют ? - Aleksey_75(04.08.2022 23:38)
- Я имел в виду автоматизированный рефакторинг, конечно. Много ли
бездушная машина может сама перелопатить? А так по определению
рефакторинг - изменение формы кода, не затрагивающее его функции,
там всякое разное можно придумать. - SciFi(04.08.2022 22:44)
- ЧСХ, ни в Netbeans от Microchip, ни в Eclipse от ST (бывш Atollic)
у меня не работало даже банальное переименование. Только
- Я так понимаю, применительно к Си это именно переименование, ну и
упоминают поиск символов. Всё это там отлично работает. SciFi(1 знак., 04.08.2022 22:23, ссылка)
- Переименование функций, переменных, типов, полей. Может, ещё что-то
есть, но что ещё можно рефакторить в сях? - SciFi(04.08.2022 22:02)
- ОК. Спасибо*100. По совокупности советов. - Бapбoc(04.08.2022 19:51)
- Refactoring C кода оно поддерживает? - RxTx(04.08.2022 20:53)
- Не пойдёт. Срочно всё бросать и осваивать VS Code. Вы просто не
знаете, чего себя лишаете. - SciFi(04.08.2022 19:46)
- Notepad++ пойдёт? Или я просто не знаю, что есть "навигация по
коду"? - Бapбoc(04.08.2022 19:43)
- Меня всё не смущает. Меня кое-что выводит из равновесия. Моя
программулька в МПЛАБ собирается за несколько секунд. А пока
собирается этот проект, я успеваю Сахару глянуть и пару сухариков
сжевать. Зачем так сложно? Впрочем, деваться некуда. Вот пивка
попил, вроде полегчало. - Бapбoc(04.08.2022 19:26)
- а что вас смущает кол-во файлов в проекте (многовато конечно) ???
удобно когда каждый модуль в своем файле, удобно переносить из
проекта в проект, а если еще слой bsp по уму сделан то вообще кайф! Aleksey_75(90 знак., 04.08.2022 19:16)
- А вокруг этого сколько всего? Мне прислали кучку файлов,
оформленных в проект, выдраных из другого проекта. Когда поиск по
файлам запускаешь, говорит поиск произведён по 111 файлам. Лучше бы
начал с нуля. Грёбаное импортозамещение, грёбаный Гигадивайс,
грёбаный СТМ и CMSIS. Верните мне ДСПик. А не то, пропью долото. - Бapбoc(04.08.2022 19:02)