Posts

Showing posts from April, 2025

🧠 Lambda with Receiver

 āĻ…āĻŦāĻļ্āϝāχ! 🧠 āφāĻŽি āĻ–ুāĻŦāχ āϏāĻšāϜāĻ­াāĻŦে āĻŦাংāϞাāϝ় āĻŦ্āϝাāĻ–্āϝা āĻ•āϰāĻ›ি — āϝেāύ āϤুāĻŽি āĻŽāύে āϰাāĻ–āϤে āĻĒাāϰো। Lambda with Receiver āĻŽাāύে āĻšāϚ্āĻ›ে: Lambda (āĻāĻ•āϟা āĻ›োāϟ āĻĢাংāĻļāύ) — āϝাāϰ āĻ­িāϤāϰে āĻāĻ•āϟা āĻ…āĻŦāϜেāĻ•্āϟ āϏāϰাāϏāϰি āĻ…্āϝাāĻ•্āϏেāϏ āĻ•āϰāϤে āĻĒাāϰāĻŦে this āĻ›া⧜া āĻŦা āĻ•োāύো āϰেāĻĢাāϰেāύ্āϏ āĻ›া⧜াāχ! āωāĻĻাāĻšāϰāĻŖ āĻĻি⧟ে āĻŦāϞি: āϧāϰো, āϤুāĻŽি āĻāĻ•āϟা StringBuilder āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāĻ›ো। āϏ্āĻŦাāĻ­াāĻŦিāĻ•āĻ­াāĻŦে āĻ•āϰāϤে āĻ—েāϞে āϞিāĻ–āϤে āĻšā§Ÿ: val builder = StringBuilder() builder.append("Hello, ") builder.append("World!") println(builder.toString()) āĻāĻ–āύ, Lambda with Receiver āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϞে āĻāϰāĻ•āĻŽ āĻšāĻŦে: val message = buildString { append("Hello, ") append("World!") } println(message) āĻ•ি āϞāĻ•্āώ্āϝ āĻ•āϰāϞে? append() āĻ•āϰāϤে āĻ—ি⧟ে āφāϰ builder. āϞিāĻ–āϤে āĻšā§Ÿāύি! āĻ­িāϤāϰে āϏāϰাāϏāϰি append() āĻ•āϞ āĻ•āϰা āϝাāϚ্āĻ›ে। āĻ•াāϰāĻŖ, buildString āĻāĻ•āϟা Lambda with Receiver āĻĢাংāĻļāύ — āϝাāϰ āĻ­িāϤāϰে StringBuilder āϤোāĻŽাāϰ āϜāύ্āϝ Receiver āĻšā§Ÿে āĻ—েāĻ›ে। āϤাāχ āϤুāĻŽি āϏāϰাāϏāϰি āϤাāϰ āĻĢাংāĻļāύ ( append , toString āχāϤ্āϝাāĻĻি) āĻ•āϞ āĻ•āϰāϤে āĻĒাāϰāĻ›ো। āϤাāĻšāϞে āϏংāĻ•্āώেāĻĒে āĻŦāϞি: āĻŦিāώ⧟ āĻŦ্āϝাāĻ–্āϝা Receiver āϝাāϰ āĻ“āĻĒāϰ āĻ•াāϜ āĻ•āϰāĻŦো (āϝেāĻŽāύ...

🧠 Regex āĻ•ী?

 āĻĻাāϰুāύ! ✨ āφāĻĒāύি Regex (Regular Expression) āϜাāύāϤে āϚাāϚ্āĻ›েāύ — āφāĻŽি āφāĻŦাāϰ āĻāĻ•āĻĻāĻŽ brain-friendly āĻŦাংāϞা āĻ­াāώা⧟ āϏāĻšāϜ āĻ•āϰে āĻŦ্āϝাāĻ–্āϝা āĻ•āϰāĻŦো। 🧠 āĻĒ্āϰāĻĨāĻŽে āϏāĻšāϜ āĻ­াāώা⧟ — Regex āĻ•ী? Regex āĻšāϞো: āĻāĻ•āϟা āĻŦিāĻļেāώ āĻ­াāώা , āϝেāϟা āĻĻি⧟ে āφāĻĒāύি āĻ•োāύো āϟেāĻ•্āϏāϟেāϰ (āϞেāĻ–াāϰ) āĻŽāϧ্āϝে āĻĨেāĻ•ে pattern (āύিāϰ্āĻĻিāώ্āϟ āϧāϰāύ) āĻ–ুঁāϜে āĻŦেāϰ āĻ•āϰāϤে āĻĒাāϰেāύ, āĻŽিāϞাāϤে āĻĒাāϰেāύ, āĻŦা āĻĒāϰিāĻŦāϰ্āϤāύ āĻ•āϰāϤে āĻĒাāϰেāύ। āϏāĻšāϜ āĻ­াāώা⧟ āĻŦāϞāϞে: Regex = "āϞেāĻ–াāϰ āĻ­েāϤāϰ āύি⧟āĻŽ āĻ–ুঁāϜে āĻŦেāϰ āĻ•āϰাāϰ āϜাāĻĻুāĻŽāύ্āϤ্āϰ" đŸŽ¯ āωāĻĻাāĻšāϰāĻŖ āĻĻি⧟ে āĻŦুāĻি: āϧāϰুāύ, āφāĻĒāύি āĻāĻ•āϟা āϟেāĻ•্āϏāϟে āϏāĻŦ āĻŽোāĻŦাāχāϞ āύাāĻŽ্āĻŦাāϰ āĻ–ুঁāϜāϤে āϚাāύ। Regex āĻĻি⧟ে āφāĻĒāύি āĻŦāϞে āĻĻিāϤে āĻĒাāϰেāύ: āϏāĻŦ āύাāĻŽ্āĻŦাāϰ āĻšāĻŦে ā§§ā§§ āϏংāĻ–্āϝাāϰ । āĻļুāϰু āĻšāĻŦে "01" āĻĻি⧟ে। 👉 āϤāĻ–āύ āφāĻĒāύি āĻāĻŽāύ āĻāĻ•āϟা Regex āĻŦাāύাāĻŦেāύ āϝেāϟা āĻāχ āύি⧟āĻŽে āĻŽিāϞāĻŦে! 🎨 āĻ›োāϟ্āϟ Example: 01[0-9]{9} āĻŽাāύে: 01 āĻĻি⧟ে āĻļুāϰু āϤাāϰāĻĒāϰ [0-9] → āϝেāĻ•োāύো āϏংāĻ–্āϝা (0 āĻĨেāĻ•ে 9) {9} → āĻ িāĻ• ⧝āϟা āϏংāĻ–্āϝা āĻĨাāĻ•āĻŦে 📜 Kotlin āĻ āĻ•িāĻ­াāĻŦে āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāĻŦেāύ? val regex = Regex("01[0-9]{9}") val text = "āφāĻŽাāϰ āύাāĻŽ্āĻŦাāϰ 01712345678 āĻāĻŦং āĻ…āĻĢিāϏেāϰ āύাāĻŽ্āĻŦাāϰ 01998765432" val matches = regex.findAll(text) for (match in matches) { printl...

✅ āϏāĻŦāĻ—ুāϞো Scoping Function-āĻāϰ āϏāĻšāϜ āĻŦাংāϞা āĻĒāϰিāϚ⧟

 āĻ…āĻŦāĻļ্āϝāχ! Kotlin āĻāϰ Scoping Functions āĻļেāĻ–াāϟা āĻ–ুāĻŦāχ āĻŽāϜাāϰ, āϝāĻĻি āφāĻĒāύি āĻāĻ•ে āĻ—āϞ্āĻĒেāϰ āĻŽāϤো āĻŦুāĻেāύ। āύিāϚে āφāĻŽি āϏāĻŦāĻ—ুāϞো Scoping Function (āϝেāĻŽāύ: let , run , with , apply , also ) āĻāĻ•āĻĻāĻŽ āϏāĻšāϜ āĻ“ āĻŦ্āϰেāχāύ-āĻĢ্āϰেāύ্āĻĄāϞি āĻ­াāĻŦে āĻŦাংāϞা āĻ­াāώা⧟ āĻŦ্āϝাāĻ–্āϝা āĻ•āϰāĻ›ি। 🔍 Scoping Function āĻ•ী? Scoping Function āĻšāϞ āĻāĻŽāύ āĻ•িāĻ›ু āĻ›োāϟ āĻĢাংāĻļāύ āϝা āĻ…āĻŦāϜেāĻ•্āϟেāϰ āωāĻĒāϰ āύিāϰ্āĻĻিāώ্āϟ āĻ•িāĻ›ু āĻ•াāϜ āĻ•āϰāϤে āĻŦা āĻŽāĻĄিāĻĢাāχ āĻ•āϰāϤে āĻŦ্āϝāĻŦāĻšৃāϤ āĻšā§Ÿ—āĻ›োāϟ āĻ›োāϟ āĻŦ্āϞāĻ•ে। āĻāϤে āĻ•োāĻĄ āϏুāύ্āĻĻāϰ āĻ“ āĻĒāϰিāώ্āĻ•াāϰ āĻšā§Ÿ। ✅ āϏāĻŦāĻ—ুāϞো Scoping Function-āĻāϰ āϏāĻšāϜ āĻŦাংāϞা āĻĒāϰিāϚ⧟ Function Context Object Return Value Use Case let it Lambda result Null check āĻŦা āĻĄেāϟা āĻĒ্āϰāϏেāϏ āĻ•āϰাāϰ āϜāύ্āϝ run this Lambda result Object configure āĻ“ āϞাāϏ্āϟ result āĻĻāϰāĻ•াāϰ āĻšāϞে with this Lambda result āĻĒুāϰāύো object āĻ•ে āĻŦ্āϞāĻ•েāϰ āĻŽāϧ্āϝে āĻ•াāϜ āĻ•āϰাāϤে apply this Object itself Object initialize āĻŦা setup āĻ•āϰাāϰ āϜāύ্āϝ also it Object itself Logging āĻŦা extra side task āĻāϰ āϜāύ্āϝ 🧠 āĻ—āϞ্āĻĒ āĻ•āϰে āĻļেāĻ–া āϝাāĻ• (Brain-friendly): 1️⃣ let — "āĻāĻ•āϟু āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰে āĻĻেāĻ–ি" val name: String? = "Rahim" name?.let { println("Name i...

đŸ“Ļ CDN āĻ•ী?

CDN āĻŽাāύে āĻšāϚ্āĻ›ে Content Delivery Network , āĻŦাংāϞাāϝ় āĻŦāϞāϞে — “āĻ•āύ্āϟেāύ্āϟ āϏāϰāĻŦāϰাāĻš āĻ•āϰাāϰ āϜাāϞেāϰ āĻŽāϤো āĻŦ্āϝāĻŦāϏ্āĻĨা”। āĻāϟা āĻ…āύেāĻ•āϟা āĻĻেāĻļāϜু⧜ে āĻ›ā§œি⧟ে āĻĨাāĻ•া āĻ—োāĻĄাāωāύেāϰ āĻŽāϤো, āϝেāĻ–াāύ āĻĨেāĻ•ে āχāωāϜাāϰāĻĻেāϰ āĻ•াāĻ›ে āĻĻ্āϰুāϤ āĻĒāĻŖ্āϝ āĻĒৌঁāĻ›ে āĻĻেāĻ“ā§Ÿা āĻšā§Ÿ। 🧠 āĻŦাāϏ্āϤāĻŦ āωāĻĻাāĻšāϰāĻŖ (āĻŽাāĻĨা⧟ āĻŦāϏāĻŦে āĻ—্āϝাāϰাāύ্āϟি!) āϧāϰি āϤুāĻŽি āĻĸাāĻ•াāϝ় āφāĻ›ো, āφāϰ āĻāĻ•āϟা āĻ“āϝ়েāĻŦāϏাāχāϟেāϰ āĻ›āĻŦি āϞোāĻĄ āĻ•āϰāϤে āϚাāχāϞে āϏেāχ āĻ›āĻŦিāϟা āφāĻŽেāϰিāĻ•াāϰ āϏাāϰ্āĻ­াāϰ āĻĨেāĻ•ে āφāύāϤে āĻšā§Ÿ। āϤāĻ–āύ... āϏāĻŽā§Ÿ āĻŦেāĻļি āϞাāĻ—ে āχāύ্āϟাāϰāύেāϟ āϧীāϰ āĻšā§Ÿ āĻ“āϝ়েāĻŦāϏাāχāϟ āϏ্āϞো āϞোāĻĄ āĻšā§Ÿ āĻāĻ–āύ āϝāĻĻি āϏেāχ āĻ›āĻŦিāϰ āĻāĻ•āϟা āĻ•āĻĒি āĻĸাāĻ•াāϝ় āϰাāĻ–া āĻĨাāĻ•ে, āϤাāĻšāϞে— ✅ āĻ–ুāĻŦ āĻĻ্āϰুāϤ āϞোāĻĄ āĻšāĻŦে ✅ āχāωāϜাāϰ āĻ–ুāĻļি ✅ āĻŦ্āϝাāύ্āĻĄāωāχāĻĨ āĻŦাঁāϚে ✅ āĻ“āϝ়েāĻŦāϏাāχāϟ āĻĢাāϏ্āϟ! 🕸️ CDN āĻ•ীāĻ­াāĻŦে āĻ•াāϜ āĻ•āϰে? āϚāϞো, āϧাāĻĒে āϧাāĻĒে āĻĻেāĻ–ি: Main Server (āĻŽূāϞ āϏাāϰ্āĻ­াāϰ) : āĻāĻ–াāύেāχ āϏāĻŦ āĻ•āύ্āϟেāύ্āϟ āϰাāĻ–া āĻšā§Ÿ। CDN Server (Edge Server) : āĻĒৃāĻĨিāĻŦীāϰ āύাāύা āĻĒ্āϰাāύ্āϤে āĻ›ā§œি⧟ে āĻĨাāĻ•া āĻ•āĻĒি āϏাāϰ্āĻ­াāϰ। User Request : āχāωāϜাāϰ āϝāĻ–āύ āĻ•িāĻ›ু āϚা⧟ (āĻ›āĻŦি, CSS, JS, āĻ­িāĻĄিāĻ“), āϤāĻ–āύ CDN āĻ•াāĻ›েāϰ āϏাāϰ্āĻ­াāϰ āĻĨেāĻ•ে āϏেāϟা āĻĻে⧟। 🌍 āĻ•েāύ CDN āĻĻāϰāĻ•াāϰ? ✅ āĻ“ā§ŸেāĻŦāϏাāχāϟ āĻĢাāϏ্āϟ āϞোāĻĄ āĻ•āϰাāύোāϰ āϜāύ্āϝ ✅ āϏাāϰ্āĻ­াāϰেāϰ āϚাāĻĒ āĻ•āĻŽাāύোāϰ āϜāύ্āϝ ✅ āĻĻূāϰāĻŦāϰ্āϤী āχāωāϜাāϰāĻĻেāϰ āĻĻ্āϰুāϤ āĻ•āύ্āϟেāύ্āϟ āĻĻে⧟াāϰ āϜāύ্āϝ ✅ āĻ­িāĻĄিāĻ“/āĻ›āĻŦি-heavy āĻ“āϝ়েāĻŦāϏাāχāϟেāϰ āϜāύ্āϝ āĻ–ুāĻŦ āĻĻāϰāĻ•াāϰ...

Android Jetpack Compose Dependency List & Usage

  Jetpack Compose āĻšāϞ Android UI Toolkit , āϝা Declarative UI āϤৈāϰিāϰ āϜāύ্āϝ āĻŦ্āϝāĻŦāĻšৃāϤ āĻšāϝ়। āĻāϟি XML-āĻāϰ āĻĒāϰিāĻŦāϰ্āϤে Kotlin-āĻ­িāϤ্āϤিāĻ• UI āĻ•āĻŽ্āĻĒোāϜেāĻŦāϞ āĻĢাংāĻļāύ āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰে। Jetpack Compose āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϤে āĻšāϞে āĻŦিāĻ­িāύ্āύ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি āĻĒ্āϰ⧟োāϜāύ āĻšā§Ÿ, āϝা āύিāϚে āĻŦিāϏ্āϤাāϰিāϤ āĻĻেāĻ“ā§Ÿা āĻšāϞো। ā§§. Jetpack Compose BOM (Bill of Materials) 📌 āĻāϟি āϏāĻŽāϏ্āϤ Compose āϞাāχāĻŦ্āϰেāϰিāϰ āĻ­াāϰ্āϏāύ āĻŽ্āϝাāύেāϜ āĻ•āϰāϤে āϏাāĻšাāϝ্āϝ āĻ•āϰে। dependencies { implementation platform('androidx.compose:compose-bom:2024.03.00') } 🔹 āĻŦ্āϝāĻŦāĻšাāϰ: BOM āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϞে āφāϞাāĻĻাāĻ­াāĻŦে āĻĒ্āϰāϤিāϟি āϞাāχāĻŦ্āϰেāϰিāϰ āĻ­াāϰ্āϏāύ āωāϞ্āϞেāĻ– āĻ•āϰāϤে āĻšā§Ÿ āύা āĻļুāϧুāĻŽাāϤ্āϰ platform() āĻĻি⧟ে BOM āĻ…্āϝাāĻĄ āĻ•āϰāϞে āϏāĻŽāϏ্āϤ Compose āϞাāχāĻŦ্āϰেāϰি āφāĻĒāĻĄেāϟ āĻĨাāĻ•āĻŦে ⧍. Core Compose Dependencies āĻāχ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏিāĻ—ুāϞো @Composable āĻĢাংāĻļāύ āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϤে āĻāĻŦং UI āϤৈāϰি āĻ•āϰāϤে āϏাāĻšাāϝ্āϝ āĻ•āϰে। dependencies { implementation 'androidx.compose.ui:ui' implementation 'androidx.compose.material3:material3' implementation 'androidx.compose.ui:ui-tooling-preview' debugImplementation 'androidx.compose.ui:ui-tooli...

Dependency āĻ•ী āĻāĻŦং āĻ•েāύ āĻĒ্āϰ⧟োāϜāύ?

  Dependency āĻŽাāύে āĻšāϞো āύিāϰ্āĻ­āϰāϤা —āĻāĻ•āϟি āĻ•োāĻĄ āĻŦা āϏāĻĢāϟāĻ“āϝ়্āϝাāϰ āϝāĻ–āύ āĻ…āύ্āϝ āĻāĻ•āϟি āϞাāχāĻŦ্āϰেāϰি, āĻŽāĻĄিāωāϞ, āĻŦা āĻ•োāĻĄেāϰ āĻ…ংāĻļেāϰ āωāĻĒāϰ āύিāϰ্āĻ­āϰ āĻ•āϰে, āϤāĻ–āύ āϏেāϟাāχ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি । āϏāĻšāϜāĻ­াāĻŦে āĻŦāϞāϞে, āϝāĻĻি āφāĻĒāύাāϰ āĻ…্āϝাāĻĒেāϰ āĻ•িāĻ›ু āĻĢিāϚাāϰ āĻ•াāϜ āĻ•āϰāϤে āĻ—েāϞে āĻŦাāχāϰেāϰ āĻ•িāĻ›ু āĻ•োāĻĄ āĻŦা āϞাāχāĻŦ্āϰেāϰিāϰ āĻĒ্āϰ⧟োāϜāύ āĻšā§Ÿ, āϤাāĻšāϞে āϏেāϟাāχ āφāĻĒāύাāϰ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি । āĻāĻ•āϟা āĻŽāϜাāϰ āĻ—āϞ্āĻĒ āĻĻি⧟ে āĻŦোāĻাāχ: āϧāϰুāύ, āφāĻĒāύি āĻāĻ•āϟা āĻĻাāϰুāĻŖ āϚা āĻŦাāύাāύোāϰ āĻĒ্āϞ্āϝাāύ āĻ•āϰāĻ›েāύ । āĻ•িāύ্āϤু āϚা āĻŦাāύাāϤে āĻ—েāϞে āφāĻĒāύাāĻ•ে āϚা āĻĒাāϤা, āĻĻুāϧ, āϚিāύি, āĻĒাāύি, āĻāĻŦং āϚুāϞা āϞাāĻ—āĻŦে। āĻāĻ–াāύে— āϚা āĻĒাāϤা, āĻĻুāϧ, āϚিāύি, āĻĒাāύি → āφāĻĒāύাāϰ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি āϚুāϞা → āϰাāύ āĻ•āϰাāϰ āĻĒ্āϞ্āϝাāϟāĻĢāϰ্āĻŽ āφāĻĒāύাāϰ āĻšাāϤেāϰ āĻ•াāϜ → āĻ…্āϝাāĻ•āϚু⧟াāϞ āĻ•োāĻĄ āϝāĻĻি āĻĻুāϧ āĻŦা āϚিāύি āύা āĻĨাāĻ•ে, āϤাāĻšāϞে āϚা āĻŦাāύাāύো āĻ•āĻ িāύ āĻšā§Ÿে āϝাāĻŦে। āĻ িāĻ• āĻāĻ•āχāĻ­াāĻŦে, āϝāĻĻি āφāĻĒāύাāϰ āĻ…্āϝাāĻĒে āĻĒ্āϰ⧟োāϜāύী⧟ āĻĄিāĻĒেāύ্āĻĄেāύ্āϏিāĻ—ুāϞো āύা āĻĨাāĻ•ে, āϤাāĻšāϞে āϏেāϟা āϏāĻ িāĻ•āĻ­াāĻŦে āϰাāύ āĻ•āϰāĻŦে āύা । āĻ…্āϝাāύ্āĻĄ্āϰāϝ়েāĻĄ āĻ“ āĻ—্āϰেāĻĄāϞে āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি āĻŦ্āϝāĻŦāĻšাāϰেāϰ āĻ•াāϰāĻŖ āĻ…্āϝাāύ্āĻĄ্āϰāϝ়েāĻĄ āĻ…্āϝাāĻĒ āĻĄেāĻ­েāϞāĻĒāĻŽেāύ্āϟে āφāĻŽাāĻĻেāϰ āĻ…āύেāĻ• āĻĻāϰāĻ•াāϰি āϞাāχāĻŦ্āϰেāϰি āĻ“ āĻĢাংāĻļāύ āĻĨাāĻ•ে āϝেāĻ—ুāϞো āĻŦাāϰāĻŦাāϰ āϞিāĻ–āϤে āĻ—েāϞে āĻĒ্āϰāϚুāϰ āϏāĻŽā§Ÿ āϞাāĻ—āĻŦে। āϤাāχ āφāĻŽāϰা āĻĄিāĻĒেāύ্āĻĄেāύ্āϏি āϝোāĻ— āĻ•āϰি, āϝা āĻŽূāϞāϤ āĻ…āύ্āϝ āĻ•েāω āϤৈāϰি āĻ•āϰেāĻ›ে āĻāĻŦং āφāĻŽāϰা āϏāĻšāϜেāχ āϏেāϟা āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϤে āĻĒাāϰি। āωāĻĻাāĻšāϰāĻŖ: āφāĻĒ...

Kotlin āĻ Lambda with Receiver 🧠💡 (āĻŦ্āϰেāύ-āĻĢ্āϰেāύ্āĻĄāϞি āĻŦ্āϝাāĻ–্āϝা)

  💭 āĻĒ্āϰāĻĨāĻŽে, Lambda āĻ•ী? Lambda āĻŽাāύে āĻšāϞো āĻāĻ•āϟা āĻ›োāϟ্āϟ āĻĢাংāĻļāύ , āϝেāϟা āĻ•োāύো āύাāĻŽ āĻ›া⧜া āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰা āϝা⧟! āϏāĻšāϜ āĻ•āĻĨা⧟, āĻāϟা āĻāĻŽāύ āĻāĻ• āϟুāĻ•āϰো āĻ•োāĻĄ, āϝেāϟাāĻ•ে āφāĻŽāϰা āĻ­েāϰি⧟েāĻŦāϞেāϰ āĻŽāϤো āĻĒাāϏ āĻ•āϰāϤে āĻĒাāϰি । āωāĻĻাāĻšāϰāĻŖ: val greet = { name: String -> "Hello, $name!" } println(greet("Alice")) // Output: Hello, Alice! āĻāĻ–āύ Lambda with Receiver āĻ•ীāĻ­াāĻŦে āĻ•াāϜ āĻ•āϰে? āϚāϞুāύ āϏāĻšāϜ āĻ­াāώা⧟ āĻĻেāĻ–ি! Lambda with Receiver āĻŽাāύে āĻ•ী? 🤔 āĻ­াāĻŦুāύ, āφāĻĒāύাāϰ āĻ•াāĻ›ে āĻāĻ•āϟা āĻšো⧟াāχāϟāĻŦোāϰ্āĻĄ āφāĻ›ে। āϏাāϧাāϰāĻŖāϤ, āφāĻĒāύি āĻŦāϞāĻŦেāύ: "āĻšো⧟াāχāϟāĻŦোāϰ্āĻĄ, āύিāϜেāϰ āωāĻĒāϰ 'Hello' āϞিāĻ–ো!" āĻ•িāύ্āϤু Lambda with Receiver -āĻ āφāĻĒāύি āĻšো⧟াāχāϟāĻŦোāϰ্āĻĄেāϰ āĻ­ূāĻŽিāĻ•া⧟ āϚāϞে āϝাāύ! đŸĒ„ āĻāĻ–āύ āφāĻĒāύাāĻ•ে āφāϰ "āĻšো⧟াāχāϟāĻŦোāϰ্āĻĄ" āĻŦāϞāϤে āĻšāĻŦে āύা, āϏāϰাāϏāϰি āϞিāĻ–āϤে āĻĒাāϰāĻŦেāύ! āĻ•োāĻĄ āĻĻেāĻ–ে āϏāĻšāϜে āĻŦুāĻি! 👇 val whiteboard: StringBuilder.() -> Unit = { this.append("Hello, Kotlin!") } āĻāĻ–াāύে āĻ•ী āĻšāϚ্āĻ›ে? 🧐 StringBuilder.() -> Unit āĻŽাāύে āĻšāϞো āĻāχ āϞ্āϝাāĻŽ্āĻŦāĻĄাāϟি āĻļুāϧুāĻŽাāϤ্āϰ StringBuilder-āĻāϰ āϏাāĻĨে āĻ•াāϜ āĻ•āϰāĻŦে। { } āĻāϰ āĻ­েāϤāϰে āφāĻŽāϰা āϏāϰাāϏāϰি this āĻĻি⧟ে StringBuilder-āĻāϰ āĻŽেāĻĨāĻĄ āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰāϤে āĻĒাāϰāĻ›ি! Lamb...

interactionSource = remember { MutableInteractionSource() } - āϏāĻšāϜ āĻ­াāώা⧟ āĻŦ্āϝাāĻ–্āϝা!

  āϝāĻ–āύ āφāĻĒāύি Jetpack Compose -āĻ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āϟিāĻ­ UI āϤৈāϰি āĻ•āϰেāύ, āϝেāĻŽāύ āĻŦাāϟāύ, āϏ্āϞাāχāĻĄাāϰ, āĻŦা āϟ্āϝাāĻŦ, āϤāĻ–āύ āϏেāχ UI āωāĻĒাāĻĻাāύāĻ—ুāϞোāϰ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύ (āϝেāĻŽāύ, āϟ্āϝাāĻĒ, āϏুāχāĻĒ, āϞং āĻĒ্āϰেāϏ) āϟ্āϰ্āϝাāĻ• āĻ•āϰāϤে āĻšāϤে āĻĒাāϰে। āĻāχ āϟ্āϰ্āϝাāĻ•িং⧟েāϰ āϜāύ্āϝ InteractionSource āĻŦ্āϝāĻŦāĻšাāϰ āĻ•āϰা āĻšā§Ÿ। āĻāĻ–āύ, āϚāϞুāύ āĻāĻ•ে āĻāĻ•ে āĻŦিāϏ্āϤাāϰিāϤāĻ­াāĻŦে āϜাāύি! 🚀 1️⃣ InteractionSource āĻ•ী? InteractionSource āĻāĻ•āϟি Compose API āϝা UI āωāĻĒাāĻĻাāύāĻ—ুāϞোāϰ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύ (āϝেāĻŽāύ āϟ্āϝাāĻĒ, āϞং āĻĒ্āϰেāϏ) āϟ্āϰ্āϝাāĻ• āĻ•āϰে āĻāĻŦং āϏেāχ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύ āϏāĻŽ্āĻĒāϰ্āĻ•িāϤ āϤāĻĨ্āϝ āĻĒ্āϰāĻĻাāύ āĻ•āϰে। āĻāϟি āĻāĻ•āϟি stateful object , āϝাāϰ āĻŽāϧ্āϝে āĻŦāϰ্āϤāĻŽাāύ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύ āϏংāϰāĻ•্āώāĻŖ āĻ•āϰা āĻšā§Ÿ। āωāĻĻাāĻšāϰāĻŖāϏ্āĻŦāϰূāĻĒ, āφāĻĒāύি āϜাāύāϤে āϚাāύ āĻ•ি āĻ•āĻ–āύāĻ“ āĻŦ্āϝāĻŦāĻšাāϰāĻ•াāϰী āĻāĻ•āϟি āĻŦাāϟāύ āϟ্āϝাāĻĒ āĻ•āϰেāĻ›ে, āĻ…āĻĨāĻŦা āĻ•োāύো āĻŦাāϟāύে āϞং āĻĒ্āϰেāϏ āĻšā§ŸেāĻ›ে āĻ•িāύা, āĻāχ āϧāϰāύেāϰ āϤāĻĨ্āϝ InteractionSource āϟ্āϰ্āϝাāĻ• āĻ•āϰāϤে āĻĒাāϰে। 2️⃣ MutableInteractionSource āĻ•ী? MutableInteractionSource āĻšāϞ InteractionSource āĻāϰ āĻāĻ•āϟি mutable version । āĻāϰ āĻŽাāύে āĻšāϞ, āĻāϟি āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύāĻ•ে āĻĒāϰিāĻŦāϰ্āϤāύ āĻŦা āφāĻĒāĻĄেāϟ āĻ•āϰāϤে āĻĒাāϰে। āϝেāĻŽāύ, āφāĻĒāύি āϝāĻĻি āϜাāύāϤে āϚাāύ āϝে āĻŦ্āϝāĻŦāĻšাāϰāĻ•াāϰী āĻ•োāύ UI āωāĻĒাāĻĻাāύে āĻ•ী āϧāϰāύেāϰ āχāύ্āϟাāϰāĻ…্āϝাāĻ•āĻļāύ āĻ•āϰāĻ›ে, āφāĻĒāύি āĻāχ mutable interaction source āĻŦ...