isi0635
Merhaba,
Tabi her şeyi sıfırdan kod yazmaya çalıştığım için çok yavaş ilerliyorum.
Yavaş ilerlemeniz normal ama doğru. Bu iş kod yazarak yapılan bir şey. Kod yazmaya devam. Nasıl kod yazdığınız da önemli. PHP bilginiz önemli. Şu konuda bir cevap yazdım, eser miktarda modern PHP içermekte, buradan bilginizi kontrol edebilirsiniz: https://laravel.gen.tr/d/3888-sarta-gore-sql-yazmak/5
Şimdi öğrenmeye çalışanlar içinde benim içinde bilmem gereken öğrenmek istediğim bir konu var.
Paket değil mi. Hayır, bilmeniz gereken bir konu değil. Öğrenmeye başlayanlar için en son bakılacak şey.
Soruyu soracağım ama belki çok basit ve bu soruda sorulurmu diyeceksiniz ama bilmediğimden soruyorum.
Soru basit ama cevabı komple bir ekosistemi anlatmak demek. Sorabilirsiniz ama yanlış yerden başladığınız için soruyorsunuz ya da amacınız farklı.
Laravelde paketler mi oluyor. Eğer oluyorsa bu paketler laravelin kendi ürettiği paketlermi yoksa 3.kişiler tarafından üretilen ayrı paketler mi oluyor.
Evet, paketlerimiz var. Laravel'in resmi paketleri de var, başkalarının ürettiği paketler de var.
Var ise bu paketleri yüklemek sakıncalı mı.
Hem evet hem hayır. Hangi paketi yüklediğinize, nasıl kullandığınıza bağlı. Yeni başlayan biri için evet, sakıncalı. Paketle işiniz yok.
Paketler şöyle birşey mi.. Mesela wordpresten örnek verecek olursam mesela bir modül yüklüyorduk mesela sitede ekstra bir özellik ekleyip onu kullanıcalara yansıtıyorduk. Laravelde ise paket yükleyip bu paket sayesinde ekstra özel kodlar kullanıp sitede birşeyler mi yaratmamız sağlanıyor.
Eh işte. Ekstra özellik, evet. Ekstra özel kod, evet ama Wordpress tarzı modül? Hayır. Laravel bir framework. O tarz bir şeyi çok nadir görürsünüz (Laravel Horizon mesela, ne olduğuna şimdilik bakmayın ama).
Mesela kategoriler bölümü oluşturacağım. Bununla ilgili kodlar yazacağım controller methotlar modüller oluşturmam gerekiyor. blade de döngüler oluşturup bu sistemi yaratacağım. Ama paket sistemi kullanımına geçip kategorileri birkaç satır kodla çağırıp oluşturabilecek miyim.
Hem evet hem hayır. Yapacağınız şeye ve kullandığınız pakete göre daha fazla ve daha karmaşık kod yazmanız gerekebilir.
Mesela sitede bir arama çubuğum var. O çubuğun çalışması için kod yazma yerine paket yükleyip birkaç satır kod ile sitemde aktif mi edebiliyorum.
Arama çubuğu bir UI ögesi, frontend ile ilgili bir konu. Laravel'i backend olarak düşünmeniz lazım. Yani hayır, o çubuğun çalışması için kod yazma yerine paket yükleyip birkaç satır kod ile sitemde aktif edemiyorsunuz. Önce sistemi ve arama çubuğunu, sonra arkasındaki mantığı yazmanız gerekiyor.
Varsa bu paketler nerede bulunur. Ücretli ücretsizmi oluyor
Paketler Github (genellikle burada), Gitlab, Bitbucket gibi online GIT repoları sağlayan servislerde tutulur ama bunlar aynı zamanda birer PHP paketi olduğu için, yani Composer ile kurulduğu için bir adres vermek gerekirse adresimiz https://packagist.org/ . Paketler ücretsizdir ama tek tük ücretli olanlar var elbette.
Buarada github diye biryer var ama kullanmasını bilmiyorum. Orayıda öğrenmeye çalışacağım.
İlk işiniz bu olsun.
Biliyorum yolum uzun ama doğru yerden başlayıp doğru şekilde sürdürmek istiyorum.
Paketleri merak ederek pek doğru bir adım atmamışsınız. Yolun uzun olduğu doğrudur, yaş 38'e dayandı hala yazıyoruz.
Sonuç olarak;
Paketin az çok ne olduğunu anlamışsınız ama bunları sorarak doğru yerden başlayıp doğru şekilde sürdürmek istiyorum sözünüzün de tam tersini yapmışsınız. Laravel'den önce:
- GIT nedir, Github nedir, bir de Gitlab, Bitbucket var, onlar nedir?
- Yazılım mimarisi ve tasarım desenleri
- Uygulama Mantığı (Application Logic) ve İş Mantığı (Business Logic)
- Modern PHP geliştirme ekosistemi ve Composer
- Modern PHP'de tasarım desenleri
- Modern PHP uygulamaları nasıl deploy edilir, CI/CD nedir?
var ama herkes gibi siz de direkt Laravel kullanmak istiyorsunuz, hak veriyorum. Paket olayını boş verin çünkü Wordpress aksine Laravel'i kurduğunuzda hiçbir iş yapmayan, boş bir uygulama iskeleti elde edersiniz. Bir kaç temel fonksiyonu dışında çalışan bir şey olmaz ki onları da sizin ayarlamanız gerekmekte. Yani ortada bir uygulama yokken paketten bahsetmek pek mantıklı olmaz.
Siz öğrendikçe ihtiyaçlarınız sizi bir yerlere götürecektir diyerek bitiriyor ve foruma tekrar hoş geldiniz diyorum.
Yazdıklarım yazılım geliştirme işine mühendislik olarak bakan insanlar içindir (Mühendis olmanıza gerek yok, ben değilim mesela). Script basıp satıcam abi diyenlerin ciddiye almasına gerek yok, onlar bir yolunu buluyor zaten 🙂