Laravel Türkiye Discord Kanalı Forumda kod paylaşılırken dikkat edilmesi gerekenler!Birlikte proje geliştirmek ister misiniz?

emredipi

  • 10 Şub
  • 17 Kas 2019 tarihinde katıldı
  • 1 en iyi yanıt
  • Davet tartışmasında


    Kabul görürse bu yayını kaçırmamam lazım . Sabahın köründe işe gidenler var Cumartesi akşamına deng gelse süper olur 🙂)

    • Tasdemir Proje olarak mobil bir uygulama düşünmeye çalışın, mobil uygulama ile çözülmesi gereken bir şeyler... Sonra Laravel ile ona API yazacaksınız, mobil uygulamayı yapmasanız da olur. Artık bunu öneriyorum/önereceğim. Bu noktada can alıcı noktalar:

      Queue - İşlemlerin kuyrukta yapılarak bloklanan çalışma prensibinin aşılması ve/veya ileri tarihli işlemler
      https://laravel.com/docs/9.x/queues

      Broadcasting - Pusher gibi servisler ile BE ve FE'nin anlık iletişimi, real-time işlemlerin mümkün kılınması
      https://laravel.com/docs/9.x/broadcasting

      Event/Listener - Her işlemin ne yaptığını uygulama genelinde bildirmesi ve gerektiğinde bir noktadan yapılan işlemin tespit edilip başka bir işlemin yapılabilmesi
      https://laravel.com/docs/9.x/events

      Notifications - Mail, SMS, push... bildirimleri
      https://laravel.com/docs/9.x/notifications

      Rate Limiting - İsteklerin sınırlandırılması
      https://laravel.com/docs/9.x/rate-limiting

      Task Scheduling - Görev zamanlayıcı ile bazı işlemlerin arka planda periyodik gerçekleştirilmesi
      https://laravel.com/docs/9.x/scheduling

      Storage - Her türlü dosya yükleme, çağırma işlemleri
      https://laravel.com/docs/9.x/filesystem

      API Resources - Restful API yazarken istemciye verilen yanıtın yönetilmesi
      https://laravel.com/docs/9.x/eloquent-resources

      Validation - Gelen isteklerdeki ve bazı yerlerde uygulama içi verilerin en ön katmanda doğrulanması
      https://laravel.com/docs/9.x/validation

      Cache - Yapılan işlemlerin önbelleğe alınarak session olmayan yerlerde geçici/kalıcı veri tutma ve performans iyileştirmeleri
      https://laravel.com/docs/9.x/cache


      Horizon - Kuyruk yönetimi
      https://laravel.com/docs/9.x/horizon

      Passport - Token authentication (OAuth denir bilmiyorsanız önce onu öğrenmeniz gerekiyor)
      https://laravel.com/docs/9.x/passport

      Sanctum - Token authentication (OAuth kullanmadan, klasik yöntem)
      https://laravel.com/docs/9.x/sanctum

      Socialite - Sosyal medya sağlayıcıları ile sisteme giriş ve kayıt yapılması
      https://laravel.com/docs/9.x/socialite

      Telescope - Uygulama taraflı debug
      https://laravel.com/docs/9.x/telescope


      Restful API tasarımı hakkında
      https://cloud.google.com/apis/design

      Laravel ile geliştirme sırasında takip edilebilecek bir rehber
      https://spatie.be/guidelines/laravel-php

      Modern PHP Standartları
      https://www.php-fig.org/

      • Request kullanım şekli tartışmasında
        • mgsmus

          Seviye 1382
        • Düzenlendi
        • En İyi Yanıtsineld tarafından

        muharremozdemir Bununla ilgili oturup çok güzel bir açıklama yazmıştım ama cevapladığım şahıs tüm mesajlarını silip kendi hesabını da silerek forumdan ayrıldığı için konuyu kaybettik. Bunun gibi birkaç olayı LinkedIn'de sitemli bir şekilde paylaştım ama daha çok tepki aldım, ben de açıkçası bu tür şeyleri ciddiye aldığım için kendimi suçlayıp LinkedIn postunu sildim. Neyse, yapılacak bir şey yok...

        tl;dr
        Daima $request->input() kullanın.

        $request->input()

        1. $request->name şeklindeki kullanımı kesinlikle kullanmayın. En basitinden $request->headers şeklinde bir özellik var. Siz de dışarıdan headers isimli bir şey gönderirseniz $request->headers yazdığınızda sizin değer mi gelir yoksa http headers mı? O yüzden bu tür karışlıklıkları engellemek için daima $request->input() kullanın.
        2. $request->input('filters.name') şeklinde dizi şeklinde gelen içeriğe ulaşabilirsiniz.
        3. $request->input('filters.*') ya da $request->input('filters.0.id') gibi dizi gelen parametrelerde kolay işlem yapabilirsiniz. data_get() ile kullanımın hepsi geçerlidir.
        4. $request->input('quantity', 1) şeklinde gelen parametre boş ise varsayılan değer belirleyebilirsiniz.
        5. $request->input('quantity', 1) bana göre daha okunaklı. Kullanıcı tarafından gelen bir parametre olduğunu bakarken anlayabiliyorum.

        $request->input(), Request::input(), request()->input()... hangisi kullanılmalı?

        Request::input() ile request()->input() aynı şey; $request->input() ise genellikle Request sınıfı yönteme enjekte edildiğinde kullanırsınız. Burada önemli olan, Request sınıfı $request değişkeni ile enjekte edilmiş ise daima o değişkeni kullanmalısınız. Özellikle form request enjekte ettiğinizde Request::input() ya da request()->input() size form request objesini değil, yeni oluşturulmuş Request objesini verir ki onun içinde mesela validated() olmayacaktır. Yanlış Request'i almış olursunuz.

        $request->get(), $request->post() gibi yöntemler var, bunlar nedir? Kullanılabilir mi?

        Bunlar Request sınıfının üstüne inşa edildiği Symfony bileşeninden gelmekte olup hiçbir şekilde kullanmamanız gerekiyor. Her şeyin çözümü $request->input().

        • isset

          cascadeOnUpdate
          users tablosundaki alan değişirse o alanın foreign key olarak geçtiği alt tablolarda da foreign key değeri otomatik yeni alan değeri ile değişir.

          cascadeOnDelete
          users tablosundan bir kayıt silindiğinde foreign key olan alt tabloda da alan değeri foreign key olan kayıtlar otomatik silinir.

          restrictOnUpdate
          cascadeOnUpdate ile aynı mantık ama güncelleme yerine güncellemeye izin verme demek. Yani ilişkili kayıtlar varken güncelleme yapılamaz demek.

          restrictOnDelete
          cascadeOnDelete ile aynı mantık ama silme yerine silmeye izin verme demek. Yani ilişkili kayıtlar varken kayıt silinemez demek.

          nullOnDelete
          Üst kayıt silindiğinde alt kayıtlardaki foreign key alanlarını null yapm demek. users tablosundan bir kayıt silindi mi alt tablolarda o kaydı tutan foreign key otomatik null olacak.

          ---

          Foreign key veritabanı ile ilgili, sizin Eloquent ile ilişki kurmanız için bir gereksinim değil. Eloquent kullandığınızda yazılımsal olarak ilişki kurup mantıksal objeler elde ediyorsunuz. Veritabanı düzeyinde yaparsanız (yani join) sadece bir araya gelmiş alanlardan bir satır elde edebilirsiniz.

          Güvenlik ile ilgili bir konu değil.

        • TailAdmin JIT Tema/UI Kit tartışmasında
        • Bilpp Tech'te stajyer olarak görevlendirilmek üzere Arduino, Raspberry Pi gibi elektronik devre kartlarını programlama ile ilgilenen veya ilgilenmek isteyen; IoT, 5g, big data gibi konulara meraklı; uluslararası bir şirkette deneyim yaşamak isteyen elektrik-elektronik mühendisi, yazılım mühendisi veya bilgisayar mühendisi hardware developer arkadaşlar arıyoruz.

          Lokasyon: Uzaktan / Remote

          İletişim: hr@bilpp.com

        • Laravel yeni başladım. tartışmasında

          Laravel ile ilgili kaliteli bulduğum kaynaklar ve kurslar: