Entwickler haben beim Schreiben eines Programms mit einer Benutzeroberfläche (User Interface, UI) mehrere Möglichkeiten:
Wenn das Programm auf ein bestimmtes Betriebssystem ausgerichtet ist, können sie das offiziell veröffentlichte OS Developers Kit (dev kit) verwenden, mit dem das Programm Elemente verwenden kann, die vom Entwickler des Betriebssystems bereitgestellt und unterstützt werden. Microsoft bietet diese für Programme an, die für Windows geschrieben wurden. Programme, die unter Verwendung der Standardelemente geschrieben wurden, verhalten sich im Allgemeinen am ähnlichsten wie systemeigene Programme und sind am wenigsten von Patches und zukünftigen Upgrades des Betriebssystems betroffen.
Wenn das Programm plattformübergreifend ist, kann der Entwickler ein Framework verwenden . Diese werden von Drittanbietern geschrieben, die die erforderlichen Verbindungen für die Ausführung auf den Betriebssystemen verwalten, auf die sich das Framework bezieht. Java ist ein Beispiel für ein solches Framework. Mono ist ein weiteres plattformübergreifendes Framework, das stark auf dem Microsoft-eigenen .Net-Framework basiert. Diese Frameworks stellen im Wesentlichen Plugins bereit, die Entwickler verwenden können und die Funktionen, Dienste und Optionen bereitstellen, die das Programm möglicherweise benötigt, sodass der Programmierer ein Programm wie Bausteine oder zumindest Elemente des Programms wie die Benutzeroberfläche zusammenstellen kann, um dies zu erreichen Beschleunigen Sie die Entwicklung und lassen Sie mehr Zeit, um sich auf das Herz des Programms zu konzentrieren.
Eine andere Möglichkeit besteht darin , Ihr eigenes Programm vollständig zu schreiben . Auf diese Weise muss der Entwickler alle Aspekte des Programms berücksichtigen und die Benutzeroberfläche, die Optionen, die innere Logik und alles schreiben. In einigen Fällen hat diese Methode zu Programmen geführt, die eine lange Lebensdauer haben und sehr, sehr gut funktionieren (die frühen Roller Coaster Tycoon-Spiele sind vielleicht das bekannteste Beispiel dafür, dass sie sehr gut gemacht wurden). Diese Methode erfordert jedoch auch den größten Aufwand und ist daher nicht unbedingt üblich. Wenn sie falsch ausgeführt wird, kann dies dazu führen, dass Programme ständig gewartet werden müssen, damit sie ordnungsgemäß funktionieren, da Patches und verschiedene Betriebssystemversionen die Funktionsweise erheblich verändern. Dies kann auch dazu führen, dass sich Programme auf eine Weise verhalten, die im Vergleich zu "Standardkonventionen" nicht intuitiv oder sehr umständlich ist.
Um Ihre Frage jedoch direkter zu beantworten: Wenn das Programm Open Source ist, können Sie den Code selbst überprüfen. Möglicherweise gibt es Tags, die auf die verwendeten Frameworks hinweisen. Oder es wird klar, dass der Entwickler das ganze Ding selbst gebaut hat. Wenn das Programm eine geschlossene Quelle ist, müssten Sie den Entwickler fragen, und es liegt an ihm, ob er antwortet oder nicht.