Czy zatraciliśmy sztukę czystej optymalizacji?

Wcześni inżynierowie pracowali w warunkach bardzo dużych ograniczeń. Komputer nawigacyjny Apollo miał tylko 2 KB pamięci RAM. Każdy bit miał znaczenie. Każdy cykl procesora był kluczowy.

Dzisiaj mamy gigabajty pamięci. Często rozwiązujemy problemy, dodając więcej sprzętu. Jeśli kod jest wolny lub zasobożerny, dodajemy więcej pamięci RAM. Ten nawyk sprawia, że tracimy umiejętność czystej optymalizacji.

Możesz pisać lepsze oprogramowanie, myśląc o ograniczeniach.

Spójrz na to, jak przetwarzasz duży plik tekstowy w Pythonie.

Typowe podejście: Wielu programistów wczytuje cały plik do pamięci naraz.

Zoptymalizowane podejście: Przetwarzaj plik linia po linii.

Różnica tkwi w filozofii inżynierskiej.

Dodawanie większej ilości zasobów to rozwiązanie tymczasowe. Tworzy ono kruche oprogramowanie. Wykorzystanie ograniczeń do projektowania pozwala tworzyć solidne oprogramowanie.

Optymalizacja to nie tylko szybkość. Chodzi o świadomość wykorzystywanych zasobów.

Pisząc kod, zadaj sobie pytania:

Lepsze oprogramowanie wynika z dyscypliny.

Źródło: https://dev.to/prabashanadev/have-we-lost-the-art-of-pure-optimization-31b9