JavaRush /Blog Java /Random-PL /Przerwa kawowa #42. Co zrobić, jeśli czegoś nie wiesz. 5 ...

Przerwa kawowa #42. Co zrobić, jeśli czegoś nie wiesz. 5 najlepszych bibliotek Java zapewniających maksymalną produktywność

Opublikowano w grupie Random-PL

Co zrobić, jeśli czegoś nie wiesz

Źródło: Dev.to Jeśli jesteś programistą, prędzej czy później prawdopodobnie pojawi się sytuacja, w której nie wiesz, jak rozwiązać problem. To dość nieprzyjemny moment na każdym etapie kariery. W końcu nadal musisz wykonać zadanie, mimo że czegoś nie wiesz. W tym artykule podzielę się moimi osobistymi doświadczeniami i powiem, co pomoże w znalezieniu rozwiązania takiego problemu.Przerwa kawowa #42.  Co zrobić, jeśli czegoś nie wiesz.  5 najlepszych bibliotek Java zapewniających maksymalną wydajność — 1

Zadawać pytania

Kiedy byłem początkujący, bałem się zadawać pytania, aż do ostatniej chwili próbowałem wszystko rozwiązać sam. Spędzałem mnóstwo czasu na rozwiązywaniu problemu i milczałem, aż w końcu musiałem porozmawiać z szefem lub klientami. Zrozumiałem, dlaczego zrobiłem to, co zrobiłem. Unikałam zadawania pytań, bo nie chciałam wyjść na głupią przy innych. Wydawało mi się, że wszyscy poza mną szybko pojęli istotę i zrozumieli, o co chodzi. Dopiero dzięki kolegom wreszcie zaczęłam odkładać na bok dumę i pytać o to, czego nie rozumiem.

Google i YouTube to Twoi najlepsi przyjaciele

Kiedyś obejrzałem film, w którym Google odpowiadał na absurdalne lub zabawne pytania. Mimo że odpowiedzi były również bardzo zabawne, zdałem sobie sprawę, że Google z pewnością może pomóc, jeśli pojawią się jakiekolwiek pytania. Dlatego jeśli jesteś w ślepym zaułku, nie zapomnij poszukać odpowiedzi za pośrednictwem tej wyszukiwarki. YouTube również bardzo pomaga mi w rozwiązywaniu problemów. Zwłaszcza w przypadkach, gdy potrzebne jest głębsze zrozumienie tematu. Zawsze więc szukam filmów tematycznych.

Dodatkowa para oczu nie zaszkodzi

Nie pozwól, aby złość i frustracja Cię pochłonęły, jeśli nie możesz rozwiązać problemu. Wyraźnym przykładem takiej sytuacji mogą być przypadki, w których trzeba utrzymać przestarzałą bazę kodu, gdzie z powodu braku dokumentacji trzeba wykonać inżynierię wsteczną. Oczywiście wymaga to wiele wysiłku. Będziesz musiał zagłębić się w bazę kodu, zrozumieć styl poprzednich programistów. W takich przypadkach zdecydowanie zaleca się, aby ktoś inny niż ty sprawdził kod. Druga osoba może wskazać rzeczy, które przeoczyłeś lub których nie zrozumiałeś. W ten sposób możesz przyspieszyć rozwiązanie problemu.

Nie załamuj się, jeśli utkniesz na czymś.

Chcę na to zwrócić szczególną uwagę. Nie złość się na siebie, jeśli gdzieś utkniesz. Tak, gdy nie można rozwiązać problemu, nie jest to zbyt przyjemne. Syndrom oszusta może się pogłębić, możesz czuć się bezużyteczny i tracić pewność, że jesteś dobrym programistą. Jestem pewien, że jeśli ktoś nigdy w swojej pracy nie utknął na czymś, to tylko dlatego, że działa w swojej strefie komfortu, nie wychodząc poza swoje zwykłe działania. Aby być przygotowanym na nieoczekiwane sytuacje, komunikuj się z ludźmi, którzy mogą popchnąć Cię do podniesienia standardów zawodowych. Nie denerwuj się, jeśli spotkasz coś, na co nie byłeś przygotowany. Takie przypadki pomagają zidentyfikować luki w wiedzy i odpowiednio je wypełnić.

Rób przerwy

Może nie wydawać się to zbyt produktywne, ale kiedy pracujesz nad czymś dużym i złożonym, robienie krótkich przerw ogromnie pomaga w łagodzeniu stresu. Spaceruj przez 15 minut, rozmawiaj z kimś, ćwicz, a nawet zdrzemnij się. Odpoczynek pomaga odświeżyć umysł, a poza tym przez cały ten czas mózg nadal pracuje i gdzieś na poziomie podświadomości rozwiązuje stojące przed nim zadanie. W rezultacie możesz mieć chwilę eureki, po prostu pijąc kawę.

Wniosek

Pierwszą rzeczą do zrobienia przy rozwiązywaniu problemu jest sporządzenie listy tego, co wiesz, a czego nie wiesz. Następnie zadaj pytania wyjaśniające osobie, która zleciła Ci to zadanie. Być może na tym etapie coś się wyjaśni i uda się usunąć część pytań z kategorii „nie wiem”. Odpowiedzi na inne pytania warto szukać samodzielnie w Google lub YouTube. Daj sobie trochę czasu na poszukiwania. Jeżeli nie udało Ci się samodzielnie rozwiązać problemu, nie wahaj się poprosić o pomoc kolegów.

5 najlepszych bibliotek Java zapewniających maksymalną produktywność

Źródło: Medium Prawdopodobnie kiedykolwiek pisałeś kod w Javie i pomyślałeś: „Musi istnieć lepszy sposób…”. Biblioteki Java mogą pomóc w rozwiązaniu takich problemów. Zwracam uwagę na pięć najlepszych, moim zdaniem, bibliotek, których wykorzystanie zwiększy Twoją produktywność i efektywność pracy.Przerwa kawowa #42.  Co zrobić, jeśli czegoś nie wiesz.  5 najlepszych bibliotek Java zapewniających maksymalną wydajność - 2

1. Lombok

Project Lombok to biblioteka Java, która wykorzystuje adnotacje w celu zmniejszenia standardowego kodu. Możesz użyć adnotacji takich jak @Getter, aby automatycznie wygenerować metody getField() . Oto niektóre obsługiwane adnotacje:
  • @Getter i @Setter, które generują gettery i settery;
  • @EqualsAndHashCode automatycznie generuje metody Equals i HashCode zgodne z kontraktami Equals i HashCode ;
  • @ToString generuje metodę toString() zgodną z formatem NazwaKlasy(NazwaPola = wartość, NazwaPola2 = Wartość...) ;
  • @Builder automatycznie implementuje wzorzec konstruktora, aby ułatwić tworzenie POJO;
  • @Data to skrót od @Getter, @Setter, @EqualsAndHashCode, @ToString i @RequiredArgsConstructor!
Istnieje wiele innych obsługiwanych i łatwych do dostosowania adnotacji. Praca z nimi uratuje Cię od pisania szablonowego kodu.

2. Gujawa

Guava to biblioteka Java utworzona i obsługiwana przez Google. Zawiera wiele narzędzi, które są szeroko stosowane w pracy z kodem. Oto tylko kilka funkcji Guava:
  • Rozszerzenia kolekcji takie jak Multimap<k, v="">, gdzie Map obsługuje wiele wartości dla danego klucza, co jest odpowiednikiem Map <k, Collection="" <v="">> z czystszym API ;</k, </k,>
  • pakiet Graphs, który zawiera szereg narzędzi do modelowania danych graficznych;
  • narzędzia współbieżności, takie jak MoreExecutors, Atomics i ListenableFuture.
W bibliotece Guava można wiele znaleźć. Wsparcie Google sprawia, że ​​jest on dość popularny, więc możesz mieć pewność, że ich interfejsy API są dokładnie przetestowane i obsługiwane. Jeśli chcesz rozwiązać jakikolwiek typowy problem z Javą, z pewnością znajdziesz rozwiązanie w Guava!

3. Hibernacja

Hibernate to biblioteka mapowania obiektowo-relacyjnego, która umożliwia interakcję z bazą danych bez konieczności martwienia się o tłumaczenie między tabelami SQL i POJO. Witryna internetowa Hibernate zawiera następujące informacje o bibliotece: „Dzięki Hibernate możesz tworzyć długotrwałe klasy zgodnie z naturalnymi zasadami obiektowymi, w tym dziedziczeniem, polimorfizmem, asocjacjami, kompozycją i kolekcjami Java. Hibernate nie wymaga interfejsów ani klas bazowych dla klas długotrwałych i pozwala na trwałość dowolnej klasy lub struktury danych. Użyj Hibernacji, aby ulepszyć trwałe przechowywanie danych i wyeliminować tysiące linii kodu bazy danych.

4. Udawaj

OpenFeign to biblioteka firmy Netflix, która ułatwia tworzenie klientów HTTP RESTful w Javie. Aby utworzyć klienta Feign, wystarczy opisać interfejs ze szczegółami żądania i odpowiedzi. Najlepiej zilustruje to przykład:
@FeignClient(url = "https://github.com")
interface GitHubClient {
    @RequestLine("GET /users/{username}/repos?sort=full_name")
    List<repository> repos(@Param("username") String owner);

    @RequestLine("GET /repos/{owner}/{repo}/contributors")
    List<contributor> contributors(@Param("owner") String owner, @Param("repo") String repo);

    @RequestLine("POST /repos/{owner}/{repo}/issues")
    void createIssue(Issue issue, @Param("owner") String owner, @Param("repo") String repo);
}
</contributor></repository>
Wspomniany powyżej interfejs GitHubClient wykona żądania GET i POST opisane w metodach. Ten klient domyślnie użyje formatu JSON dla wszystkich żądań. Istnieje wiele ustawień klienta Feign:
  • kodery i dekodery umożliwiające wybór sposobu serializacji i deserializacji POJO w sieci;
  • Ponowne próby, aby określić reguły i logikę ponawiania prób;
  • RequestInterceptory do innych zadań poprzedzających żądanie, takich jak odbieranie plików cookie lub autoryzacja.
Używając Feign, możesz wyeliminować potrzebę ręcznego pisania klientów HTTP! Uwaga: jeśli używasz Springa, powinieneś użyć Spring Cloud OpenFeign , którego integracja ze Springiem jest lepsza niż sam OpenFeign.

5. Wiosenne buty

Ostatnią, ale nie najmniej ważną biblioteką jest Spring Boot . Spring Boot upraszcza proces tworzenia gotowych do produkcji aplikacji Java. To pozwala:
  • tworzyć samodzielne aplikacje Spring;
  • bezpośrednio osadzaj Tomcat, Jetty lub Undertow (bez konieczności wdrażania plików WAR);
  • zapewnić zależności „startowe” w celu uproszczenia konfiguracji kompilacji;
  • automatycznie konfiguruj biblioteki Spring i innych firm;
  • Zapewnia gotowe funkcje, takie jak metryki, kontrole stanu i konfiguracja zewnętrzna.
Korzystanie ze Spring Boot wymaga znacznej nauki, ale zapewniam, że warto. Spring Boot skrócił czas tworzenia wszystkich moich projektów i nadal zapewnia korzyści dzięki swojej stabilności, rozszerzalności i czytelności.

Wniosek

Pomimo tego, że Java przez wielu uważana jest za „stary” język, któremu brakuje niektórych cech nowszych języków, posiada unikalne wsparcie w postaci dużej liczby bibliotek i ogromnej społeczności programistów. Dzięki temu w swojej pracy doświadczysz znacznie mniej problemów. Korzystając z bibliotek Java, możesz zwiększyć swoją produktywność. Nie wymyślaj koła na nowo – skup się na kluczowych kompetencjach!
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION