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



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

Öğr. Gör. Serkan AKSU 1

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

Web Uygulama Anaçatıları. Tahir Emre KALAYCI. May 5, 2009

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

Özgür Yazılım, İş ve Kariyer Modelleri. Mahir B. Aşut EkoPC Kurucu Ortağı ve Yöneticisi, LKD Üyesi

Basit bir web uygulaması

GNU/Linux ve Özgür Yazılım. Mahir B. Aşut EkoPC Kurucu Ortağı ve Yöneticisi, LKD Üyesi

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

PHP 1. Hafta 1. Sunum

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

Büyük Kurumlarda Özgür Yazılım Kullanımına Giriş

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

Şişli Mesleki ve Teknik Anadolu Lisesi Web Programcılığı Dalı 2014 WEB PROGRAMCILIĞI DALI

Mobil Uygulama Geliştirme Yaklaşımları, Web Tabanlı Mobil Uygulama Çatıları. Burak USGURLU

Mobil Cihazlardan Web Servis Sunumu

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

1.PROGRAMLAMAYA GİRİŞ

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

Algorithm of Your Life. AJAX ve...

LKD Kendi İlacını Kullanıyor

Üst Düzey Programlama

PHP ile İnternet Programlama

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

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

Internet Programming II

YZM 3215 İleri Web Programlama

Programlama Dilleri sıralaması Programlama Dilleri sıralaması 2016

ÖZGÜR YAZILIMLAR İLE J2EE

Bilgi Güvenliği Denetim Sürecinde Özgür Yazılımlar. Fatih Özavcı Bilgi Güvenliği Danışmanı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

08220 Internet Programcılığı II

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

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

Üniversitelerde Özgür Yazılım Kullanım Rehberi

Python Web 2.0 Python ve Web 2.0 Son. Python ve Web 2.0. Gökmen GÖKSEL, 3 Mayıs 2007

PROGRAMLAMA DERSİ 1. İNTERNET

15 Ekim 2010 Özgür Web Günleri Yeditepe Üniversitesi. Erlang Web Çatıları

API geliştiricileri. Web server ile yapılan entegrasyonun neticeleri. API Dokumantasyonu

YZM 3215 İleri Web Programlama

Veritabanı Uygulamaları Tasarımı

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

Neden PHP? Tasarımcı, şirket ve kullanıcı gözüyle. 10 Ekim 2005 / DEÜ DESEM Seval ÖZBALCI 1

Web Uygulamaları Mimarileri ve Güvenliği

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

Servis olarak Altyapı

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

İNTERNET PROGRAMCILIĞI - II

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

08217 Internet Programcılığı I Internet Programming I

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

İnternet Programcılığı

jquery kütüphanesini sayfaya eklemek için iki yöntem vardır. 1. Direkt jquery nin sitesinden ekleme

İNTERNET PROGRAMLAMA II. Tanımlar

BİLİŞİM TEKNOLOJİLERİ WEB PROGRAMCISI MODÜLER PROGRAMI (YETERLİĞE DAYALI)

PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ.

Ruby Nedir? 1.1 Amaçlar. 1.2 Ruby nin Yapısal Sıradüzeni

Java Programlama Giriş

KURUMSAL PORTAL TASARIMI

WAMP SERVER KURULUMU

1 / 5. Mehmet Alper Şen. Kıdemli Yazılım Uzmanı. İletişim Bilgileri

İNTERNET PROGRAMCILIĞI HAFTA MYSQL - PHPMYADMIN. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Mysql Nedir.

İNTERNET TABANLI TEST HAZIRLAMA VE DEĞERLENDİRME PROGRAMLAMA ARAYÜZÜ

Zeki Gülen Marmara Üniversitesi Sosyal Bilimler Enstitüsü, Gazetecilik Ana Bilim Dalı, Bilişim

Özgür Yazılım Lisansları

Kurulum 14 FTP ye Bağlanmak ve Dosyaları Atmak 14 Veritabanı Oluşturulması ve Bağlanıp Kurulumun Tamamlanması 15

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

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

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

WEB PROGRAMLAMA DİLLERİNİN PERFORMANS ANALİZİ PERFORMANCE ANALYSIS OF WEB PROGRAM LANGUAGE

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

Tekir (Ön Muhasebe Yazılımı)

JBoss Seam Next Generation Integration Framework

JAVASCRIPT JAVASCRIPT DİLİ

Ipv6 Destekli Özgür Video Konferans Yazılımı: Fi6en

Türkiye Barolar Birliği internet sitesi

Ç NDEK LER G R fi 1 Bafllamadan Önce 1 Kitab Kimler Okumal? 1 Kitap çerisindeki Örnekler 2 Örneklerin Kullan m 3 Çekinmeden Yaz n 7

Üst Düzey Programlama

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

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

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

Selçuk Akyıldız. Kişisel Bilgiler. Eğitim Bilgileri 1 / 5. Adres Bilgileri

Php Programlama Dili MySQL Uygulamaları

GNU/Linux'un Tarihi ve Önemi

Disk Alanı 100 Mb Mb Mb Mb Mb Mb. Aylık Trafik (Bandwidth) 1 Gb 5 Gb 10 Gb 15 Gb 25 Gb 35 Gb


Javascript Geliştiricileri İçin Xaml Ve Microsoft Silverlight

Start : Bu method init methodundan hemen sonra çalışır ve applet dosyası yürütülmeye başladığında çalışmaya başlar.

State Yönetimi. Bir web sayfası ile sunucu arasındaki etkileşim ;

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

İnternet Programcılığı Öğr. Gör. Serkan AKSU Statik ve Dinamik Web Siteleri. Dinamik Web Sitesi Nedir?

1. MİCROSOFT SQL SERVER 2014'E GİRİŞ

Açık Kaynak Kodlu ve Özgür Matematik Yazılımı SAGE

Web Programlama Kursu

Kullanıcı Merkezli kütüphane Web Siteleri: İYTE Örneği. Gültekin Gürdal Hakan Yanaz Engin Şentürk

KDE Masaüstü Ortamı. S.Çağlar Onur & Barış Metin. caglar@uludag.org.tr baris@uludag.org.tr. Akademik Bilişim 2005 Gaziantep

Transkript:

Ö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 birisidir. Metinlerden, resimlerden ve diğer çeşitli dökümanlardan oluşur. Bu kaynaklar birbirlerine URL ve bağlantılarla bağlıdır. Web tarayıcıları ve web sunucuları tarafından iletilirler. Özetle web, internet üzerinde çalışan bir uygulama olarak düşünülebilir.

Web Programlama İnternet ya da intranet için bir web sitesi geliştirme. Tasarım, içerik geliştirme, istemci tarafı programlama, sunucu tarafı programlama, sunucu ve ağ güvenliği ayarları vb. Çoğunlukla sadece kodlama olarak algılanır. Sadece düz metinden oluşan en basit sayfadan, en karmaşık web tabanlı internet uygulamalarına, sosyal ağlara kadar çeşitlenebilir.

İstemci Tarafı Programlama (Client-side programming) İstemcinin bilgisayarında (web tarayıcıda) çalışır. HTML, Javascript, Flash dosyaları, ActiveX kontrolleri gibi tarayıcının desteklediği tüm teknolojiler çalıştırılabilir. Kodlar istemci tarafında çalıştırıldığından istemci sunucu arasındaki trafik azalır, zaman kazanılır. HTML JavaScript JQuery Ajax Asynchronous JavaScript and XML

HTML Web sayfalarının oluşturulmasında kullanılan temel programlama dilidir. Bir web tarayıcısı HTML kodlarını yorumlar ve insanlar tarafından okunabilir web sayfaları haline getirir. HTML resim ve nesnelerin sayfa içine gömülebilmesine izin verir. JavaScript gibi dillerin gömülebilmesi sayesinde web sayfalarına zenginlik katılır.

JavaScript JavaScript bir betik dilidir. Nesneye yönelik, fonksiyonel ve prosedürel programlama tarzlarını destekler. Ana kullanımı HTML sayfalarına gömülmüş veya HTML sayfaları tarafından kullanılan fonksiyonlar yazmaktır. Genellikle zengin web uygulamaları yaratmak için kullanılır. Web sayfaları dışında da kulanılabilir. PDF, dinamik masaüstü araçları (widget) gibi. Çok çeşitli cihazlarda çalışabilir.

Bir JavaScript kodu. JavaScript kodunun HTML içinde kullanılışı.

JQuery jquery istemci tarafında daha kolay betik yazabilmek için geliştirilmiş bir JavaScript kütüphanesidir. Özgür, açık kaynaklı bir yazılımdır. MIT lisansı ve GNU Genel Kamu Lisansı ile lisanslanmıştır. Daha kolay Ajax uygulamaları geliştirmeyi, animasyonlar yaratmayı, DOM elemanları seçmeyi, event'leri handle etmeyi sağlar. JavaScript kütüphanesi üzerinde eklentiler yaratmakta kullanılabilir. Güçlü ve dinamik web sayfaları ve web uygulamaları yaratmak için kolaylık sağlar.

Sunucu Tarafı Programlama (Server-Side Programming) Kodlar sunucuda çalıştırılır. Değiştirilebilirlik. Kullanıcının isteklerine, erişim haklarına ve veri üzerindeki sorgularına göre sunucudan gelecek tepki değiştirilebilir. Güvenlik. Tarayıcı kodları göremez. Kodlar kullanıcının gönderdiği girdilere göre sunucuda çalıştırılır ve çıktı HTML ile birlikte tarayıcıya gönderilir. Yüksek veri aktarımı / bant genişliği kullanımı. Daha fazla zaman.

Diğerleri... CSP, Server Side ANSI C Groovy (programming language) Grails (framework) Java, e.g. Java EE or WebObjects Perl, e.g. Catalyst, Dancer (all open source) PHP (open source) Python, e.g. Django (web framework) (open source) Ruby, e.g. Ruby on Rails (open source) Smalltalk e.g. Seaside, AIDA/Web SSJS Server Side JavaScript, e.g. Aptana Jaxer, Mozilla Rhino

Java Java genel amaçlı bir programlama dilidir. Sınıf tabanlı, nesneye yönelik, prosedürel. Yazım şekli C ve özellikle C++'dan esinlenerek oluşturulmuştur. Ancak daha az alt seviye özellikler taşır. Bütün kod bir sınıfın içinde yazılır, herşey bir nesnedir. Sadece temel veri tipleri (tam sayılar (integer), karakterler vb) performans sebebiyle nesne olarak tanımlanmamıştır. Mümkün olduğunca az bağımlılığa sahip olması için tasarlanmıştır. Bir kere yaz, her yerde çalıştır. Özellikle istemci sunucu web uygulamalarında kullanılan en popüler programlama dili.

Bir Örnek

Java applet'leri diğer uygulamaların içine gömülebilen programlardır. Özellkle web sayfalarında kullanılır.

HTML ile Birlikte Kullanımı

PHP PHP sunucu tarafında kullanılan bir betik dilidir. Dinamik web sayfaları oluşturmak için tasarlanmıştır. PHP kodları HTML dökümanları içine gömülür ve PHP işlem modülü olan bir web sunucusu tarafından yorumlanır, web sayfasına dönüştürülür.

PHP Kullanımları CakePHP, Symfony, CodeIgniter ve Zend Framework gibi geliştirme çatıları mevcuttur. MediaWiki, Joomla, ez Publish, WordPress, Drupal ve Moodle gibi içerik yönetim sistemleri ve bunların kullanıldığı tüm siteler. Wikipedia, Facebook, Digg kullanıcı arayüzleri.

Ruby Ruby genel amaçlı, nesneye yönelik bir programlama dilidir. Yazım şekli Perl'den esinlenerek oluşturulmuştur. Smalltalk'a benzer özellikleri vardır. Birden fazla programlama paradigmasını destekler: Fonksiyonel, nesneye yönelik, prosedürel vb. Ruby on Rails (RoR) web çatısı

Python Genel amaçlı, yüksek seviye bir dildir. Kolay kod okunabilirliği sağlamak amacıyla tasarlanmıştır. Çok açık bir yazım şekliyle güçlü bir dil hedeflenmiştir. Standart kütüphanesi oldukça geniş ve kapsamlı. Betik ya da değil. Çeşitli araçlar kullanılarak Python kodları tek başına çalıştırılabilir programlar haline getirilebilir. Birden fazla programlama paradigmasını destekler. Nesneye yönelik, prosedürel, fonksiyonel vb.

Python Python özgür ve açık kaynak bir yazılımdır. Topluluk tarafından geliştirilir. Kar amacı gütmeyen Python Software Foundation tarafından yönetilir. Yazım özelliklerinden, bloklar için girintilerin kullanılması az rastlanılır bir özelliktir.

Django (Python Web Çatısı) Python'da yazılmış açık kaynak kodlu bir web uygulama çatısıdır. Amacı karmaşık, veritabanı temelli web sitelerinin kolay yaratılmasını sağlamaktır. Bileşenlerin yeniden kullanılabilmesi, kolay eklenip çıkarılabilmesi ve hızlı bir geliştirme ortamı sunması gibi özellikleri vardır.

Diğerleri... Perl Smalltalk Scala

Nasıl Seçmek Gerek? Hedef Ne yapılmak isteniyor? Yakınlık Teknik altyapı Yaygın kullanım

İçerik Yönetim Sistemleri Wordpress Drupal Joomla Ve çok daha fazlası: http://en.wikipedia.org/wiki/list_of_content_management_systems

Wordpress PHP ve MySQL tabanlı. En az düzeyde kod müdahalesi. Kullanım kolaylığı. Binlerce ücretsiz tema seçeneği. Kullanıcı yetkilendirme, vs özellikleri. http://www.wordpress.org

Drupal PHP ile yazılmış ve GNU GPL ile dağıtılan bir içerik yönetim sistemidir. Geliştiriciler için programlama arayüzünün yanısıra temel kurulum ve yönetim için herhangi bir programlama bilgisine ihtiyaç yoktur. PHP ve veritabanı çalıştırabilen herhangi bir web sunucuda çalışabilir. http://drupal.org

Joomla PHP'de yazılmıştır. Veritabanı olarak MySQL kullanır. Nesneye yönelik programlama teknikleri ve yazılım desenleri kullanır. RSS beslemeleri, sayfaların basılabilir versiyonları, anketler, arama gibi araçların yanında uluslararası dil desteği sunmaktadır. http://www.joomla.org

Teşekkürler.