Skocz do zawartości

Czy to wgląda poprawnie czyt. estetycznie


Pomocna odpowiedź

Napisano

Właśnie zacząłem kurs arduino. Moja płytka jeszcze nie dotarła wiec postanowiłem zacząć pisać w Wokwi.

Dochodząc do zadania ze światłami postanowiłem sam to napisać i po paru minutach wyszło mi coś takiego.

Ku mojemu zdziwieniu okazuje się że to działa, na koniec postanowiłem sprawdzić czy autor poradnika napisał tak samo i wyszło że troszkę się różni.

Ponieważ chcę nabrać dobrych nawyków w pisaniu kodu chciałbym aby ktoś obeznany w temacie powiedział czy to jest poprawnie ( czytelnie ) napisane, co robić ewentualnie czego nie robić. 

 

void setup() {
 pinMode(1, OUTPUT); // wyjscie dioda czerwona 
 pinMode(3, OUTPUT); // wyjscie dioda pmaranczowa
 pinMode(4, OUTPUT); // wyjscie dioda zielona 

 pinMode(2, INPUT_PULLUP); // wejscie przycisk

 digitalWrite(1, LOW); // wylaczenie diod
 digitalWrite(3, LOW);
 digitalWrite(4, LOW);
}
void loop() 
{ 
 digitalWrite(1, HIGH);
 delay(5000);

 digitalWrite(3, HIGH);
 delay(2000);
 digitalWrite(1, LOW);
 digitalWrite(3, LOW);

 digitalWrite(4, HIGH);
 delay(5000);
 digitalWrite(4, LOW);
 digitalWrite(3, HIGH);
 delay(2000);
 digitalWrite(3, LOW);

}

 

@feeleek witam na forum! W tak prostych programach nie ma wielkiego pola do manewrów, więc nic tu wielce nie ulepszymy 😉 Można się jedynie przyczepić do estetyki, bo w trochę losowych miejscach masz puste linie - nie wiem jaki mają sens. Do tego linie z początku i końca pętli można by było zapisać jedna po drugą, bo i tak w praktyce wykonują się zaraz po sobie (bo pętla rozpoczyna działanie od początku).

  • Lubię! 1

No estetycznie to nie do końca wygląda, przy czym nie chodzi o wrażenia plastyczne a o praktyki przy tworzeniu kodu programu, które umożliwią Tobie czytanie i analizowanie kodu teraz i w przyszłości podczas kolejnych zmian, poprawiania błędów, wykorzystania tego kodu w innym projekcie itp.:

1. Organizacja tekstu programu jest wyrazem szacunku dla naszego mózgu i wzroku podczas analizy programu.
a) Puste linie umieszczamy w odpowiednich miejscach (np. zawsze po nawiasie klamrowym zamykającym blok funkcji) a nie dajemy ich w miejscach przypadkowych,
b) Wcięcie tekstu dla każdego zagnieżdżonego bloku instrukcji musi być odpowiednio głębokie - jedna spacja to absolutnie za mało - wcięcia na cztery spacje są powszechnie uważane za rozsądny kompromis.

2. Używanie stałych symbolicznych, makrodefinicji itp. (różnie się to w różnych językach programowania nazywa) zamiast literałów liczbowych jest niezbędne w każdym większym projekcie. Po pierwsze, jeśli wpiszesz z palca "5000" sto razy w programie, to jeśli będziesz chciał dla celów testowych zmienić tę wartość na 4000, musisz poprawić sto miejsc. Po drugie, za rok nie będziesz pamiętał, co dokładnie oznaczała wartość "5000". Oba problemy znikną, jeśli zdefiniujesz na początku pliku stałą DELAY_AFTER_WRITE (czy inną lepszą nazwę) i użyjesz jej dalej w programie... 

  • Lubię! 1

"Uczciwe" IDE (np vscode/platformio) pozwala podłączyć dowolny formatter kodu, który będzie na bieżąco dbał o zachowanie ulubionego standardu formatowania.

Grunt to zdecydować się który ze standardów jest dla nas najczytelniejszy. Bo dla kompilatora nie ma to żadnego znaczenia

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...