Diversity w polskim IT
Yujian Tang
Yujian Tang Fullstack Developer

Dlaczego programowanie jest łatwe, a inżynieria oprogramowania trudna

Sprawdź, czy masz inżynierską mentalność.
25.02.20222 min
Dlaczego programowanie jest łatwe, a inżynieria oprogramowania trudna

Osoby na początku swojej drogi w branży oprogramowania bardzo często mylą programowanie z inżynierią, a to nie jest to samo. Owszem, programowanie jest częścią inżynierii, ale sama inżynieria to coś więcej niż samo programowanie. Inżynieria oprogramowania to proces, który rozpoczyna się od określenia problemu, zaprojektowania sposobu rozwiązania tego problemu, a następnie dostarczenia oprogramowania.

Dlaczego programowanie jest łatwe?

No dobrze, ale czym dokładnie jest programowanie? Programowanie to po prostu napisanie kodu, który później wykonuje jakieś zadanie. Kiedy informatyka była jeszcze raczkującą dziedziną, programowanie było bardzo trudne i naprawdę nie należało do łatwych zadań. Używało się kart dziurkowanych czy też perforowanych. Wraz z rozwinięciem się informatyki wzrósł również poziom abstrakcji.

Mogliśmy użyć asemblera do bezpośredniego przypisania rejestrów. Potem przeszliśmy do języków takich jak COBOL, Fortran i PASCAL (mój pierwszy język programowania!). Chwilę później pojawiły się ciekawe języki obiektowe, które były również bardziej czytelne, takie jak C#, C++ i Java.

W ciągu ostatnich kilku lat byliśmy świadkami wzrostu popularności Pythona, języka stworzonego ponad 30 lat temu. Składnia Pythona jest prawie w całości angielska, dzięki czemu jest łatwy do zrozumienia i łatwy do nauki. Programowania w Pythonie nauczysz się zaledwie w kilka minut. 

Języki programowania stały się nie tylko łatwiejsze do nauczenia i używania, ale wzrosła także ilość darmowych zasobów dostępnych online. Na przykład tutaj możesz za darmo sprawdzić jak zbudować  generator liczb pseudolosowych. Gratulacje, właśnie stworzyłeś program w mniej niż 5 minut. To właśnie te zasoby i łatwość użycia Pythona sprawiły, że programowanie stało się dostępne dla każdego, kto tylko ma połączenie z Internetem i chce się uczyć.

Dlaczego inżynieria oprogramowania jest trudna?

To, że umiesz programować, nie oznacza, że z automatu stajesz się inżynierem oprogramowania. Owszem, inżynierowie spędzają dużo czasu na programowaniu, ale im wyżej w hierarchii się znajdują, tym więcej czasu poświęcają na myślenie. Dlatego, aby z powodzeniem zostać inżynierem oprogramowania, musisz przyjąć inżynierską mentalność.

Tylko dlaczego konieczność przyjęcia inżynierskiej mentalności sprawia, że inżynieria oprogramowania staje się trudniejsza? Cóż, pewnie z tego samego powodu, dla którego większość dziedzin inżynierii jest trudna. Nie mówi się o tym głośno, przynajmniej nie w amerykańskim systemie edukacji, jednak trzeba wiedzieć, że inżynieria jest dyscypliną, która wymaga ciekawości i umiejętności zadawania właściwych pytań.

Mentalność inżyniera oprogramowania nie może skupiać się tylko na tym, jak tworzyć programy, musi obracać się wokół rozwiązywania problemów. I to nie byle jakich problemów, ale tych właściwych.

Z pozoru może się wydawać, że inżynieria oprogramowania to po prostu budowanie szeregu programów. Trzeba jednak wiedzieć, jak te programy się ze sobą łączą oraz jak je dodawać, modyfikować i, co jest prawdopodobnie najmniej ulubionym zajęciem wielu inżynierów oprogramowania, jak je dokumentować.


Oryginał tekstu w języku angielskim możesz przeczytać tutaj.

<p>Loading...</p>