• Porady
  • Rankingi
  • Produkty
  • Wiadomości
  • Artykuły
  • Download
  • Tematy
    Audio Drukarki Fotografia Gry Kamery sportowe Laptopy Projektory Routery Smartfony Serwery NAS Tablety TV WiFi AGD Monitory Hosting
  • Bezpieczeństwo
  • Mała Firma
  • Gorące tematy:
  • Najlepszy VPN 2021
  • Najlepszy antywirus 2021
  • Android 11
  • Android 12
  • Xbox Series X
  • PlayStation 5
  • iPhone 13
  1. Strona główna
  2. Wiadomości
  3. 7 rzeczy, które każdy nowy programista powinien...

7 rzeczy, które każdy nowy programista powinien wiedzieć

  • Computerworld Online/DP,
  • 17.06.2016, godz. 14:25
    • debugger
    • programista
    • systemy
    • wiersz poleceń
  • Udostępnij
    Tweet

Programiści-weterani dzielą się cenną wiedzą, którą zdobyli w ciągu wielu lat pracy i podpowiadają, jak profesjonalnie zająć się kodowaniem.

Przejdź do galerii

Podziel się

Udostępnij
Tweet
7 rzeczy, które każdy nowy programista powinien wiedzieć ()

7 rzeczy, które każdy nowy programista powinien wiedzieć (1 z 8)

Jeśli dołączyłeś niedawno do grona profesjonalistów w dziedzinie programowania, prawdopodobnie wydaje Ci się, że dzięki swojej edukacji oraz szkoleniom z informatyki i programowania, masz już wszystko w najmniejszym paluszku. Programiści, który zajmują się tym od wielu, wielu lat podkreślają jednak, że istnieje cała masa rzeczy dotyczących pisania kodów, których nie dowiesz się na uniwersytecie czy na kursie.

By dowiedzieć się, co to za rzeczy, przeprowadziłem rozmowy z wieloma weteranami w sztuce kodowania (wszyscy pracowali jeszcze w ostatniej dekadzie, a niektórzy przez ostatnich kilka dekad) i zapytałem, co, patrząc z perspektywy czasu, chcieliby wiedzieć w momencie, gdy zaczynali przygodę z kodowaniem. Nieważne, czy jesteś świeżo upieczonym absolwentem zaczynającym swoją pierwszą pracę, czy starszym pracownikiem, który zmienił branżę na programowanie, powinieneś kliknąć kilka razy na strzałkę w prawo, by poznać tych siedem wskazówek dla programistów-nowicjuszy.

7 rzeczy, które każdy nowy programista powinien wiedzieć (2 z 8)

Zdobądź wiedzę na temat podstawowych systemów

Ważną częścią rozwoju w programowaniu jest oczywiście znajomość języków programowania. Jednak, czego dowiedziałem się od kilku osób, programista powinien posiadać również wiedzę dotyczącą niższych poziomów.

„Wiele języków ma niewiele wspólnego z tym, co się dzieje na poziomach systemowych, ale jest to właściwie korzystne, dlatego że pozwala na większą produktywność przez większość czasu”, powiedział Pete Bull, inżynier wsparcia w Acquia. „Kiedy jednak natrafisz na problem, naprawdę ciężki orzech do zgryzienia, i będziesz potrzebował dogłębniejszego zrozumienia procesów, które zachodzą gdzieś w czeluściach komputera, całkiem przydatną umiejętnością okaże się debugowanie, możliwość przejrzenia systemowych połączeń i sprawdzenie, jak dany fragment kodu działa z resztą systemu”, napisał w e-mailu.

Podobnych rzeczy dowiedziałem się od Roberta Douglassa, zastępcy przewodniczącego w dziale Customer Satisfaction na Platform.sh: „Kiedy zaczynałem z programowaniem, było mnóstwo rzeczy, o których nie miałem pojęcia. Systemy plików, networking, jak przechowywane są rzeczy w pamięci – to tylko te oczywiste przykłady. A to znaczyło, że niekoniecznie zrozumiałem cele niektórych konstrukcji programowania, o których mnie uczono.”

7 rzeczy, które każdy nowy programista powinien wiedzieć (3 z 8)

Poznaj narzędzia wiersza poleceń

Istnieją duże szanse, że jako programista spędzisz mnóstwo czasu, pracując w fantazyjnym Zintegrowanym Środowisku Programistycznym bądź w edytorze kodów. Tak czy siak wiedza na temat tego, jak poradzić sobie z niektórymi rzeczami przy pomocy wiersza poleceń czasami może bardzo ułatwić życie.

„Czasami możesz pracować ze sprzętem, na którym musisz zrobić wszystko natychmiast, a narzędzia, którymi dysponujesz, są ograniczone”, powiedział mi pewien 20-letni weteran-programista, który chciał pozostać anonimowy. „Musisz umieć używać interpretatora poleceń, tak jak umiesz oddychać: polecenia takie jak find, comm, diff, vi/vim, sed, awk, czy jak napisać małe skrypty bezpośrednio w wierszu poleceń, by znaleźć plik, w którym trzeba wprowadzić zmiany natychmiast, bo produkcja się zatrzymała, a Jacek, który popełnił błąd przy wpisywaniu URL nieznanego pliku jest akurat na wakacjach.”

Bull, który początkowo zaczął używać narzędzie Microsoftu, a później przeszedł powoli do Linuxa, zgodził się z tym, dodając: „Na pewno nauczyłbym się wszystkich szczegółów dotyczących wiersza poleceń i wszystkich przydatnych rzeczy, które są dostępne w systemie uniksopodobnym. Przypomina mi się nawet teraz jeden kod, który napisałem lata temu, pracowałem nad nim pewnie kilkanaście tygodni, a który mógł być napisany znacznie lepiej przy użyciu jednego wiersza poleceń (grep + awk).”

7 rzeczy, które każdy nowy programista powinien wiedzieć (4 z 8)

Twój debugger jest Twoim przyjacielem

Wiele czasu w pracy spędzisz na pewno na tropieniu wad w systemie. Dave Varon, programista-bioinformatyk w Novartis, podkreśla korzyści płynące z debuggera oraz to, jak wiele swego czasu możesz dzięki niemu zaoszczędzić. „Naucz się używać debuggera!”, powiedział. „Poświęć na to dodatkowy dzień czy dwa. Jeśli nie widzisz oczekiwanych rezultatów, po prostu to zdebuguj: ustal punkty przerwania, prześledź jeszcze raz swój kod, a zwłaszcza kody napisane przez innych. Zaoszczędzi Ci to mnóstwo złości i frustracji, a nawet lepiej – nauczysz się o kodowaniu czegoś, co jest możliwe tylko przy sprawdzaniu kodu należącego do kogoś innego.”

7 rzeczy, które każdy nowy programista powinien wiedzieć (5 z 8)

Naucz się pisać testy

Niektórzy programiści uważają, że testowanie, tj. pisanie testów weryfikujących małe jednostki kodów, bardzo dobrze się sprawdza i właściwie jest kluczowe. Richard Handlogg, programista bazy danych w Strategic Power Systems, zalicza się do tych osób. „Myślę, że najlepszą radą, jaką mógłbym dać komuś, kto chce nauczyć się programowania, jest zdobycie umiejętności pisania dobrych testów i to dość wcześnie”, odpisał mi w e-mailu.

7 rzeczy, które każdy nowy programista powinien wiedzieć (6 z 8)

Wyprzedzaj zmiany i zdobywaj wiedzę

To oczywiste, że technologia zmienia się obecnie bardzo szybko. I chodzi tu nie tylko o dobra konsumenckie, ale także podstawowe systemy, języki i narzędzia, których w swojej pracy używają programiści.

Adam Wulf, mobilny programista i założyciel Milestone Made, podkreśla, że nowi programiści powinni być przygotowani na zmiany, a nawet je wyprzedzać. „W tej chwili powiedziałbym, że powinieneś być nastawiony na zdobywanie wiedzy o całkowicie nowej technologii co cztery lata”, powiedział. „Dobre podstawy zawsze się przydają, jednak narzędzia i technologie, których używasz w tej chwili, za 4 lata będą wyglądać zupełnie inaczej.”

„Nigdy nie pisze się projektów tylko w jednym języku, używając zaledwie jednego frameworku”, powiedział programista, który chciał pozostać anonimowy. „Nigdy nie będziesz pracował tylko nad jednym elementem projektu, musisz przyzwyczaić się do pracy raz przy jednym, raz przy drugim projekcie, do używania różnych języków i technologii”, napisał.

7 rzeczy, które każdy nowy programista powinien wiedzieć (7 z 8)

Współpracuj z innymi

Wbrew powszechnemu przekonaniu, że programiści zawsze pracują sami, ze słuchawkami w uszach, okazuje się, że muszą oni ciągle pracować z innymi ludźmi. Ben Miller, CTO w Sinclair Digital Ventures, podkreśla, jak ważna do osiągnięcia sukcesu jest umiejętność pracy w zespole. „Duże projekty wiążą się z wieloma elementami, które trzeba dopasować, a dzielenie problemu może wywołać ogromne problemy, jeśli nie będziesz wystarczająco ostrożny”, napisał w e-mailu. „Zanim zaczniesz optymalizować jeden algorytm, popracuj z zespołem i upewnij się, że problem nie uległ kolejnemu podziałowi. Kodowanie to sport drużynowy!”

Varon podkreślił również znaczenie umiejętności pracy z innymi, mówiąc: „Jeśli nie możesz poradzić sobie z czymś sam, tworząc ponownie API czy debugując, poproś o pomoc. To, że wydaje Ci się, że Twój kod to prawdziwe dzieło sztuki, nie oznacza wcale, że nie jest on kiepski albo że po prostu nie może być lepszy. Tak jak w szkole, uczniowie mają czasami podobne wątpliwości bądź pytania, na które może odpowiedzieć tylko druga osoba. Bądź z kolegami i koleżankami w dobrych stosunkach. Czasami wystarczy, że opowie się o jakimś problemie na głos, a od razu nadchodzi olśnienie.

Mój anonimowy informator podzielił się podobną myślą dotyczącą zalet pracy w zespole. „Podjęcie jakichś działań i robienie tego, czego się od Ciebie wymaga, czyli podstawowych rzeczy zapewni Ci pracę, to prawda”, powiedział. „Tu jednak powinienem Cię ostrzec. Musisz być ostrożny, bo możesz utknąć w jednym punkcie, robiąc ciągle jedno i to samo.”

7 rzeczy, które każdy nowy programista powinien wiedzieć (8 z 8)

Nie bój się zając się czymś innym niż kodowanie

Miller udzielił szczególnie ciekawej rady, która na pierwszy rzut oka nie jest oczywista. „Zajęcie się czymś innym niż kodowanie może doprowadzić do awansu”, powiedział. „Jeśli znajdziesz najprostszy sposób rozwiązywania problemów, a Twój kod będzie wystarczająco bezpieczny, a utrzymanie darmowe, dostaniesz dużo więcej pracy. Prawdopodobnie poproszą Cię nawet, byś nauczył tego innych”, wyjaśnił. „Mówiąc prościej, jeśli będziesz chciał mieć pewną posadę, paradoksalnie możesz zaszkodzić tym swojej karierze.”

Najnowsze galerie
Najlepsze programy systemowe do Androida
Jaki laptop do gier. Konfiguracje od 3,5 do 9 tys. zł
Komputer do gier. 5 konfiguracji od 3000 do 8000 zł
Najpopularniejsze
Windows 10: sześć sposobów na uruchomienie aplikacji jako administrator [PORADNIK]
The Last of Us - Sony szykuje remake gry na PlayStation 5
Neuralink Elona Muska udostępnił film, na którym małpa steruje grą za pomocą myśli
Najlepszy procesor dla gracza: budżetowy, topowy i średniak
Android 11 - lista telefonów do aktualizacji [9.04.2021]
Apple załatwiło konkurencję. Zgadniesz który model najpopularniejszy?
Previous Next

PC World ułatwia podejmowanie właściwych decyzji zakupowych poprzez liczne testy najnowszego sprzętu i osprzętu, oprogramowania oraz usług internetowych

  • Redakcja
  • Reklama
  • Usługi marketingowe
  • Newslettery
  • RSS
  • Polityka prywatności
  • Polityka ciasteczek
  • Wytyczne ASME
  • Regulamin

Tematy

  • Audio
  • Drukarki
  • Fotografia
  • Gry
  • Kamery sportowe
  • Laptopy
  • Projektory
  • Routery
  • Smartfony
  • Serwery NAS
  • Tablety
  • TV
  • WiFi
  • AGD
  • Monitory
  • Hosting

Serwisy IDG

  • Kiosk
  • E-Seminaria
  • Konferencje
  • Whitepapers
  • Business IT
  • Sieci
  • Marketing & Social Media

Znajdź nas

Kopiowanie, reprodukcja, retransmisja lub redystrybucja jakichkolwiek materiałów zamieszczonych w serwisie PC World w całości lub w części, w jakimkolwiek medium lub w jakiejkolwiek formie bez oficjalnej zgody wydawnictwa jest stanowczo zabronione.

Zamów reklamę

(+48) 662 287 735
Napisz do nas
Reklama zamknie się za 15 sekund. Przejdź do serwisu »