Dry-rb: apa, mengapa dan bagaimana - kursus 4900 gosok. dari ThinkNetica, pelatihan 3 webinar, Tanggal 27 November 2023.
Miscellanea / / November 27, 2023
Format
3 webinar berlangsung 2 jam
Praktik
Anda akan melakukan sebagian latihan langsung di kelas, dan sebagian lagi sendiri setelah webinar.
Komunikasi
Anda akan mendapatkan dukungan obrolan langsung, dan webinar akan membahas pertanyaan dan kesalahan umum, contoh praktik terbaik dan solusi.
Hasil
- Anda akan memahami mengapa injeksi ketergantungan diperlukan, bagaimana hal ini membantu dalam pemeliharaan, pengujian, dan modularitas aplikasi.
- Anda akan memahami apa hubungan container Inversion of Control (IoC) dengan container tersebut dan opsi analisis apa yang dapat Anda gunakan berdasarkan dependensi dalam container
- Kenali pola jalur kereta api (jangan bingung dengan jalur rel) dan pelajari bagaimana pendekatan ini membantu dalam menulis logika bisnis yang bisa gagal pada langkah mana pun.
- Buat kerangka layanan sederhana di mana Anda dapat menggunakan perpustakaan transportasi apa pun (seperti untuk panggilan konsumen dan http/rpc) dan perpustakaan apa pun untuk persistensi, bukan hanya AR atau ROM.
- Anda akan mempelajari jenis validasi apa yang ada dan cara menulis validator untuk skema data apa pun.
- Anda akan mempelajari apa saja yang ada dalam pengembangan Ruby di luar RoR, berkat itu Anda akan dapat memahami tidak hanya hanami, tetapi juga kerangka kerja dalam bahasa lain (pendekatan digunakan dalam Python, Java, JS, dan ekosistem lainnya)
- Pelajari cara menggunakan monad
Persyaratan untuk peserta
1. Satu tahun pengalaman pengembangan Ruby. Penting untuk mengetahui hal-hal dasar yang berkaitan dengan pengembangan web, seperti MVC, kemampuan untuk melakukan query database dan menulis tes minimal.
2. Profil di GitHubÂ
3. Baris perintah dasar dan keterampilan gitÂ
4. Keinginan untuk memahami pendekatan selain jalur rel
3 webinar
Tugas praktis
Komunikasi dengan penulis dan jawaban atas pertanyaan
Hari 1. Ketergantungan, DI, wadah IoC. Kami menyusun kerangka proyek.
- Pertama, Anda harus memahami dependensi dalam kode, mis. di perpustakaan, kelas, modul, fungsi, dll. yang digunakan di unit utama.
- Mari kita lihat dua cara untuk melacak dependensi: Injeksi Ketergantungan dan dasar. Mari kita lihat bagaimana DI membantu dalam menulis tes unit dan integrasi.
- Agar tidak menambah kerumitan, mari kita lihat container IoC yang implementasinya adalah dry-container.
- Untuk manajemen pemuatan, pertimbangkan sistem kering. Terakhir, kita akan melihat proyek dasar yang memungkinkan Anda menambahkan lapisan apa pun ke sistem.
Hasilnya, Anda akan dapat:
Pahami apa itu dry-rb secara umum dan apa itu gaya arsitektur Berlapis serta masalah apa yang dipecahkannya. Dan juga memahami bagaimana DI dan container membantu dalam membuat struktur aplikasi. Setelah itu, kita akan menulis aplikasi pertama kita menggunakan sistem kering.
Hari ke-2. Kami menulis logika bisnis. Kereta api, objek hasil dan validasi.
- Untuk bekerja dengan logika bisnis, kami akan mempertimbangkan pola kereta api, yang memungkinkan Anda menghubungkan langkah-langkah teknis dari proses bisnis ke dalam rantai di mana setiap langkah dapat menyelesaikan keseluruhan proses.
- Agar jalur kereta api dapat berfungsi, kami akan mengambil notasi DO dari monad kering sebagai cara untuk mengimplementasikan pola tersebut. Mari kita bahas bagaimana dan mengapa menggunakan monad.
- Dan untuk memastikan bahwa skema data yang kita gunakan dan yang kita tulis ke dalam database adalah valid, kita akan menggunakan skema kering dan validasi kering.
Hasilnya, Anda akan dapat:
Belajar menggunakan pendekatan kereta api untuk menggambarkan logika bisnis. Anda akan memahami mengapa monad diperlukan sebagai objek hasil dan cara memvalidasi data dan logika bisnis.
Hari ke-3. Menambahkan lapisan transport dan persistensi. Mari kita lihat perpustakaan dry-rb lainnya.
- Mari kita lihat cara untuk menambahkan berbagai transport (http, kelinci, kafka) dan perpustakaan persistensi (rom, sekuel, dll) dan memperluas proyek kita.
- Mari kita lihat sekilas perpustakaan kering yang tersisa dan bicarakan di mana menggunakannya. Dan juga apa hubungannya dengan objek fungsional?
- Mari kita bahas apa yang bisa dilakukan selanjutnya dengan struktur blanko dan bagaimana mengubahnya. Apa yang ditambahkan, apa yang harus dihapus, bagaimana cara mendapatkan potongan dan struktur heksagonal.
Sebagai akibat:
Mari kita rakit sistem menjadi satu kesatuan.
Mari kita lihat cara menambahkan semua jenis lapisan transport dan persistensi.
Mari kita lihat perpustakaan yang tersisa dari ekosistem dry-rb.
Mari kita bahas langkah selanjutnya untuk pengembangan atau penggunaan blanko yang sudah jadi.