Einige Unternehmen wie Blizzard stellen Software her, die in zukünftigen Windows-Versionen und mit neueren Versionen weiterhin gut funktioniert Versionen ihrer anderen Software-Abhängigkeiten. Andere Unternehmen (meistens solche, die keine Hardcore-Softwareunternehmen sind) schreiben manchmal Software, die mit der Veröffentlichung eines neuen Betriebssystems oder einer anderen Softwareabhängigkeit bricht. Was wissen die Hardcore-Software-Unternehmen, was die anderen nicht tun? Was sind die Hauptursachen für Vorwärtskompatibilitätsprobleme?

Kommentare

  • Haben Sie Ein Beispiel für einen Fehler?
  • @Fosco Viele ältere Spiele können beispielsweise auf modernen Computern nicht abgespielt werden, einige aufgrund von Betriebssystemänderungen, andere aufgrund von Hardware-Fortschritten.
  • @Fosco Ich habe ‚ viele solche Dinge gesehen. Eines, das mir besonders auffällt, ist ein israelisches Questspiel namens Oma X, das sich weigerte, in irgendetwas zu arbeiten, das nicht t Windows 95 (nicht einmal unter Windows 95 ++, AKA Windows 98). Andere Beispiele sind alte Astrologieprogramme, die meine Mutter verwendet hat, Bildungsprogramme für Kinder usw.
  • Diablo tut dies nicht div id = „5aaf0cccd8“>

t (oder ‚ t bis vor kurzem) funktionierte in Vista / 7 ohne Finagling. Ebenso wurden die Farben in StarCraft ohne Deaktivierung fehlerhaft die Explorer-Shell in 7.

Antwort

Hat Blizzard Software geschrieben, die mit zukünftigen Windows-Versionen gut funktioniert (Starcraft läuft beispielsweise immer noch auf 7) …

oder hat Microsoft „zukünftige Versionen“ von Software geschrieben, die rückwärts gerichtet ist?

So etwas wie WoW ist nicht genau „vorausschauend“, da es sich noch in der aktiven Entwicklung befindet. Andere Software wie Starcraft / Warcraft / Diablo wurde für die damalige Zeit geschrieben und funktioniert immer noch, da MS alles daran setzt, alte Software auf neuen Systemen zu aktivieren.

Blizzard hat auch die Fähigkeit und den Grund dafür. um seine alten Spiele zu aktualisieren. Sehr beliebte Titel, die die aktuelle Software steuern.

Einige Software verwendet hackige / nicht standardmäßige Teile, die nicht gut funktionieren. Einzigartige Setups, die auf „alten“ Fehlern beruhen, Treiber, die nicht portiert sind zu neuen Systemen usw.

Kommentare

  • +1 (6 Jahre später …) Dieser Artikel cracked.com/… gibt an, dass Microsoft bei der Erstellung von Windows 95 Hunderte von Praktikanten dazu gebracht hat, jede Software zu kaufen, die sie finden und testen konnten. Wenn die Software ‚ nicht funktioniert hat, haben sie Windows bis dahin geändert. Der Grund dafür wäre, wenn die Software nicht ‚ funktioniert hätte, würden die Benutzer ‚ nicht die XYZ Software Company beschuldigen, sondern Microsoft.
  • Ja … +50 Punkte heute nach einer 6 Jahre alten Antwort. Cha-ching. Und ja, die Antwort klingt immer noch richtig – und ‚ ist der Grund, warum Windows immer noch über Mac und Linux herrscht: Abwärtskompatibilität. Ich habe ‚ nicht das Vertrauen, dass 10 Jahre alte Software auf einem Mac oder unter Ubuntu funktioniert … Ich habe ein angemessenes Maß an Vertrauen, dass sie unter Windows funktioniert.

Antwort

Mehrere Gründe:

  1. Sie schreiben nach Standards, die weiterhin bestehen Unterstützt in zukünftigen Betriebssystemen
  2. OS-Unternehmen (z. B. MS) geben tatsächlich viel Code ein, um ältere Software zu unterstützen.
  3. Große beliebte Softwarehäuser pflegen in der Regel formelle oder informelle Beziehungen zu die OS-Unternehmen, damit sie Dinge früher sehen können.

Antwort

Hier ist meine Erfahrung: Viele Vor Jahren begann ein Produkt, an dem ich gearbeitet habe, Plugins von Drittanbietern zu unterstützen. Wir würden eine Anfrage an das Plugin senden, auf die es antworten sollte. Der erste Parameter im Plugin war eine Nummer, die identifizierte, welche Anfrage wir stellten. Zu diesem Zeitpunkt gab es nur eine Anfrage Wir haben dennoch dokumentiert, dass Sie diese Nummer überprüfen sollten. Wenn es sich um eine Nummer handelt, die Sie nicht verstanden haben, geben Sie nur einen Fehlercode mit der Bedeutung „Ich verstehe diese Anfrage nicht“ zurück. Einfach genug. Die erste Version Auf unserer Seite haben wir das richtig gehandhabt. Selbst als wir die erste Anfrage gesendet haben (die einzige, die wir jemals senden konnten), haben wir überprüft, ob das Plugin „nicht verstehen“ geantwortet hat und es bearbeitet.

Dann haben wir die zweite Anfrage hinzugefügt. Getestet mit alten Plugins, die erwarten, dass sie antworten „Ich verstehe diese Anfrage nicht“. Alle Plugins haben die Aktion für die erste Anfrage ausgeführt. Das ist nicht vorwärtskompatibel 🙁 Diese Plugins wurden an Kunden ausgeliefert und stürzen mit einem neuen ab App-Version.

Was wir getan haben: Stellen Sie die Software in einen Kontext, in dem die erste Anforderung ohne Schaden ausgeführt werden konnte. Senden Sie eine völlig andere Anforderung.Wenn die Antwort nicht „nicht verstanden“ wurde, wussten wir von da an, dass das Plugin von Idioten geschrieben wurde und keine anderen Anfragen als die, die wir zuerst entwickelt haben, gestellt wurden.

Antwort

Sie können die „Vorwärtskompatibilität“ nicht sicherstellen, es liegt an den Betriebssystem- und HW-Herstellern. Das Beste Sie können beim Schreiben von Software sicherstellen, dass Sie keine veralteten Funktionen oder nicht standardmäßigen Tricks verwenden.

Kommentare

  • Wenn Sie keine fehlerhaften Funktionen oder nicht standardmäßigen Tricks verwenden, werden Sie ziemlich weit kommen. Zum Beispiel Metal Marines, ein Windows 3.1-Spiel (möglicherweise Win 32s ), das grafische Objekte außerhalb des Hauptspielfensters rendert und Raketen über den Desktop abfeuert. Wenn Sie einen Gerätekontext abrufen und direkt damit feiern, funktioniert dies immer noch unter Windows XP und Windows 7. Ich denke, dies ist ein hervorragendes Beispiel für die Verbesserung der Vorwärtskompatibilität über das Engagement von Microsoft ‚ für die Abwärtskompatibilität .

Antwort

Ich denke, es ist nur so, dass das Schreiben vorwärtskompatibler Software mehr Aufwand erfordert. Ob der Aufwand (= Kosten) ist es wert, dass die Kompatibilität von der freigebenden Firma bewertet werden muss.

Beispielsweise können sich Datenbankschemata ändern. Sie können automatisch migriert (für beste Benutzererfahrung) oder ignoriert (für weniger Entwicklungsaufwand).

Antwort

Einige Programmierer lesen die Dokumentation und schreiben Code, der das Betriebssystem so verwendet, wie es in der Dokumentation angegeben ist Sie zu. Andere Programmierer schreiben Code schneller und debuggen Code, der nicht funktioniert.

Ein gutes Beispiel ist Code, der mit Fenstern mit zwei Ziffern nicht zurechtkommt Versionsnummer; Das Testen unter Windows 8 wird nicht fehlschlagen, aber wenn es unter Windows 10 verwendet wird …

Dann haben Sie Spiele, die so geschrieben sind, dass sie so schnell wie möglich sind Umgehen Sie das Betriebssystem, ohne sich darum zu kümmern, ob es in ein paar Jahren funktionieren wird.

Nehmen Sie einen Programmierer, der sich auf die Arbeit mit Unix-Software in den Tagen stützte, in denen jeder Anbieter seine eigene Version des Geräts hat Programmierer werden sehr daran gewöhnt sein, die Standards zu lesen und NUR abhängig davon, was die Standards sagen. Da Sie Ihre Software auf 6 verschiedenen Unix-Versionen ausliefern müssen, lernen Sie schnell, vorsichtig zu sein. Vergleichen Sie dies mit einem Programmierer, der in VB gelernt hat, wo es üblich ist, den Code nur so lange zu ändern, bis er funktioniert. Stellen Sie jedoch den „Unix-Programmierer“ auf dieselbe Aufgabe wie den „VB-Programmierer“ und häufig die Person, die gelernt hat VB wird ein Ergebnis erzielen, das viel schneller verkauft werden kann.

Bei der Befragung von Mitarbeitern wählen die Mitarbeiter in der Regel Gleichgesinnte. Sobald ein Unternehmen die ersten Mitarbeiter hat, denken neue Mitarbeiter auf die gleiche Weise.

Antwort

Ich würde denken, der Hauptgrund für die mangelnde Vorwärtskompatibilität wäre der Mangel von arbeitenden Programmierern, die auch hellsichtig sind.

Kommentare

  • Ich ‚ habe mehrere pkunk Programmierer aus genau diesem Grund. Ich bezahle sie in Pootworms, was unglaublich billig ist.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.