Читать книгу Programowanie gier - Robert Nystrom - Страница 16

Czym jest architektura oprogramowania?

Оглавление

Jeśli przeczytamy tę książkę od początku do końca, nie poznamy algebry liniowej stojącej za grafiką 3D ani analizy matematycznej będącej podstawą fizyki gier. Nie dowiemy się też, w jaki sposób przyciąć drzewo poszukiwań naszej sztucznej inteligencji za pomocą algorytmu alfa-beta ani jak zasymulować pogłos w jakimś pokoju w trakcie odtwarzania dźwięków.

Oj! Ten akapit byłby fatalną reklamą tej książki.

Zamiast tego, książka ta poświęcona jest kodowi znajdującemu się pomiędzy tym wszystkim. W mniejszym stopniu dotyczy pisania kodu niż tego, w jaki sposób powinien on być zorganizowany. Każdy program jest zorganizowany w jakiś sposób, nawet jeśli jest to po prostu zasada „wpakujmy wszystko do main() i zobaczmy, co się stanie”. Myślę więc, że bardziej interesujące będą rozważania dotyczące tego, na czym polega dobra organizacja. W jaki sposób odróżnić dobrą architekturę od złej?

Rozmyślałem nad tym pytaniem przez około pięć lat. Tak jak każdy z nas, posiadam jakąś intuicję dotyczącą tego, czym charakteryzuje się dobry projekt. Wszyscy musieliśmy borykać się z bazą kodu tak złą, że najlepsze, co mogliśmy dla niej zrobić, to zlikwidować ją, skracając jej cierpienia.

Przyznajmy wprost, większość z nas jest odpowiedzialna za kilka takich przypadków.

Kilku szczęśliwców zgromadziło przeciwne doświadczenia, mając okazję pracować z pięknie zaprojektowanym kodem – z bazami kodu, które sprawiały wrażenie, jakby były doskonale urządzonymi, luksusowymi hotelami pełnymi lokajów gotowych gorliwie spełnić każdą naszą zachciankę. Na czym polega różnica między nimi?

Programowanie gier

Подняться наверх