Allen Holub (Author of Compiler Design in C and famous OO Guru) said: “XML is perhaps the worst programming language ever conceived. Allen Holub (Autore del Design Compiler in C e famoso OO Guru), ha dichiarato: "XML è forse il linguaggio di programmazione peggiore mai concepito. I’m not talking about XML as a data-description language, which was its original design. Non sto parlando di XML come una banca dati linguaggio di descrizione, che è stato il suo design originale. I’m talking about perverting XML for programming applications. Sto parlando di stà sovvertendo XML per le applicazioni di programmazione. It’s inappropriate to use XML as a scripting language (eg, ANT), a test-description language (eg, TestNG), an object-relational mapping language (eg, Hibernate, JDO), a control-flow language (eg, JSF), and so forth. E 'opportuno utilizzare XML come un linguaggio di scripting (ad esempio, l'ANT), un test-linguaggio di descrizione (ad esempio, TestNG), un oggetto-relazionale mappatura lingua (ad esempio, Hibernate, JDO), un controllo del flusso di lingua (ad esempio, JSF), e così via. These sorts of XML “programs” are unreadable, unmaintainable, an order of magnitude larger than necessary, and audaciously inefficient at runtime.” Questo tipo di XML "programmi" sono illeggibili, unmaintainable, un ordine di grandezza più grande che necessario, inefficiente e audaciously a runtime. " Link Collegamento

He surmised that the tendency to use xml for these tasks is simply because people either don’t want to create a compiler or are inacapable of creating one. Egli ha ipotizzato che la tendenza a utilizzare XML per questi compiti è semplicemente perché la gente o non si desidera creare un compilatore o sono inacapable della creazione di uno. I agree with him. Sono d'accordo con lui. Most of the time people use XML because it is easy to parse XML, so who cares how long it takes for people to create these xml documents in the first place. La maggior parte del tempo delle persone usa XML, perché è facile fare il parsing di XML, di modo che si prende cura il tempo necessario per le persone a creare questi documenti XML in primo luogo. Look at Hibernate for an example. Vedi Hibernate per un esempio. It is XML hell. XML è un inferno. EJB 2 was another example. EJB 2 è stato un altro esempio. Jelly was probably the worst example and I don’t like JSTL that much either. Gelatina è stato probabilmente il peggior esempio e non mi piace molto JSTL che sia.

Then he goes on to define the basic qualifications of a programmer, he said something which is close to my heart: Poi va a definire le qualifiche di base di un programmatore, egli ha detto qualcosa che mi sta a cuore:
“This list includes a deep understanding of data structures and key algorithms, a little math (set theory, logic, a little statistics), mastery of analysis-and-design techniques, both process (eg, RUP or XP) and structure (eg, design patterns), and database structure and use (eg, SQL). "Questo elenco comprende una profonda comprensione delle strutture dei dati e dei principali algoritmi, un po 'di matematica (teoria degli insiemi, la logica, un po' di statistiche), padronanza di analisi e di tecniche di progettazione, sia di processo (ad esempio, RUP o XP) e la struttura (ad esempio , Il design pattern), e struttura del database e utilizzare (ad esempio, SQL). You also need to know how the hardware works.” È inoltre necessario sapere come funziona l'hardware. "

Designing compilers is hard. Progettazione di compilatori è difficile. Today it is rare to see people designing compilers for their software. Oggi è raro vedere persone progettazione di compilatori per il loro software. They use XML or simple property files. Che utilizzano XML o semplici file di proprietà. Also, as he mentioned, it is hard to get books on compiler design. Inoltre, come ha detto, è difficile trovare libri sulla progettazione del compilatore. The best Java software to design compiler is Il miglior software Java per la progettazione del compilatore è JavaCC , which was by an ex-Sun employee, who later went on to found MetaMata in the dotcom boom era. , Che è stato di un ex-dipendente Sun, che in seguito è andato a trovare a MetaMata nel dotcom boom epoca.

He misses one vital point. Egli perde l'essenziale punto uno. Somewhere down the road it has unfortunately become a marketing bullet point to mention that your software uses XML for configuration. Da qualche parte lungo la strada si è purtroppo diventata un punto di commercializzazione di menzionare che il vostro software utilizza XML per la configurazione.