Har någon testat Code Configuration Plug-In för MPLAB® X ?
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
Så "egentligen" betyder att makron är "i princip förbjudna" i vissa programmerings
standards, fast ändå inte, det verkar vara vissa sätt att använda mackron som
det avråds mot, inte att använda makron som sådana. Dessutom rekomenderas
just det format som konfiguratorn genererar, do { something } while(0) som
ett säkert sätt att skriva ett makro.
Slutligen så kanske inte rekomendationer som standards som MISRA är helt
applicerbart på hobbyprogrammering.
> ...så är FunktionsMacron i princip förbjudna.
OK, vilken del av den visade koden gäller det?
standards, fast ändå inte, det verkar vara vissa sätt att använda mackron som
det avråds mot, inte att använda makron som sådana. Dessutom rekomenderas
just det format som konfiguratorn genererar, do { something } while(0) som
ett säkert sätt att skriva ett makro.
Slutligen så kanske inte rekomendationer som standards som MISRA är helt
applicerbart på hobbyprogrammering.
> ...så är FunktionsMacron i princip förbjudna.
OK, vilken del av den visade koden gäller det?
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
Tja, det är väl ingen nackdel, även för hobbyisten att använda sig av dessa standarder.
Visst i detta fallet så uppfyller de standarden, dock skall man fortfarande betrakta macron som ett no-no, då de tenderar att skapa problem, i stället för att hjälpa till.
Visst i detta fallet så uppfyller de standarden, dock skall man fortfarande betrakta macron som ett no-no, då de tenderar att skapa problem, i stället för att hjälpa till.
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
PDF'en med standarden kostar nästan 200:-, så det i sig
är nog i många fall en nackdel. Nej, det säkert bra att en
viss bransch tar programvarukvalitet på allvar, men det
betyder inte att det är rellevant för alla och alltid.
> dock skall man fortfarande betrakta macron som ett no-no,
> då de tenderar att skapa problem,
Kanske. Men det är inte vad t.ex MISRA säger.
He, bättra att undvika C helt och hållet eftersom det tenderar att "skapa problem"!
Det är ju ett misslyckande att man måste hitta på olika standards, som mest består
av saker man inte för eller bör göra, för att använda verktyget (C) !
är nog i många fall en nackdel. Nej, det säkert bra att en
viss bransch tar programvarukvalitet på allvar, men det
betyder inte att det är rellevant för alla och alltid.
> dock skall man fortfarande betrakta macron som ett no-no,
> då de tenderar att skapa problem,
Kanske. Men det är inte vad t.ex MISRA säger.
He, bättra att undvika C helt och hållet eftersom det tenderar att "skapa problem"!
Det är ju ett misslyckande att man måste hitta på olika standards, som mest består
av saker man inte för eller bör göra, för att använda verktyget (C) !
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
> Makron borde vara förbjudna, och är det egentligen.
Och det där var alltså fel.
Och det där var alltså fel.
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
Nja, var det??
Oavsett, vilket, så bör man tänka sig för när man använder #defines, eller snarare undvika det så mycket som möjligt.
Koden blir fasiken så mycket klarare och bättre om man enumrerar konstanter och använder regelrätta funktioner i stället, dessutom slipper man en massa konstiga felmeddelanden från kompilatorn om något går fel.
Fasiken så mycket lättare att debugga utan en massa macron.
Oavsett, vilket, så bör man tänka sig för när man använder #defines, eller snarare undvika det så mycket som möjligt.
Koden blir fasiken så mycket klarare och bättre om man enumrerar konstanter och använder regelrätta funktioner i stället, dessutom slipper man en massa konstiga felmeddelanden från kompilatorn om något går fel.
Fasiken så mycket lättare att debugga utan en massa macron.
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
> Nja, var det??
Ja, det var det. Macron är *inte* "förbjudna", det är vissa delar av
makron som ej tillåts (enligt MISRA) eller som det avråds från.
Makron är definitivt inte förbjudna...
Att helt och hållet undvika #define är nog väldigt svårt.
Det finns knapp en h fil som inte har fullt med #defines.
Hur gör man annars:
#ifndef _PIC16F1938_H_
#define _PIC16F1938_H_
...
eller:
#define _XTAL_FREQ 500000
Nej, du generalliserar alldeles för hårt. Det finns absolut vissa sidor
av makron med #define som är mindre lyckade/säkra, men det
säger nog mer om C som sådant, men det gör inte att man
kan undvika #define helt och hållet, så klart...
Ja, det var det. Macron är *inte* "förbjudna", det är vissa delar av
makron som ej tillåts (enligt MISRA) eller som det avråds från.
Makron är definitivt inte förbjudna...
Att helt och hållet undvika #define är nog väldigt svårt.
Det finns knapp en h fil som inte har fullt med #defines.
Hur gör man annars:
#ifndef _PIC16F1938_H_
#define _PIC16F1938_H_
...
eller:
#define _XTAL_FREQ 500000
Nej, du generalliserar alldeles för hårt. Det finns absolut vissa sidor
av makron med #define som är mindre lyckade/säkra, men det
säger nog mer om C som sådant, men det gör inte att man
kan undvika #define helt och hållet, så klart...
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
Exakt Sodjan, om man tar som regel "inga" #defines, så har man kommit en bra bit på vägen med att skriva läsbar och "felfri" kod.
Visst, naturligtvis behöver man i vissa lägen #defines, men, i möjligaste mån bör man undvika dem, och använda bättre alternativ i stället.
Följaktligen skall man arbeta efter att macron är förbjudna.
Visst, naturligtvis behöver man i vissa lägen #defines, men, i möjligaste mån bör man undvika dem, och använda bättre alternativ i stället.
Följaktligen skall man arbeta efter att macron är förbjudna.
Re: Har någon testat Code Configuration Plug-In för MPLAB® X
Märklig definition av "förbjudet".
> Följaktligen skall man arbeta efter att macron är förbjudna.
Det är ju något helt annat än att makron *är* förbjudna.
Visst, du skrev "i princip förbjudna", men endå...
> Följaktligen skall man arbeta efter att macron är förbjudna.
Det är ju något helt annat än att makron *är* förbjudna.
Visst, du skrev "i princip förbjudna", men endå...