Dry-rb: ne, neden ve nasıl - kurs 4900 ovmak. ThinkNetica'dan, 3 web semineri eğitimi, Tarih 27 Kasım 2023.
Miscellanea / / November 27, 2023
Biçim
2 saat süren 3 web semineri
Pratik
Uygulamaların bir kısmını sınıfta, bir kısmını da web seminerinden sonra kendiniz yapacaksınız.
İletişim
Canlı sohbet desteğine sahip olacaksınız ve web seminerleri yaygın soruları ve hataları, en iyi uygulama ve çözüm örneklerini kapsayacaktır.
Sonuç
- Bağımlılık enjeksiyonunun neden gerekli olduğunu, uygulamaların sürdürülebilirliğine, test edilebilirliğine ve modülerliğine nasıl yardımcı olduğunu anlayacaksınız.
- Kontrolü Tersine Çevirme (IoC) kapsayıcılarının bununla ne ilgisi olduğunu ve kapsayıcılardaki bağımlılıklara göre hangi analiz seçeneklerini kullanabileceğinizi anlayacaksınız.
- Demiryolu modeliyle tanışın (raylı yol ile karıştırılmamalıdır) ve bu yaklaşımın, adımların herhangi birinde başarısız olabilecek iş mantığının yazılmasına nasıl yardımcı olduğunu öğrenin.
- Herhangi bir aktarım kütüphanesini kullanabileceğiniz basit bir hizmet çerçevesi oluşturun (örneğin hem tüketici hem de http/rpc çağrıları için) ve yalnızca AR veya ROM.
- Hangi tür doğrulamaların olabileceğini ve herhangi bir veri şeması için nasıl doğrulayıcı yazılacağını öğreneceksiniz.
- RoR dışında Ruby geliştirmede neler olduğunu öğreneceksiniz, bu sayede sadece hanamiyi değil aynı zamanda diğer dillerdeki çerçeveleri de anlayabileceksiniz (yaklaşımlar Python, Java, JS ve diğer ekosistemlerde kullanılmaktadır)
- Monad'ın nasıl kullanılacağını öğrenin
Katılımcılar için gereksinimler
1. Bir yıllık Ruby geliştirme deneyimi. MVC, veritabanını sorgulama ve minimum testler yazma yeteneği gibi web geliştirmeyle ilgili temel şeyleri bilmek önemlidir.
2. GitHub'daki profil
3. Temel komut satırı ve git becerileri
4. Ray yolu dışındaki yaklaşımları anlama arzusu
3 web semineri
Pratik görevler
Yazarla iletişim ve soruların cevapları
1.gün. Bağımlılıklar, DI, IoC kapsayıcıları. Proje çerçevesini oluşturuyoruz.
- Öncelikle koddaki bağımlılıkları anlamanız gerekecek; ana ünitede kullanılan tüm kütüphanelerde, sınıflarda, modüllerde, işlevlerde vb.
- Bağımlılıkları izlemenin iki yoluna bakalım: Dependency Injection ve temel. DI'nin birim ve entegrasyon testlerinin yazılmasına nasıl yardımcı olduğunu görelim.
- Karmaşıklığı arttırmamak için uygulaması kuru konteyner olan IoC konteynerlerine bakalım.
- Yükleme yönetimi için kuru sistemi düşünün. Son olarak sisteme herhangi bir katman eklemenizi sağlayacak temel bir projeye bakacağız.
Sonuç olarak şunları yapabileceksiniz:
Dry-rb'nin genel olarak ne olduğunu, Katmanlı mimari stilinin ne olduğunu ve hangi sorunları çözdüğünü anlayın. Ayrıca DI ve kapsayıcıların uygulama yapıları oluşturmaya nasıl yardımcı olduğunu da anlayın. Daha sonra ilk uygulamamızı kuru sistem kullanarak yazacağız.
2. gün. İş mantığını yazıyoruz. Demiryolu, sonuç nesneleri ve doğrulama.
- İş mantığıyla çalışmak için, bir iş sürecinin teknik adımlarını, her adımın tüm süreci tamamlayabileceği bir zincire bağlamanıza olanak tanıyan demiryolu modelini ele alacağız.
- Demiryolunun çalışabilmesi için, modeli uygulamanın bir yolu olarak kuru monadlardan DO notasyonlarını alacağız. Monadların nasıl ve neden kullanılacağını tartışalım.
- Ve üzerinde çalıştığımız ve veritabanına yazdığımız veri şemasının geçerli olduğundan emin olmak için kuru şema ve kuru doğrulama kullanacağız.
Sonuç olarak şunları yapabileceksiniz:
İş mantığını tanımlamak için demiryolu yaklaşımını kullanmayı öğrenin. Sonuç nesneleri olarak monadlara neden ihtiyaç duyulduğunu ve verilerin ve iş mantığının nasıl doğrulanacağını anlayacaksınız.
3 gün. Taşıma ve kalıcılık katmanlarını ekleme. Dry-rb kütüphanelerinin geri kalanına bakalım.
- Çeşitli taşımaları (http, tavşan, kafka) ve kalıcılık kütüphanelerini (rom, devamı vb.) eklemenin yollarına bakalım ve projemizi genişletelim.
- Geriye kalan kuru kütüphanelere kısaca göz atalım ve nerede kullanılacağından bahsedelim. Ayrıca işlevsel nesnelerin bununla ne ilgisi var?
- Boşluğun yapısıyla ilgili bundan sonra neler yapılabileceğini ve nasıl değiştirilebileceğini tartışalım. Neler eklenir, neler çıkarılır, dilime ve altıgen yapıya nasıl ulaşılır.
Sonuç olarak:
Sistemi tek parça halinde toplayalım.
Her türlü taşıma ve kalıcılık katmanının nasıl ekleneceğine bakalım.
Dry-rb ekosisteminden kalan kütüphanelere bakalım.
Geliştirmeye veya tamamlanmış bir ham parçayı kullanmaya yönelik diğer adımları tartışalım.