JavaRush /Blog Java /Random-PL /Jakie są rodzaje zadań Java?

Jakie są rodzaje zadań Java?

Opublikowano w grupie Random-PL
Kiedy człowiek zaczyna uczyć się programowania samodzielnie lub na kursach online, bardzo ważne jest zdefiniowanie „pola działania” i usystematyzowanie wszystkiego. W artykule prezentujemy takie usystematyzowanie – zadania Java dla początkujących, wskazując, jak szczegółowo dany typ jest prezentowany w internetowym kursie do nauki programowania JavaRush oraz przydatne linki. Jakie są rodzaje zadań Java - 1

Problemy ze składnią języka

Podstawy, pierwsze zadania programistyczne w Javie dla początkujących - od „Hello World” po pętle i tablice. Jest ich wiele w JavaRush: są one szczególnie gęsto skoncentrowane w zadaniu Java Syntax na pierwszych sześciu poziomach. Mało prawdopodobne, że trzeba będzie szukać dodatkowych źródeł, żeby je przyswoić – jest ich tutaj całkiem sporo. Ponadto przy rozwiązywaniu bardziej złożonych problemów automatycznie powtarzasz składnię. Jeśli jednak nagle będziesz ich potrzebować, w każdym podręczniku dotyczącym problemów z Javą dla początkujących znajdziesz podobne ćwiczenia. Tyle że w tych książkach problemów nie będzie natychmiastowego sprawdzania, jak w JavaRush.

Zadania zbiorowe

Kolekcje to pierwszy „poważny” temat, z którym spotyka się początkujący programista na studiach. Zagadnienia Java dla początkujących, dedykowane kolekcjom, są również szeroko reprezentowane w JavaRush - na siódmym i ósmym poziomie zadania Java Syntax. Tutaj student po raz pierwszy usłyszy o Java Collections Framework, będzie mógł pracować z interfejsami Set, List i Map oraz niektórymi ich implementacjami. Jednak na tym etapie zapoznasz się jedynie z tym przydatnym narzędziem i prostymi zadaniami w Javie. Bardziej szczegółowe badanie kolekcji nastąpi podczas zadania Kolekcje Java . Widzisz, jak ważny jest ten obiekt, ponieważ całe zadanie zostało nazwane na jego cześć!

Problemy z wyjątkami

Za pracę z nietypowymi sytuacjami w Javie odpowiada specjalny mechanizm, który znacznie ułatwia „wyłapywanie” błędów w programach. Aby jednak w pełni z niego skorzystać, musisz zrozumieć, jak działa obsługa wyjątków w Javie. W JavaRush jest wiele takich zadań i można je znaleźć nawet w pierwszym zadaniu dotyczącym składni języka Java.
Jakie są rodzaje zadań Java - 2

Problemy z konwersją typów

Oczywiście grupę tę można zaliczyć do podstawowych zadań składniowych. Jednak naszym skromnym zdaniem takie zadania są często niedoceniane, a początkujący brną w nie. Dlatego odejdźmy od szablonów: uczymy się zadań Java dla początkujących na temat „Konwersja typów pierwotnych” nie na samym początku, jak to często się dzieje, ale nieco później - pod koniec pierwszego zadania dotyczącego składni Java. Następnie dowiemy się, jak rzutować typy nieprymitywne (obiekty), studiując OOP w zadaniu Java Core . Takich zadań w JavaRush jest mnóstwo, nie musisz szukać niczego dodatkowego.

Zadania do zrozumienia OOP

OOP nie jest tematem najtrudniejszym, ale niezwykle ważnym. Ponadto zawiera wiele subtelności, które ankieterzy lubią wykorzystywać, aby wyłapać przyszłych „juniorów”. Kurs JavaRush zawiera praktyczne problemy programistyczne dla początkujących, które pomogą Ci zrozumieć podejście obiektowe. Aby jednak naprawdę zrozumieć OOP, zalecamy przeczytanie literatury na ten temat (na przykład Kay Horstmann, Gary Cornell's Professional's Library, McLaughlin's Object-Oriented Analysis and Design lub inne książki ).

Zadania dotyczące wątków we/wy

Strumieni I/O zaczynamy używać na długo zanim je zrozumiemy - to jest Java, kochanie, a wyjaśnienie System.out, a w dodatku System.in początkującemu zielonemu, jest trudne i niepotrzebne na pierwszym etapie. Ale podczas zadania Java Core wiedza wystarczy, aby zrozumieć ten nieco zagmatwany temat, a mówimy nie tylko o wejściu/wyjściu konsoli, ale także o pracy z systemem plików. Najważniejsze, żeby nie pomijać tych zadań (w JavaRush jest ich całkiem sporo) i konsekwentnie rozumieć teorię.

Puzzle

Przez „łamigłówki” rozumiemy zadania o zwiększonej złożoności, które wymagają nie tyle wiedzy, ile umiejętności jej zastosowania w niestandardowy sposób. Są to zadania typowe dla Java Juniora - cieszą się dużą popularnością na rozmowach kwalifikacyjnych, jednak w prawdziwej pracy zagadki w tym sensie nie są zbyt częste. Dlatego jest ich w JavaRush, ale nie jest ich zbyt wielu (zwykle na zajęciach Kapitana Bobrowa).
Jakie są rodzaje zadań Java - 3
Gdzie znajdziesz puzzle:

Algorytmy i struktury danych

Trwają ciągłe debaty na temat algorytmów i struktur danych na temat tego, jak bardzo przyszły programista ich potrzebuje. Jeszcze raz odpowiemy: do rozwoju myślenia – są potrzebne, bezpośrednio do pracy – rzadko. Ponieważ dla Javy i innych języków napisano już biblioteki z implementacjami wszystkich znanych algorytmów sortowania, wyszukiwania i innych. Jednak tworzenie własnych implementacji algorytmów jest bardzo przydatne, podobnie jak rozwijanie zrozumienia ich złożoności. Szczególnie dla osób, które w szkole uczyły się wyłącznie matematyki. W zasadzie zadania te przeplatane są zagadkami, z tą tylko różnicą, że wszystkie są wielokrotnie opisywane i rozwiązywane online. Do weryfikacji nie potrzebujesz nawet walidatora. Wybierz dowolny kurs, na przykład Uniwersytet Princeton , ich koledzy z Kalifornii lub Stepic . Przy okazji, w kursie CS50 , którego tłumaczenie umieściliśmy na JavaRush, omawianych jest kilka ważnych algorytmów i struktur danych. Zdecydowanie zalecamy obejrzenie filmów z poziomów 2-5 i wykonanie zadań w Javie. Problemy z wykresem: Zadania dotyczące struktury danych:

Wielowątkowość

Każdy może napisać program, który wypisuje „Hello World”... A co powiesz na użycie Java Thread API, aby słynna fraza została wydrukowana z dodatkowego wątku? I żeby pięć razy wypisało „Hello world” z pięciu różnych wątków i żeby linie nie były naprzemienne?.. Wielowątkowość to prawdziwy „test wytrzymałości” podczas nauki Java Core. Całe zadanie w JavaRush poświęcone jest temu bardzo trudnemu tematowi, zwanemu wielowątkowością Java i zawiera dużą liczbę zadań, dzięki czemu uczeń może poczuć „ból i piękno” równoległych procesów. Najczęściej pierwsze „prawdziwe” projekty studentów obejmują w większym lub mniejszym stopniu wielowątkowość. Na przykład proste gry.
Jakie są rodzaje zadań Java - 4

Problem z wielowątkowością

Przy okrągłym stole siedzi pięciu milczących filozofów. Przed każdym z nich stoi talerz spaghetti. Widelce leżą na stole po lewej i prawej stronie każdego filozofa (między nimi). Filozof może albo jeść, albo myśleć. Co więcej, może jeść tylko wtedy, gdy trzyma dwa widelce – jeden po prawej i po lewej stronie. „Podnieś widelec” i „odłóż widelec” to osobne czynności, które wykonuje się sekwencyjnie.

Zadania dotyczące typów ogólnych

Generalizacja jest samą istotą automatyzacji, czyli w pewnym sensie programowania. Dlatego nie należy ignorować tematu uogólnień lub rodzajów generycznych w Javie. JavaRush ma ogólne zadania programistyczne (głównie w zadaniu Kolekcje Java, począwszy od poziomu 5). Gdzie można znaleźć przydatne ćwiczenia i materiały dotyczące leków generycznych:

Zadania dotyczące wzorców projektowych

Na pewnym etapie (około 2/3 kursu JavaRush) początkujący programista musi zacząć dokładniej przyglądać się zasadom dobrych manier w programowaniu. Mówimy o poprawnym formatowaniu kodu (co jest łatwiejsze) i wzorcach projektowych (co jest trudniejsze). JavaRush ma takie zadania. Potrzebne są dodatkowe - można je znaleźć np. w książce (część 4) „ Java. Metody programowania » Blinov i Romanchik. Możesz też pomyśleć o tym, jak zmieścić już rozwiązane problemy w szablonie.

Testów jednostkowych

Ważną umiejętnością każdego programisty, często błędnie przypisywaną wyłącznie testerom, jest pisanie testów jednostkowych (lub jednostkowych) dla własnego kodu. JavaRush ma kilka zadań testów jednostkowych, ale naprawdę nie powinieneś zawracać sobie głowy szukaniem nowych. Kiedy już nauczysz się pisać testy, wyrób sobie nawyk pokrywania swojego kodu (we własnych projektach, w zadaniach edukacyjnych) testami jednostkowymi. Jest to o wiele bardziej przydatne niż sprawdzanie danych wyjściowych z konsoli, na co często cierpią studenci-programiści. Ponadto bardzo często pierwszą rzeczą, którą firmy powierzają „juniorom”, jest pisanie testów jednostkowych dla cudzego kodu.

Problemy z wyrażeniami regularnymi

Jest to prosty temat, którego prawie żaden początkujący nie rozumie, ponieważ jest nietypowy i lenistwo. Faktycznie warto poświęcić kilka dni na przestudiowanie tematu, zrozumienie „stałych bywalców” i zdobycie przewagi nad tymi, którzy tego nie zrobili. Jest to przydatne również dlatego, że są one prawie niezależne od języka programowania: naucz się go raz, możesz go używać wszędzie. W JavaRush nie ma problemów skupiających się na wyrażeniach regularnych, chociaż niektóre można rozwiązać za ich pomocą. Oto kilka dodatkowych zasobów ułatwiających zrozumienie tematu:
Jakie są rodzaje zadań Java - 5

Problemy z Javą dzięki trikowi

W tej kategorii znajdują się trudne zadania, które najczęściej nie są bezpośrednio związane z rzeczywistą pracą programisty. Znajdują się one głównie podczas rozmów kwalifikacyjnych, służą do sprawdzenia stopnia zrozumienia/znajomości danej technologii przez kandydata lub do sprawdzenia jego uwagi. Jeśli potrzebujesz takich problemów, skorzystaj z Google „Problemy z wywiadem w języku Java” lub czegoś podobnego. Najprawdopodobniej na różnych forach znajdziesz wiele kolekcji, a także pytania i odpowiedzi. Warto je zrozumieć, ale czy warto poświęcać na nie zbyt dużo czasu? Kay Horstmann kiedyś dobrze wypowiadał się na temat takich problemów w swoim artykule dla InformIT, którego tłumaczenie opublikowaliśmy w styczniu. Krótko podsumowując jego myśl, istnieją zadania w świecie rzeczywistym i istnieje wszechświat równoległy – „Problemy z wywiadem”.

Problemy z wyrażeniem lambda

Wsparcie dla wyrażeń lambda pojawiło się w Javie 8, lecz wciąż nie wszyscy programiści chcą z nich korzystać. Jednak dziś pojęcie „zadań dla Java Junior” obejmuje manipulacje wyrażeniami lambda, dlatego polecamy zapoznać się z nimi chociażby z bardzo przystępnego artykułu „ Popularne o wyrażeniach lambda w Javie. Z przykładami i zadaniami .”

Zadania sieciowe

Serializacja w JSON, RMI, HttpUrlConnection, Socket... to nie są zadania programistyczne dla początkujących. Wymagają solidnej wiedzy i są swego rodzaju pomostem do własnych projektów, staży i pracy. Na wyższych poziomach JavaRush (zadanie Java Collections) dostępnych jest wiele ćwiczeń pozwalających opanować te technologie i podejścia, ale wszystko stanie się znacznie jaśniejsze podczas stażu online.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION