W pogoni za stabilnym stosem technologicznym
- Kategoria: Programowanie, autor: Jerzy Piechowiak
- Tagi: .Net, C#, Swift
- Odsłony: 5280
W programowaniu często mówi się o tym, że trudno jest napisać idealny kod. Wielu (w tym ja) uważa, że jest to niemożliwe, a na pewno nie za pierwszym razem. Zawsze powinniśmy być przygotowani na refaktoring i nie powinniśmy go traktować jako coś złego, tylko jako naturalny element procesu. Nie mniej jednak jeśli weźmiemy pod uwagę mnemonik SOLID i dokładnie zapoznamy się z jego regułami, to szybko okaże się, że tak naprawdę pole do zmian jest częściowo ograniczone.
Jeszcze inaczej sprawa ma się jeśli spojrzymy na języki programowania, bądź też znane frameworki. Czy w takiej sytuacji zmiana jest dozwolona? Czy powinniśmy zachowywać kompatybilność wsteczną? Temat jest trudny, a zachowanie dużych graczy pokazuje, że nie boją się oni często poważnych zmian. O ile refaktoryzacja własnego projektu dotknąć może stosunkowo nieduże grono odbiorców, o tyle zmiany w języku/technologii, mogą dotknąć setki tysięcy programistów, w zależności od popularności analizowanego rozwiązania. Taka sytuacja rodzi wiele pytań, na które trudno znaleźć jednoznaczne odpowiedzi, ale spójrzcie na kilka poniższych przypadków, by uzmysłowić sobie skalę problemu.