Programowanie to jedna z najbardziej wszechstronnych umiejętności w dzisiejszym środowisku pracy. Umiejętności programowania przyniosą korzyści Tobie i Twojej firmie na wiele sposobów, niezależnie od tego, czy budujesz firmową stronę internetową, czy wiesz, jak naprawić błędy „przekierowań”. Jednak samozadowolenie z obecnych umiejętności nie uczyni Cię świetnym programistą. Przeczytaj więc ten przewodnik, aby dowiedzieć się, jak rozwijać swoje umiejętności jako programista.
Krok
Krok 1. Przeprowadź przejrzystą analizę problemu
Krok 2. Przemyśl, jak rozwiązać problem
Krok 3. Zbierz wszystkie wymagania wstępne
Poświęć trochę czasu na przepisanie celów, które Twój program musi osiągnąć i kim są Twoi potencjalni użytkownicy. Przejrzystość celu i potencjalnych użytkowników programu pozwoli Ci zaoszczędzić czas w przyszłości.
Krok 4. Napisz dogłębny plan/model wdrożenia
- W przypadku małych projektów do samodzielnego wykonania możesz po prostu utworzyć prostą formułę lub podstawowy schemat blokowy/"schemat blokowy".
-
W przypadku większych projektów zalecamy rozbicie programu na moduły i rozważenie następujących kwestii:
- Co robi każdy moduł;
- Jak dane są przesyłane między modułami; oraz
- Jak dane będą wykorzystywane w każdym module.
- Podczas gdy proces zbierania wymagań wstępnych i planowania programu nie jest tak zabawny, jak praca nad programem osobiście, pamiętaj, że rootowanie godzinami „błędów” może być o wiele bardziej irytujące. Poświęć trochę czasu na prawidłowe zaprojektowanie przepływu i struktury programu od samego początku, a być może uda Ci się znaleźć znacznie wydajniejszy sposób na osiągnięcie swoich celów, zanim jeszcze napiszesz kod!
Krok 5. Swobodnie komentuj swój kod
Jeśli uważasz, że Twój kod wymaga wyjaśnienia, skomentuj kdoe. Do każdej funkcji należy dodać 1-2 wiersze komentarzy zawierających wyjaśnienie argumentów i ich wyników. Komentarze do kodu powinny wyjaśniać więcej o tym, dlaczego kod został napisany, niż o tym, co robi kod. Pamiętaj o aktualizacji komentarzy podczas aktualizacji kodu!
Krok 6. Używaj spójnych konwencji nazewnictwa zmiennych, aby łatwo śledzić każdy typ zmiennej, a także znać funkcję każdej zmiennej
Musisz wpisać znacznie więcej niż x = a + b * c, ale konwencje nazewnictwa ułatwią również śledzenie i konserwację kodu. Jedną z popularnych konwencji nazewnictwa zmiennych jest notacja węgierska -- w tej konwencji nazwa zmiennej zaczyna się od typu zmiennej, na przykład intCountLine dla zmiennych całkowitych i strUserName dla zmiennych typu „string”. Bez względu na rodzaj używanej konwencji nazewnictwa zmiennych, upewnij się, że jest ona spójna i nadaje zmiennym opisowe nazwy.
Krok 7. Ustaw swój kod
Użyj wizualnych struktur, aby wskazać strukturę kodu. Na przykład zrób wcięcie w bloku kodu, który znajduje się w środku kodu warunku (if, else…) lub pętli (for, while…). Spróbuj też użyć spacji między nazwami zmiennych i operatorami, takimi jak dodawanie, odejmowanie, dzielenie, a nawet równanie (Mojazmienna = 2 + 2). Oprócz tego, że kod wygląda bardziej elegancko, organizacja kodu ułatwia również zobaczenie przepływu programu, gdy spojrzysz na kod.
Krok 8. Przetestuj cały program
Zacznij od przetestowania każdego modułu niezależnie, z danymi wejściowymi i wartościami, których zwykle oczekujesz dla tego modułu. Następnie spróbuj wprowadzić wartości, które nadal są aktualne, ale niezbyt częste, aby wyeliminować ukryte błędy. Testowanie programów jest sztuką samą w sobie, ale twoja umiejętność testowania programów poprawi się wraz z praktyką. Przetestuj swój program w następujących przypadkach:
- Ekstremalne: wartości zerowe i wartości znacznie powyżej maksymalnych szacowanych wartości dla dodatnich wartości liczbowych, pusty tekst dla zmiennych tekstowych i wartości zero/"null" dla każdego parametru.
- Wartość śmieci. Nawet jeśli ufasz, że użytkownicy twojego programu nie wprowadzą wartości śmieci, nie zapomnij przetestować odpowiedzi programu na wartości śmieci.
- Niewłaściwa wartość. Użyj zera do dzielenia liczby lub ujemnej, jeśli program prosi o liczbę dodatnią (lub jeśli ma zostać obliczony pierwiastek kwadratowy). Wartości nieliczbowe w zmiennej „string” mogą być przetwarzane jako dane wejściowe liczbowe.
Krok 9. Ćwicz pilnie
Programowanie nie jest dyscypliną statyczną. Zawsze jest coś nowego, czego możesz się nauczyć, a co ważniejsze, jest coś, co nie jest nowe, ale warto się uczyć od nowa.
Krok 10. Przygotuj się na zaakceptowanie zmian
W realistycznym środowisku pracy potrzeby stale się zmieniają. Jednak im wyraźniej znasz potrzeby programu na początku programowania, a im jaśniejszy jest plan wdrażania programu po rozpoczęciu programowania, tym mniej prawdopodobne jest, że zmiany te są wynikiem złego planowania lub twojego zrozumienia.
- Możesz aktywnie uczestniczyć w poprawie przejrzystości procesu programowania, przedstawiając dokumentację wymagań programu lub plany wdrożeniowe na długo przed rozpoczęciem programowania. Twoja prezentacja pomoże Ci upewnić się, że to, co tworzysz, jest tym, o co naprawdę prosiłeś.
- Ustaw projekt jako szereg czasowy z demonstracjami dla każdego bloku projektu i pracuj nad projektem blok po bloku. Im mniej rzeczy musisz przemyśleć za jednym razem, tym bardziej prawdopodobne jest, że będziesz myśleć jasno.
Krok 11. Rozpocznij program w prosty sposób i stopniowo stosuj złożoność
Kiedy tworzysz złożony program, dobrym pomysłem jest stworzenie prostej konstrukcji programu i upewnienie się, że konstrukcja działa w pierwszej kolejności. Na przykład, gdy chcesz stworzyć na ekranie kształt, który zmienia się wraz z ruchem kursora i zmienia kształt wraz z prędkością kursora:
- Zacznij od wyświetlenia pola i sprawienia, by pole podążało za kursorem. Uzupełnij kod śledzenia ruchu myszy.
- Następnie dostosuj rozmiar pudełka do szybkości myszy. Uzupełnij kod śledzenia prędkości i zastosuj go do zmiany rozmiaru.
- Następnie utwórz kształt, którego chcesz użyć, i wstaw trzy elementy powyżej.
- Takie podejście wprowadza cię do pisania kodu modularnego -- w kodzie modularnym każdy komponent jest w swoim własnym bloku. Modułowe pisanie kodu jest bardzo przydatne, jeśli chcesz ponownie wykorzystać kod (na przykład, gdy chcesz użyć kodu do śledzenia ruchów myszy w nowym projekcie) i ułatwić naprawę kodu i eliminację błędów.
Porady
- Użyj IDE/zintegrowanego środowiska programistycznego. Dobre środowisko IDE ma wbudowany edytor kodu z kodowaniem kolorami, wskazówkami do kodu i funkcjami uzupełniania kodu, dzięki czemu edycja kodu będzie szybsza i mniej błędów pisowni. IDE są zwykle wyposażone w „debugger”.
- Oddzielenie/pakowanie kodu wielokrotnego użytku od kodu specyficznego dla aplikacji później powoduje, że kod jest agregowany w dużą bibliotekę kodu, pełną przydatnych funkcji, bezbłędną i gotową do ponownego użycia. Te biblioteki pomogą Ci pisać mocniejsze i bardziej stabilne programy w krótszym czasie.
-
Niech kolega programista przeczyta twój kod. Twój przyjaciel może wiedzieć coś, o czym wcześniej nie myślałeś. Nie masz profesjonalnego przyjaciela programisty? Znajdź fora internetowe omawiające preferowany język programowania/system operacyjny i dołącz do dyskusji.
- Jeśli wejdziesz na forum internetowe, przeczytaj i zwróć uwagę na regulamin forum. Jeśli ładnie poprosisz, wielu ekspertów chętnie Ci pomoże.
- Pamiętaj, aby być uprzejmym, ponieważ tak naprawdę prosisz o pomoc. Nie denerwuj się, jeśli nie zrozumiesz wszystkich odpowiedzi na raz i nie oczekuj, że członkowie forum przeczytają 10 000 wierszy kodu. Zadaj pytanie, które koncentruje się na jednym problemie i prześlij 5-10 wierszy odpowiedniego kodu. W ten sposób masz większe szanse na uzyskanie pozytywnej odpowiedzi.
- Zanim zaczniesz wysyłać pytania, przeprowadź szybkie wyszukiwanie. Twoje pytanie mogło być już wcześniej doświadczone, zadane i na które udzielono odpowiedzi.
- Studiowanie kodu źródłowego od innych programistów to dobry sposób na rozwijanie swoich umiejętności. Czytaj kod od innych programistów powoli, krok po kroku. Poznaj przepływ programu i co dzieje się ze zmiennymi programu, a następnie spróbuj napisać kod, który robi to samo (lub nawet rozszerza ten kod). Szybciej dowiesz się, dlaczego rzeczy powinny być pisane w określony sposób, a także uzyskasz wskazówki dotyczące pisania efektywnego kodu.
- Twoi klienci i szefowie nie dbają o to, jak działa Twój program. Zamiast tego dbają o to, jak dobrze działa Twój program. Pamiętaj, że Twoi klienci to mądrzy, ale zapracowani ludzie. Nie obchodzi ich, jakiego rodzaju danych używasz, ale zauważą, czy Twój program przyspiesza, czy spowalnia ich pracę.
- Możesz również wiele się nauczyć z witryn z samouczkami.
- Okresowo twórz kopię zapasową kodu na dysku zewnętrznym lub innym urządzeniu, aby mieć kopię kodu na wypadek awarii/wyłączenia się komputera. Przechowuj co najmniej jedną kopię zapasową w bezpiecznym miejscu.
- Utrzymuj kod w porządku. Nie jest to kwestia estetyki, ale schludność kodu sprawi, że kod będzie łatwiejszy do odczytania. Ten krok jest bardzo ważny, jeśli chcesz wprowadzić zmiany 6 miesięcy po utworzeniu programu. Przeczytaj więcej o wcięciach kodu tutaj.
- Za każdym razem, gdy ukończysz sporą część programu, zrób coś niezwiązanego z programowaniem i obserwuj, nad czym pracujesz ze świeżym mózgiem. Przemyśl przepływ programów i pisz programy na nowo w bardziej efektywny i elegancki sposób. Używaj mniej kodu, gdy tylko jest to możliwe.
- Znajdź edytor kodu, który zapewnia kolorowanie kodu. Przydatne jest oddzielenie komentarzy, słów kluczowych, liczb, „ciągów” itp.
- Zmieniaj program stopniowo w miarę usuwania błędów, a następnie testuj poprawki przed kontynuowaniem.
- Korzystaj z systemów kontroli wersji, takich jak CVS i SVN, aby śledzić zmiany i błędy w kodzie.
- Dokładnie sprawdź pisownię i składnię. Małe błędy mogą powodować długotrwały stres.
- Zrób archiwalne kopie swojej pracy. Oprócz bycia referencją możesz również mieć możliwość ponownego wykorzystania części kodu.
- Użyj „debuggera”, zamiast pisać instrukcje w kodzie, aby wyświetlić dane wyjściowe zmiennych. „Debugger” pomoże ci spojrzeć na kod linia po linii, dzięki czemu możesz zauważyć, która część kodu jest nieprawidłowa.
- Zacznij od małego i wykonalnego, a następnie stopniowo rozwijaj swoje umiejętności.
- Porozmawiaj z innymi programistami. Inni ludzie mogą być dobrym źródłem wiedzy, zwłaszcza jeśli dopiero zaczynasz.
- Dobrym sposobem na okresowe zapisywanie pracy i posiadanie zdalnej kopii jest użycie systemu kontroli wersji, takiego jak git lub mercurial oraz bezpłatnej usługi, takiej jak Github lub Bitbucket
Ostrzeżenie
- Kopiowanie kodu innych osób jest generalnie złym nawykiem, ale branie małych fragmentów kodu open source może być dobrym sposobem na naukę. Nie kopiuj jednak programu w całości i potwierdź, że program należy do Ciebie. Nie kopiuj kodu z innych programów, chyba że masz pozwolenie na kopiowanie tych programów na podstawie licencji.
- Zapisz swoją pracę podczas pracy lub możesz stracić pracę, gdy komputer przestanie odpowiadać. Jeśli zignorujesz to ostrzeżenie, później zostaniesz głośno reanimowany!
- Należy zachować ostrożność podczas używania notacji węgierskiej (pisanie typu zmiennej jako przedrostka) w kroku 4. Notacja węgierska może powodować niespójności podczas edycji kodu lub gdy kod jest używany w innych językach/systemach operacyjnych. Notacja węgierska jest powszechnie stosowana w językach programowania, które nie wymagają określania typu zmiennej.