Upgrade to Pro — share decks privately, control downloads, hide ads and more …

İnsanlar için PHP

İnsanlar için PHP

Karabük Üniversitesi Bilişim Haftası Etkinlikleri

Hidayet Doğan

May 18, 2013
Tweet

More Decks by Hidayet Doğan

Other Decks in Programming

Transcript

  1. İnsanlar için PHP
    Hidayet Doğan

    View Slide

  2. Merhaba!
    1995 Tübitak Bilgisayar Kulubü
    Linux, BASIC, C, Perl
    1998 Merhaba PHP!
    1999 İş Hayatı: Yazılım + Sistem
    2000 İş Hayatı: Yazılım + Yönetim
    2013 PHP Geliştiricileri Derneği
    Fotoğraf: Onur Canalp

    View Slide

  3. İnsanlar için PHP
    Mevcut Durum
    Tarihçe
    Genel Bakış
    Neden?
    Kaynaklar
    Sorular

    View Slide

  4. Mevcut Durum

    View Slide

  5. Mevcut Durum
    244 milyon web sitesi*
    Tüm web sitelerinin %39’u*
    Facebook, Wordpress, Yahoo, Baidu, Sahibinden, GittiGidiyor
    Kariyer: Türkiye: 250 iş ilanı - ABD: 500 iş ilanı**
    Başvuruların %80’ı red
    Herkes uzman @?!#
    * Netcraft (Ocak 2013) ** Mayıs 2013

    View Slide

  6. Uzman Arayan?
    PHP
    ASP.NET
    Java
    MySQL
    PostgreSQL
    Oracle
    HTML
    CSS
    JavaScript
    AJAX
    jQuery
    PSD to HTML
    JSON
    SOAP
    XML
    AJAX
    OOP / MVC
    Drupal / Joomla

    View Slide

  7. Uzman Arayan?
    Subversion
    CVS
    Git
    Apache
    Linux
    Photoshop
    Dreamweaver
    ExtJS
    CodeIgniter
    Yii Framework
    Zend Framework
    Memcache
    Redis
    Facebook API
    SEO
    İngilizce
    Tecrübe
    Mantı açsın

    View Slide

  8. Uzman?
    Zend Certified Engineer: Türkiye: 34 - Almanya: 1078 - ABD: 1172*
    Zend Certified Engineer != Uzman
    * Mayıs 2013

    View Slide

  9. Uzman?
    İşletim sistemi
    Web sunucusu
    Veritabanı sunucusu
    PHP ayarları
    HTTP protokolü
    Web teknolojileri
    SQL
    Güvenlik
    Analitik düşünme
    Araştırma
    Tecrübe

    View Slide

  10. Eğitim
    Üniversite dersleri (yetersiz)
    Özel kurslar (gitme!)
    Kitaplar (yetersiz)
    İnternet (Türkçe kaynak az, yanlış-
    eksik bilgi)
    İngilizce öğren
    Kod oku
    Hata yap
    Araştır
    Sor
    ARakla GEtir

    View Slide

  11. Eğitim
    Linux Yaz Kampı: 2 hafta (ücretsiz)
    Akademik Bilişim: 4 gün (ücretsiz)
    INET-TR - Türkiye’de İnternet Konferansı: 1 gün (ücretsiz)

    View Slide

  12. Tarihçe

    View Slide

  13. Tarihçe
    1994 Rasmus Lerdorf (Personel Home Page Tools, FI)
    1995 PHP Tools, Personel Home Page Construction Kit
    1996 PHP/FI 2.0
    1998 PHP: Hypertext Preprocessor (PHP 3)
    1998 70000 web sitesi
    2000 PHP 4 (Zend Engine)
    2004 PHP 5 (Zend Engine 2)

    View Slide

  14. Tarihçe



    Internet Explorer kullanmasaydın iyiydi...


    View Slide

  15. Tarihçe
    include ‘header.php’;
    if (substr($_SERVER[‘HTTP_USER_AGENT’], ‘MSIE’)) {
    echo ‘Internet Explorer kullanmasaydın iyiydi...’;
    }
    include ‘footer.php’;
    ?>

    View Slide

  16. Genel Bakış

    View Slide

  17. Genel Bakış
    Betik dili
    Açık kaynak
    Ücretsiz
    Ögrenim süresi kısa (basit?)

    View Slide

  18. Genel Bakış
    Linux, Unix, BSD, OSX, Micro$oft
    Windows
    Apache, Nginx, LigHTTPD, Micro$oft
    IIS

    View Slide

  19. Veritabanları
    MySQL
    PostgreSQL
    Oracle
    Micro$oft
    SQL Server
    IBM DB2
    SQLite
    MongoDB
    CouchDB
    Cassandra
    Couchbase
    Redis
    Memcache

    View Slide

  20. Genel Bakış
    6000 fonksiyon
    300 sınıf
    80 dahili eklenti
    300 eklenti (PECL)
    11000 Composer paketi
    600 Pear paketi
    Github (30000 “PHP”)*
    Google Code (280000 “PHP”)*
    * Sadece proje ismi içinde

    View Slide

  21. Editörler
    NetBeans, Sublime Text, Notepad++
    Zend Studio, PHPStorm, phpDesigner, Kohana Editor/IDE
    TextMate, Coda
    GNU nano, vi

    View Slide

  22. PaaS - Bulut
    PHP Cloud - Zend
    Orchestra - Engine Yard
    AppFog
    Pagodabox
    Amazon Web Services
    Google Cloud Platform
    Micro$oft
    Azure

    View Slide

  23. Menü
    1 adet PHP yorumlayıcı
    1 adet web sunucusu
    Tercihen 1 adet veritabanı sunucusu
    1 adet editör

    View Slide

  24. Tablot Menü
    apt-get install lamp-server^
    Zend Server
    MAMP
    BitNami MAMP Stack
    WampServer
    XAMPP
    BitNami WAMP Stack

    View Slide

  25. Merhaba Dünya!



    echo ‘Merhaba Dünya!’;
    ?>


    View Slide

  26. Bilgisayarlar için PHP
    (A) 010101000110000101110010011000010111100100111111
    011000110011111100100000011101110110010101100010
    001000000111001101110101011011100111010101100011
    011101010111001101110101011011100110000100100000
    011010010111001101110100011001010110101100100000
    011001110011111101101110011001000110010101110010
    011010010111001000101110

    View Slide

  27. Bilgisayarlar için PHP
    (A) Tarayıcı web sunucusuna istek gönderir.
    (B) Web sunucusu dosyanın varlığını kontrol eder, eğer dosya PHP
    ise yorumlayıcıya havale eder.
    (C) PHP yorumlayıcısı dosyayı yorumlar, sonucu web sunucusuna
    gönderir.
    (D) Web sunucusu sonucu tarayıcıya gönderir.

    View Slide

  28. Kalkulus 101
    $a = 12;
    $b = 56.5;
    $c = $a + $b;
    echo ‘Sonuç: ’ . $c;
    ?>
    $a = 12;
    $b = 5;
    $c = $a % $b;
    echo ‘Sonuç: ’ . $c;
    ?>
    $a = 12;
    $b = 5;
    $c = ($a - $b) / 2;
    echo ‘Sonuç: ’ . $c;
    ?>

    View Slide

  29. Koşullar
    $maas = 1750;
    if ($maas < 1000)
    echo ‘Fakir’;
    elseif ($maas < 3000)
    echo ‘Orta direk’;
    else
    echo ‘Zengin’;
    ?>

    View Slide

  30. Fonksiyonlar
    function selam_soyle($isim) {
    echo ‘Selam ‘ . $isim;
    }
    ?>
    selam_soyle(‘Hidayet’);
    selam_soyle(‘Engür’);
    selam_soyle(‘Ömer’);
    ?>

    View Slide

  31. Eğlence
    $a = date_sunrise(time(), SUNFUNS_RET_STRING, 39.91, 32.85, 90, 3);
    echo ‘Bugün Ankara\’da güneşin doğuş saati: ‘ . $a;
    ?>

    View Slide

  32. Neden?

    View Slide

  33. Neden?
    Her yerde var.
    Mükemmel değil fakat her işi görüyor.
    Kendi içinde tutarsız fakat her işi görüyor.
    Kariyer: PHP geliştirici nesli tükeniyor!
    Kariyer: 1000 TL - 5000 TL

    View Slide

  34. Kaynaklar

    View Slide

  35. Kaynaklar
    http://php.net
    http://www.phptherightway.com
    http://www.planet-php.org
    http://www.reddit.com/r/PHP
    http://phpsecurity.readthedocs.org
    http://packagist.org

    View Slide

  36. Kaynaklar
    http://www.pgd.org.tr
    http://ab.org.tr
    http://inet-tr.org.tr
    http://kamp.linux.org.tr
    http://groups.google.com/group/php-egitimleri

    View Slide

  37. Sorular

    View Slide

  38. Teşekkürler!
    http://hi.do
    http://github.com/hdogan
    http://tr.linkedin.com/in/hdogan
    @hdogan
    http://speakerdeck.com/hdogan
    Hidayet Doğan

    View Slide