6 sposobów na zostanie programistą

Spisu treści:

6 sposobów na zostanie programistą
6 sposobów na zostanie programistą

Wideo: 6 sposobów na zostanie programistą

Wideo: 6 sposobów na zostanie programistą
Wideo: Hotwire и Rails #3 | Сортировка drag'n'drop, Stimulus, acts_as_list, sortable 2024, Może
Anonim

Zostanie programistą to kumulacyjny proces, który rozwija Twoje umiejętności dzień po dniu i rok po roku, a programowanie może być zabawne i satysfakcjonujące (psychicznie, duchowo i finansowo). Ten przewodnik nie obiecuje magicznie łatwego sposobu na zostanie programistą, a kolejność kroków nie jest święta, ale otrzymasz ogólny zarys tego, jak zostać programistą w jednej z nowoczesnych dziedzin programowania.

Kroki

Zostań programistą Krok 1
Zostań programistą Krok 1

Krok 1. Weź udział w kursie wprowadzającym w jednej (lub wszystkich) z następujących dyscyplin:

  • Logika
  • Matematyka dyskretna
  • Język programowania (weź udział w różnych paradygmatach programowania, zaczynając od sekwencyjnego/proceduralnego do zorientowanego obiektowo, po programowanie funkcjonalne i logiczne. Preferowany Ruby/Python/Pascal dla początkujących i po dobrym zrozumieniu zagłębiaj się w C++/C#/Java)

WSKAZÓWKA EKSPERTA

Gene Linetsky, MS
Gene Linetsky, MS

Gene Linetsky, MS

Startup Founder & Engineering Director Gene Linetsky is a startup founder and software engineer in the San Francisco Bay Area. He has worked in the tech industry for over 30 years and is currently the Director of Engineering at Poynt, a technology company building smart Point-of-Sale terminals for businesses.

Gene Linetsky, MS
Gene Linetsky, MS

Gene Linetsky, MS

Założyciel startupów i dyrektor techniczny

Nie myśl, że musisz zdobyć dyplom z kodowania.

Chociaż udział w kursach języka programowania może być pomocny, Gene Linetsky, inżynier oprogramowania i założyciel startupu, mówi:"

Zostań programistą Krok 2
Zostań programistą Krok 2

Krok 2. Naucz się pojęć dotyczących baz danych, takich jak tabele, widoki/zapytania i procedury

W tym celu możesz użyć dowolnego prostego pakietu bazy danych, takiego jak:

  • Dostęp do MS
  • DB V
  • Fox Pro
  • Paradoks
  • MySQL to dobra baza danych do nauki, ponieważ jest bezpłatna, powszechnie używana, a bazy danych są często dostępne za pomocą zapytań SQL
Zostań programistą Krok 3
Zostań programistą Krok 3

Krok 3. Zdecyduj, jakim typem programisty chcesz zostać

Programiści zazwyczaj należą do jednej z następujących kategorii:

  • programista internetowy
  • Programista aplikacji komputerowych

    • Programista zorientowany na system operacyjny (OS) (powiązany z pojedynczym systemem operacyjnym lub zestawem systemów operacyjnych)
    • Programista niezależny od platformy
  • Programista aplikacji rozproszonych
  • Biblioteka/platforma/framework/rdzeń programista
  • Programista systemowy

    • Programista jądra
    • Programista sterowników
    • Programista kompilatora
  • Naukowiec programowania
Zostań programistą Krok 4
Zostań programistą Krok 4

Krok 4. Poznaj technologie i języki programowania związane z wybraną dziedziną programowania

W poniższych sekcjach opisano zadania dla różnych typów programowania.

Metoda 1 z 6: Programowanie internetowe

Zostań programistą Krok 5
Zostań programistą Krok 5

Krok 1. Dowiedz się, z czym wiąże się programowanie WWW

Aplikacje internetowe to komponenty oprogramowania zaprojektowane do pracy w oparciu o architekturę internetową. Oznacza to, że dostęp do aplikacji uzyskuje się za pośrednictwem przeglądarki internetowej, takiej jak Firefox lub Internet Explorer. Opieranie się na architekturze internetowej niekoniecznie wymaga aktywnego połączenia z Internetem. Oznacza to, że aplikacje internetowe są zbudowane na bazie standardowych technologii internetowych, takich jak:

  • HTTP
  • FTP
  • POP3
  • SMTP
  • TCP
  • Protokoły IP
  • HTML
  • XML
  • Zimna fuzja
  • ŻMIJA
  • JSP
  • PHP
  • ASP. NET
Zostań programistą Krok 6
Zostań programistą Krok 6

Krok 2. Przeglądaj wiele różnych witryn, aby dowiedzieć się, jak zwykle wyglądają

(Kliknij prawym przyciskiem myszy, a następnie kliknij opcję Wyświetl źródło lub naciśnij klawisz F12.) Szukaj różnorodności w typie/treści witryny, a nie ilości odwiedzanych witryn. Ogólnie rzecz biorąc, musisz odwiedzić co najmniej jedną z następujących stron internetowych:

  • Witryny obecności korporacyjnej (korporacje komercyjne, korporacje/organizacje non-profit, organizacje rządowe)
  • Wyszukiwarki internetowe (wyszukiwarki, metawyszukiwarki, specjalistyczne wyszukiwarki, katalogi)
  • Witryny do eksploracji danych
  • Witryny osobiste
  • Strony informacyjne/encyklopedyczne (wiki, arkusze danych, specyfikacje techniczne i podręczniki zawierające katalogi, blogi i czasopisma, witryny agencji informacyjnych i informacyjnych, żółte strony itp.)
  • Serwisy społecznościowe (portale społecznościowe, zakładki, serwisy do robienia notatek)
  • Witryny do współpracy (obejmuje to inne kategorie wymienione powyżej, takie jak wiki i blogi)
Zostań programistą Krok 7
Zostań programistą Krok 7

Krok 3. Naucz się co najmniej jednej techniki/metody burzy mózgów oraz oprogramowania, które służy do wdrożenia tej metody

Na przykład: diagramy burzy mózgów i MS Visio.

Zostań programistą Krok 8
Zostań programistą Krok 8

Krok 4. Zapoznaj się ze strukturą witryny

Jest to tworzenie koncepcyjnych diagramów internetowych, map witryn i struktur nawigacyjnych.

Zostań programistą Krok 9
Zostań programistą Krok 9

Krok 5. Weź udział w szybkim kursie projektowania grafiki

Spróbuj nauczyć się co najmniej jednego pakietu oprogramowania do edycji/manipulacji grafiką (opcjonalne, ale zdecydowanie zalecane)

Zostań programistą Krok 10
Zostań programistą Krok 10

Krok 6. Poznaj podstawy infrastruktury internetowej

Obejmuje to uzyskanie podstawowego pojęcia o:

  • Podstawowe protokoły usług internetowych (HTTP, FTP, SMTP i POP3 lub IMAP4)
  • Oprogramowanie serwera WWW (najlepiej dla platformy, na której będziesz głównie pracować)
  • Oprogramowanie do przeglądania stron internetowych.
  • Serwer poczty e-mail i oprogramowanie klienckie
Zostań programistą Krok 11
Zostań programistą Krok 11

Krok 7. Naucz się języków HTML i CSS

Możesz także pobrać pakiet oprogramowania „To, co widzisz, jest tym, co otrzymujesz (WYSIWYG)” do edycji kodu HTML.

Zostań programistą Krok 12
Zostań programistą Krok 12

Krok 8. Naucz się technologii związanych z XML i XML, takich jak XSL i XPath (opcjonalne, ale zalecane)

Zostań programistą Krok 13
Zostań programistą Krok 13

Krok 9. Twórz proste, statyczne strony internetowe, dopóki nie będziesz zaznajomiony z językiem HTML i nie będziesz się z nim obchodził

Zostań programistą Krok 14
Zostań programistą Krok 14

Krok 10. Naucz się języka skryptowego po stronie klienta

Większość użytkowników uczy się JavaScript. Niektórzy uczą się VBScript, ale nie jest to zgodne z większością przeglądarek.

Zostań programistą Krok 15
Zostań programistą Krok 15

Krok 11. Zapoznaj się z językiem skryptowym po stronie klienta, którego się nauczyłeś

Spróbuj wykorzystać swój potencjał tylko w tym języku. Przejdź do następnego kroku dopiero po zapoznaniu się przynajmniej z językiem skryptowym po stronie klienta.

Zostań programistą Krok 16
Zostań programistą Krok 16

Krok 12. Naucz się przynajmniej jednego języka programowania po stronie serwera

Jeśli zdecydujesz się ograniczyć do jednego oprogramowania serwerowego, naucz się jednego z języków programowania obsługiwanych przez to oprogramowanie. Jeśli nie, naucz się co najmniej jednego języka programowania na każdym oprogramowaniu serwera.

Zostań programistą Krok 17
Zostań programistą Krok 17

Krok 13. Utwórz projekt pilotażowy dla siebie po zakończeniu nauki języka programowania po stronie serwera.

Zostań programistą Krok 18
Zostań programistą Krok 18

Krok 14. Zdobądź własną stronę internetową i zacznij eksperymentować online na własnej stronie

Metoda 2 z 6: Programowanie aplikacji desktopowych

Zostań programistą Krok 19
Zostań programistą Krok 19

Krok 1. Dowiedz się, w co się pakujesz z programowaniem aplikacji komputerowych

Większość programistów desktopowych pisze kod dla rozwiązań biznesowych, więc zapoznanie się z biznesem, jego strukturą organizacyjną i finansową będzie dużą oszczędnością czasu.

Zostań programistą Krok 20
Zostań programistą Krok 20

Krok 2. Poznaj różne architektury sprzętu komputerowego

Przydatny jest kurs wprowadzający z projektowania obwodów cyfrowych, a drugi z architektury komputerowej; jednak niektórzy uważają, że jest to zaawansowany punkt wyjścia, więc przeczytanie dwóch lub trzech artykułów samouczka (takich jak ten i ten) może wystarczyć. Następnie możesz wrócić do tego kroku później, po nauczeniu się pierwszego języka programowania.

Zostań programistą Krok 21
Zostań programistą Krok 21

Krok 3. Naucz się podstawowego (dziecięcego) języka programowania

Nie wstydź się uczyć się takiego języka tylko dlatego, że jesteś starszy niż nazywano cię „dzieciakiem”. Przykładem tych języków programowania może być Scratch. Te języki programowania mogą ogromnie złagodzić ból w nauce pierwszego języka programowania. Ten krok jest jednak opcjonalny. Można to również zrobić przed poprzednim krokiem.

Zostań programistą Krok 22
Zostań programistą Krok 22

Krok 4. Uzyskaj wprowadzenie do procedury, zorientowany obiektowo, oraz paradygmaty programowania funkcjonalnego.

Zostań programistą Krok 23
Zostań programistą Krok 23

Krok 5. Weź udział w kursie wprowadzającym w jednym z proceduralnych języków programowania

Bez względu na to, jaki język wybierzesz później, będzie to wymagało programowania proceduralnego na pewnym poziomie. Ponadto większość programistów twierdzi, że programowanie proceduralne jest najłatwiejsze w użyciu jako punkt wyjścia do ogólnego zrozumienia idei programowania.

Zostań programistą Krok 24
Zostań programistą Krok 24

Krok 6. Naucz się przynajmniej jednej zaawansowanej techniki modelowania, takiej jak UML lub ORM

Zostań programistą Krok 25
Zostań programistą Krok 25

Krok 7. Zacznij pisać małe aplikacje konsolowe lub podobne do konsoli

Możesz skorzystać z typowych małych ćwiczeń w książkach z językami programowania. W tym celu wybierz narzędzie do pisania programów w języku programowania, w którym piszesz.

Krok 8. Weź udział w bardziej zaawansowanym kursie w wybranym przez siebie języku programowania

Upewnij się, że dobrze rozumiesz poniższe pojęcia i że możesz je zastosować ze względną łatwością, zanim przejdziesz dalej:

  • Wprowadzanie i wysyłanie informacji do użytkowników programu.
  • Przepływ logiczny i przepływ wykonywania programów w językach proceduralnych.
  • Deklarowanie, przypisywanie i porównywanie zmiennych.
  • Rozgałęzione konstrukcje programowania, takie jak if..then..else i select/switch..case.
  • Zapętlające się konstrukcje, takie jak while..do, do.while/until, for..next.
  • Twoja składnia języka programowania do tworzenia i wywoływania procedur i funkcji.
  • Typy danych i manipulowanie nimi.
  • Zdefiniowane przez użytkownika typy danych (rekordy/struktury/jednostki) i ich wykorzystanie.
  • Jeśli twój język obsługuje przeciążanie funkcji, zrozum to.
  • Metody dostępu do pamięci w wybranym języku (wskaźniki, podglądanie itp.)
  • Jeśli Twój język obsługuje przeciążanie operatorów, zrozum to.
  • Jeśli Twój język obsługuje delegatów/wskaźniki do funkcji, zrozum to.
Zostań programistą Krok 27
Zostań programistą Krok 27

Krok 9. Zastosuj zaawansowane techniki, których się nauczyłeś

Zostań programistą Krok 28
Zostań programistą Krok 28

Krok 10. Weź udział w kursie wprowadzającym w co najmniej jeszcze jednym języku programowania w innym paradygmacie programowania

Zaleca się, aby nauczyć się jednego języka programowania z każdego paradygmatu, a większość zaawansowanych programistów to robi, jednak zwykle zaczynasz od jednego, pracujesz przez chwilę, stosując swoją wiedzę i ćwicząc ją, a później poznajesz drugiego, po tym jak już miałeś prawdziwy -życiowe doświadczenie w programowaniu. Wypróbuj jeden z następujących obszarów językowych:

  • Paradygmat programowania logicznego.
  • Paradygmat programowania funkcjonalnego.
  • Paradygmat obiektowy.
Zostań programistą Krok 29
Zostań programistą Krok 29

Krok 11. Spróbuj porównać dwa języki programowania, których się do tej pory nauczyłeś

Oceń mocne i słabe strony każdego z nich. Zwykle odbywa się to poprzez:

  • Pobranie prostych próbek swojej wczesnej pracy w pierwszym języku programowania i przepisanie jej przy użyciu drugiego języka programowania.
  • Stwórz nowy projekt i spróbuj go zaimplementować w obu językach. Czasami, w zależności od wyboru projektu i języków, możesz nie być w stanie zaimplementować projektu w jednym z języków!
  • Pisanie ściągawek lub zestawień w formie tabeli podsumowań między podobnymi konstrukcjami w obu językach i cechami unikalnymi dla każdego z tych języków.
  • Spróbuj znaleźć sposoby na naśladowanie funkcji, które są unikalne dla jednego z dwóch języków używających drugiego języka.
Zostań programistą Krok 30
Zostań programistą Krok 30

Krok 12. Naucz się koncepcji programowania wizualnego, używając jednego z poznanych języków

Prawie wszystkie języki programowania mają wersje/biblioteki, które obsługują programowanie wizualne i inne obsługujące programowanie konsolowe lub podobne do konsoli. Można to osiągnąć poprzez:

  • Zapoznaj się z wprowadzeniem do programowania sterowanego zdarzeniami. Większość programowania wizualnego opiera się na pewnym poziomie na obsłudze zdarzeń i zdarzeń (przy użyciu wybranego języka programowania).
  • Wypróbuj jak najwięcej oprogramowania komputerowego i zrozum, co robi oprogramowanie. Większość firm programistycznych oferuje wersje beta swoich produktów, które można wykorzystać do testowania oprogramowania. Bądź na bieżąco z postępami w interfejsie użytkownika.
  • Przeczytaj artykuły lub samouczki dotyczące graficznych interfejsów użytkownika.
Zostań programistą Krok 31
Zostań programistą Krok 31

Krok 13. Zacznij stosować swoją wiedzę w małych projektach oprogramowania, które projektujesz

Spróbuj wykorzystać swoją wiedzę programistyczną w problemach, z którymi borykasz się na co dzień. Na przykład pisz programy, które masowo zmieniają nazwy plików, wizualnie porównują pliki tekstowe, kopiują nazwy plików w katalogu do pamięci/pliku tekstowego i tym podobne. Na początku zachowaj prostotę.

Zostań programistą Krok 32
Zostań programistą Krok 32

Krok 14. Utwórz wirtualny projekt dyplomowy

Dokończ to do końca, stosując techniki programowania wizualnego, których nauczyłeś się do tej pory.

Zostań programistą Krok 33
Zostań programistą Krok 33

Krok 15. Poszerz swoją wiedzę na temat struktury/biblioteki/pakietu wizualnego, którego nauczyłeś się wcześniej, biorąc udział w zaawansowanych kursach, zwracając szczególną uwagę na szczegóły i poznając więcej wskazówek i wskazówek dotyczących Twojej struktury z zasobów online

Zostań programistą Krok 34
Zostań programistą Krok 34

Krok 16. Wyszukaj inne pakiety/biblioteki elementów wizualnych dla swoich języków programowania i naucz się ich

Zostań programistą Krok 35
Zostań programistą Krok 35

Krok 17. Weź udział w kursie grafiki (nie projektowania grafiki)

Będzie to bardzo pomocne dla programistów, którzy chcą pisać atrakcyjne elementy interfejsu użytkownika.

Zostań programistą Krok 36
Zostań programistą Krok 36

Krok 18. Rozważ zostanie programistą gier (opcjonalnie)

Programowanie gier jest w większości uważane za programowanie desktopowe. Jeśli zamierzasz zostać programistą gier, będziesz musiał dowiedzieć się więcej o programowaniu gier po wykonaniu tych kroków. Kurs graficzny jest obowiązkowy dla programistów gier, a drugim wybranym językiem w poprzednich krokach powinien być język programowania logicznego/funkcjonalnego (najlepiej Prolog lub Lisp).

Metoda 3 z 6: Programowanie aplikacji rozproszonych

Zostań programistą Krok 37
Zostań programistą Krok 37

Krok 1. Zajmij się programowaniem aplikacji rozproszonych

Programowanie aplikacji rozproszonych jest uważane przez wielu za jedno z najtrudniejszych do nauczenia i wymaga zróżnicowanej wiedzy z zakresu technologii komputerowych i komunikacyjnych.

Zostań programistą Krok 38
Zostań programistą Krok 38

Krok 2. Zapoznaj się z szybkim wprowadzeniem do systemów telefonicznych i ich sprzętu

Ten krok jest opcjonalny. Jest jednak bardzo przydatny w zrozumieniu topologii sieci.

Zostań programistą Krok 39
Zostań programistą Krok 39

Krok 3. Zapoznaj się z architekturą sprzętu sieciowego i urządzeniami, takimi jak koncentratory, przełączniki i routery

Zostań programistą Krok 40
Zostań programistą Krok 40

Krok 4. Weź udział w kursie protokołów sieciowych i podstaw

Zanim zaczniesz programować aplikacje rozproszone, musisz dobrze zrozumieć model Open Systems Interconnection (OSI), Ethernet, IP, TCP, UDP i

Zostań programistą Krok 41
Zostań programistą Krok 41

Krok 5. Naucz się języka XML i zapoznaj się z nim

Zostań programistą Krok 42
Zostań programistą Krok 42

Krok 6. Zacznij od nauki języka skryptowego powłoki

W przypadku programowania opartego na systemie Windows byłby to dowolny skrypt, który działa z hostem skryptów systemu Windows. Do programowania opartego na Linuksie wystarczą skrypty Bash i Perl. JavaScript jest zdecydowanie zalecany do tego na obu platformach z następujących powodów:

  • Jest obsługiwany przez prawie każdy host skryptów w dowolnym systemie operacyjnym (host skryptów Windows domyślnie obsługuje JavaScript, większość dystrybucji Linuksa ma pakiet obsługujący konsolę skryptów JavaScript).
  • Wielu programistów uważa, że jest łatwiejszy do nauczenia.
  • Ma składnię wywodzącą się z ALGOL, która zapoznaje Cię z wieloma innymi językami programowania, gdy musisz wybrać drugi język programowania (C, C++, C#, Java i J# wszystkie mają składnię wywodzącą się z ALGOL).
  • Ucząc się JavaScript, zapoznasz się ze skryptowaniem stron internetowych po stronie klienta, co jest dodatkowym efektem ubocznym!
Zostań programistą Krok 43
Zostań programistą Krok 43

Krok 7. Na początku zastosuj tylko programowanie proceduralne przy użyciu wybranego języka skryptowego

Później możesz użyć bardziej zaawansowanych technik programowania i paradygmatów zgodnie z językiem skryptowym i tym, co obsługuje. Wszystkie języki skryptowe mają pewne aspekty programowania proceduralnego na pewnym poziomie.

Zostań programistą Krok 44
Zostań programistą Krok 44

Krok 8. Użyj języka skryptowego, którego się nauczyłeś, do pisania skryptów, które wykonują komunikację między maszynami

Dowiedz się, co jest do tego niezbędne. Wystarczy prosta komunikacja.

Zostań programistą Krok 45
Zostań programistą Krok 45

Krok 9. Wykonaj transfer do języka skryptów/programowania dla komputerów stacjonarnych

Najlepiej taki, który jest językiem wieloparadygmatycznym, takim jak Python. Zrób proste wprowadzenie do tego drugiego języka. Java jest uważana przez większość programistów za preferowany język z wielu powodów. Jednak C# szybko nabiera tempa w tej dziedzinie. Java i C# są preferowane z następujących powodów:

  • Są to języki programowania obiektowego, które chronią programistów w dużych zespołach przed szczegółami implementacji, ponieważ oba obsługują komponenty (jednostki kodu, wstępnie skompilowane, które wykonują określone zadanie i mogą być używane w innych programach).
  • Obsługują one programowanie sterowane zdarzeniami, a także programowanie obiektowe i proceduralne na pewnym poziomie.
  • Struktura, na której zbudowany jest język, jest dystrybuowana z natury (w przypadku Javy).
  • Dostępność wielu gotowych pakietów, które zajmują się obsługą sieci, zarówno jako kod open-source, jak i wbudowane pakiety frameworka; ułatwia to programistom korzystanie z pracy innych.
Zostań programistą Krok 46
Zostań programistą Krok 46

Krok 10. Skoncentruj się bardziej na podstawowych funkcjach języka, zwłaszcza na tych, które wspierają tworzenie sieci

Zwracaj mniej uwagi na elementy interfejsu użytkownika, takie jak drukowanie, projektowanie i techniki okien oraz elementy interfejsu użytkownika.

Zostań programistą Krok 47
Zostań programistą Krok 47

Krok 11. Weź udział w kursie dotyczącym projektowania i architektur aplikacji rozproszonych

Można to zrobić za pomocą książek, samouczków online lub kursów akademickich. Jednak zrozumienie architektury aplikacji rozproszonych i jej koncepcji jest konieczne.

Zostań programistą Krok 48
Zostań programistą Krok 48

Krok 12. Dowiedz się, jak tworzyć obsługiwane komponenty i usługi przy użyciu wybranego języka programowania

Zostań programistą Krok 49
Zostań programistą Krok 49

Krok 13. Poznaj jedną lub więcej z poniższych technologii

Zaleca się przynajmniej zapoznanie się z nimi wszystkimi. Większość programistów aplikacji rozproszonych nie zatrzymuje się na jednym lub dwóch językach programowania, ale uczy się co najmniej jednego języka programowania w każdym systemie operacyjnym. Dzieje się tak dlatego, że jeśli chcesz, aby Twoja aplikacja była „dystrybuowana”, powinieneś dostarczyć jej wersję przynajmniej dla każdego głównego systemu operacyjnego.

  • Architektura wspólnego brokera żądań obiektów (CORBA)
  • Prosty protokół dostępu do obiektów (SOAP)
  • Asynchroniczny JavaScript i XML (AJAX)
  • Model obiektowy komponentu rozproszonego (DCOM)
  • . NET Remoting
  • Usługi sieciowe XML

Metoda 4 z 6: Biblioteka/platforma/rama/programowanie podstawowe

Zostań programistą Krok 50
Zostań programistą Krok 50

Krok 1. Dowiedz się, czym jest podstawowe programowanie

Programiści podstawowi to jedynie zaawansowani programiści, którzy przeszli od programowania aplikacji do programowania jednostek kodu, które będą używane przez innych programistów.

Zostań programistą Krok 51
Zostań programistą Krok 51

Krok 2. Naucz się języka programowania, który obsługuje budowanie komponentów/pakietów wielokrotnego użytku, jeśli jeszcze tego nie zrobiłeś

Zostań programistą Krok 52
Zostań programistą Krok 52

Krok 3. Weź udział w zaawansowanym kursie UML i ORM

Większość programistów bibliotek używa jednego lub obu z nich.

Zostań programistą Krok 53
Zostań programistą Krok 53

Krok 4. Weź udział w kursie inżynierii oprogramowania

Zostań programistą Krok 54
Zostań programistą Krok 54

Krok 5. Poznaj przynajmniej modułowe, oparte na komponentach, zorientowane obiektowo i sterowane zdarzeniami techniki i koncepcje programowania

Im więcej paradygmatów programowania i języków omówisz, tym większy sukces osiągniesz jako programista bibliotek/pakietów.

Zostań programistą Krok 55
Zostań programistą Krok 55

Krok 6. Dowiedz się więcej o różnych systemach operacyjnych i strukturach programistycznych obsługiwanych przez te systemy operacyjne

Zostań programistą Krok 56
Zostań programistą Krok 56

Krok 7. Skoncentruj swoje wysiłki edukacyjne na platformach, językach programowania i technologiach niezależnych od platformy

Zostań programistą Krok 57
Zostań programistą Krok 57

Krok 8. Jeśli języki programowania, których nauczyłeś się do tej pory, mają ANSI/ISO/IEEE/Wersje standardowe W3C, opanuj standardy.

W miarę możliwości staraj się używać standardowego kodu.

Zostań programistą Krok 58
Zostań programistą Krok 58

Krok 9. Spróbuj naśladować proste, już istniejące biblioteki, zwłaszcza te o otwartym kodzie źródłowym

Jest to przydatne we wczesnej fazie zostania programistą bibliotek/pakietów. Zacznij od prostych pakietów, takich jak konwersja jednostek i pośrednie pakiety obliczeń naukowych. Jeśli jesteś studentem college'u, skorzystaj z kursów innych niż programowanie, próbując zaimplementować ich równania i rdzeń naukowy jako biblioteki.

Zostań programistą Krok 59
Zostań programistą Krok 59

Krok 10. Wyszukaj i wypróbuj pakiety open-source w swojej dziedzinie programowania

Najpierw pobierz binaria/pliki wykonywalne pakietu. Spróbuj go wykorzystać i znajdź jego mocne i słabe strony. Po wykonaniu tej czynności pobierz źródło i spróbuj dowiedzieć się, jak to zostało zrobione. Spróbuj odtworzyć te biblioteki lub ich części. Najpierw zrób to po obejrzeniu kodu, a później przed wyświetleniem kodu. W późniejszych fazach spróbuj ulepszyć te biblioteki.

Zostań programistą Krok 60
Zostań programistą Krok 60

Krok 11. Poznaj różne podejścia stosowane do dystrybucji i wdrażania komponentów dla programistów

  • Zazwyczaj programiści bibliotek/pakietów mają tendencję do myślenia rekurencyjnego i/lub iteracyjnego o wszystkich problemach, z którymi się spotykają. Spróbuj myśleć o każdym problemie jako o zbiorze mniejszych problemów (sekwencji prostszych zadań) lub jako powtarzającym się procesie ograniczania zakresu problemu do mniejszych zakresów, a następnie nakładania tych zakresów na siebie.
  • Programiści bibliotek/pakietów mają tendencję do generalizowania. Oznacza to, że gdy przedstawia się im prosty, konkretny problem, zwykle myślą o bardziej ogólnym problemie i próbują rozwiązać ten ogólny problem, który automatycznie rozwiąże mniejszy.

Metoda 5 z 6: Programowanie systemu

Zostań programistą Krok 61
Zostań programistą Krok 61

Krok 1. Zrozum, na czym polega programowanie systemu

Programiści systemowi zajmują się nauką programowania, a nie konkretnymi implementacjami. Nie przywiązuj się do określonej platformy.

Zostań programistą Krok 62
Zostań programistą Krok 62

Krok 2. Postępuj zgodnie z pierwszymi trzema krokami dla programistów aplikacji komputerowych

Zostań programistą Krok 63
Zostań programistą Krok 63

Krok 3. Weź udział w kursie wprowadzającym z algebry liniowej

Zostań programistą Krok 64
Zostań programistą Krok 64

Krok 4. Weź udział w kursie rachunku różniczkowego

Zostań programistą Krok 65
Zostań programistą Krok 65

Krok 5. Weź udział w kursie logiki i/lub matematyki dyskretnej

Zostań programistą Krok 66
Zostań programistą Krok 66

Krok 6. Zapoznaj się z różnymi gołymi systemami operacyjnymi

Można to zrobić poprzez:

  • Pomysł na sposób instalacji systemów operacyjnych.
  • Nauka instalacji różnych systemów operacyjnych na jednym komputerze (opcjonalna, ale zalecana).
  • Instalowanie więcej niż jednego systemu operacyjnego. Nie instaluj żadnych pakietów pomocniczych w systemach; zamiast tego użyj samych funkcji zapewnianych przez systemy operacyjne.
Zostań programistą Krok 67
Zostań programistą Krok 67

Krok 7. Weź udział w kursie (lub alternatywnie przeczytaj książki) na temat architektury sprzętu komputerowego

Zostań programistą Krok 68
Zostań programistą Krok 68

Krok 8. Rozwiń zrozumienie różnych platform sprzętowych komputera

Zostań programistą Krok 69
Zostań programistą Krok 69

Krok 9. Zapoznaj się z językiem asemblera wybranej platformy sprzętowej/systemu operacyjnego

Później nauczysz się montażu innych platform/systemów.

Zostań programistą Krok 70
Zostań programistą Krok 70

Krok 10. Poznaj języki ANSI C i C++ wraz z koncepcjami programowania proceduralnego

Zostań programistą Krok 71
Zostań programistą Krok 71

Krok 11. Zrozum i przećwicz standardowe biblioteki C/C++ na wybranej platformie

Zwróć szczególną uwagę na Standardową Bibliotekę Szablonów (STL) i być może Aktywną Bibliotekę Szablonów (ATL).

Zostań programistą Krok 72
Zostań programistą Krok 72

Krok 12. Przeszukaj zasoby, książki i kursy online, aby zrozumieć smak C Twojej konkretnej platformy

Zostań programistą Krok 73
Zostań programistą Krok 73

Krok 13. Poćwicz tworzenie zaawansowanego kodu w C i C++

Zostań programistą Krok 74
Zostań programistą Krok 74

Krok 14. Naucz się bardziej zaawansowanego montażu

Zostań programistą Krok 75
Zostań programistą Krok 75

Krok 15. Weź udział w kursie projektowania systemów operacyjnych

Zostań programistą Krok 76
Zostań programistą Krok 76

Krok 16. Znajdź i przeczytaj dokumentację wybranej platformy

Będzie to łatwiejsze, jeśli wybierzesz system operacyjny oparty na Uniksie. Bardzo dobrze zrozum system, z którym będziesz pracować później.

Zostań programistą Krok 77
Zostań programistą Krok 77

Krok 17. Ćwicz zdobytą wiedzę

Najpierw utwórz małe narzędzia systemowe. Zwykle przydaje się:

  • Próbujesz odtworzyć małe narzędzia, które już są w twoim systemie.
  • Próbuję przenieść narzędzia dostępne w innych systemach operacyjnych na twoje.
Zostań programistą Krok 78
Zostań programistą Krok 78

Krok 18. Ucz się języków w najbardziej przydatnej kolejności

To jedyne miejsce, w którym liczy się pierwszy język programowania. Najpierw naucz się ANSI C, nie C++, nie C#, nie Javy i nie D. Następnie naucz się C++.

  • Ograniczenie pierwszego języka do samych C i C jest spowodowane tym, że programowanie systemowe wymaga od programisty znajomości następujących pojęć:

    • Prawdziwa i pełna kompilacja kodu źródłowego.
    • Pliki wyjściowe obiektów niskiego poziomu.
    • Łączenie plików binarnych.
    • Programowanie w języku maszynowym/montażu niskiego poziomu. Mówi się, że język C jest dla niektórych ukrytym/łatwiejszym do nauczenia się asemblera. Obsługuje również wstawianie kodu języka asemblerowego w kodzie, kiedy tylko zechcesz i jest to tylko procedura (jak asembler).

Metoda 6 z 6: Nauka programowania

Zostań programistą Krok 79
Zostań programistą Krok 79

Krok 1. Dowiedz się, czym zajmuje się programista

Programiści to bardzo zaawansowani programiści, którzy zamiast pracować nad tworzeniem aplikacji, pracują nad rozwojem technologii obliczeniowych, takich jak szyfrowanie, języki programowania i algorytmy eksploracji danych. Ten poziom rzadko osiąga się bez studiów akademickich i poświęcenia.

Zostań programistą Krok 80
Zostań programistą Krok 80

Krok 2. Zgromadź wiedzę naukową odpowiadającą czteroletniemu dyplomowi z informatyki

Można to zrobić poprzez:

  • Zdobycie faktycznego stopnia naukowego (co zwykle się dzieje).
  • Uzyskiwanie konspektów kursów dla takiego stopnia z jednej z nowoczesnych uczelni i uczęszczanie na kursy w formie samokształcenia lub jako oddzielne kursy. Można to osiągnąć teoretycznie, ale zalecana ścieżka jest pierwsza.
Zostań programistą Krok 81
Zostań programistą Krok 81

Krok 3. Wybierz dziedzinę specjalizacji

Im bardziej konkretnie, tym lepiej. To zależy od twoich preferencji. Poniżej znajduje się jednak lista niektórych głównych tematów związanych z programowaniem komputerowym:

  • Projektowanie algorytmów (wyszukiwanie, sortowanie, szyfrowanie, deszyfrowanie i wykrywanie błędów w komunikacji to tylko niektóre przykłady)
  • Języki programowania/projektowanie/optymalizacja kompilatora
  • Pola sztucznej inteligencji (rozpoznawanie wzorców, rozpoznawanie mowy, przetwarzanie języka naturalnego, sieci neuronowe)
  • Robotyka
  • Programowanie naukowe
  • Superkomputery
  • Komputerowe wspomaganie projektowania/modelowania (CAD/CAM)
  • Wirtualna rzeczywistość
  • Grafika komputerowa (Grafika komputerowa jest zwykle mylnie mylona z projektowaniem graficznym lub projektowaniem graficznego interfejsu użytkownika. Grafika komputerowa to dziedzina nauki, jak przedstawiać i manipulować grafiką w systemach komputerowych.)
Zostań programistą Krok 82
Zostań programistą Krok 82

Krok 4. Rozważ uzyskanie wyższego stopnia naukowego

Możesz chcieć kontynuować studia magisterskie lub doktoranckie.

Zalecana: