Miranda NG:Über

From Miranda NG
Miranda NG:About/de
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page is a translated version of the page Miranda NG:About and the translation is 89% complete.

Miranda NG (Next Generation) ist eine Abspaltung des Multi-Protokoll-Client Miranda IM.

Miranda NG wird unter den Bedingungen der GNU General Public License veröffentlicht.

Unterstützte Protokolle

  • GG (Gadu-Gadu)
  • IRC (Internet Relay Chat)

Unterstützte Betriebssysteme

Windows 2003 / XP SP3 / Vista / 7 / 8 / 10 / 11.


Geschichte

In spring 2012 the development of Miranda IM reached a deadlock.

  1. The existing (up to the present) model of Miranda development proved to be totally unsustainable for the following reasons:
    • It usually took over a year for changes in the core to be taken up by the plugin developers and to be finally brought to end users.
    • Plugins' source code was scattered about dozens of repositories, many plugins had no current source code available. Thus, code monitoring by the team was limited, if not to say impossible. As a result some plugins contained unusable, inefficient or buggy code, and no one could fix it.
    • There were lots of compatibility issues between different versions of Miranda core or even between versions of some plugins. This was especially true for implementation of Unicode support which hadn't been finished in Miranda IM.
  2. There was a conflict between George Hazan (ghazan) and Boris Krasnovskiy (borkra), the most active Miranda developers at the time. When Boris reverted a fix for his error because the commentary to commit contained the term borkred – which had been invented by one of the coders to denote Miranda parts broken by Boris – that was the last straw for George.

In April 2012, George Hazan decided to leave Miranda IM project despite many obvious directions for Miranda development. However, during the negotiations between the various parties it was decided to found a new project led by George.

On May 15, 2012 the source code of Miranda core was uploaded to a separate repository and later over a hundred plugins were added. Plugins to port were chosen on the basis of usage frequency and popularity on www.miranda-vi.org. Plugins without actual source code have been left out. After that the source code has undergone more than a thousand changes and the first stable build of Miranda NG was released on August 30, 2012.

By autumn 2012 fifteen members joined the project, at least half of them are actively involved in the development.

Prinzipien des Projektes

  • Das Projekt beinhaltet den Kern selbst und alle Plugins, so dass jedes Teammitglied den Code jedes Plugins überprüfen (und ggf. korrigieren) kann.
  • Jede neue Version von Miranda NG ist nur mit sich selbst kompatibel (bspw. sind alle Plugins aus dem selben Build miteinander austauschbar, während zwei verschiedene Builds komplett inkompatibel seien können). Dadurch ist es nun möglich, aufgeblähten Code im Kern von Miranda NG loszuwerden, und so ergeben sich viele Möglichkeiten zur Optimierung von Kern und Plugins.
  • ANSI wird nicht mehr unterstützt. Kompilieren mit Visual Studio 2015 und 2017 wird unterstützt.
  • Alle Teammitglieder haben unterschiedliche Zugriffsrechte: Einige können überall Code committen, einige können nur zu Plugins comitten, einige sind im Bugtracker und im Wiki aktiv.

Vorteile von Miranda NG

  • Plugins können nun dynamisch im laufenden Betrieb geladen und entladen werden, ohne das Programm dafür neu zu starten.
  • Die Geschwindigkeit beim Start und während der Laufzeit wurde signifikant verbessert.
  • Der Verbrauch von Systemresourcen (CPU und RAM) wurde signifikant reduziert. Dies wurde dadurch erreicht, dass ungenutzte Teile des Kerns in separate Module ausgelagert wurden (diese sind im Verzeichnis Core zu finden).
  • Alle Plugins werden in einem zentralen Repository verwaltet, alle nötigen Änderungen können sofort angewendet werden, ohne auf eine Antwort des Entwicklers des jeweiligen Plugins zu warten (was bei Miranda IM Monate dauern konnte).
  • Es wurde viel Arbeit in die vereinheitlichung gesteckt - viele Funktionen, die unabhängig voneinander in mehreren Plugins implementiert waren, wurden in den Kern verschoben.
  • Behebung einiger alter Fehler und Mängel haben die Stabilität des gesamten Programms verbessert.
  • Einige Programmierer, die die Entwicklung an Plugins für Miranda IM aus verschiedenen Gründen aufgegeben haben, sind nun zur Entwicklung von Miranda NG zurückgekehrt.

Funktionen und Unterschiede zu Miranda IM

  • Aufgrund größerer Änderungen im Kern sind Plugins für Miranda IM nicht in Miranda NG verwendbar.
  • Die Standard Miranda-NG-Kernmodule wurden in das Verzeichnis Core im hauptverzeichnis des Programms verschoben. Diese Module werden nicht in den Arbeitsspeicher geladen wenn ein "Ersatz" im Plugin-Verzeichnis gefunden wurde. Sie werden jedoch dynamisch geladen wenn ihr "Ersatz" deaktiviert wird. Dies spart Arbeitsspeicher und reduziert die Ladezeit des Programms (Miranda IM behält ungenutzte Module zusammen mit ihrem "Ersatz" im Speicher).
  • ANSI wird nicht mehr länger unterstützt. Der Kern und alle Plugins unterstützen alle Unicode.
  • Die verschiedenen Toolbars, die in jedem Kontaktlisten-Plugin anders implementiert waren, wurden durch das Plugin TopToolBar ersetzt, an welchem große Änderungen vorgenommen wurden.
  • Überprüfung und Komprimierung der Datenbank wird nun von den Datenbanktreibern durchgeführt (Miranda IM hatte dafür ein separates DBTool für jedes Datenbankformat). Daher müssen die Plugins DbChecker und Import nur den jeweiligen Datenbanktreiber aufrufen und benötigen kein separates Tool für jeden Treiber.
  • Der PluginUpdater hält Miranda NG immer auf dem neusten Stand.
  • Das Plugin ExtraIcons wurde in den Kern integriert.

Siehe auch

Externe Links