Здравствуй,
Я заметил, при проверке Bitcoin и его различные altcoin вилков, что с немного больше абстракции / реорганизации, можно было бы перенести существующий Bitcoin клиентов более легко к новому altcoins и даже мульти-монете клиентов (было бы неплохо иметь любой существующий клиент такие, как электрум / оружейная легко переносимый для крупной altcoins).
Я понимаю, что это не может быть высоким приоритетом, но идея была бы отделить лучше Bitcoin клиента из своей библиотеки пользователя.
Это должно помочь консолидировать все разработки altcoin вместе (плагины-как вместо изменения кода непосредственно), а также будет легче превратить любой существующий клиент в один, который может поддерживать любой другой altcoin (и, возможно, даже смешивать их вместе в одном клиенте! ).
Кроме того, это поможет в результате чего последние Bitcoin (или altcoin) новые функции легко каждые монеты сразу.
Я не проверял глубоко в структуру кода, но от того, что я видел, некоторые изменения, возможно, сделает это возможным:
- Есть объект состояния (по сравнению с текущим статическим кодом). т.е. инициализировать библиотеку, создать этот "состояние объекта" задающий, какой вид монеты мы хотим использовать (т.е. BTC или LTC) и передать его в качестве контекста для любой функции Bitcoin (ну, аналогично ОО программирования). Это позволит несколько клиентов Bitcoin быть обработано с использованием той же библиотеки.
- Altcoin различие должно быть отведенным немного, чтобы сделать его более коммутацию, так что он может быть выбран в зависимости от монеты инициализируется (т.е. ША против Scrypt, не более монет ограничить, пользовательские такие понятия, как PoS, и т.д ...).
Тогда переключение Bitcoin-кварты клиента (и другие) от BTC для LTC или КПП должны быть просто изменения в одну линию (конечно, там будет строк ресурсов / растровых изображений, а также, и операции, специфичные для одной монеты, если таковые имеются).
Кроме того, один клиент может использовать библиотеку для создания экземпляра несколько экземпляров библиотеки, то есть по одному для BTC и один для LTC в то же время.
Чем больше мы будем ждать, тем труднее будет.
Надеюсь, что имеет смысл.
Как вы думаете? (особенно люди с лучшим пониманием кода)
В зависимости от объема работы, которую я мог бы быть в состоянии помочь в этом.
благодаря
PS: Возможно, это было уже предложено или на постоянной основе, извините, если это так.