Miranda NG:About/ru: Difference between revisions

From Miranda NG
Miranda NG:About/ru
Jump to navigation Jump to search
(Imported translation using page migration)
(Updating to match new version of source page)
 
(29 intermediate revisions by 3 users not shown)
Line 6: Line 6:
__TOC__
__TOC__


== Protocol support ==
== Поддерживаемые протоколы ==
{{Plugins|en|form=links|type=protocol
{{Plugins|form=links|type=protocol
|d_EmLanProto = (E-mage LAN)
|d_EmLanProto = (E-mage LAN)
|d_GG = (Gadu-Gadu)
|d_GG = (Gadu-Gadu)
|d_IRC = (Internet Relay Chat)
|d_IRC = (Internet Relay Chat)
|d_Jabber = (XMPP)
|d_Jabber = (XMPP)
|d_MRA = (Mail.ru Agent)
}}
}}


== Supported operating systems ==
== Поддерживаемые операционные системы ==
Windows 2003 / XP SP3 / Vista / 7 / 8 / 10.
Windows 2003 / XP SP3 / Vista / 7 / 8 / 10 / 11.
 


== История ==
== История ==
Line 27: Line 27:
# Сложился четко созревший конфликт между двумя оставшимися на тот момент активными разработчиками Миранды: Георгием Хазаном (ghazan) и Борисом Красновским (borkra), последней каплей которого стал откат Борисом фикса для совершенной им ошибки под тем предлогом, что в комментарии к коммиту был употреблено английское причастие ''borkred'', изобретенное для сломанных им частей Миранды одним из участников проекта (не Георгием).
# Сложился четко созревший конфликт между двумя оставшимися на тот момент активными разработчиками Миранды: Георгием Хазаном (ghazan) и Борисом Красновским (borkra), последней каплей которого стал откат Борисом фикса для совершенной им ошибки под тем предлогом, что в комментарии к коммиту был употреблено английское причастие ''borkred'', изобретенное для сломанных им частей Миранды одним из участников проекта (не Георгием).


В результате всего этого в начале апреля 2012 тогдашний куратор ядра Miranda IM Георгий Хазан принял решение покинуть проект, несмотря на наличие множества очевидных направлений развития Миранды. Однако, в процессе переговоров между разными сторонами было принято решение организовать новый проект, под руководством ghazan.
В результате всего этого в начале апреля 2012 тогдашний куратор ядра Miranda IM Георгий Хазан принял решение покинуть проект, несмотря на наличие множества очевидных направлений развития Миранды. Однако, в процессе переговоров между разными сторонами было принято решение организовать новый проект, под руководством Георгия.


15 мая 2012 года исходный код ядра Миранды был залит в отдельный репозиторий, и в него потом было добавлено больше сотни плагинов. Плагины для портирования выбирались по принципу частоты использования и популярности на сайте [http://miranda-vi.org www.miranda-vi.org]. Однозначно исключались плагины, для которых не существовало актуального исходного кода. В последующем в исходные тексты было внесено более полутора тысяч изменений, после чего 30 августа 2012 года был выпущен первый релиз Miranda NG.
15 мая 2012 года исходный код ядра Миранды был залит в отдельный репозиторий, и в него потом было добавлено больше сотни плагинов. Плагины для портирования выбирались по принципу частоты использования и популярности на сайте [http://miranda-vi.org www.miranda-vi.org]. Однозначно исключались плагины, для которых не существовало актуального исходного кода. В последующем в исходные тексты было внесено более полутора тысяч изменений, после чего 30 августа 2012 года был выпущен первый релиз Miranda NG.


Сейчас (осень 2012 года) в проекте зарегистрированы 15 человек, из них минимум половина активно участвуют в разработке.
Осенью 2012 года в проекте зарегистрированы 15 человек, из них минимум половина активно участвовали в разработке.


== Принципы проекта ==
== Принципы проекта ==
Line 37: Line 37:
* В проект входит не только ядро, но и вообще все плагины, которые могут быть использованы. Это открывает возможность любому члену команды проверить (и при необходимости исправить) код любого плагина.
* В проект входит не только ядро, но и вообще все плагины, которые могут быть использованы. Это открывает возможность любому члену команды проверить (и при необходимости исправить) код любого плагина.
* Каждая конкретная версия Miranda NG совместима только сама с собой (т. е. гарантируется, что все плагины в одной сборке совместимы друг с другом, но две соседние сборки могут быть полностью несовместимы). Это полностью решает все проблемы с совместимостью разных версий, позволяет избавиться от громоздкого кода во многих местах ядра и открывает широчайший простор для глобальной оптимизации как ядра Миранды, так и соответствующих плагинов.
* Каждая конкретная версия Miranda NG совместима только сама с собой (т. е. гарантируется, что все плагины в одной сборке совместимы друг с другом, но две соседние сборки могут быть полностью несовместимы). Это полностью решает все проблемы с совместимостью разных версий, позволяет избавиться от громоздкого кода во многих местах ядра и открывает широчайший простор для глобальной оптимизации как ядра Миранды, так и соответствующих плагинов.
* Прекращается поддержка версий ANSI, как полностью морально устаревших. Поддерживаются компиляторы Visual Studio 2010 и 2013.
* Прекращается поддержка версий ANSI, как полностью морально устаревших. Поддерживаются компиляторы Visual Studio 2015 и 2017.
* Все члены команды имеют разный доступ: кто-то может исправлять только код плагинов, кто-то работает в трекере и вики, кто-то может исправлять любой код.
* Все члены команды имеют разный доступ: кто-то может исправлять только код плагинов, кто-то работает в трекере и вики, кто-то может исправлять любой код.


Line 45: Line 45:
* Повышена скорость запуска и работы программы;
* Повышена скорость запуска и работы программы;
* Значительно уменьшено потребление ресурсов системы (GDI и оперативной памяти), в т. ч. за счет вынесения неиспользуемых кусков ядра в отдельные модули (папка Core).
* Значительно уменьшено потребление ресурсов системы (GDI и оперативной памяти), в т. ч. за счет вынесения неиспользуемых кусков ядра в отдельные модули (папка Core).
* All plugins are gathered in a single repository, any changes required are applied to them immediately without waiting for the plugin developers' response (which could take months for Miranda IM).
* Все плагины находятся в одном репозитории, при изменениях в ядре необходимые правки вносятся сразу, без ожидания реакции разработчиков, которая может длиться месяцами у Miranda IM.
* A great deal of work on unification was done – lots of features implemented in several plugins independently were moved to the core.
* Проведена достаточно большая работа по унификации — многое из того, что каждый плагин реализовывал самостоятельно, было перенесено в ядро.
* Getting rid of old bugs and "crutches" improves the overall stability of the program.
* Избавление от старых «костылей» и багов, повышающее общую стабильность программы.
* Some coders who abandoned the development of Miranda IM plugins for various reasons now return to Miranda NG development.
* Возвращение в разработку Miranda NG кодеров, покинувших или бросивших по тем или иным причинам разработку плагинов под Miranda IM.


== Features and differences from Miranda IM ==
== Особенности и отличия от Miranda IM ==


* Due to major changes in the core, Miranda NG is not compatible with plugins for Miranda IM.
* В связи с серьезными изменениями в ядре программы, Miranda NG стала несовместима с плагинами от Miranda IM.
* The [[Core and basic plugins#Core|standard Miranda NG core modules]] were extracted to Core folder in the root of the program. These modules are not loaded into memory if their "substitutes" are found in Plugins folder. Also, they are automatically loaded when the "substitutes" are being disabled. It saves memory and reduces the load time of the program. (Miranda IM keeps in memory unnecessary modules together with their "substitutes".)
* [[Ядро и базовые плагины#Core\|Стандартные модули ядра]] Miranda NG вынесены в папку Core в корне программы. Эти модули не загружаются в память при наличии их «замен» и автоматически подгружаются, если «замена» была отключена. В результате экономится память и уменьшено время загрузки программы. (Miranda IM держит в памяти ненужные модули даже при наличии их альтернатив.)
* ANSI is no longer supported. The core and all the plugins support Unicode completely.
* Отказ от ANSI, ядро и все плагины полностью поддерживают Unicode.
* The multiple toolbars implemented in each contact list plugin in their own way were replaced with {{Plugin|TopToolBar}} plugin which had undergone great changes.
* Вместо нескольких тулбаров, реализуемых в каждом плагине списка контактов по-своему, приведён в порядок и доработан плагин {{Plugin|TopToolBar}}.
* Dbtool became a plugin. Now database checking and compression are performed by database drivers. (Miranda IM has to have a special dbtool for each database format.) Thus, {{Plugin|DbChecker}} and {{Plugin|Import}} plugins just run the appropriate driver and there is no need to have a special tool for each driver.
* Теперь проверка и сжатие базы данных убрано в сам драйвер базы (в Miranda IM для каждого формата необходимо писать собственный dbtool). Таким образом, {{Plugin|DbChecker}} и {{Plugin|Import}} теперь только запускают соответствующий драйвер, и больше нет необходимости под каждый драйвер иметь свою «родную» утилиту.
* There is {{Plugin|PluginUpdater}} – plugin to keep your Miranda NG up-to-date.
* {{Plugin|PluginUpdater}} — «синхронизатор» плагинов с официальным репозиторием.
* {{Plugin|ExtraIcons}} plugin was moved into the core.
* Функциональность плагина {{Plugin|ExtraIcons}} перенесена в ядро.


== See also ==
== См. также ==


* [[Changelog|Miranda NG changelog]]
* [[История изменений]] — подробнее об изменениях в Miranda NG
* [[Miranda NG:General disclaimer|Miranda NG contributors]]
* [[Miranda NG:General disclaimer|Miranda NG написана и поддерживается этими людьми]]
* [[FAQ|Frequently Asked Questions]]
* [[Помощь|Ответы на часто задаваемые вопросы]]


== External links ==
== Ссылки ==


* [https://github.com/miranda-ng/miranda-ng/milestones Miranda NG Roadmap]
* [https://github.com/miranda-ng/miranda-ng/milestones Дорожная карта проекта]


[[Category:Main pages{{#translation:}}|{{#getdisplaytitle:{{FULLPAGENAME}}}}]]
[[Category:Main pages{{#translation:}}|{{#getdisplaytitle:{{FULLPAGENAME}}}}]]

Latest revision as of 18:52, 7 January 2023

Other languages:

Miranda NG (Next Generation) — форк Miranda IM, созданный бывшими разработчиками ядра и ряда плагинов.

Miranda NG распространяется под лицензией GNU General Public License.

Поддерживаемые протоколы

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

Поддерживаемые операционные системы

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


История

C весны 2012 года в разработке Miranda IM сложилась патовая ситуация:

  1. Принятая (и по сегодняшний день) модель разработки Миранды оказалась полностью нежизнеспособной по следующим причинам:
    • Изменениям в ядре требовалось порядка полутора лет, чтобы быть подхваченными разработчиками плагинов и быть, наконец-то, доведенными до конечных пользователей.
    • Исходный код плагинов был раскидан по десяткам репозиториев, а для многих плагинов (актуальный) исходный код был вообще недоступен. Это ограничивало или вообще делало невозможным аудит кода плагинов со стороны участником команды. Соответственно, код некоторых плагинов содержит нерабочий, неэффективный или откровенно ошибочный код, и никто не может на это повлиять.
    • Существовал огромный воз проблем с совместимостью между различными версиями ядра Миранды и даже между версиями отдельных плагинов. Особенно это касалось поддержки Unicode, которая в Miranda IM так и не доведена до конца.
  2. Сложился четко созревший конфликт между двумя оставшимися на тот момент активными разработчиками Миранды: Георгием Хазаном (ghazan) и Борисом Красновским (borkra), последней каплей которого стал откат Борисом фикса для совершенной им ошибки под тем предлогом, что в комментарии к коммиту был употреблено английское причастие borkred, изобретенное для сломанных им частей Миранды одним из участников проекта (не Георгием).

В результате всего этого в начале апреля 2012 тогдашний куратор ядра Miranda IM Георгий Хазан принял решение покинуть проект, несмотря на наличие множества очевидных направлений развития Миранды. Однако, в процессе переговоров между разными сторонами было принято решение организовать новый проект, под руководством Георгия.

15 мая 2012 года исходный код ядра Миранды был залит в отдельный репозиторий, и в него потом было добавлено больше сотни плагинов. Плагины для портирования выбирались по принципу частоты использования и популярности на сайте www.miranda-vi.org. Однозначно исключались плагины, для которых не существовало актуального исходного кода. В последующем в исходные тексты было внесено более полутора тысяч изменений, после чего 30 августа 2012 года был выпущен первый релиз Miranda NG.

Осенью 2012 года в проекте зарегистрированы 15 человек, из них минимум половина активно участвовали в разработке.

Принципы проекта

  • В проект входит не только ядро, но и вообще все плагины, которые могут быть использованы. Это открывает возможность любому члену команды проверить (и при необходимости исправить) код любого плагина.
  • Каждая конкретная версия Miranda NG совместима только сама с собой (т. е. гарантируется, что все плагины в одной сборке совместимы друг с другом, но две соседние сборки могут быть полностью несовместимы). Это полностью решает все проблемы с совместимостью разных версий, позволяет избавиться от громоздкого кода во многих местах ядра и открывает широчайший простор для глобальной оптимизации как ядра Миранды, так и соответствующих плагинов.
  • Прекращается поддержка версий ANSI, как полностью морально устаревших. Поддерживаются компиляторы Visual Studio 2015 и 2017.
  • Все члены команды имеют разный доступ: кто-то может исправлять только код плагинов, кто-то работает в трекере и вики, кто-то может исправлять любой код.

Преимущества Miranda NG

  • Подключение и отключение плагинов «на лету», без перезапуска программы;
  • Повышена скорость запуска и работы программы;
  • Значительно уменьшено потребление ресурсов системы (GDI и оперативной памяти), в т. ч. за счет вынесения неиспользуемых кусков ядра в отдельные модули (папка Core).
  • Все плагины находятся в одном репозитории, при изменениях в ядре необходимые правки вносятся сразу, без ожидания реакции разработчиков, которая может длиться месяцами у Miranda IM.
  • Проведена достаточно большая работа по унификации — многое из того, что каждый плагин реализовывал самостоятельно, было перенесено в ядро.
  • Избавление от старых «костылей» и багов, повышающее общую стабильность программы.
  • Возвращение в разработку Miranda NG кодеров, покинувших или бросивших по тем или иным причинам разработку плагинов под Miranda IM.

Особенности и отличия от Miranda IM

  • В связи с серьезными изменениями в ядре программы, Miranda NG стала несовместима с плагинами от Miranda IM.
  • Стандартные модули ядра Miranda NG вынесены в папку Core в корне программы. Эти модули не загружаются в память при наличии их «замен» и автоматически подгружаются, если «замена» была отключена. В результате экономится память и уменьшено время загрузки программы. (Miranda IM держит в памяти ненужные модули даже при наличии их альтернатив.)
  • Отказ от ANSI, ядро и все плагины полностью поддерживают Unicode.
  • Вместо нескольких тулбаров, реализуемых в каждом плагине списка контактов по-своему, приведён в порядок и доработан плагин TopToolBar.
  • Теперь проверка и сжатие базы данных убрано в сам драйвер базы (в Miranda IM для каждого формата необходимо писать собственный dbtool). Таким образом, DbChecker и Import теперь только запускают соответствующий драйвер, и больше нет необходимости под каждый драйвер иметь свою «родную» утилиту.
  • PluginUpdater — «синхронизатор» плагинов с официальным репозиторием.
  • Функциональность плагина ExtraIcons перенесена в ядро.

См. также

Ссылки