-
Data: 2012-05-06 22:05:44
Temat: Re: [OT] Zarządzanie konfiguracją modułów kodu źródłowego
Od: Sebastian Biały <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 2012-05-06 21:32, mk wrote:
>> Uzywając def.
>> Np. tak:
>> default-config: #define UART_STOP_BITS 1
>> project-config: #include "default.h", #define UART_STOP_BITS 2
> Redefiniowanie makra nową wartością jest nielegalne!!!
Masz rację, jak zwykle pisze skrótami i nie wszystko podaje. Oczywiscie
że jest #undef ale tylko dlatego że nie da się zrobić wprost #define
ponownie (w gcc da się). Samo undef jest wyłacznie wytrychem a nie
sednem metody. Sendem metody jest ponowne zdefiniowanie symbolu
nadpisując default.
Jak napisałem - dla mnie nie ma znaczenia którą metodą inkludowania
wybierzesz - obydwie sa mizerne i sprwadzają się do tej samej sieczki w
define.
> jest niezgodne np. z MISRA-C i w ogóle niepotrzebnie zaciemnia plik
> konfiguracji użytkownika.
Nie mam targetu na misra-c. Więc ich zalecenia nie są dla mnie kluczowe.
Czy zaciemnia - to już inna sprawa. W odwrotnej konfiguracji zaciemnia
#ifdef. Tak czy inaczej - to nie wygląda dobrze.
Prawde mowiąc korzystam znacznie częściej ze statycznego polimorfizmu.
#define to odprysk w kilku miejscach.
Mam taki nieskończony projekcik (który strasznie zaniedbałem, ale
obiecuje poprawę) na SF, możesz sobie zerknąć co mam na myśli:
http://sourceforge.net/projects/microheap/
> sygnalizować już na wczesnym etapie rozpoznania konfiguracji użytkownika
> np. zgodność wersji modułu bibliotecznego i jej użytkownika, czy wiele
> innych parametrów o globalnym charakterze.
W moim przypadku nie sposób w momencie inkludowania default wykryć czy
dopuszczalne jest mieć uart o 2 bitach stopu. Przy czym "nie sposób" w
sensie, że jakikolwiek sposób powoduje wyciek wiedzy o hardware do
miejsca o innym poziomie abstrakcji. Im niej zależności tym lepiej dla
projektu.
> Rozmowa na temat czy "default.h" należy czy nie należy do implementacji
> jest również czysto akademicka, tak jak i gdzie najlepiej określać
> parametry default.
Z tej akademickiej dyskusji wynikają dobre praktyki. Dla mnie on nie
jest akademicka, bo dzieki takiemu podejsciu nie mam burdelu w kodzie.
Następne wpisy z tego wątku
- 06.05.12 22:25 mk
- 06.05.12 23:02 Andrzej Ekiert
- 07.05.12 01:25 mk
- 07.05.12 02:21 Michoo
- 07.05.12 15:52 Nijak
- 07.05.12 21:23 Andrzej Ekiert
- 07.05.12 21:42 Paweł
- 07.05.12 22:46 RoMan Mandziejewicz
- 08.05.12 07:56 Paweł
- 08.05.12 08:50 RoMan Mandziejewicz
- 08.05.12 15:13 janusz_kk1
- 09.05.12 09:07 Artur M. Piwko
- 09.05.12 10:03 janusz_kk1
- 25.05.12 16:09 Artur M. Piwko
Najnowsze wątki z tej grupy
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek