Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
13 декабря 2010, 2:51:17 PM   # 1
 
 
Сообщений: 14
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Для того, чтобы иметь возможность создать библиотеку из кода Bitcoin (как я объясняю в http://bitcointalk.org/index.php?topic=2075.0 ) И в конечном итоге создать привязки на других языках для него (Python!), Я очистил исходный код Bitcoin в. Я довольно много закончил и результат на:

http://bitbucket.org/hsoft/bitcoin-clean

Таким образом, вопрос я прошу вас, ребята, это: Если это будет включено в основном репозитории? Лично я считаю, код гораздо более удобным для чтения сейчас, но тогда я предполагаю, мнения могут расходиться, так что, почему я спрашиваю. Список вещей, которые я сделал здесь описано:

http://bitbucket.org/hsoft/bitcoin-clean/src/f7995af49149/cleaning_process.txt

Это огромное изменение, но я сомневаюсь, что я ввел новые ошибки, потому что я не изменил ни одной строки фактического кода. Я просто перестроенный его. Если бы я представил ошибок, я думаю, что это было бы ошибки в результате чего все приложение не работает, но строит и работать нормально (я получаю соединение и загрузить блоки).

Следующий шаг на пути к моей конечной цели (libBitCoin, питон привязок, альтернативный UIs) включает в себя развязывающие классы, что больше ошибки склонный (потому что я на самом деле изменить код), но я добавил тег в репо (до-Отделить) в указывают в какой момент я начал модифицировать сам код.

Итак, я иду: Вы находите очищенный код более читаемым и ремонтопригодны, или вы предпочитаете старый? Должен ли он заменить официальную один на SVN?
HSoft сейчас офлайн Пожаловаться на HSoft   Ответить с цитированием Мультицитирование сообщения от HSoft Быстрый ответ на сообщение HSoft


Как заработать Биткоины?
Без вложений. Не майнинг.


13 декабря 2010, 5:35:26 PM   # 2
 
 
Сообщения: 289
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Получил 1806 Биткоинов
Реальная история.





Я не смотрел на реальный код (это было бы бесполезным, так как я дерьмо на C ++ в любом случае), но я думаю, что это важно сделать вид очистки вы сделали. Я надеюсь, что он будет делать это в коде.

Это важно для безопасность а также доверять, так как это позволяет легче рецензирования и черепашки вывод, который тем более необходимо, что Bitcoin затрагивает область, где доверие имеет значение много.

Это важно для извлечения библиотека, так что могут появляться другие программы, и до сих пор используют один и тот же код бэкэнда как GUI. Они должны были бы только закодировать их отдельные части (например, в Readline части, если это интерактивный оболочка, как клиент), что сделало бы их развитие проще и безопаснее. Так же, как JSON-RPC, но более низкого уровня и более гибок: загрузка классов и непосредственного использования функций Bitcoin, вместо HTTP связи.

Это важно для улучшение самой Lib:
  • Если это лучше организовано, все больше людей могут понять это и внести свой вклад в него.
  • Модульный код легче манипулировать и изменять, добавлять новые функции к нему и т.д.

И, наконец, связь с WxWidgets является главной причиной, почему Bitcoin не сделал этого в Debian еще (это кошмар). Так сортировкой вещи бы значительно облегчить работу сопровождающим пакета, и более широкое применение Bitcoin путем ценного выродка населения.

Я также могу думать о полудюжине тем на этом самом форуме, где бесконечное обсуждение могло быть заменены фактическим кодом.
davux сейчас офлайн Пожаловаться на davux   Ответить с цитированием Мультицитирование сообщения от davux Быстрый ответ на сообщение davux

13 декабря 2010, 5:42:23 PM   # 3
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Не читал фактический код либо, но это действительно здорово вы взяли на свое время, чтобы сделать эти рефакторинга.

В дополнение, вы знаете, если это возможно, чтобы написать тестовый набор для кода C ++?
Дав сейчас офлайн Пожаловаться на Даву   Ответить с цитированием Мультицитирование сообщения от Дава Быстрый ответ на сообщение Дав

13 декабря 2010, 5:48:07 PM   # 4
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Большинство соглашается, что текущий кодовая страдает "все в одном файле" синдром.

Тем не менее, я считаю, что это перебор, чтобы разбить каждый класс в своих собственных заголовков и реализации файлов.
jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik

13 декабря 2010, 5:49:48 PM   # 5
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

В дополнение, вы знаете, если это возможно, чтобы написать тестовый набор для кода C ++?

Конечно, это возможно. Там нет ничего такого, о C ++, исключающий модульные тесты или функциональные тесты.

Bitcoin набор тестов был бы полезен, но несколько недетерминирована из-за способа корректура из-работа должна была бы быть использованы.
jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik

13 декабря 2010, 5:59:08 PM   # 6
 
 
Сообщения: 1372
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Конечно, это возможно. Там нет ничего такого, о C ++, исключающий модульные тесты или функциональные тесты.

Ха-ха да я знаю, я просто использовал эту формулировку, чтобы избежать представляясь "Эй, что это круто, но то, что вы, ребята ждут, чтобы сделать набор тестов?"

Это может быть детерминированным, если используется множество блоков цепи, ну в любом случае, полезно и элегантное тестирование довольно трудно, но ооочень полезно
Дав сейчас офлайн Пожаловаться на Даву   Ответить с цитированием Мультицитирование сообщения от Дава Быстрый ответ на сообщение Дав

13 декабря 2010, 8:21:14 PM   # 7
 
 
Сообщения: 314
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Как относительный новичок в коде, я найти свой вариант легче читать. Легче найти реализацию функций, так как большинство членов класса и теперь в названных .cpp файлов. Кроме того, приятно иметь реализацию полного класса в одном месте, вместо того, чтобы перевернуть назад и вперед между .h и .cpp файлов.

Однако это для чтения, а потребности разработчиков могут быть несколько иными. Очевидно, что Satoshi знает текущую схему тесно, и в качестве основного разработчика это до него, чтобы увидеть, может ли он работать с новой компоновкой.

Одна из проблем, я бы с потерей inlinable .h функции является, можно ли замедлить либо начальную загрузку блока / проверить / индексирование, или добычу (немного спорный с ГПУ шахтерами в эти дни).
Hal сейчас офлайн Пожаловаться на Hal   Ответить с цитированием Мультицитирование сообщения от Hal Быстрый ответ на сообщение Hal

13 декабря 2010, 9:23:46 PM   # 8
 
 
Сообщений: 14
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Одна из проблем, я бы с потерей inlinable .h функции является, можно ли замедлить либо начальную загрузку блока / проверить / индексирование, или добычу (немного спорный с ГПУ шахтерами в эти дни).

встраивание не должно быть в .h файлов. Я удалил их, потому что я думал, что это было глупо ставить их везде без первых выявления узких мест. Сначала я подумал, может быть, это был результат вдумчивого оптимизации, но это встраивание было действительно поставить на глупых местах, так что я сомневаюсь, что это был случай. Они легко могут быть возвращены, но я думаю, что кто-то возвращая их следует читать об этом первым (например: http://www.parashift.com/c++-faq-lite/inline-functions.html#faq-9.3 ). Неправильное использование встраивание делает код медленнее.

EDIT: Думая об этом, у меня сомнения по поводу моего заявления (что встраиваются функции не должны быть в заголовках) ... Я должен проверить, что. В конце концов, я только обучение C ++ ... Но это еще не меняет тот факт, что оптимизация должна быть направлена ​​на измеренном узких.
HSoft сейчас офлайн Пожаловаться на HSoft   Ответить с цитированием Мультицитирование сообщения от HSoft Быстрый ответ на сообщение HSoft

15 декабря 2010, 4:28:53 PM   # 9
 
 
Сообщений: 14
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

Так как я только скомпилирован мой очищенный код Bitcoin с Mac OS X до сих пор, я думал, что это было бы хорошая идея, чтобы исправить очищенную кодовую для Windows, компиляции. Чёрт это сложно создать Bitcoin VC ++ построить установку! Кто-нибудь строить Bitcoin с помощью VC ++ или все с помощью MinGW? Я могу скомпилировать "официальный" версия Bitcoin, но всякий раз, когда я бегу, я получаю тонны ошибок во время выполнения утверждений. Кто-нибудь понял?

Кроме того, это намного сложнее, чем я думал, чтобы сделать мой очищено код компиляции под Windows. Я думал, что это был только вопрос правильно "IFDEF-ки" пара включает в себя я двигался, но это намного сложнее, чем это. Где GCC компилирует нормально, MSVC просто плюют ошибки о неоднозначных и переопределены символах и тому подобные. Я пытаюсь удалить "с использованием пространства имен X" заявления идти вокруг этого, но тогда я даже более странные ошибки. Я не чувствую, как борьба с MSVC больше, поэтому я сдаюсь.

Положительная сторона в том, что я получил, чтобы узнать немного о C ++.
HSoft сейчас офлайн Пожаловаться на HSoft   Ответить с цитированием Мультицитирование сообщения от HSoft Быстрый ответ на сообщение HSoft

15 декабря 2010, 8:22:11 PM   # 10
 
 
Сообщения: 812
Цитировать по имени
цитировать ответ
по умолчанию Re: Bitcoin кодовая очищено, следует принять?

EDIT: Думая об этом, у меня сомнения по поводу моего заявления (что встраиваются функции не должны быть в заголовках) ... Я должен проверить, что. В конце концов, я только обучение C ++ ... Но это еще не меняет тот факт, что оптимизация должна быть направлена ​​на измеренном узких.
Встраиваются функции должны быть в заголовочных файлах, по крайней мере, для почти всех текущих компиляторов, так как они компилировать на единицу компиляции (.c / .o).

Составители с целой-программы-оптимизации (например, лязг / LLVM) мог встроенные функции над границами единица компиляции. Встраивание и оптимизация будут происходить в линкере.

Вы не можете предположить, что, хотя ...
Wumpus сейчас офлайн Пожаловаться на Wumpus   Ответить с цитированием Мультицитирование сообщения от Wumpus Быстрый ответ на сообщение Wumpus



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW