CodeGym /Blog Java /Random-PL /10 sposobów na ulepszenie kodu potwierdzonych osobistymi ...
John Squirrels
Poziom 41
San Francisco

10 sposobów na ulepszenie kodu potwierdzonych osobistymi doświadczeniami

Opublikowano w grupie Random-PL
Witam wszystkich w społeczności CodeGym! 10 sposobów na ulepszenie kodu, potwierdzonych osobistymi doświadczeniami — 1Dzisiaj porozmawiamy o jakości kodu. Tak, drodzy przyjaciele. Nikt nie jest doskonały. Każdy w pewnym momencie zdaje sobie sprawę, że kod mógłby być lepszy… Tylko co zrobić w takiej sytuacji? Jako minimum zacznij badać ten problem. Ale już tu jesteś, co oznacza, że ​​temat musi Cię zainteresować, więc chodźmy. Dzisiaj opiszemy sposoby na ulepszenie i przejrzystość kodu. Więc nie będziesz się wstydził swojego obecnego kodu w przyszłości! :) Wszystkie te metody pomogą programiście stać się dobrym programistą.10 sposobów na ulepszenie kodu, potwierdzonych osobistymi doświadczeniami - 2

1. Jeśli chcesz ulepszyć swój kod, przeczytaj kod kogoś innego

Jeśli chcesz radykalnie poprawić swoje umiejętności programistyczne, musisz... czytać kod napisany przez innych programistów. Wierz mi lub nie. Ale jeśli podejmiesz ryzyko, obiecuję: zostaniesz nagrodzony za poświęcony czas. Na przykład, nie czytaj na medium.com o tym, jak działają HashMap, ArrayList, LinkedList itp. Zamiast tego przeczytaj ich kod źródłowy i sam to rozwiąż. Oto lista zajęć do przeczytania:
  • Najczęściej zadawane pytania w wywiadach dotyczą HashMap. Możesz upiec dwie pieczenie na jednym ogniu: zrozumiesz kod i zdobędziesz potrzebną wiedzę.
  • To samo dotyczy ArrayList. Nie ma w tym nic skomplikowanego, ale kod źródłowy naprawdę warto przeczytać i zrozumieć.
  • String jest doskonałym przykładem. Zrozum, dlaczego jest niezmienny.
  • AtomicInteger to fajna klasa: definiuje atomowe operacje na obiektach typu Integer.
  • Potem moglibyśmy wymienić każdą klasę, jedną po drugiej :)
A poważniej, powinieneś przeczytać kod z Pivotal. Tamtejsi ludzie napisali najbardziej pożądany ekosystem w świecie Javy. Ich kod jest zdecydowanie warty przeczytania. Polecam zacząć od Spring Core . Czytanie nieznanego kodu źródłowego jest trudną, ale satysfakcjonującą pracą. :)

2. Przestrzegaj konwencji kodeksowych

10 sposobów na ulepszenie kodu potwierdzonych osobistymi doświadczeniami - 3Konwencje kodowania to zestaw wytycznych tworzonych przez zespoły programistów. Zawierają wytyczne dotyczące stylu i technik kodowania dla każdego aspektu kodu. Konwencje te mogą być pisane dla całej firmy lub dla konkretnego projektu. Konwencje kodowania są ogólnie specyficzne dla każdego języka programowania i obejmują organizację plików, wcięcia, komentarze, deklaracje, operatory, spacje, konwencje nazewnictwa, techniki i zasady programowania, zasady programowania, najlepsze praktyki dotyczące architektury i tak dalej. Główną zaletą niektórych standardów jest fakt, że kod wygląda tak samo i jest napisany w tym samym stylu. Dzięki temu jest bardziej czytelny i pomaga programistom zrozumieć kod napisany przez innego programistę. Jeśli standardy kodowania są przestrzegane i konsekwentnie stosowane w całym procesie rozwoju, w przyszłości łatwiej będzie utrzymywać i rozszerzać kod, refaktoryzować go i rozwiązywać konflikty integracyjne. Konwencje kodowania są ważne dla programistów z kilku powodów:
  • 40-80% kosztów oprogramowania idzie na jego utrzymanie,
  • Prawie żadne oprogramowanie nie jest utrzymywane przez jego autora przez całe życie,
  • Konwencje kodowania poprawiają czytelność kodu źródłowego, umożliwiając programistom szybsze zrozumienie nowego kodu.
Szczerze mówiąc, jestem wielkim fanem standardów kodowania. Dla mnie sensowne jest spędzanie czasu na dyskusjach i kłótniach na ich temat, ponieważ jest to cenne zajęcie, które pozwoli Ci zaoszczędzić czas i wysiłek w przyszłości. Konwencje kodeksu powinny być często przeglądane. Reguły można zmienić z „wymaganych” na „opcjonalne” i odwrotnie. Jeśli niektóre z nich nie działają zgodnie z oczekiwaniami, należy je zmienić lub usunąć z wytycznych.

3. Używaj recenzji kodu

Przegląd kodu jest jednym z najpotężniejszych narzędzi do ulepszania kodu. 10 sposobów na ulepszenie kodu, potwierdzonych osobistymi doświadczeniami - 4Dlaczego? Ponieważ kod zostanie obejrzany przez tych ekspertów, którzy go nie napisali. A świeże spojrzenie jest bardzo przydatne. A przegląd kodu często pomaga zapobiegać pisaniu wręcz okropnego kodu. Wiem, że recenzje kodu nie zawsze są możliwe, ponieważ musisz znaleźć inną osobę, która jest chętna do ich wykonania. Ale to nie znaczy, że powinieneś pominąć korzystanie z tego narzędzia. Wręcz przeciwnie: recenzje kodu są powodem do znalezienia podobnie myślących ludzi, którzy również muszą poprawić jakość swojego kodu. Nawiasem mówiąc, kto powstrzyma cię przed znalezieniem ich tutaj na CodeGym? W miejscu, w którym każdy chce być programistą.

4. Napisz testy jednostkowe

Moją ulubioną techniką ulepszania kodu jest zdecydowanie pisanie testów jednostkowych. Im więcej ich napiszesz, tym lepiej. W programowaniu komputerowym testowanie jednostkowe to proces tworzenia oprogramowania, w którym najmniejszy możliwy do przetestowania fragment kodu źródłowego, zwany jednostką, jest testowany indywidualnie i niezależnie, aby sprawdzić, czy działa zgodnie z oczekiwaniami. Pomoże Ci to wykryć błędy w algorytmach i/lub logice przed wydaniem kodu. Ponieważ testy jednostkowe wymagają odpowiedniej struktury kodu, kod musi być podzielony na mniejsze, bardziej ukierunkowane funkcje. Każda jest odpowiedzialna za pojedynczą operację na zbiorze danych, a nie za duże funkcje, które wykonują kilka różnych operacji ( zasada pojedynczej odpowiedzialnościmówi cześć...). Drugą korzyścią płynącą z pisania dobrze przetestowanego kodu jest to, że można uniknąć łamania kodu podczas wprowadzania niewielkich zmian w istniejących funkcjach. Gdy testy jednostkowe zakończą się niepowodzeniem, powiedzą ci, że coś zostało napisane niepoprawnie. Na pierwszy rzut oka czas poświęcony programistom na pisanie testów jednostkowych wygląda na dodatkowy koszt. Jednak testy jednostkowe pozwolą zaoszczędzić czas na debugowaniu w przyszłości. To powinien być proces krok po kroku. Więc z uśmiechem idźmy dalej — napiszemy testy dla każdej metody i klasy :D

5. Używaj narzędzi do poprawy jakości kodu

Nie ma programisty, który nigdy nie popełnił błędu. Zazwyczaj kompilator przechwytuje problemy składniowe i arytmetyczne i wyświetla ślad stosu. Ale nadal mogą pojawić się problemy, których kompilator nie łapie. Na przykład niewłaściwie zaimplementowane wymagania, nieprawidłowe algorytmy, nieprawidłowo ustrukturyzowany kod lub inny potencjalny problem, który społeczność zna z doświadczenia. Jedynym sposobem wyłapania takich błędów jest poproszenie starszego programisty o przejrzenie kodu, prawda? Ale to podejście nie jest panaceum i niewiele zmieni. Dla każdego nowego programisty w zespole powinieneś mieć dodatkową parę oczu patrzących na jego kod. Na szczęście istnieje wiele narzędzi, które mogą pomóc w kontrolowaniu jakości kodu. Używałem Checkstyle, PMD, FindBugs i SonarQube w mojej pracy nad różnymi projektami. Są też inni. Wszystkie są zwykle używane do analizowania jakości kodu i generowania przydatnych raportów. Bardzo często raporty te są publikowane przez serwery ciągłej integracji, takie jak Jenkins.

6. Pisz prosty i zrozumiały kod

10 sposobów na ulepszenie kodu, potwierdzonych osobistymi doświadczeniami - 5Zawsze pisz prosty, zrozumiały i logiczny kod. Ludzie mają tendencję do pisania skomplikowanego kodu, aby udowodnić, że potrafią to zrobić. Prosty i logiczny kod zawsze działa dobrze, prowadzi do mniejszej liczby problemów i jest bardziej rozszerzalny. Dobry kod to najlepsza dokumentacja. Jeśli myślisz o dodaniu komentarza, zadaj sobie pytanie: „Jak mogę poprawić kod, aby ten komentarz nie był potrzebny?” — Steve'a McConnella.

7. Przeczytaj dokumentację

10 sposobów na ulepszenie kodu potwierdzonych osobistymi doświadczeniami - 6Jednym z najważniejszych nawyków dobrych programistów jest czytanie dużej ilości dokumentacji. Niezależnie od tego, czy są to specyfikacje, JSR, dokumenty API, samouczki czy coś innego, czytanie dokumentacji pomaga zbudować solidne podstawy dla najlepszego programowania. I wreszcie, nie porównuj się z innymi. Porównywanie się z innymi prowadzi jedynie do negatywnych uczuć i niezdrowej rywalizacji. Każda osoba ma swoje mocne i słabe strony. Oznacza to, że ważne jest, aby je znać i pracować z nimi. Zrób sobie inwentaryzację – wypisz swoje mocne strony i pracuj nad nimi. Programowanie to prawdziwa przyjemność: ciesz się nią.

„Stała jednego człowieka jest zmienną innego człowieka”.

Alana J. Perlisa

8. Śledź ciekawych blogerów

Tysiące entuzjastów na całym świecie pracuje z tymi samymi technologiami i pisze o nich. Blogi są często pisane przez samych programistów, a większość z nich dzieli się osobistymi opiniami i doświadczeniami. Dzięki blogom możesz zobaczyć różne perspektywy tej samej technologii. Na blogach można zobaczyć zarówno dobre, jak i złe technologie. Przynajmniej czytaj artykuły na Blogu Coding Dojo i CodeGym :) Śledź dobre blogi i komentuj posty, dziel się swoją opinią.

9. Czytaj książki o zawodzie

Nic nie zastąpi dobrej książki. Dobra książka uczy podstawowych pojęć w znacznie prostszej formie i odnosi się do rzeczy w prawdziwym świecie. Ich autorzy sami są świetnymi programistami. Czytając książki, możesz uczyć się na cudzych doświadczeniach. Sugeruję przeczytanie „Efektywnej Javy” Joshua Blocha. Ta książka przedstawia siedemdziesiąt osiem niezbędnych praktycznych zasad dla programistów: najlepsze rozwiązania problemów programistycznych, z którymi spotykasz się na co dzień. Zawiera najbardziej praktyczne, miarodajne wskazówki dotyczące pisania skutecznych, dobrze zaprojektowanych programów. Jeśli dopiero zaczynasz z Javą i nie masz doświadczenia w programowaniu, możesz przeczytać „Sams Teach Yourself Java 2 in 24 Hours”. A do pisania czystego kodu jest świetna książka Roberta Martina „Czysty kod”. Po przeczytaniu go,

10. Kod! Kod! Kod!

Nie możesz zostać dobrym programistą tylko przez uczenie się książki na pamięć. Łatwo jest mówić o koncepcjach teoretycznych. Ale możesz poznać ograniczenia języka lub wypracować najlepsze praktyki podczas pisania kodu. Dlatego, aby zostać dobrym programistą, trzeba pisać dużo kodu. Jeśli jesteś początkujący, zacznij od pisania programów do prostych zadań, takich jak ciąg Fibonacciego, palindromy, trójkąt Pascala itp. Następnie przejdź do większych zadań, takich jak drzewo wyszukiwania binarnego itp. Jeśli szukasz platformy online do ćwiczenia języka Java programy, spójrz na Coding Ground . Przebrnij przez kursy programowania, a gwarantuję, że Twoje umiejętności będą znacznie lepsze. Inną opcją jest wzięcie udziału w kursie Harvard CS50, który jest bezpłatny.

Podsumujmy

Osoba, która nie popełnia błędów, to ta, która nic nie robi. Dlatego mobilizujemy naszą cierpliwość i jak pracowity pasikonik doskonalimy nasze umiejętności kodowania. Aby to zrobić, nie zapomnij:
  • Czytaj kod innych
  • Dostarczaj i proś o recenzje kodu
  • Napisz testy jednostkowe
  • Użyj narzędzi, aby ulepszyć swój kod
  • Pisz prosty i zrozumiały kod
  • Przeczytaj dokumentację napisaną przez tych, którzy mogli
  • Śledź ciekawych programistów
  • Czytaj książki o zawodzie
  • Kod! Kod! Kod!
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION