Inżynieria oprogramowania jest pojęciem pokaźnie szerszym od kodowania: oznacza wszystkie konieczne narzędzia i procesy użytkowane poprzez organizację do tworzenia oprogramowania. To daje możliwość zachowania wartości kodu w dłuższej perspektywie czasu i pozwala ustanowić bardziej rygorystyczne zasady tworzenia oprogramowania, a dzięki temu sam kod jest podatniejszy na zmiany. Innymi słowy, inżynieria oprogramowania polega na adekwatnym integrowaniu i organizowaniu tworzenia aplikacji ― od koncepcji, przez tworzenie, wdrażanie i utrzymywanie, po jej wycofywanie.
To nie jest podręcznik dla programistów. Celem autorów jest zaprezentowanie jedynej w swoim rodzaju perspektywy marki Google, od lat rozwijającej trwały ekosystem oprogramowania, co pozwoliło zebrać pożyteczne wnioski dotyczące skali działalności i czasu jej trwania. W książce zwrócono uwagę na to,proces tworzenia oprogramowania jest wysiłkiem zespołowym, omówiono najlepsze praktyki związane z utrzymywaniem bazy kodu o dużych rozmiarach i długim stażu, pokazano także narzędzia, które mogą się okazać przydatne w jej utrzymywaniu. Omówione tu zagadnienia uwzględniają doświadczenia, jakie standardowy inżynier oprogramowania zdobywa w ramach swej pracy, służąwyszczególnioniu najróżniejszych sposobów rozwiązywania poszczególnych problemów.
Najciekawsze zagadnienia:
- wyjątkowa kultura pracy w Google
- procesy i narzędzia użytkowane w Google
- metody rozszerzania odporności kodu na upływ czasu
- wpływ skali oprogramowania na organizację pracy inżynierów
- kompromisy w procesie podejmowania decyzji projektowych
Piszesz kod? To ważne zadanie - bierz przykład z najkorzystniejszych!