Web Tabanlı Uygulama Geliştirme Çatıları

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

Download "Web Tabanlı Uygulama Geliştirme Çatıları"

Transkript

1 HACETTEPE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİL447 YAZILIM MÜHENDİSLİĞİ LABORATUVARI ARAŞTIRMA KONUSU TANIMI Web Tabanlı Uygulama Geliştirme Çatıları 2007, Ankara 1

2 HAZIRLAYANLAR Ad Soyad Numara E-Posta Tahir BIÇAKCI Özgür GÖKMEN

3 İçindekiler Giriş... 4 Belge İçeriği Hakkında Genel Bilgi Web Katmanı Framewokleri Struts Spring COCOON AJAX(Asynchronous JavaScript and XML) CACTUS JUNIT LOG4J ANT (Another Nice Tool) JNDI (Java Naming and Directory Interface) JMX (Java Management Extension) JAAS (Java Authentication & Authorization Service) JSF (Java Server Faces) Veri Katmanı Frameworkleri HIBERNATE JDBC (Java Database Connectivity) EJB (Enterprise JavaBeans) JDO (Java Data Objects) ibatis TOPLINK CORBA (Common Object Broker Architecture) DCOM(Distributed Component Object Model) Karşılaştırmalar Hibernate - JDBC JDO - EJB Kaynaklar Struts: ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/struts.pdf Cocoon Ajax Jmx

4 Giriş İnternet tabanlı bir uygulama geliştirilirken birçok işin düzgün ve doğru bir biçimde yapılması zorunluluğu ortaya çıkmaktadır. Çoğu internet tabanlı uygulamalarda bir bağlantıya bir kullanıcının giriş izninin olup olmadığı kontrolü (authentication), bir işi yapmaya yetkisinin olup olmadığı kontrolü (authorization), veri tabanı ile etkileşiminin nasıl olacağı işler standart olarak yapılmaktadır. Bunun gibi birçok işi bizim yapmamız (kodlamamız) hem zordur hem de risklidir. Bu yüzden bu işleri güvenli ve daha basit bir biçimde yapan bir araca ihtiyaç duyulur. İşte bu noktada frameworkler devreye girmektedir. Frameworkler kullanıcıların yapması gereken birçok zorunlu işi kolaylıkla çözer. Bir frameworkü kullanmak için frameworke özgü kurallara uymamız gerekmektedir. Bu kurallar yayımcı firma tarafından dağıtılmaktadır. Belge İçeriği Hakkında Genel Bilgi Bu belgede Struts, Spring, Cocoon, Ajax, Cactus, JUnit, Log4j, Ant, Jndi, Jmx, Jaas, Jsf, Hibernate, Jdbc, Ejb, Jdo, ibatis, TopLink, Corba ve Dcom hakkında genel bilgiler verilmektedir. Sonrasında ise bu frameworklerden bazıları birbirleri ile karşılaştırılmıştır. 4

5 1. Web Katmanı Framewokleri 1.1 Struts Struts model, görünüm(view) ve denetçi(controller) MVC tasarım örüntüsüne dayalı sunucu taraflı bir java uygulamasıdır. Web uygulamalarının sunum katmanını kolayca ayırabilmek, aynı zamanda birim işlem ve veri katmanından soyutlamak için tasarlanmış açık kodlu bir framework tür. Model: Model veri nesnelerinin kullanıcıya sunumundan sorumludur Görünüm: Modelin ekrana sunumunda görev alır. Veri nesnelerinin o anki durumlarını sunar. Denetçi: Kullanıcı girdileri ile etkileşecek kullanıcı arayüzlerinin yollarını tanımlar. Denetçi bileşeni model veya veriyi işleyen bir nesnedir. Struts MVC nin JSP, JSP etiketleri(tags) ve java servletlerinden oluşan kombinasyonun gerçekleştirimidir. Struts daki her görünüm bileşeni struts etiketlerinin kombinasyonlarını barındıran bir JSP ile eşleşir. Denetçi ve Action sınıflarını etkileşimleri şu şekildedir: - İstem gelir. - Denetçi(ActionServlet) istemi ele alıyor ve hangi action olduğuna karar verir. - Action modelle ilgili işlemleri yapar. - Action çalşmasını bitirince, kontrol denetçiye dönüyor ve bir anahtar sağlar.denetçi anahtara bakarak nereye sapması gerektiğine karar verir. - Denetçi istemi dönen anahtarın bağlı olduğu görünüme yönlendirir, görünüm de sonuçları action a gösterir. 5

6 1.2 Spring Spring, son dönemde J2EE uygulaması geliştirme alanında popülerlik kazanan ve yaygın olarak kullanılmaya başlanılan bir uygulama geliştirme çatısıdır (application framework). Uygulama geliştirmeyi ve denetimi zorlaştıran ağır (heavyweight) çözümlere alternatif olarak hafif (lightweight) bir yapı sunarken, aynı zamanda esnek ve modüler bir şekilde bir çok özelliği içerisinde barındırması Spring'e gösterilen ilgide önemli rol oynar. Spring temel olarak, bileşenleri XML yapılandırma kütükleri aracılığıyla bütünleştirmeye dayalı bir yapı sunar. Bu yaklaşım esas olarak Denetim Çevrimi (Inversion of Control), diğer bir adıyla Bağımlılık İletimi (Dependency Injection), tasarım örüntüsünü kullanır. Buna göre, bileşenler arasındaki bağımlılıklar bileşenlerin kendileri yerine Spring tarafından ele alınır. Spring bileşenleri bir araya getirmek ve biçimlendirmek için Java çekirdeklerini (JavaBean) kullanır. Sınıfları kodlanan bu çekirdeklere dair isimlendirmelerin yapılması, gerekli ilk değer atamaları ve diğer çekirdeklerle aralarındaki bağımlılıkların tanımlanması XML yapılandırma kütüklerinin içerisinde yapılır. Spring, bu kütükleri okur ve buradaki tanımları kullanarak çekirdek olgularını gerekli yapılandırmaları gerçekleştirerek oluşturur. Bu işleyiş sayesinde uygulamadaki bileşenlerin yapılandırılması ve kullanımı kodun içine girmeye gerek kalmadan, yapılandırma kütükleri aracılığıyla son derece esnek ve kolay bir biçimde gerçekleştirilir. 6

7 Spring frameworkü küçük frameworklerin bir birikimi ya da frameworkler içinde frameworkler olarak düşünülebilirler. Bu iç frameworklerin birçoğu bağımsız çalışabilir olarak çalışabilirken birlikte kullanıldığında daha iyi sonuç veren frameworklerdir. Bu frameworkler karmaşık işleri bloklara ayırmak için bölümlendirilmişlerdir. Bu bölümler; Inversion of Control container: uygulama bileşenlerinin düzenlenmesi ve java nesnelerinin yaşam döngülerinin yönetiminden sorumlu. Aspect-oriented prgagramming framework: java nın nesne tabanlı programlaması ile içerim yapılamayan işlevlerle çalışır. Data Access framework java platformunda JDBC ve nesne ilişkisel eşleme araçlarını kullanarak ilişkisel veri tabanı yönetim sistemi ile çalışır. Transection management framework: Model-view-controler framework: yayılmayı ve kişiselleştirmeyi sağlamada bağlamayı sağlayan http ve servlet tabanlı framework. Remote Access Framework Autehtication and Authorization framework Remote Management framework Messaging framework Testing framework 7

8 1.3 COCOON Cocoon; XSLT (XML Stylesheet Language Transformation) dönüşümlerini kullanarak XML içeriğinin devingen yayınını sağlayan bir java sunucu yapısıdır. Cocoon içeriğini tanımlamak için XML i bu içeriği çeşitli biçimlere dönüştürmek için uygulamalar geliştirebileceğimiz bir platform sağlar. Cocoon, ağa içerik yayınlamada pipeline anlayışını kullanır. Geniş bir bileşen çeşitliliği sunar ve bu bileşenlerin ayarlanması ile, fazladan bir geliştirim süresi harcanmadan karmaşık işlemlerin yapılmasını sağlar. Örneğin yalnızca XML ve XSLT kullanarak cocoon devingen olarak yaratılan sonuçları sunabildiği gibi durağan kütüklerin yayınlanmasını da sağlayabilir. Basit ve çok kademeli XSLT dönüşümleri yapar. Parametrelerin devingen olarak XSLT dönüşümlerine geçirilmesini sağlar. XML, HTML, PNG, JPEG, ve PDF gibi pek çok türde çıktı oluşturabilir. Cocoon sayesinde olabilecek en az karmaşıklıkla devingen internet sitesi yaratmak mümkündür. 8

9 1.4 AJAX(Asynchronous JavaScript and XML) Ajax, sunucuda çalışacak betiğin sayfa yenilenmeden javascriptle tetiklenmesinden ibarettir. AJAX, sunucuda çalışan bir kodun çıktılarının postback (sayfanın yeni verilerle yeniden yüklenmesi) olmadan istemciye ulaştırılmasıdır. Ajax, terimolojik olarak Asynchronous Javascript and XML; yani Javascript ve Xml'in eş zamanlı olmayan hareketlerle icra ettiği faaliyete verilen isimdir. 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. 9

10 1.5 CACTUS Cactus, JUnit tabanlı bir ünite testi sistemidir. Apache Group tarafından, web uygulamalarında ünite testi amaçlı kullanılır. JSPTestCase, ServletTestCase, FilterTestCase gibi alt parçaları vardır. 1.6 JUNIT JUNIT yeniden tekrarlanabilen testler yazmak için kullanılan bir framework tür. Java programlarının özel alanlarının açıkça test edilmesi için kolay bir yol sunar. Genişleyebilirdir ve bir programın bir çok birimini test etmek için görevlendirilebileceği gibi tek bir biriminin testi için de görevlendirilebilir. JUnit önce test etmeyi ve sonra kodlamayı destekler. Bu sayede programın belirli bir birimi için test verisi hazırlanabilir ve bu birim testi geçene kadar kodlama yapılabilir. 10

11 1.7 LOG4J Log4j, Java için geliştirilmiş en popüler günlük tutma paketidir. Log4j açık kaynak projesi kapsamında geliştirilmiştir. Uygulama geliştiricilerine, günlük (log) deyimlerini istedikleri boyutlarda, istedikleri biçimlerde çıktı olarak alma imkanı sağlar. Harici yapılandırma dosyaları aracılığıyla çalışma zamanında tamamen yapılandırılabilir. Her şeyden öte, Log4j kendi kendine öğrenebilir. Log4J, hata ve bilgilendirme mesajlarımızı yaratmamızı sağlayan API'lar içeriyor. Bu ara yüzleri mesaj gereken her yerden çağırabiliriz. Önemli hatalar için error(), bilgilendirme için debug(), ve uyarı mesajları için warn() kullanabiliriz. 1.8 ANT (Another Nice Tool) Ant; Apache Yazılım tarafından geliştirilmiş, açık kaynak java tabanlı bir yazılım geliştirme aracıdır. Ant kısaltmasının açılımı Another Nice Tool olarak bilinir. Tomcat, JDOM gibi açık kaynak ürünlerin geliştirilmesinde kullanılmıştır. Ant build kütüğü XML formatındadır. Build kütüğününün üzerinde işlem yapabilmek için, basit bir metin editörü yeterli olacaktır. Harici bir XML parser a gerek yoktur. Zaten Ant ın kurulumu sırasında JAXP Uyumlu XML parser yüklenir. 11

12 1.9 JNDI (Java Naming and Directory Interface) Java isimlendirme ve dizinleme servisi (Java Naming and Directory Interface) Java dilinde yazılmış uygulamalara isimlendirme ve dizinleme işlevselliği katan bir uygulama programlama ara yüzüdür(application Programming Interface). Herhangi bir isimlendirme ve dizinleme servisinden bağımsız olarak tasarlanmıştır. Böylelikle birçok dizine yeni, görünen ya da çoktan kurulmuş- ortak bir yolla erişim sağlanır. JNDI mimarisi bir API ve bir servis sağlayıcı ara yüzünden (service provider interface SPI) oluşur. Java uygulamaları JNDI API sini birçok isimlendirme ve dizinleme servisine aynı yolla ulaşmak için kullanırlar. SPI, birçok isimlendirme ve dizinleme servisini etkinleştirip onların şeffaf olarak takılıp çıkarılmasını ve JNDI API sini kullanan Java uygulamalarının bu servislere erişmesini sağlar. 12

13 1.10 JMX (Java Management Extension) JMX parametrelere ulaşılması ve konfigürasyonlarının değiştirilmesi, uygulamaların ve bileşenlerinin yüklenmesi ve ilk değer verilmesi ve servislerin izlenmesini sağlar. JMX izleme ara yüzü genel izleme ara yüzlerini de kullanır fakat güvenlik ve daha iyi uyum için Java uygulamaları önerilir. Genelde uygulamalar sürekli bir gelişim ve evrim göstermektedir. Bu da uygulamaların izlenmesini ve yönetimini daha da zorlaştırmaktadır. JMX sezgisel, uymlu ve esnek bir izleme ve yönetme arayüzü sağlayarak bu problemi kolaylaştırır. Böylelikle EJB, servlet ve java sınıfları dahil tüm java öğeleri izlenebilmektedir. Asıl amaç kaynakları yönetmektir. Yönetilebilir kaynaklar basit java sınıflarından ağ kaynaklarına kadar olabilir. MBean ler kaynakları yönetir. MBean ler JMX in kalbidir. MBean ler kaynakları JMX arayüzüne bildiren java sınıflarıdır. JMX Instrumentation Layer MBean leri ve yönetimli kaynakarı kapsar.. Bir sonraki katman Agent Katmanıdır(Layer). Bu katman JRun da MBean sunucudur. Bu katman servislerin ilk değerini verir ve yönetim arayüzüne bildirir. Bu servisler jrun-server-directory/server-inf/jrun.xml kütüğü kullanılarak otomatik olarak da ilklendirilebilirler. Bu kütük JRun ın JavaMail ve Java Messaging Service gibi kendi servislerini ve yeni eklenen servislerin yerini içerir. MBean ler ilklenmek için jrun.xml i kullanmazlar. Son katman ise Dağıtık Servis Katmanı(Distributed Service Layer). Bu katman servisleri bağlayıcılara ve birimlere bildirir. Bağlayıcılar veya birimler herhangi bir protokolde olabilir. Bu katman servislere uzatan erişim sağlar. 13

14 1.11 JAAS (Java Authentication & Authorization Service) JAAS (Java Authentication & Authorization Service), Java Kimlik Denetimi ve Yetkilendirme Servisi istemci ve sunucu tarafındaki Java uygulamalarımızın güvenli çalışmasını sağlamak için çözümler sunan bir uygulama geliştirme ara yüzüdür. Eski Java güvenlik yapılarında kullanılan yöntemlerde sistem kullanıcıyı taşınabilir koddan korumak üzerine odaklanmıştır. Diğer bir deyişle güvenlik yapısının temeli kodun kaynağına yani kim tarafından yazıldığı bilgisi üzerine kuruludur. Uygulamanın çalışma zamanında hangi kodun çalıştırıldığı, bu koda verilen izinler kontrol edilir; yani kullanıcı tabanlı erişim hakkı kontrolü hiçbir zaman yapılmaz. Güvenlik Politikası Dosyası(Security Policy File) adı verilen, özel bir sözdizimine sahip dosya içerisinde uygulamadaki koda özel erişim izinleri verilir. Böylece koruma altındaki bir sistem kaynağına erişim talebi geldiğinde kodun karakteristiğine(kodun nereden geldiğine, varsa dijital imzasına ve sahibine) bakılır. Politika dosyası üzerinden verilmiş haklar ile erişimi gerçekleştirmek için gerekli olan haklar karşılaştırılır. İlki ikincisini de kapsıyorsa erişime izin verilir; kapsamıyorsa istem reddedilir. Kod tabanlı denetimin yapıldığı bu sistemde kodun kime ait olduğu dışında kim tarafından çalıştırıldığı ise tamamen göz ardı edilir. Bununla birlikte Java nın çok kullanıcılı ortamlarda kullanımı oldukça yaygındır. Örneğin kurumsal bir uygulama birçok kullanıcı ile aynı anda etkileşim içindedir ve bu kullanıcılara kimliklerine göre farklı ayrıcalıklar vermelidir. 14

15 1.12 JSF (Java Server Faces) Java Server Faces güçlü ve dinamik web uygulamaları geliştirmeyi kolaylaştıran web tabanlı ara yüzler hazırlamak için bir frameworktür. JSF swing gibi bir takim standart bileşenler(butonlar, linkler, secim kutuları gibi) ya da özelleştirilmiş bileşenler oluşturmak için model sunmasının yanında istemci taraflı olayların (event) islenmesi için yöntemler sunar ve ayrıca araç(tool) kullanma desteği vardır. Java için birçok web ara yüz frameworkleri bulunmasına karşın JavaServer Faces birçok sebepten dolayı öne çıkmaktadır. JSF java community standardıdır. JavaBean bileşenleri paradigmasının, web arayüz tasarımında kullanılmasına olanak verir. JSF, piyasadaki birçok frameworkün iyi yönleri alınarak tasarlanmıştır. JSF kullanarak web uygulamaları geliştirmek swing uygulamaları geliştirmeye benzer. Aslında JSF yi Swing ile Struts ın birleşimi olarak düşünebiliriz. Ancak JSF bu ikisinin yerine geçecek bir şey olarak algılanmamalıdır. JSF ikisi ile de birlikte çalışabilecek şekilde tasarlanmıştır. 15

16 1.13 Karşılaştırmalar Spring - Struts Spring, kontrol kesimleri(controllers), JavaBean modelleri ve görünüşler (views) arasında açık bir ayrım sağlar. Spring MVC çok esnektir. Struts daki somut Action ve Form kalıtımlarının yerine Spring ara yüzleri temel alır. Bunun dışında Spring in bütün parçaları ara yüzlerdeki eklentiler(plugin) tarafından düzenlenebilir. Spring görüntü bilinmezdir. Yani JSP kullanmak istemediğimiz zaman buna zorunlu değiliz. Velocity, XSLT veya başka bir görüntüleme teknolojisi kullanarak bunu Spring le kolayca bütünleştirebiliriz. Spring kontrol kesimleri diğer nesneler gibi IoC ile düzenlenebilir. Bu test etmeyi kolaylaştırır. Yani Spring in test edilebilirliği daha kolaydır JUnit - Cactus Cactus ile JUnit arasındaki en belirgin fark JUnit aynı Java sanal makinesinde çalışırken Cactus un testleri bir java sanal makinesinde çalışıp sonuçlar uygulama sunucusunun Java sanal makinesine çalıştırılmak üzere gönderilir. Cactus un son derece akıllı bir gönderme aracı vardır. Öyle ki gereken bilgiler paketlenir. Böylelikle server tarafı testi bulur ve çalıştırır. 16

17 2 Veri Katmanı Frameworkleri 2.1 HIBERNATE Java için geliştirilmiş olan (NHibernate adında bir de.net versiyonu vardır) nesne/ilişki eşleme işini yapan, ücretsiz, açık kaynak (LGPL lisansına sahip) bir yazılımdır. Nesne tabanlı alan modelini geleneksel ilişkisel veritabanına çevirmeye yaramaktadır. Hibernate verilerin saklanması, güncellenmesi, silinmesi, vb. işleri nesne tabanlı modele göre kolaylaştırmak için kullanılmaktadır. Kalıcı sınıfları oluşturup (basit veri sınıfları) bu sınıfları XML kullanılarak eşlenmiş veritabanı tablolarına ve sahalarına kaydetmek için kullanılır. 17

18 2.2 JDBC (Java Database Connectivity) JDBC ( Java Database Connectivity ), ilişkisel veritabanı datalarına Java kodundan ulaşmamızı sağlayan bir API'dir.( Application Programming Interface ). Bu API, java.sql paketi içinde bulunan ve veritabanı ile iletişim kurmamızı sağlayan bir takım sınıflarla gelir. JDBC sürücüsü ( driver ), bizim SQL dilini kullanarak veritabanı ile konuşmamızı sağlar. Herhangi bir veritabanı sistemine ulaşmak için o veritabanının JDBC sürücüsünü kullanmamız gerekir. 18

19 2.3 EJB (Enterprise JavaBeans) Kurumsal Java Çekirdekleri (Enterprise JavaBean, EJB) Mimarisi, bileşen tabanlı ve dağıtımlı kurumsal uygulamaların geliştirilmesi ve yaygınlaştırılmasına yönelik bir J2EE mimarisidir. EJB genel olarak güçlü ve birçok hizmete olanak sağlayan bir mimaridir. Bu mimari kullanılarak geliştirilmiş yazılımlar; ölçeklenebilir, birim işlem yeteneğine sahip, güvenli ve dayanıklı olup kurumların önemli gereksinimlerini karşılayacak nitelikte, çok kullanıcılı uygulamalardır. EJB ile oluşturulan uygulamalar, bir kez yazıldıktan sonra EJB belirtimlerine uygun herhangi bir sunucu ile kullanılabilir. EJB, ilk olarak CORBA mimarisinin karmaşıklıklarına bir çözüm sunma vaadi ile ortaya çıkar. Bu yeni mimari, birçok ana düzenleme ve şişirilmiş temel özellikleri ile kısa zamanda J2EE nin kalbi olur. EJB mimarisi ilk anda birçok kullanıcı tarafından uygulama geliştiriminde tercih edilir. Ancak EJB mimarisinin bu güçlü ve birçok özelliği içinde barındıran yapısı ile uygulama geliştiren kişiler açısından, geliştirdikleri projeler için bekledikleri etkiyi vermez. Çünkü EJB ile uygulama geliştirmek beklenilen kadar kolay olmakla beraber tüm EJB belirtimleri daha da karmaşık bir yapı sunmaktadır. 19

20 2.4 JDO (Java Data Objects) JDO nesnelerin saklanmasını sağlayan bir sistemdir. JDO nun yaptığı Java nesneleri ile veri tabanı arasında aracılık yapmaktır. Programcının veritabanı işleriyle uğraşmadan (örneğin sql kodu yazmadan) nesneleri saklamasına, erişmesine ve sorgulamasına olanak tanır. 20

21 2.5 ibatis ibatis için, JAVA ve.net için veritabanı işlerini kolaylaştırmak/düzene sokmak için ortaya çıkarılmış bir "data mapper framework" diyebiliriz. ibatis nesneleri SQL ifadelerine haritalamada(map) kolaylık sağlayan basit ama tam bir çatıdır. ibatis i geliştiren ekibin temel felsefesi: veriye erişimde %80 işlevselliği %20 kod kullanarak sağlamaktır. Haritalayıcı(Mapper) denince anlaşılan anlamlardan biri, iki bağımsız nesne arasındaki iletişimi sağlayan nesne olarak bilinir. Veri Haritalayıcı (A Data Mapper) ise verileri nesneler ve veritabanı arasında taşıyan ve bunu yaparken aradaki bağımsızlığı sağlayıp, koruyan bir haritalayıcı katmandır. Siz veritabanı ve nesneleri sağlarken; ibatis bu ikisi arasındaki haritalama katmanı görevini yerine getirir. 21

22 2.6 TOPLINK Oracle9iAS TopLink; Java uygulamalarının ilişkili veritabanlarına ve ilişkisiz veri kaynaklarına erişmelerini sağlayan bir framework tür. TopLink; nesneleri ve EJB leri (Enterprise Java Beans) kullanıcının nesne düzeyinde çalışmasına izin verecek şekilde veritabanına kaydeder. TopLink sayesinde; Standart bir framework kullanılmasıyla birlikte; geliştirim süreci ve maliyet azalır. Daha önceden kanıtlanmış performans daha yüksek performanslı uygulamalar geliştirilebilir. Herhangi bir Java ortamında veya Java uygulama sunucusunda çalışabilen bir Java ürünü kullanılarak sistem bağımsızlığı %100 e çıkarılır. Toplink in nesne düzeyinde sağladığı API ler ve sorgular kullanılarak veri bağımsızlığı sağlanır. Bir JDBC sürücüsü üzerinden herhangi bir veritabanına erişilebileceği gibi; TopLink SDK üzerinden ilişkisel olmayan veri kaynaklarına da erişilebilir. EJB, XML, CORBA, JTS, RMI gibi teknolojilerle bütünleştirilebilir. 22

23 2.7 CORBA (Common Object Broker Architecture) CORBA Ortak Nesne İstem Aracısı Mimarisi nin İngilizcesinin kısaltmasıdır. CORBA Nesne Yönetim Grubu'nun (OMG) Nesne Yönetim Mimarisi'nin (OMA) ana bileşenlerinden birisidir. Nesne Yönetim Mimarisi Nesne Modeli ve Referans Modelinden oluşur. Nesne Modeli heterojen bir ortamda dağılmış nesnelerin nasıl tanımlanabileceğini belirler. Referans Modeli ise nesneler arası etkileşimleri tanımlar. Dolayısıyla Nesne Yönetim Mimarisi heterojen ortamlara dağılmış beraber işleyebilen dağıtık nesnelerin geliştirilmesine ve konuşlandırılmasına yardımcı olur. CORBA sayesinde programcılar kullandıkları nesnelerin hangi dilde yazıldığına, dağıtık olup olmadıklarına, işletim sistemlerine ve iletişim protokollerine bakmaksızın programları geliştirebilirler. Dağıtık nesnelerin iki yönü vardır. Bunlar sunucu ve istemci yönüdür. EN basit haliyle bu ilişki şöyle gerçekleşir: Sunucu uzak bir ara yüz (remote interface) sağlar ve istemci de sağlanan uzak ara yüzü çağırır. Bu ilişki RMI ve CORBA gibi birçok dağıtık nesne standartlarında benimsenen bir yaklaşımdır. Bu bağlamda, sunucu ve istemci terimlerinden kastedilen uygulama düzeyindeki etkileşimlerden ziyade nesne düzeyindeki etkileşimlerdir. Yani bir uygulama, herhangi bir nesne için sunucu olabilirken başka bir nesnenin istemcisi olabilir. İstemci tarafında, uygulama uzak nesnenin bir referansını içerir. Bu nesne referansı, uzaktan çağrılan nesne metodunun bir vekil metoduna sahiptir. Sunucu tarafından ise, ORB (Object Request Broker), uzaktan çağrıyı, yerel nesne üzerinde bir metot çağrısıymış gibi yapmak için bir kod gövdesi (çatı) kullanır. Bu gövde, mevcut çağrıyı ve uygulamaya özel formattaki parametreleri çevirir ve metodu çağırır. Yordam dönüsünde, gövde, sonuçları ve hataları çevirerek çağrının geldiği istemciye tekrar, ORB yi kullanarak gönderir. ORB ler arasında iletişim, paylaşılan ortak bir protokol üzerinden (IIOP-Internet Inter ORB Protocol) üzerinden sağlanır. IIOP, standart TCP/IP internet protokolü temel alınarak oluşturulmuş, ORB ler arasında bilgi aktarımını sağlamak için oluşturulmuş bir protokoldür. Tıpkı CORBA ve IDL gibi IIOP de OMG tarafından tanımlanmış bir standarttır. 23

24 2.8 DCOM(Distributed Component Object Model) DCOM dağıtımlı nesne yapısını desteklemek üzere Microsoft tarafından geliştirilmiştir. DCOM çözümünde nesnelerin yerel ya da uzak makinelerde konumlarının saptanması görevi bir hizmet denetim yöneticisi olan SCM(Service Control Manager) tarafından yerine getirilmektedir. Web uygulamalarında, web sayfası içindeki Yerel nesne ile birlikte istemciye aktarıldığı sırada gerekli vekil(proxy) nesneleri de birlikte yüklenir. Bundan sonra vekil nesnesi, gelen yerel nesneler tarafından kullanılan uzak nesnelerin yüklü bulunduğu uygulama sunucusuna kendisini tanıtarak hizmet almak üzere kayıt yaptırır. DCOM un en büyük sakıncası yalnızca Windows tabanlı sistemler tarafından desteklenmesidir. Her ne kadar DCOM açık bir belirtim olarak herkesin kullanımına açık olsa bile uygulamada Microsoft dışında bu standardı benimseyen olmamıştır. Ancak Windows tabanlı sistemlerin yaygınlığı göz önüne alındığında, bu durum özellikle intranet uygulamaları için bir sorun olarak değerlendirilmeyebilir. 24

25 2.9 Karşılaştırmalar Hibernate - JDBC Aynı anda hem yazılımla hem nesne tabanlı yazılımla, hem de ilişkisel veritabanı ile çalışmak JDBC de zordur. Sebebi ise verinin nesnede nasıl sunulduğu ile ilişkisel veri modeli arasındaki uyumsuzluktur. Bu yüzden JDBC de kod geliştiren kişilerin nesne modelinin veri sunumları ile ilişkisel veri modeli arasında bir tanımlama yazması gerekir. Hibernate bu sorunu XML kütükleri ile çözer. Böylece bu işlev için kod yazmaya gerek kalmaz. Hibernate de Java nesneleri ile veri tabloları arasındaki tersinir eşleşme (Transparent Persistance) vardır. JDBC de ise yoktur. JDBC sadece temel sorgu dilini(sql) destekler. Bu yüzden kod geliştiricilerin en iyi sorguyu yazmaları gerekir. Hibernate ise kendi sorgu dilini sağlar. Veri tabanında herhangi bir şey değiştiğinde(kolon adının değişmesi gibi) JDBC de ilişkili tüm yapıların değişmesi gerekir. Hibernate de ise bu değişiklik sadece XML kütüğünde olur. Hibernate dezavantajları; Hibernate i öğrenmek daha zordur. İki değişik tablo ile bir nesne ilişkilendirilemez. İnternette Hibernate için yeterli destek yok. Hibernate JDBC nin desteklediği bazı sorguları desteklemez. Örneğin aynı tabloya aynı sorguda çoklu veri eklenemez. Bunun için kodu geliştiren kişinin her bir nesne için farklı sorgu yazması gerekir JDO - EJB EJB bir nesnelerin saklanması, ağda erişilmesi, güvenliği gibi konularda servisler sağlar. JDO (Java Data Objects) ise sadece nesnelerin saklanmasını sağlayan bir sistemdir. JDO'nun yaptığı Java Nesneleriyle veritabanı arasında aracılık yapmaktır. Veritabanın SQL de olabilir, XML de olabilir, Object Database de olabilir. JDO, programcının veritabanı işleriyle uğraşmadan nesneleri saklamasına, erişmesine ve sorgulamasına olanak tanır. EJB de bu işlevleri sağlayan bir standarttır. Ancak EJB çok daha geniş imkanlar sunar. EJB ve JDO arasındaki karşılaştırmaya eklenebilecek ilginç bir not da, EJB'nin JDO kullanarak uygulanabilmesidir. Yani EJB standardına uyan bir sistem, o standardı uygulama için arka planda JDO kullanabilir. EJB server üreticileri CMP için arkaplanda JDO'yu kullanabildiği gibi, programcılar da BMP için JDO'yu kullanabilirler. 25

26 Kaynaklar Struts: ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/struts.pdf Spring: ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/springmvc_ pdf Cocoon ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/cocoon.pdf Ajax ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/ajax_arastirma_ pdf cactus ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/cactus.pdf hibernate ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/hibernate.pdf ejb ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/ejb3.pdf toplink ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/toplinktutorial.pdf ant ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/ant.pdf corba ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/corba_ pdf dcom Web Tabanlı Üç Katmanlı Yazılım Mimarileri (Cesur BARANSEL-Alim MUMCUOĞLU) Jmx ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/jmx.pdf jaas ftp://ftp.cs.hacettepe.edu.tr/pub/dersler/bil4xx/bil447_yml/belgeler/jaas_ pdf 26

Ö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ı

Ü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ı

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ı

Swing ve JDBC ile Database Erişimi

Swing ve JDBC ile Database Erişimi Swing ve JDBC ile Database Erişimi JDBC API, tablolanmış herhangi bir tür veriye, özellikle İlişkisel Veritabanı, erişim sağlayan bir Java API sidir. JDBC, aşağıda verilen üç etkinliğin gerçekleştirilebileceği

Detaylı

Java EE web uygulamaları geliştirmek için kullanılan açık kaynak web uygulama framework üdür.

Java EE web uygulamaları geliştirmek için kullanılan açık kaynak web uygulama framework üdür. 1 Apache Struts Java EE web uygulamaları geliştirmek için kullanılan açık kaynak web uygulama framework üdür. Kullanıcılara MVC mimarisini benimsetmek için Java Servlet API sini kullanıyor. Model-View-Controller

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ı

Đ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ı

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Android e Giriş. Öğr.Gör. Utku SOBUTAY Android e Giriş Öğr.Gör. Utku SOBUTAY Android İşletim Sistemi Hakkında 2 Google tarafından geliştirilmiştir. Dünyada en çok kullanılan mobil işletim sistemidir. 2018 itibariyle Dünyada Android; %78.65,

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ı

Öğ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ı

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ı

ORM & Hibernate. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu

ORM & Hibernate. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu ORM & Hibernate 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ı

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması Hakan ALBAĞ Tahsin Barış AKAN Bitirme Projesi 05.06.2006 Giriş Ticari yazılımlarda ortak ihtiyaçlar Birden

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ı

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ı

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış Kepware Veritabanı Ürünleri Teknolojiye Genel Bir Bakış Gündem Veritabanı Client API teknolojisinin gözden geçirilmesi ODBC istemci sürücüsü- bir KEPServerEX Plug-In Haberleşme Sürücüsüdür. DataLogger-

Detaylı

Spring Ekosisteminde Kurumsal Yazılım Geliştirme. Kenan Sevindik Harezmi Bilişim Çözümleri A.Ş.

Spring Ekosisteminde Kurumsal Yazılım Geliştirme. Kenan Sevindik Harezmi Bilişim Çözümleri A.Ş. Ekosisteminde Kurumsal Yazılım Geliştirme Kenan Sevindik Harezmi Bilişim Çözümleri A.Ş. Hakkımızda Harezmi Bilişim Çözümleri 2011 yılında kuruldu Uzmanlık alanlarımız Kurumsal uygulama geliştirme Java

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ı

Bilgi Servisleri (IS)

Bilgi Servisleri (IS) Bilgi Servisleri (IS) GRID Kullanıcı Eğitimi Boğaziçi Üniversitesi 2007, İstanbul Emrah AKKOYUN Konu Başlığı Neden ihtiyaç duyulur? Kullanıcılar kimlerdir? Bilgi Servisi türleri MDS ve BDII LDAP Bilgi

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ı

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ı

Spring Giriş Eğitimi

Spring Giriş Eğitimi Spring Giriş Eğitimi Bu eğitimde Spring ın hangi problemlere karşı etkili olduğundan bahsedeceğim. Ayrıca çekirdek Spring teknolojisinin nasıl işlediği; Dependency Injection - DI ve Inversion of Contol

Detaylı

Spring Framework Eğitimi

Spring Framework Eğitimi Hazırlayan: Barış Dere @BarisDere baris.dere@gmail.com Spring Framework Eğitimi Ders 1: Genel bir bakış Http://www.youtube.com/barisdere Ajanda Eğitim konuları Spring Framework nedir? Inversion Of Control

Detaylı

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ TDİ111 TÜRKDİLİ 1 1. Dil, diller ve Türk dili 2. Dil bilgisi, sözcük, cümle 3. Kelime Türleri 4. Anlatımın

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ı

Asp.Net Veritabanı İşlemleri

Asp.Net Veritabanı İşlemleri Asp.Net Veritabanı İşlemleri Asp.Net Veritabanı İşlemleri Birçok uygulamada bilgiler geçici olarak tutulur ve oturum sonlandırıldığında bu bilgiler bellekten silinir. Ancak etkileşimli web sitelerinde

Detaylı

Veritabanı. Ders 2 VERİTABANI

Veritabanı. Ders 2 VERİTABANI Veritabanı Veritabanı Nedir? Birbiri ile ilişkili verilerin bir arada uzun süreli bulundurulmasıdır. Veritabanı bazen Veritabanı Yönetim sistemi veya Veritabanı Sistemi yerine de kullanılır. Gerçek dünyanın

Detaylı

Java ve Linux. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006

Java ve Linux. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006 Java ve Linux Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006 Sunum Planı Java Çalışma Ortamı POSIX uyumu ve Linux Java Toplum Süreci (JCP) Açık kaynak kodlu

Detaylı

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır.

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır. Yazılım Mimarisi 1.Yazılım Mimarisi Nedir? Yazılım mimarisi geliştirilen uygumaların maliyetlerinin azaltılmasında önemli bir yer tutar. Örneğin MVC modeli kullanarak bir uygulama geliştiriyoruz ve arayüz

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ı

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ı

VERİ TABANI UYGULAMALARI

VERİ TABANI UYGULAMALARI VERİ TABANI UYGULAMALARI VERİ TABANI NEDİR? Bir konuyla ilgili çok sayıda verinin tutulmasına, depolanmasına ve belli bir mantık içerisinde gruplara ayrılmasına veri tabanı denir. Veri tabanı programları;

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA IV Elbistan Meslek Yüksek Okulu 2016 2017 Güz Yarıyılı Open System Interconnection (OSI) OSI modeli sıradüzensel 7 katmandan oluşur. OSI modeli hala geliştirilmekte olmasına rağmen satıcılar ve standart

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ı

Veri Tabanı-I 1.Hafta

Veri Tabanı-I 1.Hafta Veri Tabanı-I 1.Hafta 2010-2011 Bahar Dönemi Mehmet Akif Ersoy Üniversitesi Meslek Yüksekokulu Burdur 2011 Muhammer İLKUÇAR 1 Veri ve Veri Tabanı Nedir? Veri Bir anlamı olan ve kaydedilebilen

Detaylı

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların bilgilerini saklamalarına, program yüklemelerine izin

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ı

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ı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU Elbistan Meslek Yüksek Okulu 2015 2016 Güz Yarıyılı 22-23 EKi. 2015 Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU OSI modeli sıradüzensel 7 katmandan oluşur. OSI modeli hala geliştirilmekte olmasına rağmen

Detaylı

PAZARTESİ SALI 2015-2016 Ders Programı 1. Öğretim 09.00-09.50 10.00-10.50 11.00-11.50 12.00-12.50 HRT4291 WEB TABANLI CBS GR:11 Ü.GÜMÜŞAY EZ-121 ; D1-129 HRT4291 WEB TABANLI CBS GR:22 Ü.GÜMÜŞAY EZ-121

Detaylı

İnternet Programcılığı

İnternet Programcılığı 1 PHP le Ver tabanı İşlemler Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

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ı

Rahman USTA Editör Altuğ B. ALTINTAŞ Papatya Yayıncılık Eğitim

Rahman USTA Editör Altuğ B. ALTINTAŞ Papatya Yayıncılık Eğitim JAVA Mimarisiyle Kurumsal Çözümler Kurumsal JAVA Rahman USTA Editör Altuğ B. ALTINTAŞ Papatya Yayıncılık Eğitim İstanbul, Ankara, İzmir, Adana PAPATYA YAYINCILIK EĞİTİM Ekim 2012 Bilgisayar Sis. San. ve

Detaylı

Veritabanı Uygulamaları Tasarımı

Veritabanı Uygulamaları Tasarımı Veritabanı Uygulamaları Tasarımı Veri Tabanı Veritabanı yada ingilizce database kavramı, verilerin belirli bir düzene göre depolandığı sistemlere verilen genel bir isimdir. Günümüzde özel veya kamu kuruluşların

Detaylı

Programlama Yazılımı ile Web Sitesi Oluşturma

Programlama Yazılımı ile Web Sitesi Oluşturma Hafta- 2 Programlama Yazılımı ile Web Sitesi Oluşturma Programlama yazılımı, bir web projesi oluşturmak için alternatif birkaç yol sunar. Buyollardan bir tanesi ihtiyaca uygun olarak seçilebilir. Programlama

Detaylı

Java. Hakkımızda. Java Eğitimi

Java. Hakkımızda. Java Eğitimi JAVA Hakkımızda 1999 yılında bilişim teknolojileri alanında eğitim vermek amacıyla kurulan Bilişim Eğitim Merkezi temellerini istihdam ve verimlilik odaklı bir yapı üzerinde atmış ve verdiği eğitimlerle

Detaylı

OPC Data Access (DA) Temelleri

OPC Data Access (DA) Temelleri OPC Data Access (DA) Temelleri Hazırlayan Kepware Technologies Türkçe Meal Salih GÖK Anket Data Access nedir? Data Access in getirileri OPC DA e giriş (Data Access) OPC DA Özelliklerine bakış Hızlı bir

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ı

JBoss Seam Next Generation Integration Framework

JBoss Seam Next Generation Integration Framework JBoss Seam Next Generation Integration Framework Melih Sakarya www.melihsakarya.com melih.sakarya@gmail.com www.mergecons.com Seam Framework JSF JPA Hibernate EJB 3.0 Ajax RichFaces A4J Drools itext PDF

Detaylı

COĞRAFİ BİLGİ SİSTEMLERİ SERVER MİMARİSİ SERVER UYGULAMA GELİŞTİRME EĞİTİMİ

COĞRAFİ BİLGİ SİSTEMLERİ SERVER MİMARİSİ SERVER UYGULAMA GELİŞTİRME EĞİTİMİ COĞRAFİ BİLGİ SİSTEMLERİ SERVER MİMARİSİ SERVER UYGULAMA GELİŞTİRME EĞİTİMİ http://facebook.com/esriturkey https://twitter.com/esriturkiye egitim@esriturkey.com.tr Kursun Süresi: 5 Gün 30 Saat COĞRAFİ

Detaylı

Web Uygulamaları Mimarileri ve Güvenliği

Web Uygulamaları Mimarileri ve Güvenliği Web Uygulamaları Mimarileri ve Güvenliği METU CCLUB erbil Karaman başlıklar... Web uygulama mimarileri Uygulama geliştirme ve framework kullanımı Güvenli web uygulamaları için öneriler baslamadan önce...

Detaylı

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 Ders- 13 World Wide Web (WWW) Yrd. Doç. Dr. Burcu Can Buğlalılar Bilgisayar Mühendisliği Bölümü Bilgisayar Katmanları İçerik World Wide Web (WWW) Anlık Mesajlaşma

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ı

LINQ (Temel Kavramlar)

LINQ (Temel Kavramlar) LINQ (Temel Kavramlar) Ele Alınacak Başlıklar Temel Kavramlar Lambda İfadeleri (*Lambda Expressions) Query İfadeleri (*Query Expressions) Tür Çıkarsama (*Type Inference) Anonim Türler (*Anonymous Types)

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı Ders 7 LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 LINUX Yapısı LINUX işletim sisteminin diğer işletim sistemleri gibi kendine özgü bir yapısı vardır. LINUX yapısı ve bileşenleri aşağıdaki

Detaylı

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2 1 Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2 Eclipse Mimarisi 4 Java Teknolojisine Genel Bir Bakış 6 Taşınabilirlik 6 Java Derleyicisi ve Bytecode 6 Java Sanal Makinası (Java Virtual Machine - JVM)

Detaylı

Ağ Yönetiminin Fonksiyonel Mimarisi

Ağ Yönetiminin Fonksiyonel Mimarisi Bölüm 7 Ağ Yönetimi Ağ Yönetiminin Fonksiyonel Mimarisi a) Performans (Performance) Yönetimi b) Sistem Ayarları (Configuration) Yönetimi c) Hesap (Account) t)yönetimi i d) Hata (Fault) Yönetimi e) Güvenlik

Detaylı

Internet Programming II

Internet Programming II Hafta I Internet Programming II Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr. Gör. Murat KEÇECİOĞLU 15 Şub. 2015 PHP Nedir? Platformdan bağımsız (işletim Sistemi) dinamik web sayfaları ve

Detaylı

TeamBase5 BELEDİYE İLETİŞİM MERKEZİ SIEMENS

TeamBase5 BELEDİYE İLETİŞİM MERKEZİ SIEMENS SIEMENS TeamBase5 BELEDİYE İLETİŞİM MERKEZİ SIEMENS TEAMBASE 5 BELEDİYE İLETİŞİM MERKEZİ Her geçen gün hızla değişen ve gelişen teknoloji, kurumların ve vatandaşların birbirleriyle olan iletişimlerine

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ı

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011 PHP I E. Fatih Yetkin 26 Eylül 2011 Outline Temel Tanımlar HTML e Giriş PHP ye Giriş MySQL ve PHP Temel Tanımlar Web Sunucu Nedir? Teknik detaylar bir kenara bırakılacak olursa, hazırlanan web sayfasını

Detaylı

NovaFortis Yazılım Danışmanlık. E-dönüşüm adaptörü

NovaFortis Yazılım Danışmanlık. E-dönüşüm adaptörü NovaFortis Yazılım Danışmanlık E-dönüşüm adaptörü E-DÖNÜŞÜM ADAPTÖRÜ E-dönüşüm adaptörü e-fatura, e-arşiv fatura, e-defter ve e-ihracat süreçlerini yönetmek üzere tasarlanmış bir masaüstü uygulamasıdır.

Detaylı

Bilgiyi Keşfedin! Özelleştirme, Eklenti ve Veri Entegrasyonu Kurumsal Seviyede Yönetim ve Performans

Bilgiyi Keşfedin! Özelleştirme, Eklenti ve Veri Entegrasyonu Kurumsal Seviyede Yönetim ve Performans Bilgiyi Keşfedin! LOGO MIND INSIGHT (powered by Qlik) İŞ ANALİTİĞİ ÜRÜNÜ, HERKESİN SEZGİLERİ İLE ARAŞTIRMA VE KEŞİF YAPMASINI SAĞLAYAN ÇOK ÇEŞİTLİ ESNEK VE İNTERAKTİF GÖRSELLER OLUŞTURABİLECEĞİ YENİ NESİL

Detaylı

PHP ile İnternet Programlama

PHP ile İnternet Programlama PHP ile İnternet Programlama Doç.Dr. Gazi Üniversitesi Gazi Eğitim Fakültesi Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü 1. BÖLÜM: Bilgisayarımızı PHP ye Hazırlamak PHP Yorumlayıcısı ve Sunucu Yazılımı

Detaylı

HSE RADAR. İş Sağlığı ve Güvenliği Yönetimi Uygulama, Denetim, Eğitim ve Takip HSE GLOBAL YAZILIM A.Ş. 11 Mart 2016

HSE RADAR. İş Sağlığı ve Güvenliği Yönetimi Uygulama, Denetim, Eğitim ve Takip HSE GLOBAL YAZILIM A.Ş. 11 Mart 2016 HSE RADAR İş Sağlığı ve Güvenliği Yönetimi Uygulama, Denetim, Eğitim ve Takip HSE GLOBAL YAZILIM A.Ş. 11 Mart 2016 Copyright 2016 İçerik 1. HSE RADAR NEDİR? 2. HSE RADAR IN UYGULAMA ALANLARI 3. HSE RADAR

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ

VERİ TABANI YÖNETİM SİSTEMLERİ VERİ TABANI YÖNETİM SİSTEMLERİ ÖĞR.GÖR.VOLKAN ALTINTAŞ 26.9.2016 Veri Tabanı Nedir? Birbiriyle ilişkisi olan verilerin tutulduğu, Kullanım amacına uygun olarak düzenlenmiş veriler topluluğunun, Mantıksal

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA III Bilgi iletişim sistemi : Bilgi iletişim sistemi, dağıtık sistem içerisinde düğümler arasındaki iletişimi desteklemekle yükümlüdür. İletişim sistemi, iletişim ağı ile bağlanmış herhangi bir düğümün,

Detaylı

BİT in Temel Bileşenleri (Yazılım-1)

BİT in Temel Bileşenleri (Yazılım-1) Ders 4 BİT in Temel Bileşenleri (Yazılım-1) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların, birbirleriyle haberleşebilmesini ve uyumunu

Detaylı

Kurumsal bilgiye hızlı ve kolay erişim Bütünleşik Belge Yönetimi ve İş Akış Sistemi içinde belgeler, Türkçe ve İngilizce metin arama desteği ile içeri

Kurumsal bilgiye hızlı ve kolay erişim Bütünleşik Belge Yönetimi ve İş Akış Sistemi içinde belgeler, Türkçe ve İngilizce metin arama desteği ile içeri İş süreçleri ve belgelerin bilgisayar ortamında izlenmesi Bütünleşik Belge Yönetimi ve İş Akış Sistemi Kurumların belge ve içerik yönetim işlemleriyle iş süreçlerinin tanımlanması ve denetlenmesi ve bu

Detaylı

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi Hedefler Veritabanı Yönetimi Bilgisayarların Discovering Keşfi 2010 Computers 2010 Living in a Digital World Dijital Dünyada Yaşamak Veritabanı terimini tanımlamak ve bir veritabanının veri ve bilgi ile

Detaylı

1 Temel Kavramlar. Veritabanı 1

1 Temel Kavramlar. Veritabanı 1 1 Temel Kavramlar Veritabanı 1 Veri Saklama Gerekliliği Bilgisayarların ilk bulunduğu yıllardan itibaren veri saklama tüm kurum ve kuruluşlarda kullanılmaktadır. Veri saklamada kullanılan yöntemler; Geleneksel

Detaylı

İŞLETİM SİSTEMLERİ. (Operating Systems)

İŞLETİM SİSTEMLERİ. (Operating Systems) İŞLETİM SİSTEMLERİ (Operating Systems) İşletim Sistemi Tanımı, Görevleri, Bilinen İşletim Sistemleri Çok Kullanıcılı Sistemler, Bellek Yönetim Birimi Linux ve Windows Ailesi, Bilinen İşletim Sistemleri

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ı

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ı

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ı

Chapter 6 Mimari Tasarım. Lecture 1. Chapter 6 Architectural design

Chapter 6 Mimari Tasarım. Lecture 1. Chapter 6 Architectural design Chapter 6 Mimari Tasarım Lecture 1 1 Konular Mimari Tasarım Kararları Mimari Bakış Açıları Mimari Desenler Uygulama Mimarileri 2 Yazılım Mimarisi Sistemi meydana getiren alt sistemlerin belirlenmesi için

Detaylı

PAPERWORK TEKNİK MİMARİ

PAPERWORK TEKNİK MİMARİ PAPERWORK ECM TEKNİK MİMARİ 1. Şekilde (1) numara ile gösterilen Content Server adı verilen Uygulama Sunucusudur. Content Server tüm iş mantığını içerir. Veri Tabanına ve arşivlenen belgelere erişim yetkisi

Detaylı

Güvenli Doküman Senkronizasyonu

Güvenli Doküman Senkronizasyonu Güvenli Doküman Senkronizasyonu Güvenli Doküman Senkronizasyon sistemi, hızlı ve güvenli kurumsal doküman paylaşım ve senkronizasyon uygulamasıdır. GDS ne sağlar?» Kurumsal hafıza oluşturulmasını sağlar,»

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama JDBC (Java Database Connectivity) Üst Düzey Programlama-ders07/ 1 JDBC JDBC ilişkisel veritabanlarına erişim için Java dilinde kullanılan standart bir kütüphanedir. Bu kütüphanedeki

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 - 5 ORM (Object Relational Mapping) ve EF (Entity

Detaylı

PR362009 24 Kasım 2009 Yazılım, PC-tabanlı kontrol Sayfa 1 / 5

PR362009 24 Kasım 2009 Yazılım, PC-tabanlı kontrol Sayfa 1 / 5 Yazılım, PC-tabanlı kontrol Sayfa 1 / 5 IT standartları otomasyonu geliştiriyor: Microsoft Visual Studio entegrasyonlu TwinCAT programlama ortamı TwinCAT 3 extended Automation Beckhoff, otomasyon dünyasını

Detaylı

Web Tabanlı Sistem Mimarileri Hafif S ıklet İstemci Mimarisi (HSIM) HSIM Sistem Yap ısı

Web Tabanlı Sistem Mimarileri Hafif S ıklet İstemci Mimarisi (HSIM) HSIM Sistem Yap ısı Web Tabanlı Sistem Mimarileri Web tabanlı uygulamaların yalnızca gerçekleştirimi değil, tasarımı da geleneksel 2- Katmanlı istemci-sunucu uygulamalarından farklılık göstermektedir. Özellikle web uygulamasının

Detaylı

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G. Veritabanı Dersi Teoriden Pratiğe Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G. BÖLÜM 25 Web den Erişim Ortak Geçit Arayüzü Bazı Web Kavramları

Detaylı

O P C S T A N D A R D I

O P C S T A N D A R D I O P C S T A N D A R D I ASP OTOMASYON LTD. Sadık ŞENOL İsmail YAKIN 12/08/2008 OPC Standardı İnsan gücüne dayalı üretimden otomasyona dayalı, daha kontrollü bir üretime geçiş endüstride üretim hızını ve

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ı

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org Devrim GÜNDÜZ TR.NET Sistem Destek Uzmanı devrim@gunduz.org http://seminer.linux.org.tr http://belgeler.linux.org.tr http://lkd.belgeler.org http://www.linux.org.tr/belgeler.php http://www.gunduz.org/belgeler.php

Detaylı

Sunum Planı. Django Nedir? Django projesi oluşturmak Basit bir blog uygulaması. Şablon Kullanımı Diğer özellikleri

Sunum Planı. Django Nedir? Django projesi oluşturmak Basit bir blog uygulaması. Şablon Kullanımı Diğer özellikleri Django Web Çatısı Mete Alpaslan Katırcıoğlu Emre Yüce Portakal Teknoloji mete.alpaslan@portakalteknoloji.com emre.yuce@portakalteknoloji.com Akademik Bilişim 2008 Çanakkale, 30 Ocak 2008 Sunum Planı Django

Detaylı

Java Temel Özellikleri

Java Temel Özellikleri Java Temel Özellikleri Java Programlama Dili Java programlama dili şu anda dünyadaki en popüler programlama dillerinden biri haline gelmiştir. Java SUN bilgisayar şirketince elektrikli ev aletlerinin birbiriyle

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ı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine

Detaylı

Bilgisayar İşletim Sistemleri BLG 312

Bilgisayar İşletim Sistemleri BLG 312 Bilgisayar İşletim Sistemleri BLG 312 İşletim Sistemlerine Giriş Bilgisayar Sistemi uygulama programları derleyici editör komut yorumlayıcı işletim sistemi makina dilinde programlar mikroprogram (ROM da)

Detaylı

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

1. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 1. 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ırmaMerkezi 2 İçindekiler 1. GİRİŞ... 3 1.1 ASP NEDİR?...

Detaylı

Logsign Hotspot. Güvenli, izlenebilir, hızlı ve. bağlantısı için ihtiyacınız olan herşey Logsign Hotspot da!

Logsign Hotspot. Güvenli, izlenebilir, hızlı ve. bağlantısı için ihtiyacınız olan herşey Logsign Hotspot da! Logsign Hotspot Misafir Ağlar İçin Yeni Nesil Bütünleşik Erişim ve Analitik Çözümü Misafir ağların her geçen gün artan ihtiyaçlarını karşılayabilmek için yeni nesil mimari ile tasarlanmış olan Logsign

Detaylı

Hızlı Başlangıç Kılavuzu

Hızlı Başlangıç Kılavuzu Hızlı Başlangıç Kılavuzu 1. Adım Windows Server 2012'yi Yükleme Bilgisayarınız Windows Server 2012 yüklenmiş olarak teslim edildiyse, 1. Adım'ı atlayabilirsiniz. Yükleme Yönergeleri Yükleme yönergeleri,

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ı

LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler. Cem Yılmaz Genel Müdür LOGOBI Yazılım

LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler. Cem Yılmaz Genel Müdür LOGOBI Yazılım LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler Cem Yılmaz Genel Müdür LOGOBI Yazılım Hakkımızda LOGOBI Yazılım A.Ş. iş zekası alanında faaliyet gösteren, Türkiye de sahip olduğu yüzlerce müşterinin

Detaylı

Kurumsal Yönetim Sistemleri Sistemleri

Kurumsal Yönetim Sistemleri Sistemleri Yazılım Danışmanlık Ltd. Şti. Kurumsal Yönetim Sistemleri Sistemleri Yönetim Kurumsal Yönetim Sistemleri Kurumsal Yönetim Sistemleri Kurumsal Akosis, sektörel olarak farklılık gösteren dinamikler ve iş

Detaylı

Programlama Dilleri II. Bilgisayar ve Öğretim Teknolojileri Öğretmenliği

Programlama Dilleri II. Bilgisayar ve Öğretim Teknolojileri Öğretmenliği Programlama Dilleri II Bilgisayar ve Öğretim Teknolojileri Öğretmenliği Ders Hakkında.NET, Ye n i Je n era syo n Inter n et in geliştirilmesi için gerekli ürün ve teknoloji platformudur. Bugün sayısal

Detaylı

UZAKTAN EĞİTİM MERKEZİ

UZAKTAN EĞİTİM MERKEZİ ÜNİTE 2 VERİ TABANI İÇİNDEKİLER Veri Tabanı Veri Tabanı İle İlgili Temel Kavramlar Tablo Alan Sorgu Veri Tabanı Yapısı BAYBURT ÜNİVERSİTESİ UZAKTAN EĞİTİM MERKEZİ BİLGİSAYAR II HEDEFLER Veri tabanı kavramını

Detaylı

Nagios XI Günümüzün talep gören kurumsal gereksinimleri için en güçlü BT altyapısı gözetim ve uyarı çözümüdür.

Nagios XI Günümüzün talep gören kurumsal gereksinimleri için en güçlü BT altyapısı gözetim ve uyarı çözümüdür. Nagios Enterprises, kurumsal ölçekte, BT altyapı gözetiminde endüstri standardı olan Nagios için resmi ürünler, hizmetler ve çözümler sunuyor. Dünya çapında yüz binlerce kullanıcıyla Nagios bilgi teknolojileri

Detaylı