Sida 1 av 1

Embedded C Coding Standard

Postat: 16 oktober 2018, 01:26:20
av lillahuset
Kanske av intresse för någon.

https://barrgroup.com/coding-standard

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 13:26:45
av Findecanor
Det är ett exempel på en kod-standard för C ... Kräver registrering för att ladda ner, vilket betyder att de troligen kommer att skicka reklam till en om man gör det. Det tänker jag inte göra, och därför kan jag inte kommentera innehållet.

Det finns många andra exempel på kodstandarder på Internet.
Varje organisation med programmerare bör ha en kodstandard så att alla skriver kod i samma stil.
Sen kan man diskutera vilken slags "fulkod" man inte vill tillåta. Själv tycker jag att Misra C är lite väl restriktiv, lite "dumbed down" version av C anpassad för folk som inte har programmering som huvudsyssla.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 13:55:34
av Jan Almqvist
Om man scrollar ner lite står det "Online HTML Version".

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 14:47:15
av lillahuset
Visst är det ett exempel. Som alla exempel. Är ett alltså.

Du behöver inte vara minsta orolig för reklam från Barr Group. Det brukar vara inbjudningar till, oftast, intressanta webinarier.
Lite nyheter, oftast om säkerhet i inbyggda system eller puffar för deras blogg.
Slutligen kommer det ibland information om kurser de håller på olika ställen i världen.
Allt brukar vara relaterat till embedded C och säkerhet.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 15:24:28
av AndLi
Bara för att det har en koppling till embedded C och säkerhet betyder det inte att det inte faller inom klassningen av reklam.

Problemet jag finner med många kod-standards att de är så omfattande att det tar något år eller två att lära in dem i muskelminnet...
Inte sagt att det är dåligt att alla som skriver kod i samma projekt följer samma guidelines, men det blir ineffektivt att hoppa mellan olika.
(Och kod verkar på något sätt överleva guidelines, ska man då följa den nya eller den gamla om man patchar något?)

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 15:50:25
av lillahuset
Bara för att det har en koppling till embedded C och säkerhet betyder det inte att det inte faller inom klassningen av reklam.
Jaha? Och vad vill du ha sagt med det? "faller inom klassningen av reklam"? Kan du förklara? Finns det någon typ av riktlinjer du kan delge oss?

Problemet är väl snarare att det finns folk som gör allt för att se problem med det mesta. Om man behöver ett år eller två för att lära sig en kodstandard ska man nog inte programmera över huvud taget.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 16:20:11
av henkebenke
Barr's kodstandard är nog den bästa jag sett för ändamålet. Sen är det ju som alltid en smaksak och vissa undantag kan behöva göras. Men börjar man leta så finns det förvånansvärt få kodstandarder för embedded som man vill använda.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 16:53:09
av AndLi
lillahuset skrev:
Bara för att det har en koppling till embedded C och säkerhet betyder det inte att det inte faller inom klassningen av reklam.
Jaha? Och vad vill du ha sagt med det? "faller inom klassningen av reklam"? Kan du förklara? Finns det någon typ av riktlinjer du kan delge oss?
Du säger att man inte ska vara orolig för att de skickar reklam om man reggar sig, sen listar du en lång lista av saker de kommer maila dig om, varav allt ju är reklam för olika saker.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 17:06:46
av lillahuset
Jag har full förståelse för att du inte har en susning om innehållet i Barrs utskick och inte heller om hur ofta de kommer.
Men du har naturligtvis all rätt att dra oinformerade slutsatser. Det är gudskelov ett privilegium som tillkommer alla moderna människor i vår någorlunda civiliserade del av världen.

Re: Embedded C Coding Standard

Postat: 16 oktober 2018, 17:30:36
av arvidb
Jag tittade igenom HTML-versionen av standarden och tycker att den verkar vettig. Inte alltför långtgående och med bra "rationale" för reglerna. Tack för tipset!

(Jag vill dock inte heller registrera mig och riskera att få spam/"information"/reklam skickad till mig. I så fall blir det till att använda någon skräpadress så man slipper lägga tid på att sortera skräpet.)

Re: Embedded C Coding Standard

Postat: 18 oktober 2018, 11:08:49
av abcabc
Jag kollade lite i html-versionen den verkade sund, kanske lite väl detaljerad även om jag tycker det är ok. Min åsikt i mjukvaruprojekt är att det viktigaste är att man är enad och konsekvent, steg två att eningen är rätt och optimal.

Viktiga krav som jag inte såg var om säker kod, som att inte använda strcpy etc, regler runt casting och range-checking.

Jag förespråkar att inte använda casting varken implicit (förutom "triviala" fall) eller explicit förutom i dedicerade funktioner, dessa kan då göra range-checking och andra tester vid behov, i vilket fall under testfasen, men bäst för alltid.

Om man är prestandakänslig så funktioner med "implicit" och kanske plocka bort i leveranskod (med hjälp av makro), även om det är farligt.

Om möjligt verktyg som försöker kontrollera range-checking statiskt, och gärna verktyg som vid testfas kompilerar in tester eller testverktyg för range-checking och andra säkerhetstester dynamiskt.

Grundläggande för inbyggda system är så klart automatiska testfall med kontrollerade in och utdata, hundratals / tusentals testfall med alla användarfall och även andra saker som inte är användarfall. Körs för var ny leverans.

Dock är detta metoder och verktyg som är kända i 20-30 år, men jag har noterar att kunskap om detta ibland faller bort med nya generationer.

/ Gammal gubbe:-)

Re: Embedded C Coding Standard

Postat: 18 oktober 2018, 13:39:01
av hummel
Jag tog risken att få spam och laddade ner PDF:en.

Re: Embedded C Coding Standard

Postat: 18 oktober 2018, 15:37:22
av abcabc
hummel skrev:Jag tog risken att få spam och laddade ner PDF:en.
Gick det bra? Jag försökte och det strulade, och i sådana här situationer är såklart min acceptans för strul mycket låg. Inte jag som lider.