ANKARA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. Java Teknolojileri Kullanılarak. Kan Bağış Web Uygulamasının Tasarlanması

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

Download "ANKARA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. Java Teknolojileri Kullanılarak. Kan Bağış Web Uygulamasının Tasarlanması"

Transkript

1 ANKARA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BLM 492 BİTİRME PROJESİ ROPORU Java Teknolojileri Kullanılarak Kan Bağış Web Uygulamasının Tasarlanması Teslim Eden: Ferid Mövsümov, Proje Danışmanı: Prof. Dr. İman Askerzade Mayıs, 2012

2 Özet Bu proje kanın acil bir ihtiyaç olmaktan çıkıp, sürekli bir ihtiyaç haline geldiği dünyamızda kan bağışıyla ilgili işlemleri elektronik ortama taşıyarak insan hayatlarını kurtarmak amacıyla geliştirilmiştir. Sistem kan isteği bulunan kişiler ile kan bağışında bulunmak isteyen kişiler arasında bir köprü vazifesi görmektedir. Bu köprü fonksiyonu gerçekleştirilirken kan isteği bulunan kişiler ile kan bağışçıları arasında ev verimli şekilde bağlantı kurulması amaçlanmaktadır. Bu amaçla istekte bulunan kişinin semt bilgisi çok önemlidir çünkü bağışçılar öncelikle bu semtten olan kullanıcılar arasından seçileceklerdir. İlgili semtte uygun bağışçı bulunamadığı durumda daha yakın semtlerde bağışçı arama işlemi sürdürülecektir. Sistemde üç tip kullanıcı bulunmaktadır. Kullanıcı tiplerini yetkilerine göre sıralarsak, bunlar sistem yöneticisi, doktorlar ve kullanıcılardır. Sistemin amaçları arasında kullanıcıları kan bağış süreci ile ilgili olarak bilgilendirmek de vardır. Bu amaçla sitede kan bağışı, kanın yapısı, sıkça sorulan sorular başlıkları altında bölümler oluşturulmuştur.

3 İçindekiler 1. Giriş Kullanılan Teknolojiler ve Geliştirme Araçları Kullanılan Teknolojiler Spring Çatısı (Framework) ExtJs Javascript Kütüphanesi Hibernate Geliştirme Araçları Sistemin İşleyişi Kullanım senaryosu modeline ilişkin açıklama Veritabanı Tasarımı Veritabanı Tasarlanırken Dikkat Edilen Hususlar Projede kullanılan Tasarım Şablonu Spring MVC Proje Yapısı Java Dosyaları Sonuç Referanslar Ekler

4 1. Giriş Bu belge projeyi okura çeşitli bölümler halinde anlatmayı amaçlamaktadır. Proje tasarımına veritabanıyla başlanmıştır. Gerekli tablolar sistem analizler sonucu belirlenmiş ve oluşturulmuştur. Veritabanında oluşturulmuş olan tabloların her biri ayrı ayrı ele alınarak okura aktarılmaya çalışılmıştır. Kan Bağış web uygulamasında kullanılan teknolojiler Java tabanlı teknolojilerdir. Bunlar spring çatısı, hibernate teknolojileridir. Projenin arayüzü ise ExtJs javascript kütüphanesi kullanılarak tasarlanmıştır. Bütün bu teknolojilerin tercih sebebleri, projenin hangi kısımlarında kullandıkları gibi bilgiler ayrıntılı olarak anlatılmıştır. Projenin, benzer proje geliştirecek kişilere örnek oluşturabilmesi amacıyla projenin kaynak kodları, Google şirketinin sunmakta olduğu Google Code servisi kullanılarak çevrimiçi ortamda açık kaynaklı proje olarak yayınlanmıştır. Projenin kullanıcı ara yüzü tasarlanırken hangi prensipler çerçevesinde tasarlandığı ve kullanıcıya ne gibi kolaylıklar sağladığı ayrıntılı bir şekilde ele alınan konular arasındadır. Uygulamanın okur tarafından daha iyi anlaşılabilmesi ve gelişim aşamasında geliştiricinin, projenin genel resmini görebilmesi amacıyla kullanım senaryosuna ilişkin görsel diyagramlar oluşturulmuş ve bu diyagramlar ayrıntılı bir şekilde anlatılmıştır. Uygulama geliştirilirken nesne yönelimli programlama paradigmasının yanında MVC tasarım şablonu da kullanılmıştır. Bu tasarım şablonu ve tercih sebebi belgede ayrıntılı olarak anlatılmıştır. 4

5 2. Kullanılan Teknolojiler ve Geliştirme Araçları Bu bölümde projede kullanılan teknolojiler ve bu teknolojilerin seçilme nedenleri açıklanmıştır. Bölümde ele alınan bir diğer konu seçilen geliştirme araçları ve bu geliştirme araçlarının tercih edilme sebepleridir. 2.1 Kullanılan Teknolojiler Projede kullanılacak teknolojiler belirlenirken hem geliştirme aşamasını kolaylaştıracak hem de büyük sayıda kullanıcıların en az bekleme süresiyle işlemlerini kolay anlaşılabilir bir ara yüz yardımıyla gerçekleştirebilecekleri teknolojiler seçilmiştir Spring Çatısı (Framework) Projede spring çatısının tercih edilmesinin sebebi spring çatısı altında yer alan spring mvc isimli web modülünün ve spring çekirdeğinin kurumsal ve dinamik web projelerinde geliştiriciler ve sistem kullanıcıları açısından sağladığı kolaylıklardır. Spring mvc mimarisinin geliştirciler açısından sağladığı kolaylık projemizin görsellik ve iş mantığı gibi kısımlarını birbirinden ayrı olarak geliştirilebilmesidir ExtJs Javascript Kütüphanesi Projenin kullanıcı arayüzü tasarlanırken ExtJs kütüphanesi kullanılmasına karar verilmiştir. ExtJS JavaScript dilinde hazırlanmış ve kodlamasında da JavaScript kodları kullanılan web uygulamar için arayüz tasarım çatısıdır. Günümüzde artık masaüstü uygulamarının yerini giderek web uygulamarı almaktadır. Masaüstü uygulamalarda karşılaştığımız esnek görüntüyü basit bir JavaScript, CSS vs. aracılığıyla oluşturmaya kalkarsak bu bizim bayağı bir zamanımızı alacaktır. ExtJs kütüphanesi bu zorlukları aradan kaldırmakta en büyük yardımcımız, onun aracılığıyla esnek ve Ajax gömülü büyük form sayfalarını artık çok kısa bir sürede yapılabilmektedir. 5

6 ExtJs'le tasarlanmış form sayfasını diğer form sayfalarından ayıran en önemli özellik ise ExtJs'le tasarlanmış olan sayfaların çok ince ve güzel bir görüntüye sahip olmasıdır. Yazılımcı açısından olan üstünlükleri daha önemli aslında. ExtJs bir JavaScript kütüphanesi olduğundan yazılımcı çok kısa bir sürede rahat ExtJs kullanmayı başarabilmektedir. ExtJs kütüphanesinin en büyük avantajı Ajax teknolojisini içerisinde barındırmasıdır. Böylece hem sunucuya düşen yükün azaltılması hem de son kullanıcının bekleme süresinin en aza indirilmesi amaçlanmıştır. ExtJs in tercih edilmesinin diğer bir sebebi de kullanıcının gözüne hitap eden sayfalar tasarlanması için gerekli olan her türlü bileşeni içerisinde barındırmasıdır Hibernate Hibernate, Java platformunda yazılmış bir ORM (Object/Relational Mapping) aracıdır. ORM, nesne odaklı (object oriented) dillerdeki nesnelerin, ilişkisel veritabanlarındaki (relational databases) kayıtlara nasıl karşılık geldiğini yürüten bir teknolojidir. NHibernate adında.net çatısı için yeniden yazılmış bir türevi bulunur. Hibernate gibi ORM araçlarıyla, bir nesneyi veritabanına kaydetmek, yeni halini güncellemek ve sorgulama yapmak düz SQL bağlantılarına göre çok kolaydır. Örneğin, JDBC ile veritabanına bir kayıt eklemek için şuna benzer bir kod yazılır: stmt.executeupdate( "INSERT INTO KAHVE VALUES ('Colombian', 101, 7.99, 0, 0)"); Burada, "KAHVE" tablosuna bir kayıt eklenmekte. Böyle bir işlemi Hibernate ile yapmak için: session.saveorupdate(kahve); kahve, bildiğimiz düz bir java nesnesidir. Hibernate gibi ORM araçlarının en önemli faydası, kod yazımını kısaltmak veya kolaylaştırmaktan öte, yazılım bakımını kolaylaştırmasıdır. 6

7 Veritabanı temelli uygulamalarda, kodun 1/3 ü veritabanı erişimine yöneliktir. Veritabanındaki bir kolonunun tipinin değişmesi, yeni bir kolon eklenmesi gibi değişiklikler, bütün veri erişim kodunu tekrar gözden geçirmeyi gerektirir. Hibernate ile bu gözden geçirmeden çok yüksek oranda tasarruf edilir. Hibernate kullanılan yazılımlarda, veritabanındaki değişikliklerde yapılması gereken sadece nesnelerle tabloların birbirine nasıl eşleştirildiğinin (mapping) gözden geçirilmesidir. 2.2 Geliştirme Araçları Kan Bağış Web Uygulaması Eclipse IDE geliştirme ortamı kullanılarak geliştirilmiştir. Eclipse IDE geliştirme ortamı esnek yapısıyla yazılımcıya büyük kolaylıklar sağladığından tercih edilmiştir. Eclipse IDE geliştiriciye projeye bağlı olarak geliştirme ortamını özelleştirme imkanı sunar. Bu özelleştirmeler çeşitli eklentiler eklenerek yapılmaktadır. Eclipse IDE için her ihtiyaca uygun çok fazla sayıda eklenti seçeneği bulunmaktadır. Eclipse IDE yi ön plana çıkaran bir diğer özellik ise bu geliştirme ortamının tamamen ücretsiz olmasıdır. Veritabanı tasarımı yapılırken ise MySql Workbench isimli veritabanı tasarım aracı tercih edilmiştir. Aracın açık kaynaklı ve ücretsiz olması en önemli tercih sebebidir. 7

8 3. Sistemin İşleyişi Kan bağışı web uygulaması, kan bağışı yapmak isteyen kişilerin bunu en kolay şekilde elektronik ortamda gerçekleştirebilmesine olanak sağlamayı amaçlamaktadır. Sistemde süper yönetici, hastane yöneticisi, kan bağışçısı şeklinde yetkiler bulunmaktadır. Kullanıcı sisteme giriş yaptığında karşısına yetkisine bağlı olarak farklı ekranlar çıkar 3.1 Kullanım senaryosu modeline ilişkin açıklama Projenin iş akışı aşağıdaki diyagramda gösterilmiştir. Kan vermek isteyen bir kişi öncelikle kan bağış web uygulamasına bir tarayıcı vasıtasıyla giriş yapar. Web uygulamasına giren ziyaretçinin bağışçı statüsüne geçebilmesi için öncelikle sisteme kayıt yaptırması gerekmektedir. Kayıt işlemi zamanı kullanıcıdan isim, soy isim, adres, telefon numarası, kan grubu ve elektronik posta gibi bilgiler alınır ve tüm zorunlu alanlar eksiksiz doldurulduğu takdirde bağışçı sisteme kaydedilir. Şekil 1 Kullanım senaryosu modeli 8

9 Yeni bir doktor sisteme kaydolmak istediğinde karşısına çıkan kayıt ekranındaki bilgileri doldurur ve kaydının onaylanmasını bekler. Yeni bir doktorun kaydı yalnızca bağlı olduğu hastanenin baş hekimi tarafından onaylanabilecektir. Hastane kaydetme işlemi ise sistem yöneticisiyle iletişime geçilerek yapılacaktır. Gerekli bilgiler kayıt formunda doldurulduktan sonra uygun doğrulama işlemi ile hastane kaydı onaylanacaktır. Bir hastanın kan ihtiyacı durumunda doktor sisteme giriş yaparak sisteme kan isteği ile ilgili kan grubu gibi bilgileri girer. Bu aşamadan sonra o hastanenin bulunduğu semtte yaşayan sisteme kayıtlı, aynı kan grubuna sahip kullanıcılara sms ve eposta yoluyla istek olduğuna dair bildirim gönderilir. İstek gönderilirken bağışçının en son kan verme tarihi vb. önemli bilgiler dikkate alınarak istek gönderilir. Bildirim alan bağışçılar bağış yapmak istediklerinde bildirim açan doktorun bulunduğu hastaneyle iletişime geçerek, direk sistem üzerinden isteğe yanıt vererek veya direk ihtiyaç olan hastaneye giderek bağış yapmak istediklerini bildireceklerdir. Uygun kanın elde edilmesi durumunda doktor isteğin karşılandığına dair sisteme giriş yapar ve isteği kapatır bu durumda daha önce istek gönderilmiş bağışçılara isteğin karşılandığına dair bildirim iletilir. Bütün bildirim ve onaylama işlemleri uygulama üzerinden, eposta ile yapılabilmektedir. 9

10 4. Veritabanı Tasarımı Kan Bağış Web uygulamasında veritabanı olarak mysql veritabanı kullanılması tercih edilmiştir. Veritabanını yönetmek için ise mysql Workbench isimli araç tercih edilmiştir. Veritabanında bulunan tablolar aşağıdaki gibidir. Bunların her birini ayrı ayrı açıklayalım: Şekil 2 Veritabanı Tabloları Kisiler: Kişiler tablosu yetkisine bakılmaksızın her türlü kullanıcının sisteme giriş yapabilmesi için kullanılacak alanlardan oluşmaktadır. Her bir kişinin benzersiz bir id değeri olacaktır. Bunun dışında her bir kullanıcının kullanıcı adı olacaktır. Kullanıcı adı kişinin eposta adresiyle aynı olacaktır. Burada kullanıcı adı olarak eposta kullanılmasının en önemli nedeni kullanıcılar belli bir zaman boyunca web sitesine girmediklerinde, genellikle seçtikleri kullanıcı adını unuturlar. Bunun aksine kullanıcılar epostalarının ne olduğunu unutmazlar. Bu nedenle kullanıcı adı olarak kullanıcının epostası tercih edilmiştir. Tabloda bulunan diğer alanlar kullanıcı şifresi ve rolid dir. Her bir kullanıcının yetkisi farklıdır. Dolayısıyla tablomuzda bir kullanıcının hangi yetkilere sahip olduğunu belirtmek amacıyla rolid alanı kullanılmaktadır. 10

11 rolid değişkeni foreign key ilişkisiyle RolOzellik tablosundaki rid değeriyle ilişkilidir. Bu tablolar arasında ayrıca 1:N ilişki bulunmaktadır. Bunun sebebi Bir kullanıcının sadece bir role sahip olması ancak bir rolde birden fazla kullanıcı bulunabilmesidir. RolOzellik: Bu tablo, uygulama kullanıcılarını farklı yetkilerle yetkilendirmek amacıyla kullanılmaktadır. rid ve Ozellik olmak üzere tabloda iki alan bulunmaktadır. Kullanıcı Tablosuyla ilişkilidir. Bu ilişki kullanıcı tablosu anlatılırken açıklanmıştır. KanBagiscisi: Bu tablo veritabanında bulunan en fazla alanlı tablolardan bir tanesidir. Tablonun amacı kan bağışında bulunmak isteyen kişilerle ilgili her türlü bilginin tutulmasıdır. Kullanıcının adı ve soyadı, isimsoyisim isimli alanda beraber tutulmaktadır. Kullanıcının adres bilgisi adres isimli alanda tutulmaktadır. Kullanıcıya kısa mesaj göndermek veya acil durumlarda kullanıcıyla irtibata geçilebilmesi amacıyla tabloda kullanıcının telefon numarası telefonnumarası isimli alanda tutulmaktadır. Tabloda bağışçılarla ilgili tutulan en önemli bilgilerden bir tanesi de bağış yapacak kişinin kan grubudur. Çünkü bir kan isteği yapıldığında kan grubu uyuşan kişilere istek konusunda bildirim yapılmalıdır. Bu bilgi kangrubuid isimli alanda tutulmaktadır. Bu alan Kangruplari isimli tablodaki kid değeriyle foreign key ilişkisi içerisindedir. Kişinin bağlı olduğu hastane bilgileri de tabloda tutulmaktadır. Kişinin bağlı olduğu hastane bilgileri hastaneid isimli alanda tutulmaktadır. Kişiler kan bağışında bulunduktan sonra belli bir müddet boyunca kan bağışında bulunamayacaklarından son kan bağış tarihinin veri tabanında tutulması önem taşımaktadır. Bu amaçla sonkanbagistarihi isimli alanda kullanıcının son kan bağışı yaptığı tarihin bilgisi tutulmaktadır. Bağışçının yaşadığı semt veritabanında tutulan bir diğer özelliktir. Bu özellik sayesinde bir semtte kan ihtiyacı oluşacağı zaman öncelikle o semtte ikamet eden kişilere ulaşılacaktır. Bu amaçla semtid isimli alan semt isimli tablodaki semtid değeriyle foreign key ilişkisi içerisindedir. Bir kullanıcı bir semtte yaşayabilir ancak bir semtte birden çok bağışçı ikamet edebileceğinden tablolar arasında 1:N ilşkisi vardır. Sistemdeki duyuruların, kan isteklerinin kullanıcıya ulaştırılması amacıyla kullanıcının epostası isimli alanda tutulmaktadır. 11

12 HastaneBilgileri: Doktorlar hastaneler aracılığıyla sisteme kayıt olacağından hastane bilgilerinin sistemde tutulması önemlidir. HastaneBilgileri isimli tabloda her bir hastanenin benzersiz id değeri tutulmaktadır. Hastanenin isim, adres,telefon numarası,baş hekimi gibi bilgileri bu tabloda tutulmaktadır. KanGrupları: Bu tablo kan gruplarını tutmak amacıyla oluşturulmuştur. Daha önce KanBagiscisi tablosu açıklanırken bu tablo ile arasındaki ilişkiden bahsedilmiştir. Semt, İlceler ve İller: Bu tablolar, kan bağışçılarının ikamet ettiği il, şehir ve semt bilgilerini tutmak, kullanıcılar üzerinde yaşadığı ile, ilçeye veya semte bağlı olarak işlemler gerçekleştirmek amacıyla kullanılmak üzere oluşturulmuştur. kanistekleri: Bu tablo kan istekleriyle ilgili bilgileri tutmak amacıyla oluşturulmuştur. Her isteğin benzersiz bir id değeri bulunmaktadır. İsteğin sisteme koyulduğu tarih bilgisini tutmak amacıyla koyuldugutarih isimli alanda koyulduğu oluşturulma tarihi bilgisi tutulmaktadır. İstekle ilgili herhangi bir ayrıntının yer alması amacıyla isteknotu isimli alan kullanılacaktır. Daha sonra sistemle ilgili istatistiksel bilgiler oluşturulmak istenirse gerek duyulacağı için kaldirildigitarih alanı tabloda bulunmaktadır. İsteği oluşturan doktorun bağlı olduğu hastane bilgisini tutmak amacıyla hastaneid isimli alan kullanılmıştır. Hastanın kan grubu ve kan isteğinin aktif kalacağı süre tabloda tutulan diğer önemli bilgilerdir. Kan bağışçıcı ile kan istekleri arasında N:M bir ilişki bulunmaktadır. Bunun anlamı bir kan bağışçısının birden çok istek alabileceği ve bir isteğin de aynı şekilde birden fazla bağışçı tarafından karşılanabileceğidir. 4.1 Veritabanı Tasarlanırken Dikkat Edilen Hususlar Veritabanı KanBagiscisi, HastaneBilgileri vb. tablolardan oluşmaktadır bu tablolar bütün iş akışını içerecek şekilde oluşturulmuştur. Kan İstekleri ve KanBagiscisi veritabanının en önemli kısımlarıdır ve 12

13 bu tablolar arasında m:n ilişkisi vardır ki, bu da belli bir grup insanla özellikle acil kan isteklerinde kullanılabilecek ve kontroller tarafıyla bir arada enteraktif bir bildirim yayınlanması için kullanılacaktır. Kan istekleri daha çok semt olarak uygulamada yerleştirilecektir ve genelde belli bir semte hitap edecektir. Bu kan istekleri kan bağışçılarının bağlı olduğu semtler göz önünde bulunarak hep belli bir kısma yönlendirilecek. Genelde iş akışı hastane tarafında kontrol edilecek ve baş hekim bu işleri yönetecektir. Kan istekleri oluşturulurken hastanın kan grubu vurgulanmaktadır. Bu gerekebilecek kan gruplarını tayin etmek açısından ilave edilmiştir. Enteraktif duyuru, haber alışverişi için, telefon numarası (belli bir kitleye sms ile kan isteğinde bulunmak için örneğin), eposta gibi bilgiler de adresten ilave veritabanında tutulmaktadır. Bir kan isteğinin ne kadar acil olduğunu süre ve bölgesel olarak kan isteklerinde belirtilecektir. Bundan başka kan isteklerini son üç ayda kan bağışında bulunanlara göndermemek için kan bağışçısının son kan verdiği tarih de veritabanında tutulmaktadır. Veritabanı bu ve diğer birçok unsur göz önünde tutularak tasarlanmış ve çeşitli durumlarda veritabanından nasıl faydalanılacağı düşünülmüştür 13

14 5. Projede kullanılan Tasarım Şablonu Projede MVC (Model-View-Controller) tasarım şablonu kullanılmıştır. MVC yapısında geliştirilen projeler, kullanıcı ara yüzü ile veri modeli adını verdiğimiz programın ana işlevselliğini yerine getiren bölümün birbirinden ayrılmasını sağlamakta ve bu şekilde geliştirilen proje bölümleri, birbirinden bağımsız olarak tasarlanabilmektedir. MVC tasarım şablonu sistemin tasarımını ve iş mantığını birbirinden ayırma özelliği sayesinde tasarımcılarla programcıların birbirinden bağımsız olarak, Hiçbiri bir diğerinin işine müdahale etmeden proje üzerinde çalışabilmektedirler. Böylece günümüzde yazılım projelerinin olmazsa olmazı haline gelmiş olan takım çalışması kavramı daha da kolaylaşmaktadır. MVC tasarım şablonunun işleyişi aşağıdaki resimde gösterilmiştir. Şekil 3 MVC Tasarım Şablonu 5.1 Spring MVC Kan Bağış Web uygulamasında mvc tasarım şablonunun uygulanabilmesi amacıyla spring çatısının, mvc modülü kullanılmıştır. Spring mvc, Spring çatısının web bileşenidir. Spring mvc güçlü web uygulamaları geliştirmek için birçok fonksiyonellik sunar. 14

15 Spring mvc framework'ü tasarlanırken yapıyı oluşturan her bir parçanın yüksek derecede yapılandırılabilir olmasına dikkat edilmiştir. Ayrıca Spring diğer popüler web çatılarıyla ( Struts, WebWork, Java Server Faces ve Tapestry) entegre edilebilmektedir. Spring'in bir diğer güçlü özelliği de kullanıcıya görüntü sunmak için servlet ve jsp kullanma zorunluluğunun olmamasıdır. Velocity, Freemarker, Excel veya Pdf gibi görüntü sunma teknolojileri de kullanılabilmektedir. Bu çatıyı kullanırken çatının sunduğu herhangi ara yüzü implemente etmek zorunluluğunuz yoktur. Spring mvc çatısı diğer mvc çatıları gibi istek bazlı çalışmaktadır. Burada merkezi bir servlet var ve bu servlet gelen istekleri controller'lere yönlendirmektedir. DispatcherServlet Spring ioc container ile tamamen entegredir bu sayede spring'in sunmuş olduğu bütün özellikleri kullanma imkanımız olmaktadır. Spring mvc 3,0 daki bir isteğin yaşam döngüsü aşağıdaki adımlardan oluşmaktadır: 1. İstemci sunucuya http tipinde bir istek gönderir. 2. Gelen istek Front Controller (DispatcherServlet) tarafından karşılanır öncelikle ve uygun Handler Mapping'leri bulmaya çalışır. 3. Handler Mapping'lerin yardımıyla DispatcherServlet isteği uygun controller'e gönderir. 4. Controller isteği işlemeye çalışır ve FrontController'e ModelandView nesnesini döndürür. 5. FrontController bu gönderilen nesneyi View Resolver kullanarak çözümler ve kulanıcıya sunulmak üzere bir görüntü oluşturur. 6. Daha sonra oluşturulan sayfa kullanıcıya sunulur. 15

16 Spring 3.0 Özellikleri Spring 3.0 Java 5'i desteklemektedir. Bu bize annotation bazlı yapılandırma yapma özelliği sunmaktadır. Ayrıca Java 5'in bir çok özelliği burada kullanılabilmektedir. Yeni expression dili olan Spring Expression Language SpEL kullanıcılara sunulmuştur. Spring 3.0 REST web servislerini desteklemektedir. Veri formatlama büyük derecede kolaylaştırılmıştır. Bunun için bazı annotation'lar oluşturulmuştur.örneğin zaman göstermek istiyoruz sayfamızda uygun formatı annotation'unu kullanarak kolaylıkla kullanıcıya sunabiliriz. Spring 3.0 ile birlikte JPA 2.0 desteklenmeye başlamıştır. 16

17 6. Proje Yapısı Proje yapısı aşağıdaki resimde gösterilmiştir. Burada bulunan her bir dosyayı ayrı ayrı açıklayalım. Şekil 4 Proje Yapısı web.xml : Bu dosya proje açısından çok önemlidir. Proje ile ilgili bütün önemli bilgiler bu dosyada bulunmaktadır. Dosyanın içerisinde bulunan önemli tanımlamalar: Aşağıda gen isimli bir DispatcherServlet tanımlanmıştır. DispatcherServlet spring çatısının sunmakta olduğu bir servletdir. Bu 17

18 servlet gelen isteklerin hangi servlet e yönlendirileceğini ve isteklerin hangi tarz uzantıya sahip olacağını açıklamaktadır. Gen isimli servlet /gen/* formatındaki url leri karşılayacaktır. Gen servletinin içeriği gen-servlet.xml isimli dosyada tanımlıdır. <servlet> <servlet-name>gen</servlet-name> <servlet-class>org.springframework.web.servlet.dispatcherservlet</servletclass> <init-param> <param-name>contextconfiglocation</param-name> <param-value>/web-inf/spring-servlets/gen-servlet.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>gen</servlet-name> <url-pattern>/gen/*</url-pattern> </servlet-mapping> Aşağıda aynı şekilde doktor, admin, kullanıcı gibi servletler tanımlanmıştır bunların her biri farklı biçimlerde url isteklerini karşılama amacını taşımaktadırlar. Admin isimli servlet /administrator/* şeklindeki istekleri karşılayacaktır. Doktor isimli servlet ise /doktor/* şeklindeki istekleri karşılayacaktır. Bunların dışında bir de kullanıcı sisteme giriş yaptıktan sonra kullanıcı sayfasındaki /kullanıcı/* şeklindeki istekleri karşılayacak olan kullanıcı isimli servlet bulunmaktadır. <servlet> <servlet-name>admin</servlet-name> <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class> <init-param> <param-name>contextconfiglocation</param-name> <param-value>/web-inf/spring-servlets/admin-servlet.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>admin</servlet-name> <url-pattern>/administrator/*</url-pattern> 18

19 </servlet-mapping> Web uygulaması ilk açıldığında gösterilecek ilk sayfayı belirtmek amacıyla <welcome-file-list> isimli belirteç kullanılmıştır. Burada bizim açılış sayfamızın index.jsp olduğu belirtilmiştir. <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> Sayfalarımızın aslında.jsp uzantılı olmasına rağmen istediğimiz taktirde kullanıcıya sayfalarımızın.html uzantılı sayfalar olduğunu gösterebiliriz. Bu amaçla aşağıdaki kodları web.xml dosyasına eklemek gerekmektedir. Örneğin index.jsp sayfasına index.html şeklinde istek gönderebiliriz. <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> gen-servlet.xml: Bu dosya, web.xml isimli dosya içerisinde tanımlı olan gen isimli servlet in içeriğinin bulunduğu dosyadır. Bu dosya içerisindeki önemli kısımları tek tek açıklayalım. Aşağıda gösterilen kod projede mvc belirteçlerinin kullanılacağını belirtmek amacıyla yazılmıştır. <mvc:annotation-driven /> Aşağıda gösterilen kod satırı hangi java paketlerinin taranması gerektiğini belirtmektedir. View paketi içerisinde isteklerin iş mantığı kısmını halledeceğimiz için belirteciyle belirtilmiş java sınıfları bulunmaktadır. Controller sınıfları ileride daha ayrıntılı şekilde ele alınacaktır. <context:component-scan base-package="view" /> gen-servlet.xml içerisinde bu servletin karşılayacağıistekler için kullanıcıya sunacağı sayfaları nerede araması gerektiğine dair kodlar aşağıda gösterilmiştir. Burada /WEB-INF/view/gen/ dizini altında.jsp 19

20 uzantılı dosyaların kullanıcıya gösterilecek sayfalar olduğu belirtilmiştir. Burada prefix ve suffix isimli, özelliklerin kullanımı önemlidir. <bean id="viewresolver" class="org.springframework.web.servlet.view.internalresourceviewresolver"> <property name="viewclass"> <value>org.springframework.web.servlet.view.jstlview</value> </property> <property name="prefix"> <value>/web-inf/view/gen/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> Aynı şekilde doktor, admin ve kullanıcı servletleri de benzer içeriklere sahip olduklarından bunların her biri ayrı ayrı açıklanmamıştır. WEB-INF dizini altında bulunan diğer önemli klasör lib klasörüdür. Bu klasörün WEB-INF dizini altında bulunması önemlidir. Bu klasör projemizde kullanılan kütüphanelerin kullanılabilmesi için gerekli.jar uzantılı dosyalar içermektedir. Bu.jar dosyaları arasında spring çatısından faydalanabilmemiz için gereken dosyalar, hibernate kullanabilmemiz için gereken dosyalar vb. bulunmaktadır. WEB-INF dizini altında bulunan bir diğer klasör ise spring-context isimli klasördür. Bu klasörün yeri web.xml içerisinde tanımlanmıştır. Bu klasörün içerisinde applicationcontext.xml isimli dosya bulunmaktadır. Bu dosyanın içerisinde projemizde her yerde kullanılabilecek global beanler tanımlanmıştır. Kan bağış uygulamasının kök dizini WebContent isimli dizindir. Web sitesinde kullanılan bütün içerikler bu dizinin altında klasörler içerisinde bulunmaktadır. Şimdi tek tek bu klasörleri inceleyelim. 20

21 images: Bu klasör projede kullanılan her türlü görsel öğeyi içermektedir. Banner, buton resimleri, logo gibi görseller bu klasör içerisinde tutulmaktadır. js: Bu klasör web sitemizde görsel olarak daha zengin bir ara yüz sunmak amacıyla kullanılan javascript kodlarını içermektedir. resources: Bu klasör projemizde kullanıcıya gösterilmek amacıyla kullanılan static içerikleri barındırmaktadır. Klasör altında static isminde başka bir klasör bulunmaktadır. Static isimli klasörün içerisinde static.html uzantılı sayfalar bulunmaktadır. scripts: Bu klasör altında extjs javascript kütüphanesinin desteklenmesi amacıyla kullanılan ext isimli klasör bulunmaktadır. Bu klasör extjs kütüphanesidir. ExtJs kütüphanesiyle ilgili ayrıntılı bilgi ayrıntılı olarak ele alınacaktır. styles: Bu klasör.css uzantılı dosyaları barındırmaktadır. Css dosyaları web sayfalarımızın tasarımıyla ilgili kodları içermektedirler. 6.1 Java Dosyaları Java dosyaları Java Resources altında, paketler şeklinde bulunmaktadır. Bu paketlerden önemli olanları aşağıda açıklanmıştır. model: Bu paket içerisinde pojolarımız bulunmaktadır. Pojo kavramı veritabanıyla ilişkili nesneleri belirtmek amacıyla kullanılan kavramdır. Burada çeşitli belirteçler vasıtasıyla bir sınıfın pojo olduğu belitilir. Aşağıda bir pojo örneği gösterilmiştir. belirteci sınıfın bir pojo olduğunu belirtmek amacıyla isimli belirteç vasıtasıyla sınıfın veritabanındaki hangi tablo ile ilişkili olduğu belirteci değişkenin tablodaki hangi sütunla ilşkili olduğunu isimli belirteç hangi değişkenin id olduğunu belirtecinin olduğu değişken için belirteci kullanılmıştır. Bu belirteç id için oluşturulacak 21

22 değerlerin otomatik olarak otomatik artım tarzında bir özellikle public class @GeneratedValue private Integer private String private String private String private String telephone; } Yukarıda gösterilen pojo nun veritabanında temsil ettiği tablo aşağıdaki gibidir. Şekil 5 Örnek Veritabanı Tablosu 22

23 dao: Projede bulunan bir dğer önemli paket ise dao paketidir. Dao kelimesi veri erişim nesnesi anlamına gelmektedir. Dao katmanı veritabanı bağlantılarını gerçekleştirmektedir. Deneyimli yazılımcılar tarafından her bir dao sınıfının bir dao interface i tarafından implemente edilmesi önerilmektedir. view: Bu paket kullanıcı isteklerini karşılayacak controller sınıflarını içermektedir. Controller sınıflarının controller olduğunu belirtmek amacıyla sınıfın belirteci kullanılmaktadır. Metodların başında belirteci kullanılmıştır. Kayit isimli metodun başında kullanılmış olan belirteç /kayit şeklindeki url isteklerini karşılayacağını belirtmektedir. Bu metod ModelAndView nesnesi döndürmektedir. Bu nesne kayit.jsp isimli sayfayı kullanıcıya gösterecektir. Aynı şekilde testing isimli metod ise anasayfa.jsp isimli sayfayı kullanıcıya gösterecektir. /anasayfa şeklinde bir istek public class GenView public ModelAndView kayit(){ return new ModelAndView("kayit"); public ModelAndView testing(){ return new ModelAndView("anasayfa"); } } 23

24 service: Bu paketin içinde bulunan sınıfların belirteci bulunur ve bu belirteç sınıfların servis sınıfı olduğunu belirtir. Servis sınıflarının amacı dao nesneleri ile pojolar arasında bir katman oluşturmaktır. Böylece dao kısmında sadece veritabanı bağlantılarına servis katmanındaysa iş mantığına odaklanarak kodun okunabilirliliğini arttırmış oluruz. Aşağıdaki resimde bu yapı gösterilmiştir. Şekil 6 - Dao, servis ve controller arasındaki ilişki., 24

25 7. Sonuç Projenin kaynak kodları ileride başkaları tarafından da kullanılabilmesi, edinilen tecrübelerin başkalarına da aktarılması ve benzer proje yapacak insanların örnek olarak faydalanabilmesi amacıyla, proje Google şirketinin sunduğu Google Code isimli servis vasıtasıyla Google sunucularına yerleştirilmiştir. Bu servisin kullanılma amaçlarından bir tanesi de kaynak kod yönetim mekanizması kullanılarak bu mekanizmanın en iyi şekilde anlaşılmasının sağlanmasıdır. Bu sistem kullanılarak projenin takım halinde geliştirilmesi mümkün kılınmaktadır. Kan Bağış Web Uygulamasının daha fazla kullanıcı çekebilmesi amacıyla proje ileride mobil uygulama şeklinde geliştirilebilir. Projede yönetici tarafından elle yapılan en yakın semt bulma işlemi, en yakın yer bulma algoritmaları kullanılarak program tarafından otomatik bir şekilde bulunması sağlanabilir. Böylece sistem daha da kullanışlı olur. Sistemde kan bağışçılarına her bağış için puan verilerek, belli bir puan biriktikten sonra bağışçıya tişört gibi küçük hediyeler verilebilir ve böylece kan bağışına teşvik arttırılmış olur. Projede her türlü yardım ve desteğini benden esirgemeyen danışmanım İman Askerzade ye teşekkür ediyorum. 25

26 8. Referanslar [1] Spring Source Web Sitesi [2] docs.sencha.com/ext-js/3-4 - ExtJS 3.4 Dökümantasyonu [3] Hibernate Topluluğu Resmi Sitesi [4] Eclipse Topluluk Web Sitesi 26

27 9. Ekler Ana Sayfa Sıkça Sorulan Sorular 27

28 Kayıt Penceresi Admin Sayfası 28

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

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ı

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ı

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

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ı

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ı

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

.com. Özcan Acar 2009 Kurumsal Java.com

.com. Özcan Acar 2009 Kurumsal Java.com .com Spring MVC Özcan Acar acar@unitedinter.net http://www.ozcanacar.com http://www.kurumsaljava.com Özcan Acar Hakkında public class OezcanAcar { public static void main(string[] args) { Acar oezcan =

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ı

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ı

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ı

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

6 Ocak 2014. İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. İlgili Modül/ler : E-Fatura

6 Ocak 2014. İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. İlgili Modül/ler : E-Fatura 6 Ocak 2014 İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL İlgili Modül/ler : E-Fatura Özel Entegratör ile e-fatura Uygulaması e-fatura uygulama yöntemlerinden biriside; firmaların özel entegratörler vasıtası

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ı

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ı

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

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

İçindekiler Tablosu Talep Destek Yönetim Sistemi Programı...3

İçindekiler Tablosu Talep Destek Yönetim Sistemi Programı...3 İçindekiler Tablosu Talep Destek Yönetim Sistemi Programı...3 1. Özellikler.3 2. Kullanım..3 2.1. Ana Sayfa..5 2.2. Talep Modülü.7 2.3. Takibim Modülü 9 2.4. Takipte Modülü..11 2.5. Silinen Talepler Modülü...11

Detaylı

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-40-0 Nesneye Yönelik Sistem Çözümleme ve Tasarım HAZIRLAYAN 22325 Fahri DÖNMEZ DANIŞMAN

Detaylı

Süreç Yönetimi. Logo

Süreç Yönetimi. Logo Süreç Yönetimi Logo Kasım 2013 SÜREÇ YÖNETİMİ Süreç belirlenen bir amaca ulaşmak için gerçekleştirilen faaliyetler bütünüdür. Örn; Sistemde kayıtlı personellerinize doğum günü kutlama maili gönderme, Deneme

Detaylı

TÜİK e-vt Teknik Kılavuz

TÜİK e-vt Teknik Kılavuz TÜİK e-vt Teknik Kılavuz Genel Açıklamalar Mayıs 2015 ANKARA Versiyon: 1.1 1/6 Versiyon Yayım Tarihi Eklenen/Silinen/Değişen Bölüm Açıklama 1.0 20.02.2014 ---- Kılavuzun ilk sürümü. 1.1 04.05.2015 Sayfa

Detaylı

Tüm personel kendi KEP hesapları üzerinden mevcut ve önceki maaş bordrolarını görüntüleyebilecektir.

Tüm personel kendi KEP hesapları üzerinden mevcut ve önceki maaş bordrolarını görüntüleyebilecektir. Mikro e-bordro Nedir? E-Bordro Uygulaması, Mikro Personel Programı tarafından oluşturulan maaş bordrolarının, otomatik olarak personel kartında tanımlı KEP adresi üzerinden toplu gönderimini sağlar. Mikro

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ı

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir. Netsis 3 Netsis 3 Netsis 3, Netsis ERP ürün ailesinin 3. Boyuta taşınmış yeni arayüz ve işlevleriyle karşımıza çıkan yeni yüzüdür. 3. Boyut, Logo ürün ailesi için ortak bir hedefi işaret eder, çünkü yapılan

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ı

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ı

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

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ MOODLE UZAKTAN ÖĞRETİM SİSTEMİ ÖZET Genel Bilgiler Moodle nedir? Sistem Gereksinimleri Moodle Sisteminin Kurulumu Ders ve kategori eklenmesi Bir dersin sistem özellikleri İstatistikler Sonuç ve öneriler

Detaylı

Intercepting Filter Tasarım Şablonu KurumsalJava.com

Intercepting Filter Tasarım Şablonu KurumsalJava.com Intercepting Filter Tasarım Şablonu KurumsalJava.com Özcan Acar Bilgisayar Mühendisi http://www.ozcanacar.com Front Controller 1 tasarım şablonunda, kullanıcıdan gelen isteklerin (request) merkezi bir

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ı

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ı

MOBIL UYGULAMA GELIŞTIRME

MOBIL UYGULAMA GELIŞTIRME MOBIL UYGULAMA GELIŞTIRME PELIN YILDIRIM FATMA BOZYIĞIT YZM 3214 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Bu Derste Android Nedir ve Uygulama Temelleri Android Uygulama Bileşenleri

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ı

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ı

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ı

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ı

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ı

Spring Security Framework Harezmi Bilişim Çözümleri

Spring Security Framework Harezmi Bilişim Çözümleri Spring Security Framework Harezmi Bilişim Çözümleri www.java-egitimleri.com 1 Ajanda Güvenlik İhtiyaçlarına Genel Bakış Spring Security Nedir? & Özellikleri Neden Spring Security? Spring Security Yapıtaşları

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ı

TCMB Deneyim Raporu. Kurumsal Java Uygulama Platformu. Sacit Uluırmak. Türkiye Cumhuriyet Merkez Bankası Sistem Araştırma ve Planlama Müdürlüğü

TCMB Deneyim Raporu. Kurumsal Java Uygulama Platformu. Sacit Uluırmak. Türkiye Cumhuriyet Merkez Bankası Sistem Araştırma ve Planlama Müdürlüğü TCMB Deneyim Raporu Kurumsal Java Uygulama Platformu Sacit Uluırmak Türkiye Cumhuriyet Merkez Bankası Sistem Araştırma ve Planlama Müdürlüğü 2007 TCMB made available under the EPL v1.0 30.04.2007 Gündem

Detaylı

2 Temel Kavramlar (Devam) Veritabanı 1

2 Temel Kavramlar (Devam) Veritabanı 1 2 Temel Kavramlar (Devam) Veritabanı 1 Veritabanı Kullanıcıları Veritabanı Yöneticisi (DBA-Database Administrator) Tasarım,oluşturma ve işletiminden sorumludur. Görevleri; Tasarımı Performans Analizi Erişim

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ı

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ı

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ı

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ı

Türkiye Barolar Birliği internet sitesi

Türkiye Barolar Birliği internet sitesi Türkiye Barolar Birliği internet sitesi Türkiye Barolar Birliği internet sitesi, güncel teknolojinin sunduğu son imkânlarla, tamamen merkezi yönetim sistemine sahip dinamik ve geliştirilebilir bir sistem

Detaylı

ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI

ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI ICATT ÇEVİRİ UYGULAMASI SİSTEM MİMARİSİ VE VERİTABANI TASARIMI İÇİNDEKİLER 1. GİRİŞ 1.1. KAPSAM 1.2. SİSTEM ÖZETİ 1.3. DOKÜMAN ÖZETİ 2. ÇALIŞMA KONSEPTİ 2.1. Yeni Kullanıcı Oluşturmak 2.2. Şirket Bilgilerini

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ı

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

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ. AKILLI FİYAT ARAMA MOTORU TiLQi.NET

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ. AKILLI FİYAT ARAMA MOTORU TiLQi.NET İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ AKILLI FİYAT ARAMA MOTORU TiLQi.NET Bitirme Ödevi Kadir Kemal Dursun 040000643 Hakan Demirtaş 040000684 Bölüm : Bilgisayar Mühendisliği Anabilim

Detaylı

Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010

Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010 Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010 Bu belge BT Sınıfı Etkinliklerinde Kullanılmak Üzere Hazırlanmıştır İÇİNDEKİLER GİRİŞ... 3 ÜYE (KAYIT) OLMA... 3 YÖNETİM PANELİ İŞLEMLERİ... 5 ŞABLON AYARLARI...

Detaylı

EGE ÜNĐVERSĐTESĐ BĐLGĐSAYAR MÜHENDĐSLĐĞĐ SUNUCU YAZILIM TEKNOLOJĐLERĐ LABORATUAR PROJESĐ

EGE ÜNĐVERSĐTESĐ BĐLGĐSAYAR MÜHENDĐSLĐĞĐ SUNUCU YAZILIM TEKNOLOJĐLERĐ LABORATUAR PROJESĐ EGE ÜNĐVERSĐTESĐ BĐLGĐSAYAR MÜHENDĐSLĐĞĐ SUNUCU YAZILIM TEKNOLOJĐLERĐ LABORATUAR PROJESĐ Grup Üyeleri Gökhan Aydın Erkan Ölmez Özgün Bilgetay Ferdi Tokgözlü Gül Çabuk Esma Açar Nihal Sezer Neslihan Đmerci

Detaylı

DÖNER KANAT TEKNOLOJİ MERKEZİ (DKTM) PROJE SİSTEMİ

DÖNER KANAT TEKNOLOJİ MERKEZİ (DKTM) PROJE SİSTEMİ DÖNER KANAT TEKNOLOJİ MERKEZİ (DKTM) PROJE SİSTEMİ KULLANICI KILAVUZU Versiyon Numarası V-04 SUNAN Bilgi Yönetimi Sistemleri Müdürlüğü İÇİNDEKİLER 1. Amaç... 1 2. Kapsam... 1 3. Kısaltmalar

Detaylı

Metin Editörleri YRD. DOÇ. DR. ENGİN CEMAL MENGÜÇ. ALINTI:

Metin Editörleri YRD. DOÇ. DR. ENGİN CEMAL MENGÜÇ. ALINTI: 1 Metin Editörleri YRD. DOÇ. DR. ENGİN CEMAL MENGÜÇ ALINTI: https://webmaster.kitchen Metin Editörleri 2 Bir web sitesi geliştirmek istiyorsanız, bir HTML düzenleyicisine ihtiyacınız olacaktır. Elbette

Detaylı

FIRAT ÜNİVERSİTESİ DİNAMİK WEB SAYFASI

FIRAT ÜNİVERSİTESİ DİNAMİK WEB SAYFASI FIRAT ÜNİVERSİTESİ DİNAMİK WEB SAYFASI Aytuğ Boyacı Mustafa Ulaş Erhan Akbal Gürkan Karabatak Ayhan Akbal Hasan H. Balık Fırat Üniversitesi Fırat Üniversitesi Fırat Üniversitesi Fırat Üniversitesi Enformatik

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ı

Kurumsal Grup E-Posta Eğitim Dokümanı

Kurumsal Grup E-Posta Eğitim Dokümanı Kurumsal Grup E-Posta Eğitim Dokümanı Bu Eğitim Dokümanı Bilişim Merkezi Modelleme Grubu Öğrencileri Tarafından Hazırlanmıştır. İçindekiler Kurumsal Grup E-Posta Nedir?... 2 Amaçlar... 3 1. Liste Talebinde

Detaylı

BSOFTefat E-FATURA ÇÖZÜMÜ

BSOFTefat E-FATURA ÇÖZÜMÜ Gelir idaresine yapılan başvuruya göre POROSefat e-fatura alım/gönderim işlemlerinde kullanıcılara iki farklı seçenek sunulmaktadır. 1. E-Fatura GİB Dosya Aktarım modülü: Gelir idaresinden sadece e-fatura

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ı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Kodlarına Yorum Satırı Eklemek Java Paket Kavramı Java Kütüphane Kavramı Konsoldan Veri Çıkışı ve JOPtionPane Kütüphanesi JOptionPane Kütüphanesi Kullanarak

Detaylı

VERİTABANI Veritabanı Yönetimi

VERİTABANI Veritabanı Yönetimi VERİTABANI Veritabanı Yönetimi YAPILANDIRILMIŞ SORGULAMA DİLİ (SQL) Veritabanı yönetimi, veritabanının yapısal özelliklerini belirtmek ve değiştirmek, veritabanına kullanıcı erişimlerini ve yetkilerini

Detaylı

İLİŞKİSEL VERİTABANLARI

İLİŞKİSEL VERİTABANLARI İLİŞKİSEL VERİTABANLARI Veritabanı Nedir? Veritabanı (database) en basit şekliyle verilerin belirli bir düzene göre tutulduğu, depolandığı bir sistemdir. İlişkisel Veritabanı Nedir? İlişkisel veritabanlarındaki

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ı

1. Admin kullanıcı ile sisteme giriş yapınız. Ekranın sağ üstünde yer alan defter yaprakları ikonuna tıklayınız.

1. Admin kullanıcı ile sisteme giriş yapınız. Ekranın sağ üstünde yer alan defter yaprakları ikonuna tıklayınız. Luca Koza Ticari Paket ve Kurumsal Çözümler ürününe E-Fatura uygulaması çözümleri eklenmiştir. E-fatura uygulama çözümü 2 aşamada tamamlanmaktadır. 1. Luca Koza Ticari Paket ve Kurumsal Çözümler yazılımında

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ı

Outlook ta Mail Arama

Outlook ta Mail Arama Outlook ta Mail Arama Merhaba arkadaşlar, İş hayatında en sık kullanılan programların başında Outlook programı gelmektedir ve en sık yapılan işlemlerden biri de geçmişe dönük mailler arasında arama yapmaktır.

Detaylı

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri VERİ KAYNAKLARI YÖNETİMİ İ İ 5. ÜNİTE GİRİŞ Bilgi sisteminin öğelerinden biride veri yönetimidir. Geleneksel yada çağdaş, birinci yada ikinci elden derlenen veriler amaca uygun veri formlarında tutulur.

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ı

MVC. Görüldüğü üzere 2 adet cs. Dosyası oluşturdum. Birincisi çok satır kodu (20-25) içeren büyük işlerin yapılacağı class. İsmi buyuk_isler.

MVC. Görüldüğü üzere 2 adet cs. Dosyası oluşturdum. Birincisi çok satır kodu (20-25) içeren büyük işlerin yapılacağı class. İsmi buyuk_isler. MVC MVC Anlamakta zorluk çekiyorsanız bu yazımı dikkatle okumanızı tavsiye ediyorum. Derslerde öğrencilerimin en çok zorlandıkları konu MVC nin mantığıdır. Önce MVC anlamaya çalışmak yerine MVC den biraz

Detaylı

AKILLI TATIL PLANLAMA SISTEMI

AKILLI TATIL PLANLAMA SISTEMI AKILLI TATIL PLANLAMA SISTEMI Istanbul Teknik Üniversitesi Bilgisayar ve Bilişim Fakültesi Bitirme Ödevi Ali Mert Taşkın taskinal@itu.edu.tr Doç. Dr. Feza Buzluca buzluca@itu.edu.tr Ocak 2017 İçerik Giriş

Detaylı

Fırat Üniversitesi Hastanesi Dinamik Web Sayfası

Fırat Üniversitesi Hastanesi Dinamik Web Sayfası Akademik Bilişim 09 - XI. Akademik Bilişim Konferansı Bildirileri 11-13 Şubat 2009 Harran Üniversitesi, Şanlıurfa Fırat Üniversitesi Hastanesi Dinamik Web Sayfası Ayhan Akbal 1, Erhan Akbal 2 1 Fırat Üniversitesi,

Detaylı

Zirve e-fatura Portal Paketi V. 1.0.xx

Zirve e-fatura Portal Paketi V. 1.0.xx Zirve e-fatura Portal Paketi V. 1.0.xx Zirve Yazılım paket programlarından, e-fatura gönderim ve alım işlemlerinin yapılabilmesi için iki farklı e-fatura paketi mevcuttur. 1- Zirve e-fatura Entegratör

Detaylı

Yrd. Doç. Dr. Gökçe BECİT İŞÇİTÜRK. Gökçe BECİT İŞÇİTÜRK 1

Yrd. Doç. Dr. Gökçe BECİT İŞÇİTÜRK. Gökçe BECİT İŞÇİTÜRK 1 Yrd. Doç. Dr. Gökçe BECİT İŞÇİTÜRK Gökçe BECİT İŞÇİTÜRK 1 Gökçe BECİT İŞÇİTÜRK 2 Kullanıcıların site içeriğini belirlemede rol oynadığı, Dinamik, Teknik bilgi gerektirmeyen, Çok yönlü etkileşim sağlayan,

Detaylı

Koşuyolu, Asmadalı Sk No:29 Kadıköy Tel :444-3282 Faks: (216)325-5664 www.datasoft.com.tr

Koşuyolu, Asmadalı Sk No:29 Kadıköy Tel :444-3282 Faks: (216)325-5664 www.datasoft.com.tr Değerli Datasoft Kullanıcısı; Datasoft Yazılım, Genel Muhasebe Programı, Đşletme Defteri Programı ve BBS (Büro Bilgi Sistemi) Serbest Meslek Defteri programı KDV Beyannamesi menüsüne, KDV Beyannamesinin

Detaylı

SDD Dökümantasyonu Versࠀyon 1.0. Movࠀe Predࠀctࠀon Orhan Özgün Ergen Ahmet Saday Berkay Erken

SDD Dökümantasyonu Versࠀyon 1.0. Movࠀe Predࠀctࠀon Orhan Özgün Ergen Ahmet Saday Berkay Erken ࠀFakültes Mࠀmarlık Mühendࠀslࠀk ve ࠀtesࠀversࠀÜn Beykent ࠀğࠀslࠀMühend Yazılım SDD Dökümantasyonu Versࠀyon 1.0 Movࠀe Predࠀctࠀon 120301009 Sefa Saࠀd Denࠀz 120301019 Orhan Özgün Ergen 120301027 Ahmet Saday

Detaylı

Avlanmaya Açık ve Kapalı Alanlara İlişkin Coğrafi Bilgi Sistemi Projesi

Avlanmaya Açık ve Kapalı Alanlara İlişkin Coğrafi Bilgi Sistemi Projesi Avlanmaya Açık ve Kapalı Alanlara İlişkin Coğrafi Bilgi Sistemi Projesi Kurum adı : T.C. Orman ve Su İşleri Bakanlığı, Bilgi İşlem Dairesi Başkanlığı, Doğa Koruma ve Milli Parklar Genel Müdürlüğü Av ve

Detaylı

C# ile e-posta Göndermek

C# ile e-posta Göndermek Kemal Demir http://kemal.csharpturk.net kemal@csharpturk.net C# ile e-posta Göndermek 25.12.2006 Web sitemizin üyelerine ya da adreslerini bir yerde biriktirdiğimiz arkadaşlarımıza toplu olarak eposta

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME PELİN YILDIRIM FATMA BOZYİĞİT YZM 3214 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Bu Derste Veri Saklama 2 Veri Saklama Veri Saklama her appnin ihtiyaci

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ı

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1 Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit

Detaylı

Facade (Cephe) Tasarım Şablonu KurumsalJava.com

Facade (Cephe) Tasarım Şablonu KurumsalJava.com Facade (Cephe) Tasarım Şablonu KurumsalJava.com Özcan Acar Bilgisayar Mühendisi http://www.ozcanacar.com Profesyonel yazılım sistemleri birçok komponentin birleşiminden oluşur. Yazılım esnasında bir çok

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME Hedefler Bu üniteyi çalıştıktan sonra; Java programlama dilinde görsel arayüz tasarımı yapabilir, Java programlama dilinde görsel bileşenler üzerinde olay tanımlayabilir. Android

Detaylı

IdeaSoft E-Ticaret ile LOGO Ticari Yazılım Entegrasyon Kullanım Kılavuzu

IdeaSoft E-Ticaret ile LOGO Ticari Yazılım Entegrasyon Kullanım Kılavuzu IdeaSoft E-Ticaret ile LOGO Ticari Yazılım Entegrasyon Kullanım Kılavuzu E-Ticaret siteniz ile Logo Yazılımınız (GO, GO Plus, Tiger2, Tiger Plus, Tiger Enterprise) arasında veri aktarımını sağlayan bir

Detaylı

Kural Motoru. www.paperwork.com.tr

Kural Motoru. www.paperwork.com.tr Kural Motoru www.paperwork.com.tr İş Kuralı Örnekleri Aşağıda iş kurallarına çeşitli örnekler verilmiştir; : İş Kuralı Nedir? T üm işletmeler kural merkezli çalışırlar. Kurallar hangi fırsatların takip

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ı

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri Konular Veritabanı Tasarım Aşamaları Veri Modeli Nedir? Veri Modeli Temel Bileşenleri İş Kuralları (Business Rules) İş Kurallarını Veri

Detaylı

Özgür Yazılımlar ile VoIP Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net

Özgür Yazılımlar ile VoIP Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Özgür Yazılımlar ile VoIP Denetimi Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Konular VoIP Güvenliği VoIP Güvenlik Denetim Süreci Denetim Kapsamının Belirlenmesi Ağ Altyapısı Analizi

Detaylı

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA BÖLÜM15 D- VERİ TABANI PROGRAMI 1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA 1.1. Veri Tabanı Kavramları Veritabanı (DataBase) : En genel tanımıyla, kullanım amacına uygun olarak düzenlenmiş veriler

Detaylı

https://twitter.com/farukbozan 19 Şubat 2016 Cuma

https://twitter.com/farukbozan 19 Şubat 2016 Cuma Bugünkü yazımda çok basit ve temel anlamda Spring ile XML tanım tabanlı bean okuma işlemini anlatmaya çalışacağım. Spring framework bizim yerimize nesnelerin birbirine olan bağımlılıklarını düzenleyip,

Detaylı

Kullanım Kılavuzu Ekim 2017

Kullanım Kılavuzu Ekim 2017 Kullanım Kılavuzu Ekim 2017 İçindekiler 1 Giriş... 3 1.1... Genel Bilgiler... 3 1.2... Üyelik Ekranı... 3 2 Dil Seçimi... 7 3 Doküman Yükleme Ekranı... 8 3.1... Öğrenci... 8 3.2... Akademisyen... 9 4 Rapor

Detaylı

INTERRA KONSIYAJ SERVER KULLANIM KLAVUZU

INTERRA KONSIYAJ SERVER KULLANIM KLAVUZU INTERRA KONSIYAJ SERVER KULLANIM KLAVUZU 2015 YONNET AKILLI BİNA OTOMASYON SİSTEMLERİ 2015 P a g e 1 İçindekiler INTERRA KONSIYAJ SERVER2 KULLANICI GİRİŞİ2 1.INTERRA KONSİYAJ SERVER3 1.1ISTEKLER3 1.2 ALARM4

Detaylı

Makonet BlueCRS. Sistem Özellikleri ve Ekran Görüntüleri. 2013 Makonet Bilgisayar Ltd. Şti.

Makonet BlueCRS. Sistem Özellikleri ve Ekran Görüntüleri. 2013 Makonet Bilgisayar Ltd. Şti. Makonet BlueCRS Sistem Özellikleri ve Ekran Görüntüleri Sistem Hakkında - Makonet BlueCRS, Makonet Bilgisayar tarafından 2010 yılında geliştirilmiştir. - Deniz yolu taşımacılığı yapan firmaların bilet

Detaylı

MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme

MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme Kenan Sevindik Kimdir? 1999 ODTÜ Bilgisayar Müh. mezunu 15 yılın üzerinde kurumsal uygulama geliştirme deneyimi

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ı

Sisteme giriş yapıldığında ana sayfa üzerinde işlem menüleri, Hızlı erişim butonları ve mail gönderim istatistikleri yer alır.

Sisteme giriş yapıldığında ana sayfa üzerinde işlem menüleri, Hızlı erişim butonları ve mail gönderim istatistikleri yer alır. Kullanım Kılavuzu 1. Sisteme Giriş... 2 2. JetMail Ana Sayfa... 2 3. Kişi Listesi Ekleme... 3 3.1. Özel Alan Ekleme... 3 3.2. Segment Görüntüleme... 4 3.3. Bounced Kabul Edilen Mailler... 5 4. Kişi Ekleme...

Detaylı

POWER BI. Power BI Bileşenleri: Power BI'daki İş Akışı

POWER BI. Power BI Bileşenleri: Power BI'daki İş Akışı POWER BI Power BI, birbirinden bağımsız veri kaynaklarınızı tutarlı, görsel olarak sürükleyici ve etkileşimli öngörülere dönüştürmenizi sağlamak için birlikte çalışan yazılım hizmetlerinden, uygulamalardan

Detaylı