bitcoinex (OP)
|
|
September 29, 2010, 03:01:00 PM |
|
Почему авторы так любят этот формат? Даже в CLI-интерфейсе всё отдаётся в нём Благодаря этому я багу словил
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
MrBison
Member
Offline
Activity: 61
Merit: 10
Anyone who opposes FOSS shall be destroyed!
|
|
September 29, 2010, 03:10:18 PM |
|
Потому что его легко интерпретировать в различных языках программирования. Во-первых, есть множество биндингов для различных ЯП. Во-вторых, результаты запросов могут представлять собой таблицу или массив, но при этом их можно использовать для любых других нужд.
|
Please donate BTC to 142VYfhaYBJXsmfMf1LnBiNxb6KYwdj4PM . BTC0.17 already donated, thanks!
|
|
|
MrBison
Member
Offline
Activity: 61
Merit: 10
Anyone who opposes FOSS shall be destroyed!
|
|
September 29, 2010, 03:11:55 PM |
|
Насчёт CLI -- было бы неплохо написать ncurses-интерфейс для bitcoin или переделать wxgtk-интерфейс для bitcoind.
|
Please donate BTC to 142VYfhaYBJXsmfMf1LnBiNxb6KYwdj4PM . BTC0.17 already donated, thanks!
|
|
|
bitcoinex (OP)
|
|
September 29, 2010, 03:33:06 PM |
|
Потому что его легко интерпретировать в различных языках программирования. Во-первых, есть множество биндингов для различных ЯП. Во-вторых, результаты запросов могут представлять собой таблицу или массив, но при этом их можно использовать для любых других нужд.
ааа, легко?! [ { "label" : "", "amount" : 251.61000000, "confirmations" : 11 }, { "label" : "user_id:152", "amount" : 842.20000000, "confirmations" : 12 }, { "label" : "user_id:21", "amount" : 1.00000000, "confirmations" : 1328 } ]
вот такое примерно получил я в CLI. отинтерпретируйте мне пожалуйста это в 3 столбика? не забывайте, что порядок следования этих полей может измениться
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
bitcoinex (OP)
|
|
September 29, 2010, 03:34:53 PM |
|
Насчёт CLI -- было бы неплохо написать ncurses-интерфейс для bitcoin или переделать wxgtk-интерфейс для bitcoind.
не надо путать CLI и терминал Вообще, Сатоши с точки зрения "маркетинга" может быть и прав был, когда сделал клиента "всё в одном" - и гуй, и демон и cli. Но вот писать теперь под биткоин интерфейсы не слишком удобно. лучше бы это была библиотека...
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
d1337r
|
|
September 29, 2010, 04:19:28 PM |
|
Потому что его легко интерпретировать в различных языках программирования. Во-первых, есть множество биндингов для различных ЯП. Во-вторых, результаты запросов могут представлять собой таблицу или массив, но при этом их можно использовать для любых других нужд.
ааа, легко?! [ { "label" : "", "amount" : 251.61000000, "confirmations" : 11 }, { "label" : "user_id:152", "amount" : 842.20000000, "confirmations" : 12 }, { "label" : "user_id:21", "amount" : 1.00000000, "confirmations" : 1328 } ]
вот такое примерно получил я в CLI. отинтерпретируйте мне пожалуйста это в 3 столбика? не забывайте, что порядок следования этих полей может измениться Зато если я использую, скажем, библиотеку для, скажем, PHP, тот же самый запрос оказывается таблицей, которую удобно парсить .
|
|
|
|
bitcoinex (OP)
|
|
September 29, 2010, 04:29:58 PM Last edit: September 29, 2010, 04:58:31 PM by bitcoinex |
|
вот такое примерно получил я в CLI. отинтерпретируйте мне пожалуйста это в 3 столбика? не забывайте, что порядок следования этих полей может измениться
Зато если я использую, скажем, библиотеку для, скажем, PHP, тот же самый запрос оказывается таблицей, которую удобно парсить . Понятно что это не олимпиадная задача и распарсить это можно. Мне не понятно почему оно в CLI. Пока, как я понял, мне чтобы это распарсить (этой штукой http://github.com/micha/jsawk ) придётся поставить целый javascript-интерпретатор, видимо , и худо-бедно изучить яваскрипт. Вот оно мне надо? И всё из-за того что кому-то нравится JSON выдать в stdout Вот, собственно, решение: $ cat test.txt |jsawk -n 'out(this.label+" "+this.amount+" "+this.confirmations)' 251.61 11 user_id:152 842.2 12 user_id:21 1 1328
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
LZ
Legendary
Offline
Activity: 1722
Merit: 1072
P2P Cryptocurrency
|
|
September 30, 2010, 02:10:32 AM |
|
А сейчас просто этот JSON в моде и все тут.
|
My OpenPGP fingerprint: 5099EB8C0F2E68C63B4ECBB9A9D0993E04143362
|
|
|
bitcoinex (OP)
|
|
September 30, 2010, 08:48:05 AM |
|
А сейчас просто этот JSON в моде и все тут. ага, эдакий XML v2.0
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
eurekafag
|
|
September 30, 2010, 09:23:24 AM |
|
Нет, XML куда сложнее. В нём есть именованные узлы, атрибуты и косвенные параметры, влияющие на разбор. А JSON — это просто список ключ-значение, зачастую, со вложенными такими же списками.
|
|
|
|
bitcoinex (OP)
|
|
September 30, 2010, 09:49:23 AM |
|
Нет, XML куда сложнее. В нём есть именованные узлы, атрибуты и косвенные параметры, влияющие на разбор. А JSON — это просто список ключ-значение, зачастую, со вложенными такими же списками.
Не, я о моде - была такая же мода на xml, если помните Под конец даже конфиги в /etc даже пытались на него переводить
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
LZ
Legendary
Offline
Activity: 1722
Merit: 1072
P2P Cryptocurrency
|
|
September 30, 2010, 12:40:59 PM |
|
Да, переводили, то еще извращение. У некоторых пользователей вполне так прижилось.
|
My OpenPGP fingerprint: 5099EB8C0F2E68C63B4ECBB9A9D0993E04143362
|
|
|
eurekafag
|
|
September 30, 2010, 04:48:39 PM |
|
Hal/udev так и используют до сих пор. С json всё несколько проще. Во-первых, он реально компактен. Точнее, это, пожалуй, наиболее компактный из небинарных форматов хранения данных, обладающий достаточной гибкостью (хотя кроме иерархии от него ничего и не требуется, даже аттрибуты XML можно сэмулировать, хотя лучше нормально продумать структуру). Во-вторых, его намного проще парсить, чем XML. Например, не нужно проверять соответствие и правильность порядка вложенностей, только количество открывающих-закрывающих скобок, а их порядок остаётся на совести выводящего, потому что все скобки равноправны. В XML, напротив, конструкция <a><b></a></b> является синтаксически неверной, что влечёт дополнительные проверки, стек и утяжеление кода. В-третьих, это родной формат JavaScript для хранения структур данных, собственно, из названия оно и понятно. Ну и в-четвёртых, это всё же человекопонятный формат, т.е. его одинаково легко читает и модифицирует как человек, так и машина, что позволяет в разы быстрее находить ошибки и исправлять их людям, далёким от кода программы. Это, само собой, в сравнении с бинарными протоколами, которые без спецификации, дебаггера, tcpdump и поллитры не разобрать.
Но вот XML не одобряю, потому что в ней на самом деле много лишней писанины с точки зрения как человека, так и машины (открытие-закрытие тегов занимает половину объёма текста), а JSON очень неплох, потому как реально ничего лишнего. Кстати, питонские массивы имеют полностью односторонне-совместимый с JSON синтаксис (т.к. в питоне есть ещё tuples в круглых скобках, которые не определены в JSON). Наверно, ещё и поэтому я ему симпатизирую.
|
|
|
|
bitcoinex (OP)
|
|
October 02, 2010, 06:50:51 PM |
|
Hal всё, похоже. Да, наверно у меня после xml аллергия на универсальные форматы для всего-всего во Вселенной...
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
dbitcoin
|
|
March 24, 2011, 12:25:32 PM |
|
вот такое примерно получил я в CLI. отинтерпретируйте мне пожалуйста это в 3 столбика? не забывайте, что порядок следования этих полей может измениться
Зато если я использую, скажем, библиотеку для, скажем, PHP, тот же самый запрос оказывается таблицей, которую удобно парсить . Понятно что это не олимпиадная задача и распарсить это можно. Мне не понятно почему оно в CLI. Пока, как я понял, мне чтобы это распарсить (этой штукой http://github.com/micha/jsawk ) придётся поставить целый javascript-интерпретатор, видимо , и худо-бедно изучить яваскрипт. Вот оно мне надо? И всё из-за того что кому-то нравится JSON выдать в stdout Вот, собственно, решение: $ cat test.txt |jsawk -n 'out(this.label+" "+this.amount+" "+this.confirmations)' 251.61 11 user_id:152 842.2 12 user_id:21 1 1328
Собственно не понятно зачем парсить именно cli в консоли (ну кроме как для тестов), если нормально работает rpc. А уж к rpc делать запросы можно откуда угодно и везде есть библиотеки.
|
|
|
|
bitcoinex (OP)
|
|
March 24, 2011, 12:53:41 PM |
|
Собственно не понятно зачем парсить именно cli в консоли (ну кроме как для тестов), если нормально работает rpc. А уж к rpc делать запросы можно откуда угодно и везде есть библиотеки.
Слишком много прав rpc даёт. Взломают ПХП код - унесут биткоины. Надо делать "прокладку" через sudo, например, которая позволит только проверить баланс, но не sendtoaddress.
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
Chooseusername
|
|
March 24, 2011, 01:19:23 PM |
|
JSON затем, что в браузерах везде javascript. А JSON - нативный javascript и есть. И никто парсилки для всяких там XML в AJAX-приложениях писать не будет, ибо они только замедлят скорость работы приложения. Посему переходите на JSON и будет вам счастье.
|
|
|
|
Manjago
|
|
March 24, 2011, 02:24:23 PM |
|
А мне, как java-программеру, JSON нравится. Из него просто и легко поднять класс при помощи сторонних библиотек, а класс - они есть класс
|
|
|
|
dbitcoin
|
|
March 24, 2011, 02:26:13 PM |
|
Собственно не понятно зачем парсить именно cli в консоли (ну кроме как для тестов), если нормально работает rpc. А уж к rpc делать запросы можно откуда угодно и везде есть библиотеки.
Слишком много прав rpc даёт. Взломают ПХП код - унесут биткоины. Надо делать "прокладку" через sudo, например, которая позволит только проверить баланс, но не sendtoaddress. Ну разве что... однако если пхп код дыряв можно и с сервера утащить все. Было бы желание, а дырки найдутся. Тут только один вариант более мене надежен, вынос биткоина в другое место и проведение тразакций руками. p.s. не читайте советских газет (не используйте php код)
|
|
|
|
bitcoinex (OP)
|
|
March 24, 2011, 02:29:22 PM |
|
Собственно не понятно зачем парсить именно cli в консоли (ну кроме как для тестов), если нормально работает rpc. А уж к rpc делать запросы можно откуда угодно и везде есть библиотеки.
Слишком много прав rpc даёт. Взломают ПХП код - унесут биткоины. Надо делать "прокладку" через sudo, например, которая позволит только проверить баланс, но не sendtoaddress. Ну разве что... однако если пхп код дыряв можно и с сервера утащить все. Было бы желание, а дырки найдутся. Тут только один вариант более мене надежен, вынос биткоина в другое место и проведение тразакций руками. Нет, не руками. "Прокладка" действительно в этом случае хорошо работает
|
New bitcoin lottery: probiwon.com- Может, ты ещё и в Невидимую Руку Рынка веруешь? - Зачем же веровать в то, что можно наблюдать непосредственно?
|
|
|
|