• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Tetris (Xna) ocena kody

VPS Starter Arubacloud
0 głosów
166 wizyt
pytanie zadane 26 lipca 2019 w C# przez KriX89 Nowicjusz (200 p.)

Kod dostepny na GitHub'e

Apka do pobrania tutaj

To mój pierwszy projekt tego typu ...

1 odpowiedź

+3 głosów
odpowiedź 27 lipca 2019 przez rafal.budzis Szeryf (85,340 p.)

Posiłkujesz się bardzo dużo komentarzami To jest pierwsza rzecz nad którą musisz popracować w pierwszej kolejności. Wydaje mi się że mógłbyć też bardziej dzielić kod na mniejsze funkcje co zwiekszy czytelność. np:

 

//losowanie pierwszego klocka
int n = rnd.Next(7);

Możesz zamienić na 

int currentBlockId = rnd.Next(7);

Co już daje więcej informacji. Nie dość ze patrząc na kod jest on mniejszy to dodatkowo mówi nam od tym że :

- losuje liczbę
- a wylosowana liczba jest identyfikatorem a nie obiektem klocka

Można jeszcze pozbyć się magicznegu numerka 7 który nic nie mówi i jest bajka :) 

const int NUMBER_OF_BLOCK_SHAPE = 7;
int currentBlockId = rnd.Next(NUMBER_OF_BLOCK_SHAPE);

Zapisuj nazwu zeminnych tak aby coś ci mówiły

 

const int M = 21; //wysokosc planczy
const int N = 10; //szerokosc planszy
float timer = 0f; //czas do spadania klocka
float timer2 = 0f; //czas do przesuwania klocka
float delay = 0.66f; //opoznenie do spadania klocka
float delay2 = 0.1f; //opoznienie do przesowana klocka

A przecież można nazwać to :

const int MAP_HEIGHT = 21; 
const int MAP_WIDTH = 10;
...

Dzięki temu w każdym miejscu kodu będziesz wiedział co to za zmienna teraz gdy widziałem zmienną N w kodzie musiałem wracać na góre pliku zeby dowiedzieć się co ta zmienna robi. Na szczęście edytory potrafią w bardzo łatwy sposób zmieniać nazwy zmiennych dlatego nie powinieneś mieć problemów z naprawą tego :)

Warto też poznać obiektywność i zrobić osobne klasy aby kod był bardziej podzielony na mniejsze kawałki. Trzymanie wszystkiego w jednej klasie Game nie jest dobrym pomysłem ;)

Podobne pytania

+2 głosów
3 odpowiedzi 1,028 wizyt
pytanie zadane 9 lipca 2017 w JavaScript przez Ziken Początkujący (330 p.)
0 głosów
0 odpowiedzi 105 wizyt
0 głosów
1 odpowiedź 204 wizyt
pytanie zadane 11 lutego 2019 w C# przez noname3 Obywatel (1,180 p.)

92,965 zapytań

141,930 odpowiedzi

321,163 komentarzy

62,299 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...