Selasa, 06 April 2010

Diposting oleh febrina tomodachi di Selasa, April 06, 2010
 Web Architecture (HTTP, HTML, URI, XML, XSLT, JavaScript, AJAX)
XSLT
Frequently used acronyms Sering digunakan singkatan
• DOM: Document Object Model
• HTML:Hypertext Markup Language
• XML: Extensible Markup Language
• XSLT: Extensible Stylesheet Language Transformation
. XSLT adalah bahasa untuk melakukan query XML dan mengubah XML menjadi format lain. Inilah masalah yang saya miliki dengan data cuaca saya itu dikemas sebagai XML, tapi aku ingin sesuatu yang lebih user-(dan browser-) ramah. Dan data NWS berisi lebih banyak informasi daripada lencana cuaca membutuhkan. Beberapa teknik diperlukan untuk mengekstrak hanya item data yang saya perlukan. XSLT dapat menangani kedua persyaratan tersebut.
Ini di luar lingkup artikel ini untuk memberikan sebuah tutorial XSLT.Untuk mengetahui lebih lanjut tentang XSLT, lihat artikel developerWorks "Apa bahasa XSLT lihat? ( Resources ).
Bahasa XSLT berbeda dari banyak bahasa komputer yang lain dalam sintaks adalah XML yang valid. Hal ini dapat agak membingungkan jika Anda terbiasa dengan C, Java ™, Perl, atau bahasa Python. Karena kedua kedua dan ketiga pendekatan saya ke lencana cuaca menggunakan XSLT yang sama, saya akan memperkenalkan dan menjelaskan terlebih dahulu.. Kemudian saya akan menunjukkan bagaimana potongan XSLT cocok menjadi solusi secara keseluruhan.
Prosesor XSLT
Seperti pada bahasa pemrograman lain, seperti Perl atau Ruby, Anda mengeksekusi XSLT dengan menjalankan itu melalui penerjemah bahasa. Hal ini sering disebut prosesor XSLT.Tapi XSLT bukanlah-tujuan umum bahasa pemrograman itu ada untuk menerjemahkan file XML data tunggal. Jadi prosesor yang paling XSLT memerlukan dua file input: program XSLT dan XML file itu berubah.
Banyak distribusi Linux ®-line termasuk prosesor XSLT perintah disebut xsltproc . This is valuable for debugging and fine-tuning XSLT scripts, as are other similar tools. Ini sangat berguna untuk debugging dan-tuning XSLT script halus, seperti juga alat serupa lainnya.
Xsltproc mengharapkan dua parameter: program XSLT dan XML yang bertindak atas program XSLT. Misalkan sebelumnya saya mendownload NWS data XML untuk Norfolk Naval Air Station di Virginia untuk file KNGU.xml (KNGU adalah empat-karakter yang unik Station ID diuraikan dalam Bagian 1). Saya dapat menggunakan perintah ini untuk menguji program XSLT saya dari properti 2 :
xsltproc weather2html.xsl KNGU.xml xsltproc weather2html.xsl KNGU.xml

Prosesor XSLT menerapkan terjemahan dijelaskan dalam weather2html.xsl untuk memasukkan file KNGU.xml dan menulis hasil ke output standar.
Pendekatan 2: XSLT di server
Saya ingin menerapkan pendekatan XSLT untuk masalah cuaca lencana. Dalam Pendekatan 2, a-script sisi server menarik data dari server NWS, menggunakan XSLT untuk mengubah yang XML ke HTML, kemudian mengirimkan potongan HTML kembali ke browser. Browser kemudian hanya memasukkan potongan tersebut ke dalam tag DIV.
Gambar 1 menunjukkan pipa data yang digunakan dalam pendekatan ini. Data mengalir dari server NWS ke server saya, di mana script sisi server mengkonversi XML ke HTML. pipa berakhir pada browser, dimana HTML diterima dan dimasukkan ke dalam halaman Web.
Gambar 1. Pipa data Pendekatan 2



I need Aku butuh sisi-program server yang dapat melakukan terjemahan XSLT. Saya menulis ini dalam Perl, seperti ditunjukkan pada properti 4 , tetapi sebagai dapat dengan mudah diimplementasikan dalam bahasa lain.. Script dipanggil oleh XMLHttpRequest panggilan pada browser. Kode JavaScript Ajax mengirimkan script sisi server parameter tunggal: empat-karakter NWS Station ID yang diperlukan untuk mengambil data file XML dari server NWS.

Ajax (pemrograman)
From Wikipedia, the free encyclopedia Dari Wikipedia Bahasa Melayu, ensiklopedia bebas
Ajax (singkatan dari asynchronous JavaScript dan XML [1] ) adalah sekelompok yang saling terkait pengembangan web teknik yang digunakan pada sisi-klien untuk membuat interaktif aplikasi web . Dengan Ajax, aplikasi web dapat mengambil data dari server secara asynchronous di latar belakang tanpa mengganggu layar dan perilaku dari halaman yang ada. The use of Ajax techniques has led to an increase in interactive or dynamic interfaces on web pages. Penggunaan teknik Ajax telah menyebabkan peningkatan interface interaktif atau dinamis di halaman web. Data are usually retrieved using the XMLHttpRequest object . Data biasanya diambil dengan menggunakan XMLHttpRequest objek . Despite the name, the use of XML is not actually required, nor do the requests need to be asynchronous . [ 2 ] Meskipun nama, penggunaan XML tidak benar-benar diperlukan, juga tidak meminta perlu asynchronous . [2]
Like DHTML and LAMP , Ajax is not a technology in itself, but a group of technologies. Seperti DHTML dan LAMP , Ajax bukanlah teknologi itu sendiri, tetapi sekelompok teknologi. Ajax uses a combination of HTML and CSS to mark up and style information. Ajax menggunakan kombinasi HTML dan CSS untuk menandai dan informasi gaya. The DOM is accessed with JavaScript to dynamically display, and to allow the user to interact with, the information presented. The DOM diakses dengan JavaScript untuk menampilkan secara dinamis, dan memungkinkan pengguna untuk berinteraksi dengan, informasi yang disajikan. JavaScript and the XMLHttpRequest object provide a method for exchanging data asynchronously between browser and server to avoid full page reloads. JavaScript dan objek XMLHttpRequest menyediakan sebuah metode untuk pertukaran data asynchronous antara browser dan server untuk menghindari ulang halaman penuh.
Teknologi
The term Ajax has come to represent a broad group of web technologies that can be used to implement a web application that communicates with a server in the background, without interfering with the current state of the page. Istilah ini Ajax telah datang untuk mewakili suatu kelompok luas dari teknologi web yang dapat digunakan untuk mengimplementasikan aplikasi web yang berkomunikasi dengan server di latar belakang, tanpa campur dengan kondisi saat halaman. In the article that coined the term Ajax, [ 1 ] Jesse James Garrett explained that the following technologies are required: Dalam artikel yang menciptakan istilah Ajax, [1] Jesse James Garrett menjelaskan bahwa teknologi berikut ini dibutuhkan:
• HTML or XHTML and CSS for presentation HTML atau XHTML dan CSS untuk presentasi
• the Document Object Model for dynamic display of and interaction with data para Document Object Model untuk tampilan dinamis dan interaksi dengan data
• XML and XSLT for the interchange, and manipulation and display, of data, respectively XML dan XSLT untuk pertukaran, dan manipulasi dan menampilkan, data, masing-masing
• the XMLHttpRequest object for asynchronous communication yang XMLHttpRequest objek untuk komunikasi asynchronous
• JavaScript to bring these technologies together JavaScript untuk membawa teknologi tersebut bersama-sama
Since then, however, there have been a number of developments in the technologies used in an Ajax application, and the definition of the term Ajax. Sejak saat itu, Namun, ada beberapa perkembangan dalam teknologi yang digunakan dalam aplikasi Ajax, dan definisi dari istilah Ajax. In particular, it has been noted that: Secara khusus, telah mencatat bahwa:
• JavaScript is not the only client-side scripting language that can be used for implementing an Ajax application. JavaScript tidak hanya sisi klien bahasa script yang dapat digunakan untuk mengimplementasikan aplikasi Ajax. Other languages such as VBScript are also capable of the required functionality. [ 2 ] [ 8 ] However JavaScript is the most popular language for Ajax programming due to its inclusion in and compatibility with the majority of modern web browsers. Bahasa lain seperti VBScript juga mampu melakukan fungsi yang diperlukan. [2] [8] Namun JavaScript adalah bahasa yang paling populer untuk pemrograman Ajax karena kedekatannya dan kompatibilitas dengan mayoritas web browser modern.
• XML is not required for data interchange and therefore XSLT is not required for the manipulation of data. JavaScript Object Notation (JSON) is often used as an alternative format for data interchange, [ 9 ] although other formats such as preformatted HTML or plain text can also be used. [ 10 ] XML tidak diperlukan untuk pertukaran data dan karena XSLT tidak diperlukan untuk manipulasi data. JavaScript Object Notation (JSON) sering digunakan sebagai format alternatif untuk pertukaran data, [9] meskipun format lain seperti HTML terformat, atau teks biasa dapat juga digunakan. [10]
Classic Ajax involves writing ad hoc JavaScript on the client. Ajax Classic melibatkan menulis ad hoc JavaScript pada klien. A simpler if cruder alternative is to use standard JavaScript libraries that can partially update a page, such as ASP.Net's UpdatePanel. Sebuah alternatif sederhana jika lebih kasar adalah dengan menggunakan standar pustaka JavaScript yang sebagian dapat memperbarui halaman, seperti ASP.Net 's UpdatePanel. Tools such as Echo2 and ZK enable fine grained control of a page from the server, using only standard JavaScript libraries. Alat seperti Echo2 dan ZK mengaktifkan kontrol berbutir dari halaman dari server, dengan hanya menggunakan standar perpustakaan JavaScript.
Dasar Pemikiran
• In many cases, related pages on a website consist of much content that is common between them. Dalam banyak kasus, halaman terkait pada sebuah situs web terdiri dari banyak konten yang umum di antara mereka. Using traditional methods, that content would have to be reloaded on every request. Dengan menggunakan metode tradisional, bahwa isi harus ulang pada setiap permintaan. However, using Ajax, a web application can request only the content that needs to be updated, thus drastically reducing bandwidth usage and load time. [ 11 ] Namun, dengan menggunakan Ajax, aplikasi web dapat meminta hanya konten yang perlu diperbarui, sehingga secara drastis mengurangi penggunaan bandwidth dan waktu buka. [11]
• The use of asynchronous requests allows the client's Web browser UI to be more interactive and to respond quickly to inputs, and sections of pages can also be reloaded individually. Penggunaan permintaan asinkron memungkinkan Web browser klien UI untuk menjadi lebih interaktif dan untuk merespon dengan cepat untuk masukan, dan bagian dari halaman juga dapat mengisi ulang secara individual. Users may perceive the application to be faster or more responsive, even if the application has not changed on the server side. [ 12 ] Pengguna dapat melihat aplikasi yang akan lebih cepat atau lebih responsif, bahkan jika aplikasi tersebut belum berubah pada sisi server. [12]
• The use of Ajax can reduce connections to the server, since scripts and style sheets only have to be requested once. [ 12 ] Penggunaan Ajax dapat mengurangi koneksi ke server, karena script dan style sheet hanya harus diminta sekali. [12]
• State can be maintained throughout a Web site. Negara dapat dipertahankan di seluruh situs Web. JavaScript variables will persist because the main container page need not be reloaded. variabel JavaScript akan bertahan karena wadah utama halaman tidak perlu reloaded.
[ edit ] Drawbacks [ sunting ] Kerugian
• Owing to their dynamic nature, Ajax interfaces are often harder to develop when compared to static pages. Karena mereka bersifat dinamis, interface Ajax sering sulit untuk berkembang bila dibandingkan dengan halaman statis.
• Pages dynamically created using successive Ajax requests do not automatically register themselves with the browser's history engine, so clicking the browser's "back" button may not return the user to an earlier state of the Ajax-enabled page, but may instead return them to the last full page visited before it. Halaman dinamis dibuat menggunakan kunjungan berturut-turut Ajax tidak secara otomatis mendaftarkan diri dengan mesin sejarah browser, jadi mengklik "kembali browser" tombol tidak dapat kembali pengguna untuk sebuah negara yang lebih awal dari Ajax-enabled halaman, namun mungkin mengembalikan mereka ke terakhir Halaman penuh dikunjungi sebelumnya. Workarounds include the use of invisible IFrames to trigger changes in the browser's history and changing the anchor portion of the URL (following a #) when Ajax is run and monitoring it for changes. [ 12 ] Workarounds termasuk penggunaan tak terlihat Iframe untuk memicu perubahan dalam browser sejarah dan mengubah jangkar bagian dari URL (setelah #) ketika Ajax dijalankan dan monitoring untuk perubahan. [12]
• Dynamic web page updates also make it difficult for a user to bookmark a particular state of the application. Halaman Web Dinamis pembaruan juga menyulitkan pengguna untuk penunjuk keadaan tertentu dari aplikasi. Solutions to this problem exist, many of which use the URL fragment identifier (the portion of a URL after the '#') to keep track of, and allow users to return to, the application in a given state. [ 12 ] Solusi untuk masalah ini ada, banyak yang menggunakan URL identifier fragmen (bagian dari URL setelah '#') untuk melacak, dan memungkinkan pengguna untuk kembali ke, aplikasi dalam keadaan tertentu. [12]
• Because most web crawlers do not execute JavaScript code, [ 13 ] publicly indexable web applications should provide an alternative means of accessing the content that would normally be retrieved with Ajax, to allow search engines to index it. Karena kebanyakan web crawler tidak mengeksekusi kode JavaScript, [13] aplikasi web indexable publik harus memberikan alternatif cara mengakses konten yang biasanya akan diambil dengan Ajax, yang memungkinkan mesin pencari untuk mengindeks itu.
• Any user whose browser does not support JavaScript or XMLHttpRequest, or simply has this functionality disabled, will not be able to properly use pages which depend on Ajax. Setiap pengguna browser yang tidak mendukung JavaScript atau XMLHttpRequest, atau hanya memiliki fungsi ini dinonaktifkan, tidak akan dapat menggunakan halaman yang benar tergantung pada Ajax. Similarly, devices such as mobile phones , PDAs , and screen readers may not have support for the required technologies. Demikian pula, perangkat seperti ponsel , PDA , dan pembaca layar mungkin tidak memiliki dukungan untuk teknologi yang diperlukan. Screen readers that are able to use Ajax may still not be able to properly read the dynamically generated content. [ 14 ] The only way to let the user carry out functionality is to fall back to non-JavaScript methods. pembaca layar yang mampu menggunakan Ajax masih mungkin tidak dapat dengan benar membaca konten yang dihasilkan secara dinamis. [14] Satu-satunya cara untuk membiarkan pengguna melaksanakan fungsi adalah untuk jatuh kembali ke metode non-JavaScript. This can be achieved by making sure links and forms can be resolved properly and do not rely solely on Ajax. Hal ini dapat dicapai dengan membuat link yakin dan bentuk dapat diselesaikan dengan baik dan jangan hanya mengandalkan Ajax. In JavaScript, form submission could then be halted with "return false". [ 15 ] Dalam JavaScript, pengiriman formulir kemudian dapat dihentikan dengan "return false". [15]
• The same origin policy prevents some Ajax techniques from being used across domains, [ 6 ] although the W3C has a draft of the XMLHttpRequest object that would enable this functionality. [ 16 ] The kebijakan Asal sama mencegah beberapa teknik Ajax dari yang digunakan di seluruh domain, [6] meskipun W3C memiliki konsep objek XMLHttpRequest yang akan mengaktifkan fungsi ini. [16]
• Like other web technologies, Ajax has its own set of vulnerabilities that developers must address. Seperti teknologi web lainnya, Ajax telah menetapkan sendiri kerentanan yang pengembang harus alamat. Developers familiar with other web technologies may have to learn new testing and coding methods to write secure Ajax applications. [ 17 ] [ 18 ] Pengembang akrab dengan teknologi web lain mungkin harus belajar coding pengujian baru dan metode untuk menulis aplikasi Ajax aman. [17] [18]
• Ajax-powered interfaces may dramatically increase the number of user-generated requests to web servers and their back-ends (databases, or other). Ajax-powered antarmuka secara dramatis dapat meningkatkan jumlah permintaan pengguna ke web server yang dihasilkan dan kembali mereka-berakhir (database, atau lainnya). This can lead to longer response times and/or additional hardware needs. Hal ini dapat mengakibatkan response time lebih lama dan / atau kebutuhan hardware tambahan.

0 komentar:

Posting Komentar