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

Ocena kodu (Code review)

Object Storage Arubacloud
0 głosów
243 wizyt
pytanie zadane 2 stycznia 2019 w Python przez Piotr Jasiński Bywalec (2,120 p.)

Witam No jakiś czas temu (w sumie to dłuższy czas) napisałem aplikację edytor tekstowy zapewniająca wsparcie dla mało popularnego języka skryptowego Daedalus używanego w grach z serii Gothic... Chciałbym prosić o ocenę kodu jakieś podpowiedzi co można dodać przydatnego do takowego edytora. Wszelkie podpowiedź co można dodać było by najlepiej gdyby umieszczone jako Issue na githubie ewentualnie pod tym temate ;)

LINK: DEdit <---- Wersje do uruchomienia można pobrać z Releases (Niestety działa na razie na Win bo nie miałem jak tego zbudować na linux ;) )

Z góry dziękuje za przeczytanie posta :) I szczęśliwego nowego roku :)

2 odpowiedzi

0 głosów
odpowiedź 3 stycznia 2019 przez RafalS VIP (122,820 p.)
wybrane 3 stycznia 2019 przez Piotr Jasiński
 
Najlepsza

Brak pliku requirements.txt

Brak konsystencji nazewnictwa metod, raz camelCase raz under_score

Wszelkie wyjątki łapane od razu bez żadnej obsługi. Jeśli coś pójdzie nie tak to pasowałoby coś z tym zrobić :P

UI.ui_look(self)

bardzo dziwne. ui_look to nie czasownik i to powinna być metoda klasy, a nie funkcja sztucznie udająca metode tylko po to zeby wylądować w innym pliku - przekazujesz do niej jawnie self.

To samo tutaj:

def check_exist_filename(self, name):

Plik Helpers.py to kiepski pomysł. Aplikacja akurat jest mała, ale taki worek na wszystko rośnie wkładniczo wraz ze wzrostem projektu. Helpery powinne wylądować w różnych klasach.

    if self.fullname.count(name) == 1:
        return True
    else:
        return False
   # rownowazne z:
   return self.fullname.count(name) == 1

Pass na koncu funkcji z cialem nie ma sensu i od razu funkcja tab_type powinna zawsze cos zwracac.

Elif po returnie jest niepotrzebny. Zastąp go zwykłym ifem.

Podobnie tutaj:

        if result is True:
             ...
        elif result is False:

Jesli nie weszlismy do ifa to wiadomo ze result jest False, wiec nie trzeba tego znow sprawdzac. Zmien elif na else. Dzięki temu będzie mógł pozbyć się nic nie znaczącej zmiennej result:

if Helpers.check_exist_filename(self, filename):
...
else:
def find_way_to_file(file):
    return os.path.abspath(os.path.join(os.path.dirname(__file__), file))

Przez __file__ uzależniasz sie od tego gdzie lezy plik FileHelper.

Poczytaj coś o prywatnych składowych: https://stackoverflow.com/questions/1301346/what-is-the-meaning-of-a-single-and-a-double-underscore-before-an-object-name https://www.programiz.com/python-programming/property

+1 głos
odpowiedź 2 stycznia 2019 przez Secrus Nałogowiec (32,880 p.)
Pierwszy code review to użycie pakietu pycodestyle. Pokaże Ci on wszystkie błędy związane ze standardem pisania kodu w Pythonie.
komentarz 2 stycznia 2019 przez Piotr Jasiński Bywalec (2,120 p.)

Do sprawdzania tego czy piszę w miarę według tego jak się powinno używam Wbudowanego w PyCharma ;) 

Ale jednak nie ma to jak rady osób które siedzą w tym dłużej i mogą zwrócić uwagę na to czy kod można skrócić albo czy jest w miarę czytelny :)

komentarz 2 stycznia 2019 przez Secrus Nałogowiec (32,880 p.)
Ja nie używam Pycharma, często w vimie piszę i z terminala sprawdzam poprawność, dlatego o tym wspomniałem
komentarz 2 stycznia 2019 przez Piotr Jasiński Bywalec (2,120 p.)

Nie no ok i tak dzięki że mi powiedziałeś o tym bo nie znałem smiley

 

Podobne pytania

0 głosów
1 odpowiedź 285 wizyt
pytanie zadane 11 października 2020 w Nasze projekty przez Szyszka Gaduła (3,490 p.)
0 głosów
1 odpowiedź 283 wizyt
pytanie zadane 30 lipca 2019 w Nasze projekty przez mi-20 Stary wyjadacz (13,190 p.)
0 głosów
1 odpowiedź 159 wizyt
pytanie zadane 16 czerwca 2019 w C i C++ przez amelia.cpp Obywatel (1,860 p.)

92,555 zapytań

141,402 odpowiedzi

319,540 komentarzy

61,938 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...