Bycie informatykiem nie polega na programowaniu; chodzi o badanie algorytmów (seria kroków, rozumianych przez kogoś lub coś, w celu wykonania zadania w określonej liczbie kroków). Wielu informatyków w ogóle nie programuje. Rzeczywiście, Edsger Dijkstra powiedział kiedyś: „Informatyka to nie tyle komputery, co astronomia teleskopy”.
Kroki
Część 1 z 4: Rozpoczęcie
Krok 1. Zostań uczniem przez całe życie
Bycie informatykiem polega na nauce bycia studentem, nie tylko podczas szkolenia, ale przez cały okres swojej kariery. Zmienia się technologia, rozwijają się nowe języki, powstają nowe algorytmy: musisz umieć uczyć się nowych rzeczy, aby być na bieżąco.
Krok 2. Zrozum swoją przyszłą rolę
Jako informatyk Twoim zadaniem jest rozwiązywanie problemów. Chodzi również o rozwiązywanie problemów w taki sposób, aby w końcu wszystkich zadowolić. Oznacza to nauczenie się dobrych umiejętności komunikacyjnych, a także umiejętności kodowania, ponieważ jest bardziej prawdopodobne, że dopasujesz potrzeby swojego klienta do odpowiedniego rozwiązania, jeśli dobrze słuchasz i wyraźnie przekazujesz swoje zrozumienie, a także informujesz klienta podczas projektu.
Część 2 z 4: Pisanie pseudokodu
Krok 1. Zacznij od pseudokodu
Pseudokod nie jest tak naprawdę językiem programowania, ale jest sposobem reprezentowania programu w sposób bardzo podobny do języka angielskiego. Najbardziej znany ci algorytm znajduje się prawdopodobnie na butelce szamponu: namyj się, spłucz, powtórz. To jest algorytm. Jest zrozumiałe dla Ciebie („Agenta komputerowego”) i ma skończoną liczbę kroków. A może to…
Krok 2. Dostosuj pseudokod
Przykład szamponu nie jest zbyt dobrym algorytmem z dwóch powodów: nie ma warunku, na którym można by zakończyć, i tak naprawdę nie mówi, co powtórzyć. Powtórzyć pienienie? Albo tylko płukanie. Lepszym przykładem może być „Krok 1 – Piana. Krok 2 – Płukanie. Krok 3 – Powtórz kroki 1 i 2 (2 lub 3 razy, aby uzyskać lepsze wyniki), a następnie zakończ (wyjdź).” Jest to dla ciebie zrozumiałe, ma warunek końcowy (skończona liczba kroków) i jest bardzo wyraźne.
Część 3 z 4: Algorytmy pisania
Krok 1. Spróbuj napisać algorytmy do różnych rzeczy
Na przykład, jak dostać się z jednego budynku do drugiego na terenie kampusu lub jak zrobić zapiekankę. Wkrótce zobaczysz algorytmy w każdym miejscu!
Krok 2. Gdy nauczysz się pisać algorytmy, programowanie powinno przyjść ci naturalnie
Kup książkę i przeczytaj ją w całości, aby nauczyć się języka. Unikaj samouczków online, ponieważ często są pisane przez hobbystów, a nie profesjonalistów.
Zachęcamy jednak do szukania pomocy w Internecie. Języki zorientowane obiektowo, takie jak Java i C++, są już „w” teraz, ale języki proceduralne, takie jak C, są łatwiejsze do rozpoczęcia, ponieważ zajmują się wyłącznie algorytmami
Krok 3. Programowanie to tylko tłumaczenie pseudokodu na język programowania
Im więcej czasu przed programowaniem spędzisz na planowaniu w pseudokodzie, tym mniej czasu spędzisz na pisaniu i drapaniu się po głowie.
Część 4 z 4: Analiza algorytmu
Krok 1. Odczytaj pamięć RAM (maszyna o dostępie swobodnym)
Jednym z najlepszych miejsc do rozpoczęcia jest przeczytanie książki Stevena Skieny Podręcznik projektowania algorytmów.
Krok 2. Poznaj ograniczające zachowanie funkcji
Przeczytaj notację Big O.
Krok 3. Przeczytaj o tym, jak najgorsze dane wejściowe mogą złamać algorytm lub kosztować Cię w czasie przetwarzania procesora
Ważne jest, aby dowiedzieć się, jakie sposoby mogą skutecznie im przeciwdziałać.
Porady
- Dziedzina informatyki obejmuje wiele różnych dziedzin, takich jak projektowanie i rozwój komputerów, bazy danych, bezpieczeństwo komputerowe lub języki komputerowe, żeby wymienić tylko kilka. Dlatego dobrze byłoby skoncentrować się na jednym, a może kilku innych, jeśli Cię interesują.
- Po nauczeniu się jednego języka programowania, nauka innego w ramach tego samego paradygmatu jest łatwa, ponieważ wciąż tłumaczysz tylko pseudokod na rzeczywisty język.
- Tablica to świetne miejsce do pisania algorytmów.
- Jeśli jesteś uczniem szkoły średniej i masz mniej niż 20 lat, rozważ udział w Olimpiadzie Informatycznej w Twojej okolicy.