Některé společnosti, například Blizzard, vyrábějí software, který v budoucích verzích systému Windows a novějších funguje dobře. verze jejich dalších závislostí na softwaru. Jiné společnosti (většinou ty, které nejsou hardwarovými softwarovými společnostmi) někdy píší software, který se rozpadá s vydáním nového OS nebo jiné závislosti na softwaru. Co tvrdí softwarové společnosti, které ostatní nevědí? Jaké jsou hlavní příčiny problémů s dopřednou kompatibilitou?

Komentáře

  • Máte příklad něčeho, co selhalo?
  • @Fosco Mnoho starších her je například na moderních počítačích nehratelných, některé kvůli změnám operačního systému, jiné kvůli hardwarovým pokrokům.
  • @Fosco Viděl jsem ‚ spoustu podobných věcí. Zvláště vyniká izraelská pátrací hra Granny X, která odmítla pracovat v ničem, co nebylo ‚ t Windows 95 (ani na Windows 95 ++, AKA Windows 98). Dalšími příklady jsou staré astrologické programy, které používala moje matka, vzdělávací programy pro děti atd.
  • Diablo ne ‚ t (nebo donedávna ‚ t) nepracoval na vista / 7 bez nějakého finaglingu. Stejně tak byly barvy ve StarCraftu buggovány bez deaktivace shell průzkumníka v 7.

Odpověď

Psal Blizzard software, který funguje dobře s budoucími verzemi Windows (například Starcraft stále hraje na 7) …

nebo Microsoft napsal „budoucí verze“ softwaru, který se dívá zpětně?

Něco jako WoW není „přesně dívající se“, protože je stále v aktivním vývoji. Ostatní software, jako je Starcraft / Warcraft / Diablo, byl napsán pro tuto dobu a stále funguje, protože MS jde z cesty, aby umožnil starý software na nových systémech.

Blizzard má také schopnost a důvod, aktualizovat své staré hry. Velmi populární tituly, které pohánějí jeho aktuální software.

Některý software používá hackerské / nestandardní součásti, které nefungují dobře. Unikátní nastavení, závislé na činnosti „starých“ chyb, ovladače, které nejsou přeneseny do nových systémů atd.

Komentáře

  • +1 (o 6 let později …) Tento článek cracked.com/… uvádí, že při vytváření systému Windows 95 měl Microsoft stovky stážistů, kteří nakupovali každý software, který mohli najít, a všechny je testovali. Pokud software ‚ t nepracoval, upravili Windows tak, jak to fungovalo. Důvodem je, že pokud software ‚ t nefunguje, uživatelé by ‚ neobviňovali softwarovou společnost XYZ, ale Microsoft.
  • Ano … +50 bodů dnes za 6 let starou odpověď. Cha-ťing. A ano, odpověď stále zní pravdivě – a ‚ proč Windows stále vládne nad Mac a Linuxem: Zpětná kompatibilita. Nemám ‚ důvěru v to, že desetiletý software bude fungovat na počítačích Mac nebo Ubuntu … Mám přiměřenou míru důvěry, že bude fungovat i v systému Windows.

Odpověď

Několik důvodů:

  1. Zapisují do standardů, které nadále platí podporováno v budoucích OS
  2. společnostech s OS (např. MS) ve skutečnosti vkládá hodně kódu na podporu staršího softwaru
  3. Velké populární softwarové domy mají obvykle formální nebo neformální vztahy s společnosti OS, takže si mohou věci prohlédnout dříve.

Odpověď

Moje zkušenost: Mnoho před lety začal produkt, na kterém jsem pracoval, podporovat pluginy třetích stran. Pošleme požadavek na plugin, na který měl odpovědět. Prvním parametrem v pluginu bylo číslo, které určovalo, který požadavek jsme odeslali. V tom okamžiku byl pouze jeden požadavek . Přesto jsme zdokumentovali, že byste toto číslo měli zkontrolovat, a pokud to bylo číslo, kterému jste nerozuměli, nedělejte nic jiného než vrácení chybového kódu ve smyslu „Nerozumím tomuto požadavku“. Dost jednoduché. První verze na naší straně jsme to zvládli správně. Dokonce i při odesílání prvního požadavku (jediného, který jsme kdy mohli poslat) jsme zkontrolovali, zda plugin nereagoval „nerozuměl“ a vyřídil jej.

Poté jsme přidali druhý požadavek. Testováno se starými pluginy, které očekávaly, že odpoví „Nerozumím tomuto požadavku.“ Všechny pluginy provedly akci u prvního požadavku. To není kompatibilní s přeposíláním 🙁 Tyto pluginy byly odeslány zákazníkům a havarovaly by s novým verze aplikace.

Co jsme udělali: Umístěte software do kontextu, kde by bylo možné provést první požadavek bez poškození. Odeslal úplně jiný požadavek.Pokud odpověď nebyla „nerozumím“, pak jsme od té doby věděli, že plugin byl napsán idioty a nebyly vzneseny žádné jiné požadavky než ten, který jsme vyvinuli jako první.

Odpověď

Nemůžete zajistit „dopřednou kompatibilitu“, je to na tvůrcích OS a HW. Nejlepší věc při psaní softwaru můžete udělat, abyste se ujistili, že nepoužíváte zastaralé funkce nebo nestandardní triky.

Komentáře

  • Pokud nepoužíváte vykreslené funkce nebo nestandardní triky, dostanete se daleko. Například Metal Marines, hra z éry Windows 3.1 (možná ve skutečnosti Win 32s ), která vykresluje grafické objekty mimo hlavní okno hry a spouštění raket přes plochu, získáním kontextu zařízení a přímou párty s ním stále funguje ve Windows XP a Windows 7. Myslím si, že je to úžasný příklad získání dopředné kompatibility prostřednictvím závazku společnosti Microsoft ‚ k zpětné kompatibilitě .

Odpověď

Myslím, že jde jen o to, aby psaní dopředu kompatibilního softwaru vyžadovalo více úsilí. (= cena) stojí za to, že kompatibilita musí být posouzena vydávající firmou.

Například se mohou změnit databázová schémata. Mohou být migrovány automaticky (pro nejlepší uživatelský komfort) nebo ignorovány (pro menší úsilí při vývoji) .

Odpověď

Někteří programátoři si přečtou dokumentaci a zapíší kód, který používá OS tak, jak to říká dokumentace. jím. Ostatní programátoři píší kód rychleji a ladí jakýkoli kód, který nefunguje.

Dobrým příkladem bude kód, který si nedokáže poradit s Windows, která mají dvouciferný kód číslo verze; nebude selhat při testování v systému Windows 8, ale při použití v systému Windows 10… ..

Pak máte hry, které jsou psány tak, aby byly co nejrychlejší , obejde OS a nezajímá je, jestli budou fungovat za pár let… ..

Vezměte si programátora, který se přiklonil k programování práce na unixovém softwaru ve dnech, kdy má každý prodejce svou vlastní verzi jednotky, že programátor bude velmi zvyklý číst standardy a POUZE v závislosti na tom, co standardy říkají. To, že musíte svůj software dodávat v 6 různých verzích Unixu, vás rychle naučí být opatrní. Porovnejte to s programátorem, který se naučil na VB, kde je běžné jen měnit kód, dokud nebude fungovat …… Ale „programátor typu Unix“ postavte na stejný úkol jako „programátor typu VB“ a často osobu, která se učila na VB přinese výsledek, který bude možné prodat mnohem rychleji.

Při pohovoru se zaměstnanci mají tendenci volit jako smýšlející lidé, takže jakmile má společnost prvních pár zaměstnanců, mají noví zaměstnanci tendenci přemýšlet stejným způsobem.

Odpověď

Domnívám se, že hlavním důvodem nedostatku dopředné kompatibility bude nedostatek pracujících programátorů, kteří jsou také jasnovidci.

Komentáře

  • Mám ‚ několik pkunk programátorů právě z tohoto důvodu. Platím jim v Pootworms, což je neuvěřitelně levné.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *