Nil Alexandrov написал(а) к Kirill Temnenkov в May 21 23:46:42 по местному времени:
* Originally in nino.046.local
* Crossposted in ru.jnode
XC jnode.local
Нello, Kirill!
Friday May 07 2021 22:43, from Kirill Temnenkov -> Nil Alexandrov:
KT> Почти 10 лет назад Ivan Agarkov написал реализацию фидософта на Java
KT> (я там сбоку немножко приложил руку в качестве коммитера).
Я поглядываю на реализации фидософтин на разных ЯП, и по моим наблюдениям, JNode код написан наиболее "современно", всмысле использует современные языковые конструкци, идиомы, паттерны, ну кроме джвавовских болерплейтов, в виде всех этих геттер-сеттеров, но это джавошная отдельная тема.
Jnode по коду может быть чем-то похож на более современные реализации на Golang, и я тут даже не скажу что читать проще. Написанные две независимые реализаций на Golang решали задачу (как с интересом провести пару свободных вечеров, зачёркнуто) как реализация только части функционала, и при этом особо не парясь над переиспользованием кода, т.е. хаски написан более как библиотека и сам тоссер hpt просто ей пользуется, так и JNode, там как бы библиотека, что потом собака горячая её переиспользовала.
KT> Там всё на чистой жабе реализовано, включая протокол binkd. Из
KT> сторонних библиотек используется только легковесная библиотека для
KT> работы с базой данных (ORM).
Мой респект. С одной стороны, там реализовано нечто революционное, когда мейлер формирует бандлы "на лету" сразу из базы, минуя отдельно паковку. С другой стороны, такой подход сделал невозможным интеграцию в качестве какого-либо фидошного компонента из меллер+тоссер+..
Моя самая большая претензия - отсутствие нативной "читалки" для собственных сиквел-баз, при этом нет поддержки стандартных джам и прочих. Короче, чтобы почитать феду нам надо заводить поента на какой-то классике.
KT> Насколько я помню, часть жаба-кода, реализующую протокол binkd, потом
KT> использовали в НotdogED для андроида.
Так и было. Он сам говорил, что если бы прям совсем "с нуля" начинал бы пейсать, то может быть и не взялся, слишком грандиозный проект.
KT> Там еще много приколов - фидошные сообщения в реляционной базе
KT> данных, подключаемые скрипты на java script и groovy, RPC over http,
KT> чтобы сообщения фигачить, подключаемые плагины с функциональностью
KT> nntp и xmpp.
С точки зрения разработчика софта - все нужные плюшки, но с точки зрения интеграции в фидо-экосистему (фигасе я термин придумал) прям самых базовых вещей нет, т.е. с фидошкой есть только один API - Binkp.
KT> Архитектурно это всё ужас-ужас-ужас (это и сам Иван признавал) -
KT> здоровенный такой монолит. Но работает, народ пользовался :-)
К сожалению, как и многие проекты, аффтар наигрался, забылось.
KT> У Ивана вроде до сих пор одна из нод на этом работает.
Проект интересный, но в массы не пошёл.
KT> У меня какое-то время нода работала на этом софте, но потом я
KT> все-таки переполз на традиционные hpt + binkd. Всё-таки для старых
KT> сетей лучше старый софт.
Опиши свой опыт, почему тебе он "не зашёл", что такое "для старых сетей лучше старый софт"? На старом железе ява не едет или что-то идейное?
KT> И, насколько я помню, из здесь присутствующих Dima Bagramov какое-то
KT> время на JNODE сидел, но потом тоже перешел на более традиционный
KT> софт.
-1 участник фанклуба.
KT> По фану можешь глянуть:
https://github.com/annmuor/jnode
Посматривал, знаю.
Best Regards, Nil
--- GoldED+/LNX 1.1.5