Getting Stuff Done with Laravel 4 (TR) Türkçe
Getting Stuff Done with Laravel 4 (TR) Türkçe
PHP'nin en popüler yeni Framework'ü ile uygulama tasarımı ve geliştirme üzerine bir yolculuk
Kitap Hakkında
Bu kitap "Getting Stuff Done with Laravel 4" kitabının Türkçe Çevirisidir.
Kitapta Artisan komutları ile uygulama konsolda geliştirilmekte, adım adım testler yapılmaktadır. Her bölüm sonunda refactoring yapılmakta ve SOLID ilkelerine bağlılık korunmakdatır.
Uygulama tamamlanınca Artisan komutları ile eyleme alınan uygulama için web arayüzü yapılmaktadır.
Laravel Php Framework ile web teknolojileri ve tasarım uygulamaları kullanılarak web yazılımları geliştirme üstüne büyük bir arşiv bu kitap.
Büyük bir titizlikle, kodların yapısına zarar vermeden ve kitabın anlamlı bütünlüğü korunarak Türkçe'ye çevirildi. Taylor Otwell kitaba yeni bölümler ilave ettiği zaman ilave bölümler de çevirilerek buraya aktarılacaktır.
Çeviri sürecinde meydana gelmiş olası yazım hataları da düzeltilerek kitap sürekli güncelliğini koruyacaktır.
Sonraki tüm sürümleri, kitabı bir defa satın alarak ücretsiz edinebileceksiniz.
İçindekiler
-
- Teşekkürler
-
Revizyon Geçmişi
- Özel bir teşekkür
- Yardım Aranıyor
- GitHub’daki Kaynak Kod
-
Hoş Geldiniz
-
Bölüm 1 - Bu kitabın amacı
- Bu kitapta neler yoktur
- Bu kitapta neler vardır
- Bölüm 2 - Siz kimsiniz?
-
Bölüm 3 - Ben kimim?
- Çevirenin Notu
- Bölüm 4 - Laravel Nedir?
- Bölüm 5 - Laravel nasıl savunulur
- Bölüm 6 - Programcılar Laravel’i Neden Sever
- Bölüm 7 - Wordpress: İyi, Kötü ve Çirkin
-
Bölüm 8 - Bu Kitapta Kullanılan Düzenler
- Ben hangi işletim sistemi kullanıyorum?
-
Bölüm 1 - Bu kitabın amacı
-
Kısım 1 - Tasarım Felsefeleri ve İlkeleri
- Bölüm 9 - Yee Hooo! Kovboy Kodlama Harikadır.
-
Bölüm 10 - Her Programcı Farklıdır
- Çabuk Bir Turnusol Testi
-
Bölüm 11 - Ayrık Tutma İyidir
- Saç Dökülmesi Hakkında Her Şey
- Basit Bir Ayrık Tutma Örneği
- Bölüm 12 - WET (Islak) Bir Programcı Olmayın
-
Bölüm 13 - Bağımlılık Enjeksiyonu
- Adım 1 - Bağımlılık kararını sınıf düzeyine taşıyın
- Adım 2 - Elle enjeksiyon kullanın
- Adım 3 - Otomatik enjeksiyon kullanın
-
Bölüm 14 - Inversion of Control
- Genel Bir Örnek
- IoC Konteyneri
-
Bölüm 15 - Sözleşme Olarak Interface
- Interfaceler kodu gizler
-
Bölüm 16 - SOLID Nesne Tasarımı
- Tek Bir Sorumluluk İlkesi
- Açık/Kapalı İlkesi
- Liskov İkame İlkesi
- Interface Ayrımı İlkesi
- Bağımlılığı Tersine Çevirme İlkesi
-
Bölüm 17 - Kirli, Küçük bir Tasarım Sırrı
- Bir Romancı gibi Programlama
-
Kısım 2 - Uygulama Tasarımı
-
Bölüm 18 - Nasıl bir uygulama oluşturacağız?
- Uygulamanın isimlendirilmesi
- GTD nedir?
-
Bölüm 19 - Laravel Yüklemesi
- Proje oluşturulması
- Proje Hiyerarşisi
- Gereksiz Klasörleri Silin
- Kaynak Dizinleri Oluşturun
- Composer’i Güncelleyin
- Yüklemenizi Test Edin
-
Bölüm 20 - Bir Yapılacaklar Listesinin Tasarlanması
- Yapılandırma Verisi
- Laravel’in Yapılandırması ve Ortamlar
- Bizim yapılacaklar listemiz neye benziyor
- İlk List ve Task nesneleri
- TodoRepositoryInterfacedüşünmek
-
Bölüm 21 - Görevler Hakkında Düşünme
- TodoTaskInterface
- TaskCollectionInterface
- Facade’ların Harika Dünyası
-
Bölüm 22 - TaskListInterface Oluşturulması
- TaskListInterface
- Küçücük Bir Özet
-
Bölüm 23 - Metin Dosyalarının Biçimi
- Dosya biçimlendirme kuralları
- Bir listedeki görevlerle ilgili kurallar
- Listeler tek tek nasıl sıralanacak
-
Bölüm 24 - Uygulama Fonksiyonları
- Fonksiyonlar çarşaf listesi
- Bir Todo Facade Kullanılması
-
Bölüm 25 - Facade Planlaması
- Facade Bileşenleri
- Todo Facade Sınıf Kabuğu
- Todo Facade Implementasyonu
- Todo Facade Implementasyonunun Test Edilmesi
- Eşyaların birbirine bağlanması
- Todo Facade’ın Test Edilmesi
-
Bölüm 26 - Ara Yeniden Düzenlemesi
- Sisli ormanlarda
- TaskListInterface
- TaskCollectionInterface
- TodoTaskInterface
- Bitirme ve Test Etme
-
Bölüm 27 - TodoManager Sınıfına Başlıyoruz
- TodoManager::makeList()
- Mockery Yüklemesi
- TodoManager::makelist() metodunun test edilmesi
-
Bölüm 28 - TodoManager Sınıfını Bitiriyoruz
- TodoManager::allLists() Oluşturulması
- TodoManager::allLists() metodunun test edilmesi
- TodoManager::get() metodunun oluşturulması
-
Bölüm 29 - ListInterface Interface’inin Implementasyonu
- Bir TodoList kabuğu oluşturulması
- ListInterface’in Bağlanması
- TodoList::__construct()
- TodoList::save() İmplementasyonu
- TodoList::set() ve TodoList::get() İmplementasyonları
- TodoList::set() and TodoList::get() metodlarının test edilmesi
- TodoList::save() metodunun test edilmesi
-
Bölüm 30 - TodoList Sınıfının Bitirilmesi
- “List Nitelikleri” metodlarının tamamlanması
- TodoList::load() metodunun çıkartılması
- TodoList::archive() metodunun implemente edilmesi
- TodoList::taskAdd() metodunun implemente edilmesi
- Son üç TodoList::tasks(), TodoList::taskSet() ve TodoList::taskRemove()
-
Bölüm 31 - TaskCollection ve Task sınıfları
- TaskCollection sınıfı
- Task sınıfı
- Interface’lerin Bağlanması
-
Bölüm 32 - TaskCollection ve Task sınıflarının testleri
- Task sınıfının testi
- Task sınıfındaki hatanın düzeltilmesi
- Yapılandırmadaki Zaman Diliminin (Timezone) Düzeltilmesi
- TaskCollection sınıfının test edilmesi
-
Bölüm 33 - TodoRepository Implementasyonu
- Küçük bir yeniden düzenleme
- TodoRepository
- Test verisinin oluşturulması
- Repository’nin Test Edilmesi
-
Bölüm 18 - Nasıl bir uygulama oluşturacağız?
-
Kısım 3 - Konsol Uygulaması
-
Bölüm 34 - Artisan Sıkılaştırması
- Otuz saniyede Artisan
- Bu komutlar nerededir?
- Ön tanımlı komutların çıkartılması
-
Bölüm 35 - Komutlarımızın Planlanması
- Planlama, Planlama… Biraz Meta Alalım
- Uygulamamızdaki komutların listesi
- Yeni bir liste oluştur
- Tüm listeleri listele
- Listeyi Düzenle
- Listeyi arşivle
- Listeyi Yeniden Adlandır
- Bir görev ekle
- Bir görev tamamlandı işaretlemesi
- Görevlerin listelenmesi
- Görevi Düzenle
- Görevi Sil
- Görevleri taşı
- Tüm Komutlardan Oluşan Son Liste
-
Bölüm 36 - Yalancı Kodlama
- Yeni Liste Oluştur Yalancı kodu
- Listeyi Yok Et Yalancı kodu
- Tüm Listleri Listeleme Yalancı kodu
- Edit List Yalancı kodu
- Archive List Yalancı kodu
- Unarchive List Yalancı kodu
- Rename List Yalancı kodu
- Add Task Yalancı kodu
- Do Task Yalancı kodu
- Taskları Listeleme Yalancı kodu
- Edit Task Yalancı kodu
- Remove Task Yalancı kodu
- Move Task Yalancı kodu
- Yalancı Kodlama Üzerine Son Düşünceler
-
Bölüm 37 - Helper Fonksiyonlarının Kullanılması
- En Sık Fonksiyonlar
- Helper Fonksiyonlarının Oluşturulması
- Helper Fonksiyonlarımız İçin Unit Testleri
- pick_from_list() oluşturulması
- pick_from_list() metodunun test edilmesi
-
Bölüm 38 - ListAllCommand
- Plan
- ListAllCommand komutunun oluşturulması
- Artisan’a ListAllCommand komutunu anlatmak
- fire() metodunu biraz ete kemiğe büründürme
- Symfony’nin Table Helper’inin Kullanılması
- taskCount() metodunun yeniden düzenlenmesi
- List idlerinin sıralanması
-
Bölüm 39 - CreateCommand
- Plan
- CreateCommand komutunun Oluşturulması
- all_null() Helperi Eklenmesi
- CommandBase sınıfının doldurulması
- fire() metodunun implementasyonu
-
Bölüm 40 - UncreateCommand
- Plan
- UncreateCommand komutunun oluşturulması
- Komutunuzda Yığın İzlerini Alma
- askForListId() metodunun mevcut listeler yönünden implemente edilmesi
- Küçük Bir Temizlik
- Unit testlerinin düzeltilmesi
-
Bölüm 41 - EditListCommand
- Plan
- CommandBase sınıfının güncellenmesi
- EditListCommand komutunun oluşturulması
- Artisan’a EditListCommand Komutunu Bildirmek
- EditListCommand komutunun ön testi
- EditListCommand::fire() metodunun tamamlanması
-
Bölüm 42 - Dosyalar ve Config’in Yeniden Düzenlenmesi
- Config Yeniden Düzenlemesi
- Laravel’in File sınıfını kullanmak için yeniden düzenleme
-
Bölüm 43 - AddTaskCommand
- Plan
- AddTaskCommand komutunun oluşturulması
- fire() metoduna kod eklenmesi
- Manüel test
-
Bölüm 44 - DoTaskCommand
- Plan
- DoTaskCommand komutunun oluşturulması
- CommandBase sınıfının güncellenmesi
- DoTaskCommand komutunun test edilmesi
- Böceği Öldürmek
-
Bölüm 45 - ListTasksCommand
- Plan
- ListTasksCommand komutunun oluşturulması
- ListTasksCommand komutunun test edilmesi
-
Bölüm 46 - Kendi Köpek Mamamızı Yemek
- Kendi Köpek Mamanızın Yenmesi Nedir
- gsd yapılacaklar listesinin kurulması
-
Bölüm 47 - EditTaskCommand
- Plan
- Bir str2bool() helperi eklenmesi
- EditTaskCommand komutunun oluşturulması
- TodoList save() metodunun yeniden düzenlenmesi
- EditTask komutunun test edilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 48 - ArchiveListCommand ve UnarchiveListCommand
- Plan
- Komutların Oluşturulması
- ArchiveListCommand komutunun güncellenmesi
- CommandBase hatasının düzeltilmesi
- UnarchiveListCommand komutunun güncellenmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 49 - RenameListCommand
- gsd:list başlığı sonrasındaki boş satır
- RenameListCommand Komutu için Plan
- RenameListCommand komutunun oluşturulması
- ListInterface::delete() metodunun implemente edilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 50 - Yine Yeniden Düzenleme
- CommandBase::abort() eklenmesi
- askForListId() için ekleme
- gsd help tutarlılığını kontrol et
- ListInterface::delete() kullanımı
- Değiştirilen Dosyalar
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 51 - RemoveTaskCommand
- Plan
- RemoveTaskCommand komutunun oluşturulması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 52 - MoveTaskCommand
- Plan
- MoveTaskCommand komutunun oluşturulması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 53 - Listeler Boyunca Görevlerin Listelenmesi
- Plan
- ListAllCommand komutunun güncellenmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 54 - Komut Aliasları ve gsd kabuk scripti
- Komut Aliasları
- Aliasların ve makroların planlanması
- Aliasların implementasyonu
- Bash Scripti
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
- Bölüm 55 - Konsol Uygulamasında Daha Neler Yapılabilir?
-
Bölüm 34 - Artisan Sıkılaştırması
-
Kısım 4 - Web Uygulaması
-
Bölüm 56 - Web Sunucunun Kurulması
- Web sunucu izinleri
- Apache Kullanarak
- Nginx Kullanarak
- PHP’nin Yerleşik Sunucusunu Kullanarak
- You have arrived
-
Bölüm 57 - Web Uygulamasının Planlanması
- İlk Görüşler
- AJAX Çağrılarının Planlanması
- Javascript Nesnelerinin Tasarlanması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 58 - Web Sayfasının Takliti
- Bootstrap Kurulması
- Basit bir şablon oluşturulması
- Şablonu bizim taklite genişletin
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 59 - Kullanıcı İçin Geri Bildirim Eklenmesi
- View’lerin yapılandırılması
- İskeletin İnşa Edilmesi
- gsd style ve javascript’inin eklenmesi
- Bir mesaj kutusu eklenmesi
- Mesaj kutusunun bir fonksiyon yapılması
- Error Message fonksiyonunun implemente edilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 60 - AJAX rotalarının kurulması
- Bir Resource Controller Kullanılması
- Rotaları tamamlayın
- Controller Oluşturulması
- ListController iskeletinin tamamlanması
- Bir ListController metodunun test edilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 61 - Tepeye Nav Bar Eklenmesi
- Partial kısmının oluşturulması
- Varsayılan listenin yüklenmesi
- Gezinti Çubuğunun Yapılandırılması
- İlk AJAX çağrımızı yapıyoruz
- REST’in sunucu tarafının yapılması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 62 - Tepedeki Nav Barın Tamamlanması
- Gezinti çubuğuna javascript fonksiyonlarının atanması
- Görev çubuğuna sonucun yüklenmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 63 - Yan Navigasyon
- Layout’un güncellenmesi
- Yan çubuğun oluşturulması
- AJAX çağrısının tamamlanması.
- Javascript Güncellenmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 64 - Görevler
- Tekrarlama #1 - Temel yapı
- Tekrarlama #2 - Açık Görevlerin Gösterilmesi
- Tekrarlama #3 - Tamamlanmış Görevlerin Gösterilmesi.
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 65 - Bir Görevin Silinmesi
- TaskInterface’in Yeniden Düzenlenmesi
- Controller’in güncellenmesi
-
doDelete()
javascript metodunu güncelleyin. - Tamamlandı Flagının Tersine Çevrilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 66 - Görevler Eklenmesi ve Düzenlenmesi
- Modal Task Formu
- Javascript
- taskboxSave fonksiyonunun tamamlanması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 67 - Listelerin Arşivlenmesi ve Arşivden Çıkarılması
- AJAX archive metodunun implemente edilmesi
- AJAX archive() metodunun çağrılması
- AJAX unarchive metodunun implemente edilmesi
- AJAX unarchive() metodunun çağrılması
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 68 - Listelerin Oluşturulması ve Yeniden İsimlendirilmesi
- List Modal Eklenmesi
- Liste Oluştur Javascript’i Eklenmesi
- AJAX store çağrısının implemente edilmesi
- Rename Javascriptinin implemente edilmesi
- AJAX rename çağrısının implemente edilmesi
- Geliştirmekte Olduğumuz Ürünümüzü Kullanalım
-
Bölüm 69 - Görev Taşıma ve Ötesi
- Görevi Taşı Komutu
- Bundan Sonra Nereye Gideceğiz
- Son Bir Teşekkür
-
Bölüm 56 - Web Sunucunun Kurulması
-
Ekler
- Ek I - Composer
- Ek II - PHP Unit
-
Ek III - Apache Kurulumu
- Apache Yüklemesi
- İzinlerin Düzeltilmesi
- İsimli Virtual Host’lar Kullanılması
- UbuntuMint üzerine bir VirtualHost kurulması
-
Ek IV - Nginx Kurulumu
- Nginx Yüklemesi
- İzinlerin Düzeltilmesi
- UbuntuMint üzerine bir VirtualHost kurulması
Leanpub Önkoşulsuz, Risksiz, %100 Mutluluk Garantilidir
Leanpub'tan yaptığınız alışverişlerde, 60 günlük sürede %100 iade garantisi mevcut, bunun için sadece iki tıklama yeterli. İade talepleri elden işlenmektedir, aktifleşmesi birkaç gün alabilir. Detaylar için (ingilizce) kullanım sözleşmesini okuyunuz.
$10'lık bir alışverişte $8 ve $20'lık bir alışverişte $16 kazanın
$7,99 veya daha fazla alışverişlerde %80 telif ücreti ve $0,99 ile $7,98 arasındaki alışverişlerde %80 telif ücreti eksi 50 sentlik sabit ücret ödüyoruz. $10'luk bir satışta $8 ve $20'lık bir satışta $16 kazanıyorsunuz. Dolayısıyla, $20'luk kitabınızın 5000 iadesiz kopyasını sattığımızda, $80.000 kazanırsınız.
(Evet, bazı yazarlar Leanpub'ta bundan çok daha fazla kazandılar.)
Aslında, yazarlar Leanpub'ta13 milyon dolardan fazla yazarak, yayınlayarak ve satarak kazandılar.
Leanpub'ta yazma hakkında daha fazla bilgi edinin
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them