it-swarm-eu.dev

Zachování původního kódu

Mám starou kódovou základnu, která stále „funguje“, ale je obtížné/téměř nemožné ji udržovat. Aktualizace může být drahá (čas a peníze). Jdu na to, nebo bych měl i nadále nenávidět svůj svět (ale pokračovat v práci na něčem, co funguje a je relativně bez chyb)?

5
Jason

Pokud na svém webu vidíte budoucnost, přepište ji co nejdříve, pokud to není možné spravovat. Udržuji několik +5 let starých velkých webů a v době, kdy trávím kletbu na hloupé problémy, které z toho vyplynuly, jsem je mohl všechny přepsat. Udělejte si radost a přepište jej, je také zábavnější postavit něco nového;)

4
D4V360

Jsem si jistý, že to záleží na konkrétních okolnostech, ale nezapomeňte vzít v úvahu další čas, který musíte věnovat údržbě existující kódové základny versus náklady na její aktualizaci. Když nebudu znát více podrobností, řekl bych, že to aktualizuji, spíše než bojuji s tím, co máš.

1

Jsem v podobné situaci. Moje společnost má svůj starší web, který dělá vše, co potřebuje. Kromě toho mají webovou stránku vytvořenou externí společností, která jej nahradí a která dělá 90% toho, co potřebují. Očekávají, že 90% se stane 110%.

Rozhodl jsem se pro následující postup:

  • Udržujte starší web, dokud nebude nový web doručen
  • Získejte další funkce integrované do nového webu co nejrychleji
  • Udržujte nový web, jako by nebyl nahrazen
  • Jakmile bude vše funkční, znovu jej vytvořte a vytvořte plán migrace
  • Přejděte na nový nový web a zapomeňte na to, že některý z těch starých existoval

Stejně jako bych chtěl jednoduše ignorovat další dva weby, to není možnost. Bez ohledu na to, jak se o tom cítím, bude stránka, která je dodávána, muset sloužit nám určitý počet měsíců, než se budu moci pokusit ji nahradit. Moje optimalizace, údržba a zlepšování bude mojí prioritou. Tento web musí během své životnosti fungovat. Budování nového nového webu tedy bude projektem „the-time-that-everything-working-on-my-personal-time-when-I-want-to-hack-on-niečo“. Ale to je v pořádku, protože řídí očekávání každého. Společnost, která očekává, že tento nový web bude fungovat na určité úrovni, bude mít svůj web na této úrovni a zároveň ho aktivně vylepšuji v zákulisí. A zároveň budu stavět náhradu, která ji odfoukne.

V mé situaci je můj „nový web“ (od externí společnosti) vaším starým kódovým základem a můj „nový nový web“ je váš znovu vytvořený server. Takže myslím, že moje krátká odpověď je, že při zachování původní kódové základny, aby se svět otáčel, můžete znovu vytvořit.

0
Bryson

Souhlasím s @ D4V360, je opravdu potěšení psát něco znovu. Zvažte také koncept „technického dluhu“, o kterém Jeff a Joel hovořili ve svých podcastech. Zde je několik souvisejících odkazů na toto téma:

  • Steve McConnell (autor skvělé knihy „Code Compete“) o technickém dluhu
  • Výše uvedené a naše vlastní Jeff Atwood o technickém dluhu
0
Alan