Jakie są różne typy oprogramowania do programowania?
Różne typy oprogramowania do programowania są zaangażowane w każdą fazę opracowywania nowego programu. Kompilatory wykonują zasadniczą pracę polegającą na tłumaczeniu ludzkich języków programowania na język maszynowy, który może być przetwarzany przez komputer. Inne oprogramowanie może być użyte do pomocy w debugowaniu i monitorowaniu wydajności programu przy wykonywaniu określonych zadań i wykorzystaniu zasobów systemowych. Zintegrowane środowiska programistyczne łączą kilka z tych odmian oprogramowania do programowania w jeden spójny produkt.
Najbardziej podstawową odmianą oprogramowania do programowania komputerów jest kompilator. Programiści piszą kod w języku programowania, takim jak C ++, Python lub Basic. Ten kod można zazwyczaj napisać za pomocą dowolnego edytora tekstu, chociaż bardzo pomocni są dedykowani edytorzy, którzy zapewniają kodowanie kolorami i sprawdzanie błędów technicznych. Po napisaniu tego kodu źródłowego kompilator służy do przetłumaczenia go na język, który może być bezpośrednio wykonany przez komputer. W niektórych przypadkach dekompilator może być później użyty do przetłumaczenia programu z powrotem na kod źródłowy czytelny dla ludzi.
Debugery są użytecznym i powszechnym rodzajem oprogramowania do programowania. Debuger umożliwia programistom testowanie i monitorowanie jego kodu. Większość umożliwia częściową kompilację i wykonanie kodu źródłowego. Pozwala to debugerowi monitorować wartości zmiennych, sprawdzać cele wskaźników i pokazywać programatorowi dokładnie, które instrukcje są wykonywane w danym momencie. Ta umiejętność przechodzenia między wierszami kodu znacznie ułatwia śledzenie drobnych błędów.
Programiści polegają również na aplikacjach, które monitorują dokładność ich pracy. Niektóre programy uruchamiają różne wartości przez program, aby zapewnić, że generuje prawidłowe odpowiedzi, szczególnie w nietypowych lub marginalnych przypadkach. Jest to szczególnie pomocne w określaniu, co się stanie, gdy użytkownik dostarczy nieprawidłowo sformatowane dane wejściowe lub dane wejściowe, które mieszczą się poza oczekiwanymi zakresami wartości.
Wszystkie programy wykorzystują zasoby systemowe, a istnieje oprogramowanie komputerowe do śledzenia wydajności wykorzystania tych zasobów. Programy te pozwalają między innymi na szczegółowe badanie zarządzania pamięcią, dostępu do dysku i korzystania z sieci. Narzędzia te są szczególnie pomocne dla programistów projektujących aplikacje do pracy na urządzeniach mobilnych, w których zasoby mogą być szczególnie ograniczone.
Zintegrowane środowiska programistyczne są bardzo potężnymi i popularnymi narzędziami. Ten rodzaj oprogramowania do programowania komputerowego łączy specjalnie opracowane wersje kilku różnych narzędzi programistycznych. Typowy przykład może obejmować edytor do pisania kodu źródłowego, kompilator, debugger, niektóre narzędzia do zarządzania pamięcią oraz program do automatycznego generowania wstępnego szkicu dokumentacji wyjaśniającej działanie oprogramowania.