Снова XML: Just Say No to XML
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.09.06 11:27
Оценка: 161 (21) +15 -2 :)))
Мнение Алана Голуба: Just Say No to XML

XML, вероятно, худший из когда-либо появлявшихся языков программирования. Я не говорю об XML как о языке описания данных, которым он был в своем первоначальном дизайне. Я говорю о извращении XML для программирования приложений. Неуместно использовать XML как скриптовый язык (например, ANT), как язык описания тестов (например, TestNG), как язык описания объектно-реляционного отображения (например, Hibernate, JDO), как язык описания потоков управления (например, JSF) и т.д. Подобные XML "программы" нечитаемы, несопровождаемы, на порядок больше в размерах и безрассудно не эффективны в время исполнения.

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

...Знать как сделать компилятор -- это, определенно, один из элементов в списке того, что нужно знать. Компиляторы являются фундаментом того, что мы делаем каждый день как программисты. Знание того, как компилятор работает позволит вам сделать грамотные решения о структуре программы, решения, которые имеют реальное влияние на качестве наших программ. Более того, множество программ занимаются разбором ввода (как от человека, так и от машины) и работают в зависимости от его содержимого. Чтобы сделать это, вам нужно сделать маленький компилятор. Портить XML для этих целей, просто из-за того, что у вас под рукой есть XML парсер, по меньшей мере, неуместно...


После чего он сетует на то, что хороших книг и ресурсов, которые бы способствовали изучению ремесла построения компиляторов не так уж и много.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re: Снова XML: Just Say No to XML
От: ArtDenis Россия  
Дата: 27.09.06 11:36
Оценка: -1
eao197 wrote:
> Мнение Алана Голуба: Just Say No to XML

Полностью с ним согласен. Нае...лся с ant-ом по самое нехочу
Заставить работать скрипт анта не так уж и сложно. Гораздо сложнее --
через какое-то время понять, что ты там такое понаписал и что твой код
делает. А всё это — из-за обилия тегов и неудобной для восприятия глазом
структуры разметки.
Posted via RSDN NNTP Server 2.0
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re: Снова XML: Just Say No to XML
От: Cyberax Марс  
Дата: 27.09.06 11:37
Оценка: 2 (2) +12
eao197 wrote:
> Мнение Алана Голуба: Just Say No to XML
> <http://www.sdtimes.com/fullcolumn/column-20060901-05.html&gt;
Досталлллло!

XML — это язык конфигурирования и программирования данных. Я НЕ хочу
разбираться с кучей яызков для описания ДАННЫХ — я хочу один формат,
который я могу разбирать автоматическими средствами и не писать на
каждый чих по парсеру и компилятору. Я хочу иметь автокомплит, подсветку
ошибок на лету, поддерживаемость всеми современными IDE.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 11:37
Оценка: +3
eao197 wrote:

> После чего он сетует на то, что хороших книг и ресурсов, которые бы

> способствовали изучению ремесла построения компиляторов не так уж и много.
xml к это не замена компилятора, а всего лишь лексического и синтаксического анализатора. Компилятор помимо этих двух
должен ещё иметь сематнический анализатор и кодогенератор (который не всегда нужен-то).
Так что рассуждения основаны на ложных посылках. В общем непонятно каким боком компилятор "заменяет" xml или в лушчем
случае похоже на рассуждения "вылить воду из чайника, сведя задачу к предыдущей".
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[2]: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 11:40
Оценка: +1
ArtDenis wrote:

> Полностью с ним согласен. Нае...лся с ant-ом по самое нехочу

> Заставить работать скрипт анта не так уж и сложно. Гораздо сложнее --
> через какое-то время понять, что ты там такое понаписал и что твой код
> делает. А всё это — из-за обилия тегов и неудобной для восприятия глазом
> структуры разметки.
Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[3]: Снова XML: Just Say No to XML
От: ArtDenis Россия  
Дата: 27.09.06 11:41
Оценка:
kan wrote:
> Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

Это не выход
Posted via RSDN NNTP Server 2.0
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[4]: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 12:00
Оценка: +7
ArtDenis wrote:

>> Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

> Это не выход
А что выход? Изучать ещё один синтаксис? Если бы каждый писал свой компилятор на каждый случай, ты бы запоминал, что в
hibernate-маппингах в конце строки надо ставить ";", в ant надо ставить ".", в TestNG не надо ничего ставить, а вот в
jsf надо ";", но отделить пробелом. И в итоге ты бы также "Нае...лся с ant-ом по самое нехочу", т.к. там всё не так, как
в привычном тебе hibernate.
Плюс поиметь все радости проблем с кодировками.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[3]: Снова XML: Just Say No to XML
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.09.06 12:04
Оценка:
Здравствуйте, kan, Вы писали:

kan>Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.


А обратно?


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[4]: Снова XML: Just Say No to XML
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 27.09.06 12:09
Оценка: -1 :))
Здравствуйте, eao197, Вы писали:

kan>>Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

E>А обратно?

Напиши транслятор
http://www.smalltalk.ru | << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[5]: Снова XML: Just Say No to XML
От: Cyberax Марс  
Дата: 27.09.06 12:12
Оценка:
kan wrote:
> вот в jsf надо ";", но отделить пробелом.
Это не jsf, а jam. И я это пофиксил
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[5]: Снова XML: Just Say No to XML
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.09.06 12:21
Оценка: :))) :))) :))) :))) :))
Здравствуйте, Andrei N.Sobchuck, Вы писали:

kan>>>Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

E>>А обратно?

ANS>Напиши транслятор


Представляю себе цепочку причинно-следственных связей:
Используем XML чтобы не писать транслятор.
`-> Получили нечитабельные скрипты, используем XSTL (XML опять же)
    чтобы получить читабельность.
    `-> Невозможно преобразовать модифицированные читабельные скрипты
        обратно в XML.
        `-> Пишем транслятор читабельных скриптов чтобы преобразовать
            их в XML. Который нечитабельный.
            `-> Вспоминаем, что XML использовалься для того, чтобы не
                писать транслятор.



SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[5]: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 12:25
Оценка: +1
Andrei N.Sobchuck wrote:

> kan>>Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

> E>А обратно?
> Напиши транслятор
Точнее следует ответить так:
Напиши то, что советует писать автор статьи каждый раз в обязательном порядке.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[6]: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 12:28
Оценка: :)
Cyberax wrote:

>> вот в jsf надо ";", но отделить пробелом.

> Это не jsf, а jam. И я это пофиксил
ты лучше xml прикрути туда
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[2]: Снова XML: Just Say No to XML
От: Mamut Швеция http://dmitriid.com
Дата: 27.09.06 12:53
Оценка: +1
C>eao197 wrote:
>> Мнение Алана Голуба: Just Say No to XML
>> <http://www.sdtimes.com/fullcolumn/column-20060901-05.html&gt;
C>Досталлллло!

C>XML — это язык конфигурирования и программирования данных. Я НЕ хочу

C>разбираться с кучей яызков для описания ДАННЫХ — я хочу один формат,
C>который я могу разбирать автоматическими средствами и не писать на
C>каждый чих по парсеру и компилятору. Я хочу иметь автокомплит, подсветку
C>ошибок на лету, поддерживаемость всеми современными IDE.

Только сегодня обзался с fddima по поводу ASN.1

Dmitry Azaraev: одно но: шо такое ASN.1?
...
dmitriid: это способ сериализации и передачи данных
dmitriid: еще до ХМЛ

Dmitry Azaraev: ааа

dmitriid: причем, насколько я понял, намного круче, чем ХМЛ

Dmitry Azaraev: понял
Dmitry Azaraev: чем?
Dmitry Azaraev: круче хмл ничо нет и быть ниможыт

dmitriid: ну, он точно стандартизирован, и там точно ясно, что и кдуа передается

Dmitry Azaraev: патамуша круче хтмл тожы ничо не можыт быть
Dmitry Azaraev: хм. ну xml же ж тоже стандартиризирован. просто это не сериализатор

dmitriid: сек..
dmitriid: см. например http://erlang.org/doc/doc-5.5.1/lib/asn1-1.4.4.11/doc/html/asn1_ug.html#1.2

Dmitry Azaraev: не скажу шо очень понятно, но целевая штука другая всё таки
Dmitry Azaraev: xml сам по себе ничо не стоит. а его схемы — это пестец
Dmitry Azaraev: их в нормальном здравом уме ж писать нивазможна
Dmitry Azaraev: а править автосгенерированные это ишо хуже

dmitriid: ну а в асн можно передавать сложные структуры данных, и не бояться, что принимающая сторона их не пройдет
dmitriid:

Dmitry Azaraev: ну пройдёт или не пройдёт — всё равно принимающая сторона должна знать шо за данные и чо с ними делать
Dmitry Azaraev: само ж оно не сделаетсо

dmitriid: ну, это верно
dmitriid: в общем, ХМЛ cpommittee придумали очередной баян и радуются


Вот вопрос. Чем их ASN.1 не устроил?
... << RSDN@Home 1.2.0 alpha rev. 655>>


dmitriid.comGitHubLinkedIn
Re[3]: Снова XML: Just Say No to XML
От: WolfHound  
Дата: 27.09.06 12:57
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Вот вопрос. Чем их ASN.1 не устроил?

Если мне не изменяет скалероз то он насквозь бинарный...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[5]: Снова XML: Just Say No to XML
От: FR  
Дата: 27.09.06 13:01
Оценка: +1
Здравствуйте, kan, Вы писали:

kan>ArtDenis wrote:


>>> Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.

>> Это не выход
kan>А что выход? Изучать ещё один синтаксис?

Зачем новый хватит или S-выражений или например чего-то forth образного.
Re[3]: Снова XML: Just Say No to XML
От: Cyberax Марс  
Дата: 27.09.06 13:01
Оценка:
Mamut wrote:
> Вот вопрос. Чем их ASN.1 не устроил?
Ответ: назови мне 10 полностью свободных и бесплатных решений для ASN
для С++, Java, Perl, PHP, C, C#.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[6]: Снова XML: Just Say No to XML
От: Cyberax Марс  
Дата: 27.09.06 13:03
Оценка: +1 -1
FR wrote:
>> >> Напиши xsl-ку переводящую неудобный тебе формат в любой по вкусу.
>> > Это не выход
> kan>А что выход? Изучать ещё один синтаксис?
> Зачем новый хватит или S-выражений или например чего-то forth образного.
А с кодировками как быть? А с entity (чтобы не ломать пальцы, набирая
какие-нибудь экзотические символы)?

Вот если все это прикрутить — получится ТОТ ЖЕ САМЫЙ XML, только вид с
профиля.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re: Снова XML: Just Say No to XML
От: Plague Россия 177230800
Дата: 27.09.06 13:03
Оценка:
Здравствуйте, eao197, Вы писали:

E>Мнение Алана Голуба: Just Say No to XML


а что у них с сайтом было? не мог почитать =( Прокси гворил что сайт не доступен...
ща вроде расклинило... RSDN DDOS TEAM?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[6]: Снова XML: Just Say No to XML
От: kan Великобритания  
Дата: 27.09.06 13:10
Оценка:
eao197 wrote:

> Представляю себе цепочку причинно-следственных связей:

Это нужно делать только если ты эстет и проблемы со зрением "из-за обилия тегов и неудобной для восприятия глазом
структуры разметки". Лично мне при нормальном xml-редакторе (да если ещё и специально обученном данной xsd-шкой)
воспринимать структуру никто не мешает.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.