Jak naprawdę działa informatyka: poza prostym programowaniem

11

Informatyka jest często źle rozumiana. Ludzie słysząc to określenie, wyobrażają sobie samotnego programistę piszącego z wściekłością w ciemnym pokoju. W rzeczywistości nie jest to prawdą. To jest nauka o samych komputerach. Obejmuje ich projektowanie, zastosowanie w informatyce, przetwarzaniu danych i zarządzaniu systemami.

Obejmuje zarówno sprzęt, jak i oprogramowanie. Zawiera także oprogramowanie, dzięki któremu to wszystko działa. Ale jeśli myślisz, że chodzi tylko o tworzenie aplikacji lub stron internetowych, to tracisz sens tej dyscypliny.

Matematyka za maszyną

W swej istocie informatyka opiera się na matematyce. Nie chodzi tylko o pisanie kodu. Chodzi o projektowanie i analizowanie algorytmów. Są to procedury krok po kroku rozwiązywania problemów. Należy także zwrócić uwagę na problemy z wydajnością. Jak szybki jest system? Ile energii zużywa?

Dużą uwagę przywiązuje się także do niezawodności. Skąd możemy mieć pewność, że system nie zawiedzie, skoro korzystają z niego jednocześnie miliony ludzi? W tym celu stosuje się metody probabilistyczne. Oceniasz dostępność. Analizujesz wskaźnik awaryjności. To jest praca statystyczna. Zapewnia, że ​​po naciśnięciu przycisku nastąpi jakaś akcja.

„Ponieważ systemy komputerowe są często zbyt duże i złożone, aby przewidzieć niepowodzenie lub sukces projektu bez testów, eksperymenty są nieodłącznym elementem cyklu rozwojowego.”

Dlaczego nie możemy po prostu zgadywać

Możesz się zastanawiać, dlaczego nie możemy po prostu przewidzieć, czy projekt się sprawdzi. Odpowiedzią jest skala. Systemy komputerowe są zbyt duże. Są zbyt skomplikowane.

W przeszłości inżynierowie mogli modelować wszystko. Dzisiaj jest zbyt wiele zmiennych. Nie można już polegać wyłącznie na teorii. Nie można przewidzieć sukcesu złożonej architektury bez prawdziwych danych. Tutaj na ratunek przychodzą eksperymenty.

Testowanie jest koniecznością

Eksperymentowanie nie jest kwestią przemyślenia. Jest to wbudowane w cykl rozwoju. Tworzysz komponent. Testujesz to. Można zobaczyć jak zachowuje się pod obciążeniem. Następnie wprowadzasz poprawki. Cykl ten trwa, dopóki system nie osiągnie swoich celów w zakresie niezawodności.

Dotyczy to wszystkiego. Od najmniejszych mikroczipów po infrastrukturę chmurową na dużą skalę. Proces jest iteracyjny. To jest chaotyczne. Wymaga to ciągłych dostosowań w oparciu o rzeczywiste dane dotyczące wydajności, a nie tylko modele teoretyczne.

Co to oznacza dla Ciebie?

Jeśli jesteś studentem, oznacza to, że potrzebujesz czegoś więcej niż tylko umiejętności programowania. Musisz zrozumieć algorytmy. Musisz zrozumieć prawdopodobieństwo. Podczas testów musisz mieć pewność.

Jeśli jesteś rodzicem, wiedz, że Twoje dziecko uczy się czegoś więcej niż tylko pisania. Uczy się zarządzać złożonymi systemami. Uczy się przewidywać niepowodzenia. Uczy się tworzyć rzeczy, które przetrwają długo.

Ten obszar się rozwija. Pojawia się nowy sprzęt. Zmieniają się wymagania stawiane nowemu oprogramowaniu. Ale podstawa pozostaje ta sama. Chodzi o rozwiązywanie problemów za pomocą logiki, matematyki i rygorystycznych testów. To nie magia. To jest inżynieria.

I to właśnie ta inżynieria sprawia, że ​​cyfrowy świat działa.

Попередня статтяJak różne style uczenia się naprawdę działają na uczniów i rodziców
Наступна статтяRozumieć różnice pomiędzy nazwami własnymi a rzeczownikami pospolitymi w danym języku