Hacettepe Üniversitesi Bilgisayar Müh. Bölümü 2005 Güz Dön. Bil 447 Yazılım Müh. Lab. Dersi Araştırma Çalışması. 1. Giriş Ajax nedir?

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Hacettepe Üniversitesi Bilgisayar Müh. Bölümü 2005 Güz Dön. Bil 447 Yazılım Müh. Lab. Dersi Araştırma Çalışması. 1. Giriş Ajax nedir?"

Transkript

1 Hacettepe Üniversitesi Bilgisayar Müh. Bölümü 2005 Güz Dön. Bil 447 Yazılım Müh. Lab. Dersi Araştırma Çalışması Mehmet İnal Konu: Ajax 1 Giriş Ajax nedir? 1.1 Ajax'ın kullanım alanları 1.2 Avantajlar Dezavantajlar 1.3 Ajax'ın geleneksel yöntemlerle karşılaştırılması 2 Ajax etkileşiminin bir J2EE uygulamasındaki kullanımı 2.1 İstemci olayının oluşması 2.2 XMLHttpRequest nesnesinin yaratılması ve başlatılması 2.3 XMLHttpRequest nesnesinin çağrıda bulunması 2.4 İstemin ValidationServlet tarafından işlenmesi 2.5 ValidationServlet'in XML belgesi döndürmesi 2.6 XMLHttpRequest nesnesinin callback() methodunu çağırarak sonucu işlemesi 2.7 HTML DOM un günlenmesi 3 Sonuçlar 1. Giriş Ajax nedir? Ajax (Asynchronous JavaScript and XML) etkileşimli web uygulamaları yaratmak için kullanılan bir geliştirme tekniğidir. Örneğin Google Maps, Google Suggest ya da Gmail gibi sayfalarda, zengin devingen içerikli web uygulamaları Ajax'la hazırlanmaktadır. Bu uygulamalar klasik web uygulamalarına benzese de pluginlere veya tarayıcıya özel unsurlara gereksinim duymazlar. Geleneksel web uygulamaları, ekrandaki görüntünün ancak bir kısmı değişse bile tüm HTML sayfalarının tekrar yüklenmesini gerektirecek şekilde hazırlanmaktaydı. Ancak son birkaç yılda JavaScript ve CSS gibi teknolojilerin olgunlaşması sayesinde, tüm belli başlı web tarayıcılarında çalışan, yüksek düzeyde devingen özellikli sayfalar ortaya çıkmıştır. Bir HTML sayfası, JavaScript kullanarak sunucusuna asenkron olarak bilgi gönderebilir ve sunucudan XML belgeleri çekebilir. Çekilen XML belgeleri JavaScript tarafından kullanılarak HTML sayfasının Document Object Model (DOM) u değiştirilir veya günlenir. Bu etkileşim modeli son zamanlarda Asenkron JavaScript ve XML yani Ajax olarak adlandırılmaya başlanmıştır, ancak bu model aslında yeni değildir. Bu teknikler daha önce Windows platformunda Internet Explorer içinde (remote scripting terimi kullanılarak) ve Java pluginleri ve appletlerle birlikte uzun süre kullanılmıştı. Ancak performans ve tüm web tarayıcılarında kullanım yani taşınabilirlik açısından, JavaScript in XMLHttpRequest nesnesini getirmesiyle bugünkü Ajax ortaya çıktı diyebiliriz.

2 Ajax aşağıdaki teknolojilerden bir veya birkaçını kullanır: Web sayfalarını görüntülemek için HTML (ya da XHTML). JavaScript tarafından yönetilen, devingen görüntü elde etmek ve gösterilen bilgiyle etkileşimi sağlamak için kullanılan Document Object Model Web sunucusuyla asenkron olarak veri alışverişi sağlamak için XMLHttpRequest nesnesi. Alışveriş için genellikle XML kullanılmasına rağmen HTML veya diğer formatlar da kullanılabilir. Sonuçta Ajax bir teknoloji değildir, ancak yukardaki teknolojileri kullanan bir web uygulaması tekniğidir, yani bir web uygulaması mimarisidir. Bu araştırmada Ajax'ın genel tanımı, kullanım alanları, avantaj ve dezavantajları, eski yöntemlerle karşılaştırılması verilecek ve daha sonra J2EE temel alınarak bir örnek üzerinde nasıl çalıştığı anlatılacaktır Ajax'ın kullanım alanları Ajax'ın kullanım alanlarından bazıları aşağıda verilmiştir: Gerçek zamanlı olarak form verisi geçerlik denetimi: Bir formdaki kullanıcı idleri, seri numaraları, posta kodları gibi alanlarda, sunucu tarafından daha form teslim edilmeden geçerlik denetimi yapılması. Otomatik tamamlama: adresi, ad soyad, şehir gibi bazı form alanlarının, kullanıcı giriş yaptığı esnada otomatik olarak tamamlanması. Master detail formları: Bir istemci HTML sayfasında, kullanıcı master verileri seçtiğinde detay kısmının sayfa baştan yüklenmeden görünmesi örneğin bir ürün kategorisine tıklandığında o kategoriye ait ürünlerin, sayfa tazelenmeden ekrana yazılması. Kullanıcı arabirimi için sofistike kontroller: Ağaç yapıları, menüler, progress bar gibi kontrollerin tüm sayfa yeniden yüklenmeden kullanılabilmesi. Sayfa üzerinde veri tazelenmesi: Maç skorları, borsa bültenleri, hava durumu gibi sürekli değişen bilgiler için HTML sayfasının sunucuyu sürekli sorgulayarak değişiklikleri ekrana getirmesi. Sunucu tarafı bildirimleri: İstemciyi bir mesajla uyarma, sayfa bilgilerini tazeleme veya bir istemciyi başka bir sayfaya yönlendirme gibi işlemler için HTML sayfasının sunucudan olay bildirimi istemesi. Başka kullanım alanları da olmasına karşın, bu liste, Ajax sayesinde etkileşimli web uygulamalarının eskiye göre daha çok şey yapabildiğini göstermektedir Avantajlar Dezavantajlar Ajax kullanmanın getirdiği en büyük avantaj tüm bilgilerin tarayıcı sayfasında baştan yüklenmemesidir. Bu sayede web uygulaması çok sayıda kullanıcı etkileşimine daha hızlı yanıt verir ve değişmeyen bilgilerin ağ üzerinden gereksiz olarak sürekli ileri geri aktarılmaları engellenmiş olur. Ajax'ın kullandığı teknolojiler herkese açık olduğundan, tüm JavaScript kullanabilen tarayıcılar tarafından, işletim sistemi farkı gözetmeksizin desteklenirler (Macromedia Shockwave gibi önde gelen yazılımların pluginleri Linux'ta ancak son zamanlarda kullanılmaya başlanmıştır)

3 Tarayıcı için plugin gerekmemesine karşın, Ajax kullanıcıların tarayıcı ayarlarında JavaScript'in seçili olmasını zorunlu kulmaktadır. Geliştirilen Ajax uygulamaları farklı tarayıcıların ve platformların garipliklerine karşı titizlikle test edilmelidir. Ajax için geliştirilen bir dizi kütüphane sayesinde bu iş eskiye göre daha kolaylaşmıştır. Aynı şekilde hata toleranslı uygulamalar geliştirmek için ve JavaScript kullanamayan kullanıcılar için alternatif işlevsellik sunmak için de teknikler geliştirilmiştir. Ajax'a yönelik önemli bir eleştiri, bir uygulamada "geri" (back) tuşunun normal davranışını bozacağı şeklindeydi. Bir Ajax uygulamasında bir önceki konuma dönmek, sayfa dinamik olarak günlendiği için mümkün olmayabilir, zira tarayıcılar daha önceki sayfalar (history) listesinde sadece ziyaret edilen statik sayfaları tutarlar. Bütün olarak yüklenen statik bir sayfayla, dinamik olarak değiştirilen bir sayfa arasındaki ayrım ince olabilir; kullanıcılar genellikle bir web sayfasında geri tuşuna bastıkları zaman en son yaptıkları değişikliğin geri alınacağını umarlar. Ancak Ajax uygulamalarında bu böyle olmayabilir. Uygulama geliştiricileri bu soruna yönelik bir dizi çözüm üretmişlerdir. Bunların çoğu sayfa üzerinde görünmeyen bir IFRAME (bir HTML sayfasında diğer bir sayfaya ait nesnelerin görünmesi için kullanılan çerçeve nesnesi) kullanarak, daha önceki sayfalar listesini doldurmaya dayanır. Örneğin Google Maps, geri tuşuna basıldığında, görünmeyen bir IFRAME i arar ve sonucu ekrandaki Ajax elemanı üzerine geçirir. Bununla bağlantılı bir başka sorun da devingen web sayfalarını günlerken bir kullanıcının uygulamanın belli bir konumununa bookmark koymak istemesi durumunda çıkmaktadır. Bu sorun için de çözümler ortaya çıkmaya başlamıştır. Bu çözümlerin çoğu URL fragman belirteci (URL fragment identifier) ya da başka deyişle çapa (anchor) kullanırlar. Çapa sayesinde (URL in # den sonraki kısmı) uygulamanın belli bir durumu kaydedilir ve kullanıcıların bir duruma geri dönmeleri sağlanır. Bir çok web tarayıcısı JavaScript skriptlerinin çapaları dinamik olarak günlemelerine olanak sağlar. Böylece Ajax uygulaması görüntü içeriğine koşut olarak çapaları da günler. Yukarıda anlatılan çözümler geri tuşuyla ilgili olan bir çok mesele için de bir yaklaşım sağlarlar. Ağ gecikmesi (network latency) ya da kullanıcı istemiyle sunucu yanıtı arasında geçen süre bir Ajax uygulaması geliştirirken dikkatli bir biçimde değerlendirilmelidir. Kullanıcılara neden beklediklerinin açık bir şekilde bildirilmesi, verilerin akıllı bir biçimde önceden yüklenmeleri, XMLHttpRequest nesnesinin uygun biçimde kullanımı gibi konulara dikkat edilmezse kullanıcılar uygulama arayüzünde zaman kaybederler ve bunun nedenini tahmin edemezler. Kullanıcılara arka plan aktivitesi hakkında görsel geri bildirim aktarımı ve/veya verilerin ön yüklenmeleri ağ gecikmesi sorununa sıkça önerilen çözümlerdir. Bunların dışında şu dezavantajlardan sözetmek mümkündür: Karmaşıklık: Sunucu tarafındaki geliştiriciler açısından, sunum mantığı (presentation logic) bilgisi HTML istemci sayfalarında gerekliyken, sunucu tarafında istemciye XML içeriği gönderilmesi esnasında da gereklidir. HTML sayfası geliştiricilerinin JavaScript yeteneklerine sahip olmaları gereklidir. Zaman içinde yeni framework lerin geliştirilmesi ve var olanların evrimleşmesiyle etkileşim modeli desteklenecek ve Ajax uygulamaları daha kolay hazırlanabilecektir. XMLHttpRequest nesnesinin standartlaştırılması: XMLHttpRequest nesnesi henüz JavaScript spesifikasyonunda yer almamaktadır, bu yüzden nesnenin davranışları istemciye göre değişebilmektedir. Hata Ayıklama (debugging): Ajax uygulamalarını debug etmek zordur, çünkü işlem mantığı hem istemci hem de sunucu tarafında gömülüdür.

4 Görünebilir Kod: İstemci tarafındaki JavaScript kodları Ajax'ı destekleyen bir HTML sayfası açıldığında kolayca görünebilir. Zayıf tasarlanmış bir Ajax tabanlı uygulama hackerlara ve kopya çekmek isteyenlere açık olabilir. Sonuç olarak Ajax etkileşim modeli kullanan geliştiricilerin daha çok tecrübe kazanmasıyla, Ajax mimarisi için yeni framework ve örüntülerin (patterns) ortaya çıkması beklenmektedir. Her duruma uygun ("one size fits all") bir Ajax etkileşim framework ortaya çıkmasını ummak için henüz erkendir Ajax'ın geleneksel yöntemlerle karşılaştırılması Bu kısımda Ajax'ın nasıl çalıştığını daha iyi anlamak için geleneksel yöntemlerle arasındaki farklar anlatılacaktır. Ajax uygulamaları Internet üzerinden bir sunucuda çalışmak yerine nerdeyse kullanıcının makinasında yer alırmış gibi gözükürler. Bunun nedeni şudur: sayfalar günlenirler, ancak tamamen yenilenmezler. Bir HTTP istemi oluşturan her kullanıcı davranışı, Ajax motoruna (Ajax engine) bir JavaScript mesajı şeklindedir. Her kullanıcı istemine karşı gelen yanıt örneğin basit veri denetimi, bellekteki verileri değiştirme vs, sunucuya geri dönen bir yolculuk şeklinde olmaz. Ajax motoru bunları kendi başına halleder. Eğer motor sunucunun yanıt vermesini gerektiren bir şeye ihtiyaç duyarsa işlenmek üzere bilgi teslim edilmesi, ekstra arayüz kodu yüklenmesi veya sunucudan yeni veri çekilmesi motor bu istemleri asenkron olarak, genellikle XML kullanarak yerine getirir. Bu esnada kullanıcının uygulamayla etkileşimi aksamaya uğramaz. Geleneksel web uygulamaları temel olarak kullanıcı tarafından tamamlanmış formları sunucuya teslim ederler. Sunucu yeni bir sayfa göndererek yanıt verir. Sunucu her seferinde yeni bir sayfa yolladığından, bu uygulamalar yerel kopyalara göre daha yavaş çalışırlar. Öte yandan Ajax uygulamaları, web sunucusuna istemlerini sadece gerekli olan verileri elde etmek için gönderirler. Bu gönderim esnasında genellikle XML tabanlı web servisleri kullanılır. İstemci tarafında, JavaScript sunucu yanıtlarını işleme koyar. Sonuç ise sunucu tarafına daha verimli yanıt veren bir arayüz olacaktır, zira web tarayıcısı ve sunucu arasında yapılan veri alışverişi büyük ölçüde azaltılmıştır. Web sunucusunun işlem zamanından da büyük ölçüde tasarruf edilmiş olur, çünkü bu işlemlerin çoğunu istemci yapmaktadır. Klasik web uygulaması ile JavaScript ve XML kullanan Ajax uygulaması arasındaki fark şağıdaki çizimde gösterilmiştir:

5 Bir Ajax uygulaması web üzerindeki etkileşimin sürekli kesintiye uğrayıp yeniden başlaması durumunu, ara düzeyde bir katman oluşturarak önler. Bu katman istemci ve sunucu arasındaki Ajax motorudur. Araya bir katman koymak uygulamanın daha yavaş olacağını düşündürebilir, ancak bu durumda tersi doğrudur. Bir web sayfasını yüklemek yerine, tarayıcı JavaScript olarak yazılmış Ajax motorunu yükler. Bu motor hem kullanıcının gördüğü arayüzün çalıştırılmasından, hem de kullanıcının yerine sunucuyla haberleşmekten sorumludur. Ajax motoru kullanıcının uygulamayla olan etkileşimini zamanuyumsuz olarak, yani sunucuyla bağlantıdan bağımsız olarak gerçekleşmesini sağlar. Sonuçta kullanıcı hiçbir zaman bomboş bir tarayıcı ekranını başlatmaz ve bir kumsaati ikonuyla (hourglass icon) karşılaşmaz, yani sunucunun bir şeyler yapmasını beklemek zorunda kalmaz. Geleneksel uygulamaların zamanuyumlu iletişim örüntüsüyle, Ajax'ın zamanuyumsuz örüntüsü arasındaki karşılaştırma aşağıdaki şekilde verilmiştir:

6

7 2. Ajax etkileşiminin bir J2EE uygulamasındaki kullanımı Bundan önceki bölümde Ajax'ın ne olduğu, artıları ve eksileri, geleneksel uygulamalardan farkları anlatılmıştı. Bu bölümde ise daha önce anlatılanların uygulaması niteliğinde, Ajax'ın bir J2EE uygulamasında nasıl yer aldığı örnek olarak gösterilecektir. Verilecek örnekte, bir web uygulamasının statik bir HTML sayfası veya JSP teknolojisi kullanılarak hazırlanmış sayfanın bir HTML formu içerdiği ve sunucu mantığı gerektirdiği durumda, form verilerinin geçerlik denetiminin yapılması gerektiği var sayılmıştır. Örnekte sunucu tabanlı web bileşeni(servlet) olarak ValidateServlet isimli nesne kullanılmıştır. ValidateServlet geçerlik denetimi mantığını sağlayacaktır. Aşağıdaki şekilde bu örnekteki Ajax etkileşiminin detayları çizilmiştir:

8 Bu örnekteki Ajax etkileşimi aşağıdaki adımlardan oluşmaktadır: 1. İstemci olayının oluşması 2. XMLHttpRequest nesnesinin yaratılması ve başlatılması 3. XMLHttpRequest nesnesinin çağrıda bulunması 4. İstemin ValidationServlet tarafından işlenmesi 5. ValidationServlet'in XML belgesi döndürmesi 6. XMLHttpRequest nesnesinin callback() methodunu çağırarak sonucu işlemesi 7. HTML DOM un günlenmesi Aşağıda her adım detaylarıyla incelenecektir İstemci olayının oluşması JavaScript fonksiyonları bir olayın sonucu olarak çağrılırlar. validate() fonksiyonu bir bir form bileşeni üzerindeki onkeyup olayına map edilir. <input type="text" size="20" id="userid" name="id" onkeyup="validate();"> Yukarıdaki form elemanı, form alanı üzerinde bir tuşa her basıldığında validate() i çağırır XMLHttpRequest nesnesinin yaratılması ve başlatılması Bir XMLHttpRequest nesnesi başlatılır ve konfıgüre edilir. var req; function validate() { var idfield = document.getelementbyid("idfield"); var url = "validate?id=" + escape(idfield.value); if (window.xmlhttprequest) { req = new XMLHttpRequest(); else if (window.activexobject) { req = new ActiveXObject("Microsoft.XMLHTTP"); req.open("get", url, true); req.onreadystatechange = callback; req.send(null); Burada validate() fonksiyonu XMLHttpRequest nesnesinin open metodunu başlatır. open metodu üç argüman alır. GET veya POST içeren bir URL string (HTTP metodunu belirtmek için), hedef URL belirtmek için bir string ve çağrının asenkron yapılıp yapılmayacağını belirten bir mantıksal değişken. Bir

9 etkileşim için bu mantıksal değişken true değerini taşıyorsa, bir geri çağırım (callback) fonksiyonu belirtilmelidir. Callback fonksiyonu bu örnekte req.onreadystatechange =callback; deyimi ile belirtilmiştir XMLHttpRequest nesnesinin çağrıda bulunması req.send(null); deyimine erişildiğinde, çağrı yapılır. GET kullanılması durumunda null kullanılabilir veya burası boş bırakılabilir. Bu fonksiyon XMLHttpRequest nesnesi üzerinde çağrıldığı zaman, nesne başlatıldığı zamanki URL üzerine bir çağrı yapılır. Bu örnekte gönderilen veri (id), bir URL parametresi olarak dahil edilir. HTTP GET, iki aynı istem aynı sonuçları döndüreceği zaman kullanılmalıdır. HTTP GET metodu kullanılırken, URL in uzunluğu bazı tarayıcılar tarafından ve sunucu taraflı web container lar tarafından kısıtlandırılabilir. HTTP POST metodu, veri gönderiminin sunucu tarafındaki uygulama durumunu etkileyeceği zamanlarda kullanılmalıdır. Bir HTTP POST, XMLHttpRequest nesnesi üzerindeki Contenttype başlığına değer aktarımı gereğini duyar: req.setrequestheader("content Type", "application/x www formurlencoded"); req.send("id=" + escape(idtextfield.value)); Form değerleri JavaScript üzerinden gönderileceği zaman, alan değerlerinin hangi encodingde olacağına dikkat edilmelidir. JavaScript de escape() adlı bir fonksiyon, yerel değerlerin doğru kodlandığından ve özel karakterlerin doğru biçimde belirtildiğinden emin olmak için kullanılır İstemin ValidationServlet tarafından işlenmesi "validate" adlı bir URI ye maplenmiş olan servlet, kullanıcı id sinin veritabanında bulunup bulunmadığını kontrol eder. Servlet XMLHttpRequest i herhangi bir HTTP istemi gibi işleme koyar. Aşağıdaki örnekte bir sunucunun id parametresini istem youyla alması ve geçerlik denetiminin yapılması gösterilmektedir: public class ValidationServlet extends HttpServlet { private ServletContext context; private HashMap users = new HashMap(); public void init(servletconfig config) throws ServletException { this.context = config.getservletcontext(); users.put("greg","account data"); users.put("duke","account data"); public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException {

10 String targetid = request.getparameter("id"); if ((targetid!= null) &&!users.containskey(targetid.trim())) { response.setcontenttype("text/xml"); response.setheader("cache Control", "no cache"); response.getwriter().write("valid"); else { response.setcontenttype("text/xml"); response.setheader("cache Control", "no cache"); response.getwriter().write("invalid"); Bu örnekte kullanıcı bilgilerini tutmak için basit bir HashMap kullanılmıştır. Örnekte "duke" kullanıcı id sinin girildiği varsayılmıştır ValidationServlet'in XML belgesi döndürmesi Girilmiş olan "duke" kullanıcı id si, kullanıcıları tutan "users" Hashmap inde bulunmamaktadır. ValidationServlet, bir XML belgesini "message" elemanının değeri "invalid" olacak şekilde yanıt olarak gönderir. Daha karmaşık kullanımlarda DOM, XSLT ya da diğer API ler kullanılarak bir yanıt oluşturulur. response.setcontenttype("text/xml"); response.setheader("cache Control", "no cache"); response.getwriter().write("invalid"); Burada dikkat edilmesi gereken Content Type a "text/xml" ve Cache Control a "no cache" değerlerinin verildiğidir. XMLHttpRequest nesnesi sadece "text/xml" değerli Content Type içeren istemleri değerlendirecektir. Cache Control un "no cache" değerine sahip olması ise tarayıcıların yerel olarak yanıtları saklamasına engel olacaktır. Bu sayede aynı URL (ve URL parametreleri) ile farklı yanıtlar alınması önlenecektir XMLHttpRequest nesnesinin callback() methodunu çağırarak sonucu işlemesi XMLHttpRequest nesnesi daha önce, nesnedeki readystate adlı durumda değişiklik olduğu zaman callback() fonksiyonunu çağırmak üzere ayarlanmıştı. Varsayalım ki ValidationServlet e bir çağrı oldu ve readystate "4" durumundaydı, yani XMLHttpRequest çağrısı tamamlanmış durumdaydı. HTTP nin "200" durum kodu başarılı bir HTTP etkileşimini belirtmektedir: function callback() { if (req.readystate == 4) { if (req.status == 200) { // update the HTML DOM based on whether or not message is valid

11 Tarayıcılar belgelerin nesnesel bir temsilini tutarlar, bu temsil Document Object Model (DOM) Belge nesne modeli olarak adlandırılır. Bir HTML sayfasında JavaScript ın DOM a erişmesi gereklidir ve sayfa yüklendikten sonra JavaScript in DOM u değiştirmesi için API ler mevcuttur. Başarılı bir istemin ardından JavaScript kodu HTML sayfasının DOM unu değiştirme hakkına sahiptir. XML belgesinin nesnesel temsili ValidationServlet den alındıktan sonra JavaScript kodu req.responsexml deyimini kullanarak bu temsili kullanır (req bir XMLHttpRequest nesnesidir). DOM API leri yardımıyla JavaScript, XML belgesinin içeriğini kullanarak, HTML sayfasının DOM unu değiştirir. DOM API lerinin JavaScript te nasıl kullanıldığını anlamak için ValidateServlet tarafından döndürülen aşağıdaki XML belgesine bakabiliriz: <message> valid </message> Yukardaki örnek message elemanının değerini "valid" ya da "invalid" stringi olarak içeren basit bir XML fragmanıdır. Daha ileri bir örnek birden fazla mesaj ve kullanıcıya sunulacak geçerli isimler içerebilir. function parsemessage() { var message = req.responsexml.getelementsbytagname("message")[0]; setmessage(message.childnodes[0].nodevalue); parsemessage() fonksiyonu ValidationServlet den alınan XML belgesini işlemek için kullanılır. Bu fonksiyon setmessage() fonksiyonunu message elemanı ile çağırarak HTML DOM un günlenmesini sağlar HTML DOM un günlenmesi JavaScript HTML DOM un herhangi bir elemanına, bir dizi API kullanarak erişebilir. Bunun için önerilen yol document.getelementbyid("useridmessage") çağrısıdır. Burada "useridmessage" HTML belgesinde gözüken elemanın id özniteliğidir. Bu elemana yapılan bir referansla JavaScript bir elemanın özniteliklerini, stil özelliklerini değiştirebilir, ekleme yada silme yapabilir, çocuk elemanları (child elements) değiştirebilir. Bir elemanın gövde içeriğini (body content) değiştirmek için kullanılan yaygın bir metod, elemanın innerhtml özelliğine aşağıdaki örnekteki gibi bir değer atamaktır : <script type="text/javascript"> function setmessage(message) { var usermessageelement = document.getelementbyid("useridmessage"); usermessageelement.innerhtml = "<font color=\"red\">" + message + " </font>"; </script> <body> <div id="useridmessage"></div> </body>

12 HTML sayfasının etkilenecek bölümleri, innerhtml e değer atamasından hemen sonra yenilenirler. innerhtml özelliği <image> ya da <iframe> gibi elemanları içerebilir. Bu elemanlar tarafından belirtilen içerik de aynı şekilde bulunur ve yenilenir. Bu yaklaşımın temel dezavantajı, JavaScript kodunun yukarıda görüldüğü gibi string lerle karıştırılması sonucu okunabilirliğin azalmasıdır. HTML DOM u değiştirmenin başka bir yolu da devingen olarak yeni elemanlar yaratılması ve bu elemanların çocuk olarak bazı hedef elemanların altına yapıştırılmasıdır. Alltaki örnekte bu yaklaşım gösterilmiştir: <script type="text/javascript"> function setmessage(message) { var usermessageelement = document.getelementbyid("useridmessage"); var useridmessagefont = document.getelementbyid ("useridmessagefont"); var messageelement = document.createtextnode(message); if (usermessageelement.childnodes[0]) { // update the elements useridmessagefont.replacechild(messageelement, else { // create the new elements useridmessagefont.childnodes[0]); var fontelement = document.createtextnode("font"); fontelement.setatribute("id", "useridmessagefont"); fontelement.setatribute("color", "red"); usermessageelement.appendchild(fontelement); fontelement.appendchild(messageelement); </script> <body> <div id="useridmessage"></div> </body> Yukardaki kodda görüldüğü üzere JavaScript DOM API leri bir eleman yaratmak için veya programlamayla bir elemanı değiştirmek için kullanılabilirler. JavaScript in DOM API lerinin farklı tarayıcılarda desteklenmeleri farklı olabileceğinden uygulama geliştirirken dikkatli olunması gereklidir.

13 3. Sonuçlar Bu çalışmada görüldüğü gibi, Ajax uygulamaları geliştirmedeki sorunların çoğu teknik sorunlar değildir. Ajax'ın kullandığı teknolojiler ve metodlar yeterince olgun düzeyde, kararlı ve kolay anlaşılabilir niteliktedir. Ajax'la çalışan uygulama tasarımcılarına Ajax tekniklerinin geliştirilmesinde büyük sorumluluk düşmektedir. Ajax etkileşimlerinin çözebileceği bir çok olası problem vardır. J2EE teknolojisi HTTP işlemleri, veritabanı, web servisleri, XML işleme ve iş nesneleri için sunduğu API lerle Ajax tabanlı uygulamalar geliştirmek için ideal bir ortam oluşturmaktadır. Bu etkileşim modelinin daha iyi anlaşılmasıyla birlikte, günümüz web uygulamaları daha etkileşimli hale gelebilir ve bu sayede kullanıcılara web ortamında daha iyi sunumlu uygulamalar hazırlanabilir. Referanslar: https://bpcatalog.dev.java.net Ajax Kullanan bazı Siteler adresinde Ajax kullanan belli başlı sitelerin bir listesi yer almaktadır. Fikir vermesi açısından bu sitelere göz atılabilir.

Basit bir web uygulaması

Basit bir web uygulaması AJAX Ahmet Demirelli ahmetdemirelli@sabanciuniv.edu SCJP 5.0, SCWCD 1.4 Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı 3/20/2007 Sabanci University 1 Ajanda Neden AJAX ihtiyacı AJAX

Detaylı

solid; BORDER-LEFT: #1F9FFF 0px solid; BORDER-RIGHT: #1F9FFF 0px solid; BORDER-TOP: #1F9FFF 0px solid; COLOR: #1F9FFF; FONT-FAMILY: Trebuschet MS;

solid; BORDER-LEFT: #1F9FFF 0px solid; BORDER-RIGHT: #1F9FFF 0px solid; BORDER-TOP: #1F9FFF 0px solid; COLOR: #1F9FFF; FONT-FAMILY: Trebuschet MS; Web Teknoloji Kavramları Ahmet Demirelli ahmetdemirelli@sabanciuniv.edu MCP, SCJP 5.0, SCWCD 1.4 Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı 6/9/2007 Sabanci University 1 Ajanda CSS

Detaylı

JSON Korsanlığı. Mesut Timur, Şubat 2010, WGT E-Dergi 4. Sayı

JSON Korsanlığı. Mesut Timur, Şubat 2010, WGT E-Dergi 4. Sayı JSON Korsanlığı Mesut Timur, Şubat 2010, WGT E-Dergi 4. Sayı İnternetin gün geçtikçe hayatımızdaki önemi arttı ve web siteleri milyonlarca insan tarafından girilen yerler haline geldi. Artık çevremizden

Detaylı

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri nedir? Sunucu Yazılım Teknolojileri nedir? Gündem 1 nedir? 2 XML 3 nedir? nedir? : Asynchronous JavaScript and XML Yeni bir teknoloji değil, daha çok bir yöntembilim, teknik, tasarım deseni. RIA = Zengin

Detaylı

4.41. WEB DE GENÇ TEKNİK: AJAX. Fırat Üniversitesi Fen Bilimler Enstitüsü, Elazığ. Fırat Üniversitesi Teknik Eğitim Fakültesi,

4.41. WEB DE GENÇ TEKNİK: AJAX. Fırat Üniversitesi Fen Bilimler Enstitüsü, Elazığ. Fırat Üniversitesi Teknik Eğitim Fakültesi, 4.41. WEB DE GENÇ TEKNİK: AJAX 1 Zeynep ÖZER 2 Asaf VAROL 1 Fırat Üniversitesi Fen Bilimler Enstitüsü, Elazığ 2 Fırat Üniversitesi Teknik Eğitim Fakültesi, Elektronik ve Bilgisayar Eğitimi Bölümü, Elazığ

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Servlet Üst Düzey Programlama-ders01/ 1 Servlet Nedir? Web sayfaları ilk başlarda durağan bir yapıya sahipti ve kullanıcıdan bilgi alarak işlemler yapmıyordu. Zamanın geçmesiyle kullanıcıya

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Servlet Üst Düzey Programlama-ders08/ 1 Servlet Nedir? Internetin ilk zamanlarında geliştirilen web sayfaları durağan bilgiler içeriyordu. Zaman geçtikçe web sayfaları daha değişken,

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama JSP Üst Düzey Programlama-ders04/ 1 JSP JSP durağan HTML ile dinamik oluşturulan içeriği birleştirmeyi sağlar. Bir web sayfası tasarlama programı ile web sayfasını tasarlar daha sonra

Detaylı

Web 2.0 Güvenliği @2014 Örnek Eğitim Notu bilgi@bga.com.tr

Web 2.0 Güvenliği @2014 Örnek Eğitim Notu bilgi@bga.com.tr Web 2.0 Güvenliği @2014 Örnek Eğitim Notu bilgi@bga.com.tr Javascript 1995 Netscape, Brendan Eich tarafından geliştirildi. Dinamik olmasının yanında en önemli iki özelliği; Lambda Closure Javascript -

Detaylı

PHP 1. Hafta 1. Sunum

PHP 1. Hafta 1. Sunum PHP 1. Hafta 1. Sunum PHP101: PHP nedir? Bu dersten sonra bilecekleriniz PHP nedir? PHP ye neden ihtiyaç vardır? PHP nin gelişimi HTML, HTTP ve JS nedir? PHP yle alakası nedir? PHP nin uygulama alanları

Detaylı

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 KONU BAŞLIKLARI 1. Yazılım Mimarisi nedir? 2. Yazılımda Karmaşıklık 3. Üç Katmanlı Mimari nedir? 4. Üç Katmanlı Mimari

Detaylı

JAVA API v2.0 Belge sürümü: 2.0.2

JAVA API v2.0 Belge sürümü: 2.0.2 JAVA API v2.0 Belge sürümü: 2.0.2 1. İçindekiler 1. İÇİNDEKİLER... 2 2. BU BELGENİN AMACI... 3 3. BELGE SÜRÜMLERİ... 3 4. SİSTEM GEREKSİNİMLERİ... 3 5. KULLANIM ŞEKLİ... 4 5.1. GENEL... 4 5.2. UYARILAR...

Detaylı

TC KİMLİK NO SMS GÖNDERİM XML API

TC KİMLİK NO SMS GÖNDERİM XML API TC KİMLİK NO SMS GÖNDERİM XML API İçindekiler 1. Bu Belgenin Amacı... 3 2. Belge Sürümleri... 3 3. Sistem Gereksinimleri... 3 4. Kullanım Şekli... 3 4.1. Genel... 3 4.2. Uyarılar... 3 4.3. Hata Kodları...

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

TC KİMLİK NO SMS GÖNDERİM SOAP API

TC KİMLİK NO SMS GÖNDERİM SOAP API TC KİMLİK NO SMS GÖNDERİM SOAP API İçindekiler 1. Bu Belgenin Amacı... 3 2. Belge Sürümleri... 3 3. Sistem Gereksinimleri... 3 4. Kullanım Şekli... 3 4.1. Genel... 3 4.2. Uyarılar... 3 4.3. Hata Kodları...

Detaylı

Kaynak Kod Güvenliği Bir Güvensiz API Örneği

Kaynak Kod Güvenliği Bir Güvensiz API Örneği Kaynak Kod Güvenliği Bir Güvensiz API Örneği Bedirhan Urgun, Ağustos 2010, WGT E-Dergi 6. Sayı Bu yazıda Tomcat J2EE kısmi uygulama sunucusunda bulunan bir güvenlik açığına, güvenlik probleminin kaynağına

Detaylı

Sunucu Taraflı JavaScript ile Gerçek Zamanlı Web Uygulamaları Geliştirme

Sunucu Taraflı JavaScript ile Gerçek Zamanlı Web Uygulamaları Geliştirme Sunucu Taraflı JavaScript ile Gerçek Zamanlı Web Uygulamaları Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan Inet-TR 12 8 Kasım 2012 İÇERİK 1 Node.js nedir? Google tarafından Chrome un JavaScript

Detaylı

Mobil Cihazlardan Web Servis Sunumu

Mobil Cihazlardan Web Servis Sunumu Mobil Cihazlardan Web Servis Sunumu Özlem Özgöbek Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2010 İnternet erişiminin yaygınlaşması ve artık mobil cihazlar üzerinden bile yüksek hızlı veri iletişimine

Detaylı

HTML isteklerini anlayarak HTML sonucu üreten ve yaygın olarak kullanılan temel Servlet sınıfı HttpServlet tir.

HTML isteklerini anlayarak HTML sonucu üreten ve yaygın olarak kullanılan temel Servlet sınıfı HttpServlet tir. ÖN BİLGİ Servlet Dinamik içerik üreten bir Java Web bileşenidir. Web teknolojilerinin temelinde bulunur. JSP ve JSF hala Servlet'i kullanır. Bir Servlet, her yönüyle, herşeyden önce, bir Java nesnesidir.

Detaylı

Client Server Database

Client Server Database Java Server Faces Ahmet Demirelli Sabancı Üniversitesi 2007 Ajanda Model-1 Mimari Model-2 Mimari MVC Framework Java Server Faces Örnek Uygulama Model 1 Mimari 1 2 3 6 JSP (View) 5 JavaBeans (Model) 4 Client

Detaylı

VIDEOCELL API. Versiyon 1.0.0

VIDEOCELL API. Versiyon 1.0.0 VIDEOCELL API Versiyon 1.0.0 İçindekiler 1. Bu Belgenin Amacı... 3 2. Belge Sürümleri... 3 3. Sistem Gereksinimleri... 3 4. Kullanım Şekli... 3 4.1. Genel... 3 4.2. Uyarılar... 3 4.3. Hata Kodları... 4

Detaylı

JAVASCRIPT JAVASCRIPT DİLİ

JAVASCRIPT JAVASCRIPT DİLİ JAVASCRIPT JAVASCRIPT DİLİ Netscape Navigator 2.0 ile birlikte geliştirilen JavaScript dili istemci taraflı (client-side) script dilidir. Web sayfalarında dinamik içerik sağlamak ya da kullanıcıyla iletişim

Detaylı

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1 Web Formlar ve Sayfalar Arasında Bilgi Gönderme BATML İnternet Programcılığı 1 Bazı web sitelerinde sayfalar arasında bilgi veya değişken göndermek gerekebilir. Gönderilen bu bilgi kullanıcı adı ve şifre

Detaylı

1.PROGRAMLAMAYA GİRİŞ

1.PROGRAMLAMAYA GİRİŞ 1.PROGRAMLAMAYA GİRİŞ Bilindiği gibi internet üzerindeki statik web sayfaları ziyaretçinin interaktif olarak web sayfasını kullanmasına olanak vermemektedir. Bu yüzden etkileşimli web sayfaları oluşturmak

Detaylı

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları. Script Statik Sayfa Dinamik Sayfa Dinamik Web Sitelerinin Avantajları İçerik Yönetim Sistemi PHP Nedir? Avantajları Dezavantajları Script HTML kodları arasına yerleştirilen küçük kodlardır. Web sayfalarında

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Struts Framework Üst Düzey Programlama-ders08/ 1 JSP MODEL 1 ve MODEL 2 Mimarileri Bu mimariler bir web uygulaması geliştirilirken kullanılan yöntemlerdir. Bu yöntemler arasındaki

Detaylı

Google Search API ile ajax arama

Google Search API ile ajax arama Google Search API ile ajax arama 14 Ağustos Salı 12 http://mfyz.com/google-search-api-ile-ajax-arama Eğer bir kaynak arıyorsanız, indexlerin güncelliği, genişliği gibi nedenlerden dolayı, diğer arama motorları

Detaylı

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü:

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü: Bölüm 24 Java Ağ Uygulamaları 24.1 Java Appletleri Applet, Web tarayıcısında çalışan bir Java programıdır. Bir applet, Java uygulaması için tamamen fonskiyonel olabilir çünkü bütün Java API ye sahiptir.

Detaylı

PROGRAMLAMA DERSİ 1. İNTERNET

PROGRAMLAMA DERSİ 1. İNTERNET PROGRAMLAMA DERSİ 1. İNTERNET İnternet sunucu-istemci modeline göre çalışır. Fiziksel olarak bu sistem genelde isteği yapan bir bilgisayar (kullanıcı-client) ve bu isteği karşılayan özel bir bilgisayar

Detaylı

KURULUM KILAVUZU MART 2014. Visilabs Target Kurulum Kılavuzu

KURULUM KILAVUZU MART 2014. Visilabs Target Kurulum Kılavuzu KURULUM KILAVUZU MART 2014 1 İçindekiler 1 Suggest Methodu... 3 1.1 Banner Sıralamasının Ziyaretçilere özel değişmesi... 3 1.2 Site üzerindeki widget aracığıyla gösterilen öneriler... 4 1.2.1 RealTime

Detaylı

Python Web 2.0 Python ve Web 2.0 Son. Python ve Web 2.0. Gökmen GÖKSEL, gokmen@pardus.org.tr. 3 Mayıs 2007

Python Web 2.0 Python ve Web 2.0 Son. Python ve Web 2.0. Gökmen GÖKSEL, gokmen@pardus.org.tr. 3 Mayıs 2007 Python ve Web 2.0 Gökmen GÖKSEL, gokmen@pardus.org.tr 3 Mayıs 2007 Python Programlama Dili Nesneye Dayalı Çoklu Platform Desteği Kolay anlaşılabilir söz dizimi Birçok amaç için kullanılabilir; Konsol uygulamaları

Detaylı

COM API v2.0 Belge sürümü : 2.0.3

COM API v2.0 Belge sürümü : 2.0.3 COM API v2.0 Belge sürümü : 2.0.3 1. Đçindekiler 1. Đçindekiler...2 2. Bu belgenin amacı...3 3. Belge sürümleri...3 4. Sistem gereksinimleri...3 5. Kullanım şekli...4 5.1 Genel...4 5.2 Uyarılar...4 5.3

Detaylı

Cookie s. Elbistan Meslek Yüksek Okulu 2013 2014 Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 17 Ara 2013

Cookie s. Elbistan Meslek Yüksek Okulu 2013 2014 Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 17 Ara 2013 Cookie s Elbistan Meslek Yüksek Okulu 2013 2014 Güz Yarıyılı 17 Ara 2013 Öğr. Gör. Murat KEÇECĠOĞLU Çerezler ziyaretçinin bilgisayarına bilgi bırakmak için kullanılan kodlara çerezler denir. Çerezler ziyaretçinin

Detaylı

Toplu İleti Gönderimi

Toplu İleti Gönderimi Toplu İleti Gönderimi İK ve Bordro Plus ürünlerinde; personelin doğum günü, işe giriş kutlaması gibi özel tarihlerde çalışanlara e-posta ile kutlama mesajları otomatik olarak gönderilebilir. Bu işlem Sicil

Detaylı

İNTERNET PROGRAMCILIĞI DERSİ

İNTERNET PROGRAMCILIĞI DERSİ İNTERNET PROGRAMCILIĞI DERSİ Dersin Modülleri İnternet Programcılığı 1 İnternet Programcılığı 2 İnternet Programcılığı 3 İnternet Programcılığı 4 İnternet Programcılığı 5 Kazandırılan Yeterlikler Programlama

Detaylı

08220 Internet Programcılığı II

08220 Internet Programcılığı II 08220 Internet Programcılığı II Internet Programming II Öğr.Gör. Murat KEÇECİOĞLU Elbistan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Şubat 2015 08220 Internet Programcılığı II Internet Programming

Detaylı

XML API. İçindekiler. Toplu SMS Sistemlerinde Güvenilir Çözüm Ortağınız 1. AMAÇ... 2 2. KULLANIM ŞEKLİ... 2. 2.1 Genel 2 2.2 Hata Kodları.

XML API. İçindekiler. Toplu SMS Sistemlerinde Güvenilir Çözüm Ortağınız 1. AMAÇ... 2 2. KULLANIM ŞEKLİ... 2. 2.1 Genel 2 2.2 Hata Kodları. İçindekiler 1. AMAÇ...... 2 2. KULLANIM ŞEKLİ... 2 2.1 Genel 2 2.2 Hata Kodları. 2 3. SMS GÖNDERİMİ.. 3 3.1 SingleTextSMS... 3 3.2 MultiTextSMS 4 4. ID BAZINDA RAPORLAMA.... 5 [Sayfa 1/5] 1. AMAÇ Bu belge,

Detaylı

WEB TASARIMIN TEMELLERİ

WEB TASARIMIN TEMELLERİ WEB TASARIMIN TEMELLERİ ~ Sunu 1 ~ Öğr. Gör. Mehmet Fatih TAN http://blog.kmu.edu.tr/mftan mftan@kmu.edu.tr Bilgi paylaşıldıkça kıymetlenir.. Kaynak göstermek şartıyla sunu içeriğini çalışmalarınızda kullanabilirsiniz.

Detaylı

MyFaces Özgür JSF Uyarlaması. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com

MyFaces Özgür JSF Uyarlaması. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com MyFaces Özgür JSF Uyarlaması Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Sunum Bilgisi ve Lisans Bu sunum 22 Mayıs 2005 günü Linux Kullanıcıları Derneği adına verilmiştir. Sunum içeriği

Detaylı

Fatura Dinamik Kodlama İyileştirmeleri

Fatura Dinamik Kodlama İyileştirmeleri Fatura Dinamik Kodlama İyileştirmeleri Ürün Grubu Kategori Versiyon Önkoşulu [X] Redcode Enterprise [ ] Redcode Standart [ ] Entegre.NET [X] Yeni Fonksiyon 5.0 Uygulama Netsis paketlerinin tüm modüllerinin

Detaylı

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi Mehmet Karakoç Akdeniz Üniversitesi Bilgisayar Bilimleri Araştırma ve Uygulama Merkezi 28.11.2014 inet-tr'14 : GWT AUFaculty Project 1 İçerik Giriş

Detaylı

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ Amaçlar 1. TCP protokolünün öğrenilmesi 2. Ağ programlamada kullanacağımız sistem komutlarının öğrenilmesi 3. Ağ programlamanın kavranması TCP ile veri alışverişi

Detaylı

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı. 26 Şub. 2013 Öğr. Gör.

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı. 26 Şub. 2013 Öğr. Gör. Ders Tanıtım Sunumu Internet Programming II Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı 26 Şub. 2013 Öğr. Gör. Murat KEÇECİOĞLU PHP Nedir? Platformdan bağımsız (işletim Sistemi) dinamik web sayfaları

Detaylı

www.smsmakinesi.com destek@hermesiletisim.net COM API v.1.1 BELGE SÜRÜMÜ : 1.1

www.smsmakinesi.com destek@hermesiletisim.net COM API v.1.1 BELGE SÜRÜMÜ : 1.1 destek@hermesiletisim.net COM API v.1.1 BELGE SÜRÜMÜ : 1.1 1 1. İÇİNDEKİLER 1. İçindekiler 2 2. Bu Belgenin Amacı 3 3. Kullanım Şekli.3 4. Uyarılar.4 5. Hata Kodları.4 6. Kullanıcı Bilgileri Kontrolü..5

Detaylı

Java EE 5 Teknolojileri Jboss Seam

Java EE 5 Teknolojileri Jboss Seam Java EE 5 Teknolojileri Jboss Seam Hakan Uygun İçerik Kurumsal Uygulama Nedir? Java Teknolojileri Web Uygulaması Java EE Bileşenleri JBoss Seam Yazılım İhtiyaçları Bireysel Kullanıcı Eğitim Eğlence İletişim

Detaylı

Selective Framebusting

Selective Framebusting Selective Framebusting Seçiçi Çerçeveleme Engelleme Sema Arık, TurkcellTeknoloji, sema.arik@turkcellteknoloji.com.tr Bedirhan Urgun, Web Güvenlik Topluluğu, urgunb@hotmail.com Giriş PCI DSS Requirements

Detaylı

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu ASP.NET TEMELLERİ Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu İnternet Nasıl Çalışır? Sunucu istemci modeline göre çalışır. Fiziksel olarak bu sistem genelde isteği yapan

Detaylı

Bölüm 10: PHP ile Veritabanı Uygulamaları

Bölüm 10: PHP ile Veritabanı Uygulamaları Bölüm 10: PHP ile Veritabanı Uygulamaları -231- Öğr.Gör. Serkan DİŞLİTAŞ 10.1. PHP PHP, platformdan bağımsız sunucu taraflı çalışan betik bir web programlama dilidir. PHP programlama dili ile MySQL, MSSQL,

Detaylı

Yaşanmış Tecrübe Paylaşımı Önce Test Et Sonra Kodla XP Pratiği

Yaşanmış Tecrübe Paylaşımı Önce Test Et Sonra Kodla XP Pratiği TBD 21. Ulusal Bilişim Kurultayı Sunumu Yaşanmış Tecrübe Paylaşımı Önce Test Et Sonra Kodla XP Pratiği Hasan ÖZKESER Bimar Bilgi İşlem Hizmetleri Aş. 5 Ekim 2004 ODTÜ Kültür ve Kongre Merkezi, Ankara 2004

Detaylı

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ Versiyon: 1.0.4 URL Adresi http://merchant.mobilepax.com/services/product.aspx Gönderilen XML Yapısı MobilePaxProduct fonksiyonu buton bilgisi oluşturulacak ürünün

Detaylı

Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı

Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı Yasin Hınıslıoğlu 1 Mehmet Serdar Güzel 2 1 Ahmet Yesevi Üniversitesi Yönetim Bilişim Sistemleri Bölümü, Ankara 2 Ankara Üniversitesi Bilgisayar

Detaylı

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar Bilgi Teknolojileri ve Uygulamalarına Giriş Dersin Konusu ve Amaçları: Bu dersin amacı daha önce bilgisayar ve bilgi teknolojileri alanında herhangi bir bilgi ve/veya deneyime sahip olmayan öğrenciye bilgi

Detaylı

Doküman JETSMS XML Mesaj Đşlemleri Yardım Dokümanı Tarih 15.02.2007 Sürüm 1.1.0

Doküman JETSMS XML Mesaj Đşlemleri Yardım Dokümanı Tarih 15.02.2007 Sürüm 1.1.0 HTTP SMS Gönderimi 1. Genel Kullanım Bu fonksiyonu kullanarak; Bir telefon numarasına tek bir mesaj gönderimi Birden fazla telefon numarasına aynı mesaj gönderimi -> tek seferde en fazla 150 telefon numarasına

Detaylı

AJANS İLETİŞİM API XML API v1.0.2. İçindekiler. 1. AMAÇ - Sayfa 2

AJANS İLETİŞİM API XML API v1.0.2. İçindekiler. 1. AMAÇ - Sayfa 2 AJANS İLETİŞİM API XML API v1.0.2 İçindekiler 1. AMAÇ - Sayfa 2 2. KULLANIM ŞEKLİ - Sayfa 2 2.1 Genel - Sayfa 2 2.2 Uyarılar - Sayfa 2 2.3 Hata Kodları - Sayfa 3 3. KULLANICI BİLGİLERİ KONTROLÜ - Sayfa

Detaylı

Güncel İnternet Teknolojileri ve PHP 2

Güncel İnternet Teknolojileri ve PHP 2 Neler var? HTML CSS (Cascading Style Sheets) DOM (Document Object Model) JavaScript jquery kütüphaneleri W3C Standartları HTTP (Hypertext Transfer Protocol) Requests POST GET Headers Çerezler (Cookies)

Detaylı

CELAL BAYAR ÜNİVERSİTESİ KÜTÜPHANE VERİTABANLARINA ÜNİVERSİTE DIŞINDAN ERİŞİM

CELAL BAYAR ÜNİVERSİTESİ KÜTÜPHANE VERİTABANLARINA ÜNİVERSİTE DIŞINDAN ERİŞİM Celal Bayar Üniversitesi kütüphane veritabanlarına üniversite dışından erişebilmek için kullandığınız internet tarayıcısına uygun olarak bazı ayarlar yapmanız gerekmektedir. Aşağıda tanımlanan ayarlar

Detaylı

www.sabanciuniv.edu/kcenter

www.sabanciuniv.edu/kcenter Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı Seminerleri Java ile Web Uygulamaları Geliştirme Ahmet Demirelli SCJP 5.0 - SCWCD 1.4 Ajanda Web uygulaması nedir Basit bir CGI örneği

Detaylı

JavaServerFaces. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu

JavaServerFaces. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu JavaServerFaces Ahmet Demirelli SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı Seminerleri 2008 Hakkımızda SabancıÜniversitesi BT Yüksek

Detaylı

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek ozlem.ozgobek@linux.org.tr

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek ozlem.ozgobek@linux.org.tr Özgür Yazılımlarla Web Programlama Özlem Özgöbek ozlem.ozgobek@linux.org.tr Web Nedir? İnternet dünya çapında birbirine bağlı bilgisayar ağlarından oluşan bir sistemdir. Web ise internette çalışan servislerden

Detaylı

FIRAT ÜNİVERSİTESİ BİLGİSAYAR MÜH.

FIRAT ÜNİVERSİTESİ BİLGİSAYAR MÜH. FIRAT ÜNİVERSİTESİ BİLGİSAYAR MÜH. WSDL-SOAP MURAT TEZGİDER Web Servisi Nedir? web servisi :standart formatları kullanarak programlama dili, işletim sistemi ve platformdan bağımsız olarak bilgiyi paylaşan

Detaylı

MOBILEPAX SOAP PRODUCT API KULLANIM ŞEKLİ

MOBILEPAX SOAP PRODUCT API KULLANIM ŞEKLİ MOBILEPAX SOAP PRODUCT API KULLANIM ŞEKLİ Versiyon: 1.0.4 URL http://merchant.mobilepax.com/services/product.asmx Metot MobilePaxProduct fonksiyonu buton bilgisi oluşturulacak ürünün bilgilerinin Mobilepax

Detaylı

um%20dolor%20sit%20amet&receipents=5301234569, 5301234570&sender=ILETICELL İstekte gönderilen parametrelerin açıklamaları aşağıdaki gibidir:

um%20dolor%20sit%20amet&receipents=5301234569, 5301234570&sender=ILETICELL İstekte gönderilen parametrelerin açıklamaları aşağıdaki gibidir: HTTP GET API SMS Gönderimi İstek yapılacak adres: http://api.ileticell.com/v1/send-sms/get/ Yapılacak olan istek örneği: http://api.ileticell.com/v1/send- sms/get/?username=kullanici_adi&password=kullanici_sifresi&text=lorem%20ips

Detaylı

Aktarımı Çalıştırmak/Geri Almak 146 Alan Seçenekleri 148 Veri Tabanı Şeması 150 Veri Tabanı ile İlgili Bazı Rake Görevleri 162 Modeller 164

Aktarımı Çalıştırmak/Geri Almak 146 Alan Seçenekleri 148 Veri Tabanı Şeması 150 Veri Tabanı ile İlgili Bazı Rake Görevleri 162 Modeller 164 xi Ruby on Rails Nedir? 2 Rails Neden Farklıdır? 2 Başlamadan Önce Bilinmesi Gerekenler 4 İnternet Nasıl Çalışır? 4 İstemci-Web Sunucu İlişkisi 5 HTTP Protokolü 6 URL-Kaynak Konumlandırma Adresleri 7 HTTP

Detaylı

Film Arşiv Sistemi. Yazılım Tasarım Belgesi

Film Arşiv Sistemi. Yazılım Tasarım Belgesi 1. Sürüm Tarihçesi Film Arşiv Sitesi Yazılım Tasarım Belgesi Sürüm Tarih Yazarlar Açıklamalar 1.0 28.12.2010 Rana ALGAN Elif BONCUK Bu belge sistemin tasarım detaylarını içerir. 2. Giriş 2.1 Amaç ve Kapsam

Detaylı

HTTP/HTTPS API v2.0 Belge sürümü : 2.0.0

HTTP/HTTPS API v2.0 Belge sürümü : 2.0.0 HTTP/HTTPS API v2.0 Belge sürümü : 2.0.0 1. Đçindekiler 1. Đçindekiler...2 2. Bu belgenin amacı...3 3. Belge sürümleri...3 4. Sistem gereksinimleri...3 5. Kullanım şekli...4 5.1 Genel...4 5.2 Uyarılar...4

Detaylı

Web Önyüzü Nasıl Olmalı? : İskelet {css} : Görünüm JavaScript() : Etkileşim

Web Önyüzü Nasıl Olmalı? <Markup> : İskelet {css} : Görünüm JavaScript() : Etkileşim Web Önyüzü Nasıl Olmalı? : İskelet {css} : Görünüm JavaScript() : Etkileşim Bu üç öğe olabildiğince esnek bağlı olmalı Kötü Örnek / İyi Örnek Standartlara uygun olmalı! Standartlara uygun

Detaylı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi GENEL DERS BİLGİLERİ Öğretim Elemanı Ofis : MUH 312 : Öğr. Gör. Dr. T.Tugay BİLGİN Ofis Saatleri : Pazartesi:

Detaylı

Servis olarak Altyapı

Servis olarak Altyapı Servis olarak Altyapı Servis olarak Altyapı (Infrastructure as a Servis, IaaS) fiziksel makineler, sanal makineler ve sanal depolama gibi temel kaynaklara erişebilmeyi sağlar. Bu kaynaklardan başka IaaS

Detaylı

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? İÇİNDEKİLER VII İÇİNDEKİLER 1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? 4 Kaynak Kodu 5 2 MERHABA DÜNYA 7 Android Nedir?

Detaylı

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır. Ders İçeriği An introduction to Object-oriented programming with Java Third Edition Update Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır. Nesneye Yönelik Öğr.

Detaylı

AKINSOFT E-Mutabakat. Yardım Dosyası

AKINSOFT E-Mutabakat. Yardım Dosyası AKINSOFT Yardım Dosyası Doküman Versiyon : 1.02.01 Tarih : 22.01.2015 1 WOLVOX 1. E-MUTABAKAT HAKKINDA 1.1. Nedir? Carilerinizle mutabakat sağlamak artık AKINSOFT'la çalışmanın verdiği avantajla tek tuş

Detaylı

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir Compiere Açık kodlu ERP + CRM yazılımı Hüseyin Ergün Önsel Armağan Serkan Demir ERP Nedir? ERP = Kurumsal Kaynak Planlama Organizasyonların farklı fonksiyonlarının ve departmanlarının kullandığı enformasyonu

Detaylı

YZM 3215 İleri Web Programlama

YZM 3215 İleri Web Programlama YZM 3215 İleri Web Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 1 İleri Web Programlamaya Giriş Bu bölümde; Temel

Detaylı

Bimel Ürün Veritabanı Paylaşım Platformu. XML Servisleri

Bimel Ürün Veritabanı Paylaşım Platformu. XML Servisleri Bimel Ürün Veritabanı Paylaşım Platformu XML Servisleri www.bimel.com.tr 10 Ekim 2012 1 Belge Sürümleri Sürüm Tarih Yazar Değişiklik V1.0 14.04.2008 Burak USGURLU burak@bimel.com.tr İlk yayınlanma. V2.0

Detaylı

«BM364» Veritabanı Uygulamaları

«BM364» Veritabanı Uygulamaları HAFTA 8 DB içerisinde CLR Bileşenleri" Yaşar GÖZÜDELİ ygozudeli@verivizyon.com http://blog.verivizyon.com/ygozudeli «BM364» Veritabanı Uygulamaları Konu Akışı SQL Server ve.net CLR SQL Server içerisinde

Detaylı

Java Programlama Giriş

Java Programlama Giriş Java Programlama Giriş 2013-2014 Bahar Dönemi Mehmet Akif Ersoy Üniversitesi Teknik Bilimler Meslek Yüksekokulu Burdur 2014 Muhammer İLKUÇAR 1 Neden Java Programlama Platformdan bağımsızdır

Detaylı

Güvenlik Java ve Web Uygulama Güvenliği

Güvenlik Java ve Web Uygulama Güvenliği Güvenlik Java ve Web Uygulama Güvenliği Melih Sakarya www.melihsakarya.com melih.sakarya@gmail.com www.mergecons.com Olası Açıklar Donanımsal açıklar Sistemsel Açıklar Yazılımsal Açıklar Sosyal Mühendislik

Detaylı

%20dolor%20sit%20amet&receipents=5301234569, 5301234570&sender=PROAKTIF

%20dolor%20sit%20amet&receipents=5301234569, 5301234570&sender=PROAKTIF HTTP GET API SMS Gönderimi İstek yapılacak adres: http://api.idasms.com/v1/send-sms/get/ Yapılacak olan istek örneği: http://api.idasms.com/v1/sendsms/get/?username=kullanici_adi&password=kullanici_sifresi&text=lorem%20ipsum

Detaylı

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 İçindekiler QUERYSTRING KOLEKSIYONU... 3 FORM

Detaylı

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu Turquaz Açık kodlu muhasebe yazılımı http://www.turquaz.com Turquaz Proje Grubu Konu Başlıkları 1. Turquaz Proje Grubu 2. Programın fikri 3. Geliştirme aşaması 4. Programın içeriği 5. Yapılacaklar 6. Dizayn

Detaylı

Programlama Kılavuzu. IPV Serisi IP Santralleri IPV10 IPV20 IPV50

Programlama Kılavuzu. IPV Serisi IP Santralleri IPV10 IPV20 IPV50 Programlama Kılavuzu IPV Serisi IP Santralleri IPV10 IPV20 IPV50 İçindekiler AMAÇ... 3 KARELPORT CİHAZ KAYIT İŞLEMİ... 3 1. Yeni Santral Ekleme... 3 2. Santral Bilgilerinin Girilmesi... 3 3. Lisans Anahtarlarının

Detaylı

Tel : 0(532) 069 0 321 Web : www.kayikcioglugrup.com E-Posta : info@kayikcioglugrup.com. İLETİ PAKETİ API (Entegrason) Dökümanı

Tel : 0(532) 069 0 321 Web : www.kayikcioglugrup.com E-Posta : info@kayikcioglugrup.com. İLETİ PAKETİ API (Entegrason) Dökümanı İLETİ PAKETİ API (Entegrason) Dökümanı HTTP GET API SMS Gönderimi İstek yapılacak adres: http://api.iletipaketi.com/v1/send-sms/get/ Yapılacak olan istek örneği: http://api.iletipaketi.com/v1/sendsms/get/?username=kullanici_adi&password=kullanici_sifresi&text=lorem%20ipsum%20dol

Detaylı

RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan. Inet-TR 12 9 Kasım 2012

RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan. Inet-TR 12 9 Kasım 2012 RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan Inet-TR 12 9 Kasım 2012 İÇERİK 1 STM A.Ş. Savunma Teknolojileri Mühendislik ve Ticaret

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 3

Veri Tabanı Yönetim Sistemleri Bölüm - 3 Veri Tabanı Yönetim Sistemleri Bölüm - 3 İçerik Web Tabanlı Veri Tabanı Sistemleri.! MySQL.! PhpMyAdmin.! Web tabanlı bir veritabanı tasarımı. R. Orçun Madran!2 Web Tabanlı Veritabanı Yönetim Sistemleri

Detaylı

1 JAVASCRIPT NEDİR? 1

1 JAVASCRIPT NEDİR? 1 İÇİNDEKİLER IX İÇİNDEKİLER 1 JAVASCRIPT NEDİR? 1 2 TEST ORTAMINI TANIMAK (FİREFOX VE FİREBUG) 5 Firefox 6 Firebug 8 CSS Sekmesi 10 DOM Sekmesi 11 Net ve Çerezler Sekmeleri 11 Script Sekmesi 11 Konsol Sekmesi

Detaylı

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 İçindekiler Request Nesnesinin Özellikleri

Detaylı

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi Nedir? olmadan Login.aspx Bilgilerinizi giriniz Durum Yönetimi İle Login.aspx Bilgilerinizi giriniz Adınız Adınız Pınar Pınar Soyadınız Soyadınız Onay Durdu Onay Durdu Gönder Gönder ASP.NET - 1 sayfa.aspx

Detaylı

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI ITS-101A INTERNET EĞİTİM SİSTEMİ TCP/IP THE DOMAIN NAME SYSTEM (ALAN ADI SİSTEMİ) İstanbul Ticaret Üniversitesi Bilgisayar Mühendisliği Bölümü Araş. Gör. Can EYÜPOĞLU

Detaylı

MODSECURITY DENETİM KAYITLARINI ANLAMAK. Gökhan Alkan, gokhan@enderunix.org

MODSECURITY DENETİM KAYITLARINI ANLAMAK. Gökhan Alkan, gokhan@enderunix.org MODSECURITY DENETİM KAYITLARINI ANLAMAK Gökhan Alkan, gokhan@enderunix.org 1 İÇİNDEKİLER MODSECURITY DENETİM KAYITLARINI ANLAMAK... 1 1. ModSecurity Nedir?... 3 2. ModSecurity Nasıl Çalışır?... 3 3. ModSecurity

Detaylı

Ipad,Ipone ve Android Mobil Aygıtlar İçin İş Zekası Mobil Uygulaması Kullanıcı Kılavuzu

Ipad,Ipone ve Android Mobil Aygıtlar İçin İş Zekası Mobil Uygulaması Kullanıcı Kılavuzu Ipad,Ipone ve Android Mobil Aygıtlar İçin İş Zekası Mobil Uygulaması Kullanıcı Kılavuzu https://mobiliz.sbm.org.tr/ İçindekiler. Uygulamanın mobil aygıtlara yüklenmesi... 3. Uygulamanın başlatılması ve

Detaylı

ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR

ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR 4.ÜNĐTE Đyi bir DNS in içermesi gereken özellikler nelerdir? ( 5 ) Đsimlendirme imlası açık ve süphesiz olmalıdır; Bir kullanıcı bir isme

Detaylı

ATATÜRK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BIM 205 GÖRSEL PROGRAMLAMA 2014-2015 GÜZ DÖNEMİ ÖDEV-1

ATATÜRK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BIM 205 GÖRSEL PROGRAMLAMA 2014-2015 GÜZ DÖNEMİ ÖDEV-1 ATATÜRK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BIM 205 GÖRSEL PROGRAMLAMA 2014-2015 GÜZ DÖNEMİ ÖDEV-1 (Son Teslim Tarihi: 08.11.2014 17:00 e kadar) Teslim: Arş. Gör. Uğur Güven ADAR. Java da Kullanıcıdan

Detaylı

WEB FORMLARI. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

WEB FORMLARI. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu WEB FORMLARI Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu WEB FORMLARI Web uygulamalarının etkileşimli olabilmesi için, diğer bir ifade ile uygulamanın kullanıcı isteğine

Detaylı

İÇİNDEKİLER. YAZARLAR HAKKINDA... v. RESİMLER LİSTESİ...xv. 1.1.Bulut Bilişim Kavramının Analizi...1 BÖLÜM 1: TEMELLER...1

İÇİNDEKİLER. YAZARLAR HAKKINDA... v. RESİMLER LİSTESİ...xv. 1.1.Bulut Bilişim Kavramının Analizi...1 BÖLÜM 1: TEMELLER...1 vii İÇİNDEKİLER ÖNSÖZ... iii YAZARLAR HAKKINDA... v İÇİNDEKİLER... vii RESİMLER LİSTESİ...xv BÖLÜM 1: TEMELLER...1 1.1.Bulut Bilişim Kavramının Analizi...1 1.1.1.Bulut Alt-Kavramı...1 1.1.2. Bilişim Alt-Kavramı...3

Detaylı

Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu

Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu T.C. SOSYAL GÜVENLİK KURUMU Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu Sürüm 1.1 OCAK 2010 Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu İçindekiler İçindekiler...

Detaylı

ÖZGÜR YAZILIMLAR İLE J2EE

ÖZGÜR YAZILIMLAR İLE J2EE ÖZGÜR YAZILIMLAR İLE J2EE Buğra Çakır bugra@ibrahimcakir.com Seminer İçeriği 1. İki ve üç katmanlı yazılım mimarileri 2. Java ve J2EE platformu 3. Özgür yazılımlar ile J2EE 4. Eclipse, Lomboz ve JBoss

Detaylı

Web Uygulama Güvenliği Kontrol Listesi 2010

Web Uygulama Güvenliği Kontrol Listesi 2010 Web Uygulama Güvenliği Kontrol Listesi 2010 1 www.webguvenligi.org Web uygulama güvenliği kontrol listesi 2010, OWASP-Türkiye ve Web Güvenliği Topluluğu tarafından güvenli web uygulamalarında aktif olması

Detaylı