Adib Codes – Telegram
Adib Codes
565 subscribers
24 photos
11 videos
3 files
90 links
Informational videos and articles on Android, Kotlin, Java, Programming and more.

My YouTube Channel:
https://www.youtube.com/@AdibCodes

--
Adib Faramarzi - Head of Mobile at TAPSI
Download Telegram
کجا و چه‌طور مایکروسرویس‌ها رو تست کنیم؟

لینک مقاله:
https://martinfowler.com/articles/microservice-testing/

در این مقاله از سایت فولر به انواع مختلف تست (یونیت، اینتگریشن، کامپوننت، کانترکت و E2E) پرداخته شده و نکات استفاده‌اش در مایکروسرویس‌ها شرح داده شده.
از این مطالب می‌تونید در قسمت‌های دیگه (مثل اندروید/وب) هم بهتره ببرید.
👍3
خیلی وقت پیش (قبل از اندرویدی‌ها) یک سری‌هاتون گفته بودید که نیاز به محتوا در مورد تست، یونیت‌تست و مطالب مرتبط‌ بهش هست که در اندرویدی‌ها چند باری بهش پرداختیم. اگر فکر می‌کنید این موضوع همچنان اهمیت داره که در ویدئوهای آینده‌ام بهش بپردازم به این پیام ایموجی موز 🍌 بدید.
🍌92🌭3👍2🔥1👏1👨‍💻1🎄1🆒1
با چند روش متنوع می‌تونیم این عبارت ریاضی رو تو کاتلین حساب کنیم؟

(برای کسایی که تا انتها دیدن، سال نو میلادی‌تون مبارک! 🎄)

لینک ویدئوی Shorts:
https://youtube.com/shorts/fpr9sUnLTzg

@AdibCodes
👍5🎄53👏2
فازهای Composition, Layout و Draw در کامپوز دقیقاً چی هستن، تو هر کدوم چه اتفاقی می‌افته، حواسمون به چی باشه و از چه کارهایی جلوگیری کنیم؟

در این ویدئو همراه من باشید که به اعماق ۳ فاز اصلی رندرینگ در کامپوز بریم و یادشون بگیریم.

🎥 لینک تماشا:
https://youtube.com/watch?v=FEvdVC5fT1U

#JetpackCompose
@AdibCodes
14👍3
در حال حاضر نسخه‌ی جدید Deepseek V3 برای همه مجانی و قابل استفاده‌ست.
قدرت این مدل با GPT 4o و Claude 3.5 Sonnet برابری می‌کنه و خصوصاً در نوشتن کد توانایی خوبی داره. علاوه بر این قابلیت جستجوی اینترنت و همچنین Deep Think هم داره.

لینک سایتش:
https://chat.deepseek.com

@MindofMachines
🔥15👍3
Adib Codes
خیلی وقت پیش (قبل از اندرویدی‌ها) یک سری‌هاتون گفته بودید که نیاز به محتوا در مورد تست، یونیت‌تست و مطالب مرتبط‌ بهش هست که در اندرویدی‌ها چند باری بهش پرداختیم. اگر فکر می‌کنید این موضوع همچنان اهمیت داره که در ویدئوهای آینده‌ام بهش بپردازم به این پیام ایموجی…
🔥 ۱۰ اشتباه مهم در تست‌نویسی در برنامه‌نویسی و نکات و راه‌حل‌هاش

در این ویدئو بریم سراغ موضوع تست در برنامه‌نویسی و به ۱۰ اشتباه مهمی که ممکنه در نوشتن تست‌ها (و یونیت‌تست‌ها) داشته باشید، به همراه دیگر نکات مهم تست‌نویسی و راه‌حل‌هاشون بپردازیم.

🎥 لینک تماشای ویدئو:
https://www.youtube.com/watch?v=niBra4gas90

اگر فکر می‌کنید همچنان روی این موضوع باید ادامه داد یا سوالی داشتید، در کامنت‌ها بنویسید.
#testing

@AdibCodes
🔥16👍3🍌2
Adib Codes
🔥 ۱۰ اشتباه مهم در تست‌نویسی در برنامه‌نویسی و نکات و راه‌حل‌هاش در این ویدئو بریم سراغ موضوع تست در برنامه‌نویسی و به ۱۰ اشتباه مهمی که ممکنه در نوشتن تست‌ها (و یونیت‌تست‌ها) داشته باشید، به همراه دیگر نکات مهم تست‌نویسی و راه‌حل‌هاشون بپردازیم. 🎥 لینک…
با توجه به استقبال‌تون از این ویدئو، اگر فکر می‌کنید خوبه روی تست در برنماه‌نویسی ادامه بدیم، یا اگر سوالی داشتید، توی کامنت‌هاش بنویسید که بهش بپردازیم.

برای مرور، تو این ویدئو به مباحث زیر پرداختیم:

🔹 نحوه‌ی تست درست: تست Observable Behavior به‌جای تست Implementation
🔹 ماک‌ها در تست و سواستفاده ازشون
🔹 مخشص کردن دلیل و چرایی پشت هر تست
🔹 نام‌گذاری، ساختار و تفکیک درست برای تست‌ها
🔹 تست‌های شکننده و تست‌های کند
🔹 اتکای بیش از حد به تست‌ها
🔹 رفع باگ‌ها با نوشتن تست‌ها
🔹 اهمیت Edge-caseها
و …

دمتون گرم.

@AdibCodes
31
🔥 ابزاری که سرعت برنامه‌نویسی من رو متحول کرد...

در این ویدئوی خلاصه می‌رم سراغ Live Templateها در اندروید استودیو وبقیه‌ی IDEهای جت‌برینز و به این‌که چه‌طور سرعت و البته لذت برنامه‌نویسی‌تون رو باهاش بیشتر کنید می‌پردازم.

🔹چه Live Templateهایی در حال حاضر برای کاتلین و اندروید و بقیه زبان‌ها و فریم‌وورک‌ها وجود دارن؟

🔹 چه‌طور سریع Live Template خودتون رو بسازید؟

🔹 چه‌طور Live Template خودتون رو شخصی‌سازی و خفن کنید، طوری که تمام Importها به درستی بیان، فایل به طور کامل نوشته بشه و ...

🎥 لینک تماشای ویدئو:
https://www.youtube.com/watch?v=Aik6KXa5IEU

#Editor #IDE #AndroidStudio
@AdibCodes
👏10
🚨 بهترین منابع یادگیری و پیشرفت در اندروید 🚨

در آخرین دورهمی اندرویدی‌ها، پرتکرارترین سوال‌تون از من این بود که منابع خوب برای اندروید و کاتلین کدوم‌ها هستن؟

من هم تصمیم گرفتم در این ویدئوی کوتاه بریم سراغ...

🔹منابع خوب یادگیری اندروید کجاها هستن؟

🔹 چه‌طور دانش‌مون رو «به‌روز» نگه داریم و عقب نمونیم؟

🔹 آموزش‌های قدم به قدم، خصوصاً برای شروع اندروید و کامپوز رو از کجا پیش ببریم؟
و ...


🎥 لینک تماشای ویدئو:
https://www.youtube.com/watch?v=j9ZYMcUQzIQ

اگر شما هم منابع خوبی داشتید، توی کامنت‌های ویدئو برای بقیه بنویسید. دمتون گرم.

#Android
@AdibCodes
🔥116
Adib Codes
💡چند مقاله‌ی تازه - قسمت پنجم: Kotlin: 🔹 Understanding Coroutine Dispatchers 🔹 Exploring Kotlin’s Immutable Collections Library 🔹 Kotlin for Server-Side Content Creators 🔹 Kotlin Tips and Tricks You May Not Know: #6 — Inject Functions in Spring Boot 🔹 Modularization…
💡چند مقاله تازه - قسمت ۶:

Kotlin:
🔹 📕 KMP for Mobile Native Developers: The Book.
یک کتاب جالب در قالب وب برای یادگیری کاتلین مولتی‌پلتفورم
 
Java:
🔹 Using Renovate to update build JDK

🔹 This is why we can’t have nice things: When POM files lie
 
Android:
🔹 Parallelism with Android SQLite
 
Compose:
🔹 Designing Effective UI Components in Jetpack Compose

🔹 Mesh Gradients in Jetpack Compose
 
Libs:
🔹 AYA | Android ADB Desktop App
AYA is a desktop application for easily controlling android devices, which can be considered as a GUI wrapper for ADB.

🔹 KAnalytics
Analytics is a powerful Kotlin Multiplatform library that streamlines analytics integration across Android and iOS applications

@AdibCodes - #AdibWeekly #6
4👍4
حل سوال الگورتمی گوگل برای مصاحبه‌های فنی - Knight Dialer

یکی از سوالات معروف مصاحبه‌ی گوگل در برنامه‌نویس‌ها Knight Dialer یا همون «شماره‌گیر اسبی» بوده.
در این سوال، شما یک صفحه‌ی تلفن (مشابه چیزی که در گوشی‌تون موجوده) دارید و فقط می‌تونید از حرکت L (مثل اسب در شطرنج) استفاده کنید و تعداد کل شماره‌های n رقمی با شروع از هر شماره‌ای رو به دست بیارید.

در این ویدئو می‌ریم سراغ حل این مسئله و می‌بینیم که:

🔹 چه‌طور بهش فکر کنیم؟
🔹 چه‌طور کدش رو بزنیم؟
🔹 چه‌طور بهینه‌اش کنیم که جواب اعداد بزرگ رو هم بده (به کمک Dynamic Programming)

📽 لینک تماشای ویدئو:
https://youtu.be/rC_49OK51TA



@AdibCodes #Programming #Algorithm #Interview
👏7🔥6👍1
🚨 حل سوال معروف Unique Paths در مصاحبه‌های فنی

یکی از چالش‌های معروف مصاحبه‌های فنی در شرکت‌های دنیا، سوال Unique Paths هست:

چند راه مختلف برای رفتن از خانه‌ی سمت چپ بالا به خانه‌ی پایین راست در یک شبکه‌ی n در m وجود داره؟

💡همراه من باشید که ببینیم چه‌طور بهش فکر کنیم، چه‌طور حلش کنیم و در نهایت چه‌طور با Memoization و Dynamic Programming بهینه‌اش کنیم.

🎥 لینک تماشا:
https://www.youtube.com/watch?v=BfguNOM7CDg

@AdibCodes #Programming #Interview
5🔥4
🔥 لینکس |‌ Lynx رقیبی جدید برای React Native و فلاتر


لینکس یک فریم‌وورک جدید مالتی‌پلتفورم مبتنی بر جاوااسکریپت و وب از شرکت بایت‌دنس (تیک‌تاک) هست که به تازگی به رقابت با فلاتر و ری‌اکت نیتیو اومده و در این ویدئو به جزئیاتش می‌پردازیم.

🔹 بررسی کد‌های لینکس و استفاده‌هاش در تیک‌تاک

🔹پرفورمنس لینکس و معماری Threading دوگانه‌ی Main و بک‌گراند

🔹 نحوه پشتیبانیش از CSS و ری‌اکت و بقیه‌ی فریم‌وورک‌ها

🔹 نگاهی به آینده‌ی توسعه‌ی موبایل و کلاینت‌های نیتیو

🎥 لینک تماشا:
https://www.youtube.com/watch?v=kYl056GfWew

نظر شما راجع بهش چیه؟

@AdibCodes
#TechNews
10🤯3👍2
🤯 افزایش سرعت ۱۰ برابری کامپایلر TypeScript با مهاجرت به Go

تیم کامپایلر تایپ‌اسکریپت در مایکروسافت ۲ روز پیش و در ویدئویی از افزایش ۱۰ برابری سرعت کامپایر تایپ‌اسکریپت با بازنویسی و پورت کدهای این کامپایلر به Go خبر داد و تو این ویدئو می‌ریم ببینیم چی‌کار کردن.

🔹 روی یه پروژه‌ی بزرگ مثل Playwright رانش می‌کنیم و می‌بینیم چقدر واقعاً بهبود پرفورمنس داره؟

🔹می‌ریم سراغ سوال «چرا از Go استفاده کردن؟ چرا Rust نه؟»

🔹 نگاهی به نحوه‌ی انجام کارشون و آینده‌ی کامپایر تایپ‌اسکریپت


🎥 لینک تماشا:
https://youtu.be/wR5gtvxMT3k

نظر شما راجع بهش چیه؟

@AdibCodes
#TechNews
👍6
🚨بررسی آسیب‌پذیری امنیتی بحرانی در Next.js

چند روز پیش یک آسیب‌پذیری خطرناک در فریم‌وورک فرانت‌اندی معروف نکست (Next.js) پیدا شد که باعث می‌شه احراز هویتش رو به طور کامل دور زد و صرفاً با اضافه کردن یک Header و بدون نیاز به لاگین، Middlewareهای این فریم‌وورک رو دور زد و به منابع دسترسی پیدا کرد!

این مسئله نمره‌ی امنیتی ۹.۱ از ۱۰ -بحرانی- رو به خودش اختصاص داد، در کنار اینکه این آسیب‌پذیری از چند سال پیش وجود داشته و به تازگی پیدا شده و در این ویدئو می‌ریم که یه اپ خیلی ساده با نکست بسازیم، خودمون این مسئله‌ی امنیتی رو با چشم ببینیم (!) و در نهایت روش حلش رو بررسی کنیم.


🎥 لینک تماشا:
https://www.youtube.com/watch?v=XyivtCtuH6M

@AdibCodes
#TechNews
🔥3👍1
🔥ساخت یه دستیار خفن هوش‌مصنوعی با پایتون و Gemini

از اونجا که خیلی‌هاتون دوست دارید کار کردن با LLMها رو یاد بگیرید و توش پیشرفت کنید، در این ویدئو می‌ریم سراغ ساختن یه اپ ساده که فایل‌ها و فولدرهامون رو با استفاده از جمنای گوگل مرتب کنه:

🛑 اسم فیلم‌ها، موزیک و ... کامل نوشته بشه و  اولش سال ساختش باشه. مثلاً:
(1999) - The Matrix

🛑 آیتم‌های مشابه (مثل قسمت‌های سریال و فیلم‌ها و ...) براشون فولدر ساخته بشه و داخلش گروه‌بندی بشن (مثلاً برای چند تا فایلی که از سریال Severance داریم یه فولدر Severance بسازه).

برای این کار از پایتون استفاده می‌کنیم و می‌ریم سراغ:

🔹استفاده از LiteLLM که باهاش می‌تونیم با همه‌ی LLMها با اینترفیس یکسان صحبت کنیم.

🔹 اتصال LiteLLM به Gemini گوگل (که استفاده ازش مجانی هست)

🔹 استفاده از Structured Output و Pydantic و گرفتن خروجی‌های غیرمتنی از Gemini

🔹 ساخت یه یوآی ساده با پایتون با قابلیت Drag & Drop برای فولدرها و اعمال تغییرات

🎥 لینک تماشا:
https://youtu.be/OFvyuBe1v74

🔗 ریپازیتوری گیت‌هاب این پروژه:
https://github.com/adibfara/GeminiAIFileOrganizerAgent

@AdibCodes
#AI #LLM
😍11