XML және деректерді байланыстыру

The source text is taken from here: http://xfront.com/xml-versus-data-binding/index.html

Роджер Л. Костелло/Roger L. Costello

XML-ді объектілік және процедуралық тілдермен салыстыру

xml тілдері (xsltxml schemaxquery, т.с.с.) декларативті, яғни сипаттамалық емес. Керісінше, javac++, pythonphp, және т.с.с объектіге бағытталған және процедуралық, яғни сипаттамалық емес).

Мәліметтер мен деректер типтерін xml-де мәліметтер құрылымдары мен деректер типтеріне объектіге бағытталған және процедуралық тілдерде салыстыру (байланыстыру) үшін көптеген құралдар жасалған және керісінше. Бұл деректерді байланыстыру деп аталады.

Бір дерек/өңдеу моделін немесе екеуін қолданасыз ба?

Бір модель: Кейбір адамдар барлық өңдеулерді xml тілдерін қолдану арқылы жүргізуге шақырады. Мысалы, деректерді xml, үрінде тасымалдаңыз, содан кейін оны xml schema қарсы тексеріп, содан кейін xslt және xquery көмегімен өңдеңіз.

Екі (немесе одан да көп) модель: Кейбір адамдар xml және объектілі және/немесе процедуралық тілдердің тіркесімін қолдайды. Мысалы, деректерді xml, түрінде тасымалдаңыз, содан кейін оны деректер құрылымына салу үшін деректерді байланыстыруды қолданыңыз, содан кейін бір немесе бірнеше нысанға бағытталған және/немесе процедуралық тілдерді қолданып барлық өңдеуді жасаңыз.

Бір дерек/өңдеу моделінің артықшылықтары (XML)

xml ден мәліметтер құрылымына объектілік және процедуралық тілдерде салыстыру стандарттармен реттелмейді. Мысалы xml schema спецификациясы оның деректер типтері java немесе c++. Демек, деректерді байланыстыратын құралдардың кейбірі толық емес және олардың картасы таза емес.

xmlден объектіге бағытталған/процедуралық немесе керісінше картаны жасау, әдетте, көптеген api қоңырауларын және көптеген бағдарламаларды қамтиды. Осылайша, сіз шешуге тиісті мәселені шешу үшін код жазуға уақытыңызды жұмсамай, сіз бір жүйеден екіншісіне түрлендіруге арналған бағдарламалаудың айтарлықтай бөлігін жұмсайсыз. Бұл тиімді емес.

xml өзгерген кезде (мысалы, xml schema өзгереді), содан кейін сіздің объектілік және процедуралық кодтағы деректер құрылымдары өзгеруі керек. Бұл өте қиын және ұзақ болуы мүмкін.

Бірдей деректердің екі түрлі моделіне ие болу, олардың өзара байланысын түсіну және оларды синхронды ұстау үшін өзіңді ұйымдастыру – бұл сіз шешуі керек болатын мәселені шешудің күрделілігінен де, күрделілігінен де жоғары.

Димитре Новатчев былай деп жазды:

Менің жеке бақылауларым… деректерді xml-ден объектілік көрсетілімге түрлендіруге тура келсе, қанша қосымша ресурстар қажет екендігі туралы мәлімдемелерді қолдайды. Бұл жұмысқа бүкіл құрылыс жұмыстарының 70%-80%-ы кіре алады. Жақында осындай жұмысты аяқтағаннан кейін менде тек xml-ді ұсынуды қолдануды жөн көрдім, нәтижеге 3-4 есе аз уақытта қол жеткізер едім.

Мәліметтермен алмасу үшін қолданылатын формат (xml) басқа тараптармен келісу қажет болғандықтан бірінші болып табылады, сондықтан оны өңдеу үшін негізгі формат ретінде қолдану мағынасы бар.

тілдерімен байланыстыру жеңілдететін артықшылықтар береді. Мысалы, бірнеше жыл бұрын мен эксперимент жасадым: есепті шығару үшін xslt жаздым, содан кейін сол мәселені java. арқылы шештім. Маған 10 жол xslt және 100-ден астам java. қажет болды. Бір эксперименттен көп нәрсе жарқырамайды, бірақ сол уақыттан бері менің барлық тәжірибелерім бұл тәжірибені күшейтеді.

Ескерту: технологиялардың xml тобына сүйену объектіге бағытталған және процедуралық тілдер енді қолданылмайды дегенді білдірмейді. Керісінше, оларды төменгі деңгейге итермелейді. Мысалы xml schema валидаторы java немесе c++ тілінде орындалуы мүмкін. xslt процессоры java немесе C++ тілінде орындалуы мүмкін. Сонымен, сіз – бағдарламашы – xml деңгейінде жұмыс істейсіз, ал xml өңдеудің астында өңдеуді жүзеге асыратын объектілік және процедуралық тілдерде жазылған құралдар бар.

XML technologies layered on top of object oriented and procedural tools

Orbeon Forms-те xml технологиясының шеңберінде жұмыс істеудің керемет мысалы келтірілген. Ол xformsxml schemas, дерекқорының көмегімен eXist xml мен тұрақты сақтауды біріктіреді. Сорғыштың астында бағдарламашы ешқашан айналыспайтын javascript және ajaxтоптамалары орналасқан.

Екі (немесе одан да көп) деректерді өңдеудің/өңдеу модельдерінің артықшылықтары

XML-де емес, объектіге бағытталған немесе процедуралық тілде өңдеудің кейбір тиімділіктері болуы мүмкін.

Кейбір бағдарламашылар xslt сияқты функционалды тілдерде жұмыс жасаудан гөрі, мәліметтер құрылымымен жұмыс жасауды ыңғайлы етеді.

Ризашылық

Осы құжатқа енгізгені үшін келесі адамдарға рахмет:

  • Roger Costello
  • Dave Czulada
  • Mukul Gandhi
  • Rick Jelliffe
  • Michael Kay
  • Robert Koberg
  • Boris Kolpackov
  • Jack Lindsey
  • Dimitre Novatchev
  • Bryan Rasmussen
  • Dennis Sosnoski

Соңғы жаңарту: 2014 жылғы 27 қараша

 

 

Жұлдыздардың өмірі мен өлімі

The source text is taken from here: https://faculty.wcas.northwestern.edu/~infocom/The%20Website/

(Төкен сұлулығының суреті)

Кіріспе

Мен білімді астрономды естігенде,

Дәлелдер болған кезде, цифрлар менің алдымда бағандармен қойылды,

Маған диаграммалар мен диаграммаларды көрсеткенде,

оларды қосу, бөлу және өлшеу үшін,

Мен отырған кезде ол оқыған астрономды естідім

дәріс залында үлкен қошеметпен,

Қанша уақыттан кейін мен есеп бере алмай шаршадым және ауырдым,

Төбемнен көтеріліп, сырғып шыққанға дейін өзім қаңғыдым

Мистикалық ылғалды түнгі ауада,

және анда-санда

Жұлдыздарға мінсіз тыныштықта қарадым.

 Уолт Уитмен/Walt Whitman

Мистер Уитменнің тағдыры интернетті астрономия туралы ақпарат іздеген қарапайым адамға өте жақсы таныс. «Gee, Wow» әртүрлілігінің сайттарын табу оңай, олар фотосуреттермен толы, сонымен қатар ғылым соншалықты керемет, олар тек муляждарға жарайды. Математикалық үй тапсырмаларының шешімдерімен толықтырылған, колледж деңгейіндегі дәрістерді табу оңай.

Мен 1989 жылдан бастап Солтүстік-Батыс университетінде физика мен астрономиядан сабақ беріп келемін (осылайша мен өлеңдегі «білімді астроном» дәрежесіне ие боламын) және интернетте бірнеше параққа осы экстремалдардың арасында өте жақсы орын бар екенін сездім. Бұл сайт нәтижесі. Онда жұлдыздардың эволюциясы егжей-тегжейлі, бірақ түсінуге оңай деңгейде талқыланады. Ашығын айтқанда, бұл сайтты қарау қажет емес. Бұл оқуға арналған. Егер сіз бірнеше фактоидтар алғыңыз келсе, шолуды жақсы көресіз, бірақ егер сіз тақырыпты түсінгіңіз келсе, оны басынан аяғына дейін зерттеуіңіз керек, ал түсіну – бұл веб-сайт туралы. Мен мұғаліммін. Мен викторина-шоудың жүргізушісі емеспін. Бұл веб-сайтта, егер сіз қаласаңыз, өткізіп жіберуге болатын, бірақ қажет болған кезде қажет егжей-тегжейлер мен талқылауды қамтамасыз ететін сілтемелер мен сілтемелер бар. Сіз тек негізгі баяндауды оқып, ақпараттың қысқаша мазмұнын біле аласыз, сонымен қатар барлық оқулықтарды оқып, Тынық мұхиты астрофизикалық қоғамының келесі Жыл сайынғы жиналысында постер сессиясында өтірік жасауға дайын боласыз. Таңдау сіздікі.

Осы сайтта мен жеңілдетілген мен қарапайым арасында үлкен айырмашылық бар деген қағиданы ұстандым. Мен бұл жерде әйгілі астрономияның кейбір шаршаған клишелерін қайталамауға тырыстым, олар клиш болғандықтан емес, олар жай қате болғандықтан. Жеңілдету өте жақсы, бірақ қарапайымдылық қарапайымнан гөрі қарапайым, қарапайым болып табылатындығына келгенде, егжей-тегжейлі сөйлесуді бастау керек, мен де солай істеймін.

Кіріспе үшін көп нәрсе; астрофизика туралы сөйлесуді бастайық!      Бірінші бетке өту

Дэвид Тейлор/David Taylor
Эванстон, Иллинойс
Маусым, 2012

[email protected]