▫️مراقب استفاده از ویجت BackdropFilter برای افکت های بلور باشید.
اگر بهینه نشود میتواند با مصرف بالای GPU و محاسبات اضافی، باعث لگ و افت فریم در اپلیکیشن شود.
برای جلوگیری از این مشکل، بهتر است افکت بلور را فقط روی ناحیههای کوچک و ضروری اعمال کنید، .
مقدار
همچنین اگر پسزمینه ثابت است، آن را کش کنید تا محاسبات بلور در هر فریم تکرار نشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
اگر بهینه نشود میتواند با مصرف بالای GPU و محاسبات اضافی، باعث لگ و افت فریم در اپلیکیشن شود.
برای جلوگیری از این مشکل، بهتر است افکت بلور را فقط روی ناحیههای کوچک و ضروری اعمال کنید، .
مقدار
sigmaX و sigmaY را بین ۱ تا ۵ نگه دارید، از RepaintBoundary برای جلوگیری از رندرهای تکراری استفاده کنید و از قرار دادن چندین فیلتر روی هم یا داخل لیستهای اسکرولخور خودداری نمایید.همچنین اگر پسزمینه ثابت است، آن را کش کنید تا محاسبات بلور در هر فریم تکرار نشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
اندروید استودیو Quail 2 منتشر شد: هوش مصنوعی چندوظیفهای
نسخه پایدار اندروید استودیو Quail 2 با تمرکز بر جریانهای کاری همزمان و هوشمند منتشر شده است.
میتوانید چندین چت موازی با ایجنت هوش مصنوعی اجرا کنید (مثلاً همزمان ریفکتور UI، اصلاح ProGuard و تولید داکیومنت)، بدون اینکه منتظر اتمام یک تسک بمانید.
قابلیت جدید دیگر، ادغام بومی LeakCanary در Profiler است که تحلیل نشتی حافظه را تا ۵ برابر سریعتر و مستقیماً روی سیستم توسعهدهنده انجام میدهد و با دکمه «Fix with Agent» حتی پیشنهاد اصلاح کد هم میدهد!
علاوه بر این، پنل App Quality Insights حالا با Agent Mode یکپارچه شده و با تحلیل خودکار کرشها و لاگها، راهحلهای گامبهگام برای رفع باگهای تولید ارائه میکند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نسخه پایدار اندروید استودیو Quail 2 با تمرکز بر جریانهای کاری همزمان و هوشمند منتشر شده است.
میتوانید چندین چت موازی با ایجنت هوش مصنوعی اجرا کنید (مثلاً همزمان ریفکتور UI، اصلاح ProGuard و تولید داکیومنت)، بدون اینکه منتظر اتمام یک تسک بمانید.
قابلیت جدید دیگر، ادغام بومی LeakCanary در Profiler است که تحلیل نشتی حافظه را تا ۵ برابر سریعتر و مستقیماً روی سیستم توسعهدهنده انجام میدهد و با دکمه «Fix with Agent» حتی پیشنهاد اصلاح کد هم میدهد!
علاوه بر این، پنل App Quality Insights حالا با Agent Mode یکپارچه شده و با تحلیل خودکار کرشها و لاگها، راهحلهای گامبهگام برای رفع باگهای تولید ارائه میکند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
امروز میلیاردها نفر هر روز از FFmpeg استفاده میکنند، اما کمتر کسی نام کسانی را میداند که زندگیشان را صرف زنده نگه داشتن آن کردند.
کسی که سالها این پروژه را زنده نگه داشت، نه میلیاردر شد...
نه مدیرعامل یک شرکت بزرگ شد...
نه حتی زندگی راحتی داشت...
https://www.youtube.com/watch?v=ptwISf4k0Uo
کسی که سالها این پروژه را زنده نگه داشت، نه میلیاردر شد...
نه مدیرعامل یک شرکت بزرگ شد...
نه حتی زندگی راحتی داشت...
https://www.youtube.com/watch?v=ptwISf4k0Uo
YouTube
FFmpeg چیست؟ داستان پروژهای که اینترنت بدون آن کار نمیکند
آیا میدانستید تقریباً تمام ویدیوهایی که هر روز در YouTube، Netflix، TikTok، WhatsApp، Discord و صدها سرویس دیگر تماشا میکنید، از نرمافزاری به نام FFmpeg عبور میکنند؟
در این ویدیو داستان یکی از مهمترین پروژههای متنباز جهان را بررسی میکنیم؛ پروژهای…
در این ویدیو داستان یکی از مهمترین پروژههای متنباز جهان را بررسی میکنیم؛ پروژهای…
آشنایی با Loop Engineering مهارتی که به عنوان برنامه نویس باید این روزها نحوه کار کردن باهاش و بلد باشید.
https://www.youtube.com/watch?v=v1VcGDPr7cQ
https://www.youtube.com/watch?v=v1VcGDPr7cQ
YouTube
Loop Engineering چیست؟ آینده برنامهنویسی با هوش مصنوعی تغییر کرد
در این ویدیو با یکی از جدیدترین مفاهیم دنیای هوش مصنوعی یعنی Loop Engineering آشنا میشوید؛ روشی که بسیاری از متخصصان OpenAI و Anthropic معتقدند نسل بعدی کار با AI Agentها را شکل میدهد.
اگر تا امروز از Prompt Engineering، ChatGPT، Claude، Gemini یا Codex…
اگر تا امروز از Prompt Engineering، ChatGPT، Claude، Gemini یا Codex…
سلام
ما یه پلتفرم برای دانشجویان و ایرانیان خارج از کشور ساختیم به اسم irAbroad.
مثلاً اگر دنبال اجاره اتاق یا پیدا کردن همخانه هستید، میخواید وسایل دستدوم بخرید یا بفروشید، دنبال هماهنگی برای ارسال بار هستید، یا میخواید با بقیه ایرانیهای شهرتون ارتباط بگیرید، بتونید خیلی راحت آگهی بذارید یا آگهی بقیه رو ببینید.
خوشحال میشیم یه سر به سایت بزنید، اگه نیازمندی یا آگهی دارید ثبتش کنید و نظرتون رو هم برامون بنویسید.
نسخه اولیه چند روز بیشتر نیست که لانچ شده و منتظر فیدبک هاتون هستیم.
🌐 https://irabroad.ir
ما یه پلتفرم برای دانشجویان و ایرانیان خارج از کشور ساختیم به اسم irAbroad.
مثلاً اگر دنبال اجاره اتاق یا پیدا کردن همخانه هستید، میخواید وسایل دستدوم بخرید یا بفروشید، دنبال هماهنگی برای ارسال بار هستید، یا میخواید با بقیه ایرانیهای شهرتون ارتباط بگیرید، بتونید خیلی راحت آگهی بذارید یا آگهی بقیه رو ببینید.
خوشحال میشیم یه سر به سایت بزنید، اگه نیازمندی یا آگهی دارید ثبتش کنید و نظرتون رو هم برامون بنویسید.
نسخه اولیه چند روز بیشتر نیست که لانچ شده و منتظر فیدبک هاتون هستیم.
🌐 https://irabroad.ir
برنامه نویسی و هوش مصنوعی - حسام
✅ آموزش مقدماتی زبان برنامه نویسی کاتلین 1: تعریف متغیر 2: عملگرهای ریاضی 3: عبارت های شرطی 4: تعریف آرایه 5: ساختمان داده مپ 6: حلقه های تکرار 7: تعریف تابع 8: مدیریت خطا در کاتلین 9: آموزش Lambda Expressions 10: آموزش شی گرایی - تعریف کلاس 11: طراحی…
قسمت آخر دوره مقدماتی زبان برنامه نویسی کاتلین آپلود شد.
🎉 بالاخره! قابلیت «حذف اپلیکیشن» به گوگل پلی کنسول اضافه شد!
پس از سالها انتظار، گوگل پلی کنسول اکنون به توسعهدهندگان اجازه میدهد اپلیکیشنهای واجد شرایط را بهطور کامل حذف کنند، نه اینکه برای همیشه در کنسول باقی بمانند.
تا پیش از این، هر اپلیکیشنی که در کنسول ساخته میشد برای همیشه باقی میماند و تنها گزینه موجود، «عدم انتشار» (Unpublish) بود.
حالا با قابلیت جدید Delete App، میتوانید اپلیکیشنهای واجد شرایط را بهطور دائمی حذف کنید، در صورت نیاز تا ۷ روز آنها را بازیابی کنید و کنسول خود را از پروژههای قدیمی و بدون استفاده پاکسازی نمایید.
⚠️ توجه داشته باشید که هر اپلیکیشنی واجد شرایط حذف نیست؛ اپلیکیشنهایی که کاربر فعال دارند یا سابقه انتشار خاصی دارند، همچنان فقط گزینه Unpublish را پشتیبانی میکنند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
پس از سالها انتظار، گوگل پلی کنسول اکنون به توسعهدهندگان اجازه میدهد اپلیکیشنهای واجد شرایط را بهطور کامل حذف کنند، نه اینکه برای همیشه در کنسول باقی بمانند.
تا پیش از این، هر اپلیکیشنی که در کنسول ساخته میشد برای همیشه باقی میماند و تنها گزینه موجود، «عدم انتشار» (Unpublish) بود.
حالا با قابلیت جدید Delete App، میتوانید اپلیکیشنهای واجد شرایط را بهطور دائمی حذف کنید، در صورت نیاز تا ۷ روز آنها را بازیابی کنید و کنسول خود را از پروژههای قدیمی و بدون استفاده پاکسازی نمایید.
⚠️ توجه داشته باشید که هر اپلیکیشنی واجد شرایط حذف نیست؛ اپلیکیشنهایی که کاربر فعال دارند یا سابقه انتشار خاصی دارند، همچنان فقط گزینه Unpublish را پشتیبانی میکنند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
رابطهای ثابت و یکسان برای همه کاربران در حال از بین رفتن هستند
طراح دیگر «صفحه» طراحی نمیکند، بلکه مجموعهای از قوانین و شرایط طراحی میکند.
طراحی پیشبینانه (Anticipatory) جایگزین طراحی واکنشی میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
رابط کاربری مولد، یک رابط کاربری است که بهصورت پویا و در زمان واقعی (real-time) توسط هوش مصنوعی تولید میشود تا تجربهای شخصیسازیشده و متناسب با نیازها و شرایط کاربر ارائه دهد
طراح دیگر «صفحه» طراحی نمیکند، بلکه مجموعهای از قوانین و شرایط طراحی میکند.
طراحی پیشبینانه (Anticipatory) جایگزین طراحی واکنشی میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
هوش مصنوعی و AI Agentها دیگر فقط به سؤالهای ما جواب نمیدهند؛ آنها میتوانند APIها را صدا بزنند، کد بنویسند، دیتابیس جستوجو کنند، ابزارهای مختلف را انتخاب کنند و حتی به جای انسان با محصولات نرمافزاری کار کنند.
اینجاست که مفهوم جدیدی به نام Agent Experience یا AX اهمیت پیدا میکند.
https://www.youtube.com/watch?v=73AbDSvCBfY
اینجاست که مفهوم جدیدی به نام Agent Experience یا AX اهمیت پیدا میکند.
https://www.youtube.com/watch?v=73AbDSvCBfY
YouTube
کاربر بعدی محصول شما هوش مصنوعی هست - Agent Experience چیست؟
تا امروز وقتی یک محصول نرمافزاری طراحی میکردیم، معمولاً دو گروه را در نظر میگرفتیم: کاربران و توسعهدهندگان.
برای کاربران، UX یا User Experience مهم بود و برای توسعهدهندگان، DX یا Developer Experience.
اما حالا یک کاربر جدید وارد دنیای نرمافزار شده:…
برای کاربران، UX یا User Experience مهم بود و برای توسعهدهندگان، DX یا Developer Experience.
اما حالا یک کاربر جدید وارد دنیای نرمافزار شده:…
چرا ترکیب Golang و AI ؟
🚀 با ورود هوش مصنوعی به دنیای برنامهنویسی، سرعت «نوشتن» کد دیگر مهم نیست؛ بلکه سرعت «بازبینی و نگهداری» آن اهمیت پیدا کرده است! مقاله جدید گوگل نشان میدهد که چرا زبان Go (گولنگ) بهترین انتخاب برای توسعه نرمافزار با کمک AI است.
▫️خوانایی بالا، تایپ استاتیک قدرتمند که خطاهای هوش مصنوعی را قبل از اجرا متوقف میکند، و ابزارهای داخلی یکپارچه، Go را به پلتفرمی ایدهآل برای همکاری انسان و ماشین تبدیل کرده است.
▫️با گولنگ، کدهای تولید شده توسط هوش مصنوعی نه تنها سریع، بلکه امن، یکدست و قابل نگهداری خواهند بود.
Why Go is an Ideal Language for AI-Assisted Software Engineering
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
🚀 با ورود هوش مصنوعی به دنیای برنامهنویسی، سرعت «نوشتن» کد دیگر مهم نیست؛ بلکه سرعت «بازبینی و نگهداری» آن اهمیت پیدا کرده است! مقاله جدید گوگل نشان میدهد که چرا زبان Go (گولنگ) بهترین انتخاب برای توسعه نرمافزار با کمک AI است.
▫️خوانایی بالا، تایپ استاتیک قدرتمند که خطاهای هوش مصنوعی را قبل از اجرا متوقف میکند، و ابزارهای داخلی یکپارچه، Go را به پلتفرمی ایدهآل برای همکاری انسان و ماشین تبدیل کرده است.
▫️با گولنگ، کدهای تولید شده توسط هوش مصنوعی نه تنها سریع، بلکه امن، یکدست و قابل نگهداری خواهند بود.
Why Go is an Ideal Language for AI-Assisted Software Engineering
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
Googleblog
Google for Developers Blog - News about Web, Mobile, AI and Cloud
As AI shifts software engineering from writing to reviewing, discover how Go's strict compiler and unified toolchain ensure reliable AI-generated code.
برای تست و اجرای اپلیکیشن های iOS روی ویندوز و لینوکس میتونید از محیط کد نویسی Xtool استفاده کنید.
این نرم افزار شبیه ساز نداره و باید به گوشی آیفون مستقیم وصل بشید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
این نرم افزار شبیه ساز نداره و باید به گوشی آیفون مستقیم وصل بشید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
🔥 نسخه جدید فلاتر (Flutter 3.47) با تغییرات بسیار جذاب منتشر شد!
مهمترین آپدیتهای این نسخه:
🔹 جداسازی کتابخانههای متریال و کوپرتینو از هسته و انتشار پکیجهای مستقل material_ui و cupertino_ui
🔹 تبدیل موتور رندر Impeller به پیشفرض برای دسکتاپ (ویندوز، مک و لینوکس) برای گرافیک نرمتر
🔹 پایداری رسمی Widget Previews برای تست و توسعه سریعتر UI
مطالعه کامل:
🌐 معرفی نسخه فلاتر 3.47 : آپدیتهای جذاب و تغییرات مهم
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
مهمترین آپدیتهای این نسخه:
🔹 جداسازی کتابخانههای متریال و کوپرتینو از هسته و انتشار پکیجهای مستقل material_ui و cupertino_ui
🔹 تبدیل موتور رندر Impeller به پیشفرض برای دسکتاپ (ویندوز، مک و لینوکس) برای گرافیک نرمتر
🔹 پایداری رسمی Widget Previews برای تست و توسعه سریعتر UI
مطالعه کامل:
🌐 معرفی نسخه فلاتر 3.47 : آپدیتهای جذاب و تغییرات مهم
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
همه در حال حاضر دارن با استرس و وحشت فکر میکنن که هوش مصنوعی قراره شغلشون رو از دستشون بده. اخبار هم هر روز داره به این ترس دامن میزنه. اما یک تغییر بزرگ داره در سکوت رخ میده که اکثر آدمها اصلاً متوجهش نیستن.
یه الگویی وجود داره که اکثر مردم دارن از قلم میندازنش. در حالی که بقیه در حال وحشتزدگی نسبت به از دست دادن کارشون هستن، یه دسته کاملاً متفاوت از مهارتها دارن به وجود میاد؛ مهارتهایی که شش ماه پیش اصلاً اهمیتی نداشتن، اما الان دارن فوقالعاده باارزش میشن.
https://www.youtube.com/watch?v=pmqiiAmXCB4
یه الگویی وجود داره که اکثر مردم دارن از قلم میندازنش. در حالی که بقیه در حال وحشتزدگی نسبت به از دست دادن کارشون هستن، یه دسته کاملاً متفاوت از مهارتها دارن به وجود میاد؛ مهارتهایی که شش ماه پیش اصلاً اهمیتی نداشتن، اما الان دارن فوقالعاده باارزش میشن.
https://www.youtube.com/watch?v=pmqiiAmXCB4
YouTube
با این مهارت های هوش مصنوعی آینده شغلی خودتون بیمه کنید
آیا هوش مصنوعی (AI) قرار است جایگزین شغل ما شود یا فرصتی بزرگ برای کسب درآمد است؟ در حالی که همه نگران از دست دادن کارشان هستند، طبقه جدیدی از مهارتهای فوقالعاده ارزشمند در حال شکلگیری است.
در این ویدیو، ۷ مهارت طلایی که تا سال ۲۰۲۷ به پرطرفدارترین و…
در این ویدیو، ۷ مهارت طلایی که تا سال ۲۰۲۷ به پرطرفدارترین و…
آقای Andrew Ng که یجورایی پدرخوانده LLMهاست مقاله جدیدی نوشته درباره مهارت هایی که باید به عنوان مهندس کامپیوتر بلد باشید.
▫️. نکته کلیدی متن این است که مهارتهای هوش مصنوعی دیگر مختص افراد دارای عنوان شغلی «مهندس هوش مصنوعی» نیست، بلکه تمامی توسعهدهندگان نرمافزار (فولاستک، دیتا، دواپس و...) باید این مهارتها را بیاموزند، درست مانند اینکه امروزه همه با فضای ابری کار میکنند.
چهار مهارت کلیدی:
1️⃣ ساخت و استقرار اپلیکیشنهای هوش مصنوعی: درک بلوکهای سازنده AI (مثل LLMها و RAG) و استفاده از تکنیکهای آماری برای کنترل خروجیهای غیرقابل پیشبینی هوش مصنوعی.
2️⃣اصول مهندسی نرمافزار: درک عمیق مبادلات (Trade-offs) در معماری، هزینه، امنیت و مقیاسپذیری برای هدایت دقیق ابزارهای کدنویسی.
3️⃣ استفاده از عاملهای کدنویسی (Coding Agents): توانایی مدیریت بستر (Context) عاملهای هوشمند، آگاهی از محدودیتهای آنها و جلوگیری از بروز خطاهای خطرناک.
4️⃣شکلدهی به ساخت محصول (Shaping the build): تغییر نقش مهندس از یک برنامهنویسِ دریافتکننده دستورات، به فردی با دید محصولی و تجاری که مشخص میکند چه چیزی باید ساخته شود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️. نکته کلیدی متن این است که مهارتهای هوش مصنوعی دیگر مختص افراد دارای عنوان شغلی «مهندس هوش مصنوعی» نیست، بلکه تمامی توسعهدهندگان نرمافزار (فولاستک، دیتا، دواپس و...) باید این مهارتها را بیاموزند، درست مانند اینکه امروزه همه با فضای ابری کار میکنند.
چهار مهارت کلیدی:
1️⃣ ساخت و استقرار اپلیکیشنهای هوش مصنوعی: درک بلوکهای سازنده AI (مثل LLMها و RAG) و استفاده از تکنیکهای آماری برای کنترل خروجیهای غیرقابل پیشبینی هوش مصنوعی.
2️⃣اصول مهندسی نرمافزار: درک عمیق مبادلات (Trade-offs) در معماری، هزینه، امنیت و مقیاسپذیری برای هدایت دقیق ابزارهای کدنویسی.
3️⃣ استفاده از عاملهای کدنویسی (Coding Agents): توانایی مدیریت بستر (Context) عاملهای هوشمند، آگاهی از محدودیتهای آنها و جلوگیری از بروز خطاهای خطرناک.
4️⃣شکلدهی به ساخت محصول (Shaping the build): تغییر نقش مهندس از یک برنامهنویسِ دریافتکننده دستورات، به فردی با دید محصولی و تجاری که مشخص میکند چه چیزی باید ساخته شود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
برنامه نویسی و هوش مصنوعی - حسام
از یکسال دیگه به عنوان توسعه دهنده اندروید باید احراز هویت انجام بدید تا گوگل اجازه نصب برنامههای شمارو به دیگران بده https://android-developers.googleblog.com/2025/08/elevating-android-security.html?m=1 ⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
گوگل فرآیند سختگیرانهتری برای نصب اپلیکیشنهای خارج از پلیاستور (سایدلود) در اندروید آغاز کرده است.
طبق این تغییرات، کاربران برای نصب برنامههای توسعهدهندگان تأییدنشده باید یک دورهٔ انتظار ۲۴ ساعته را طی کنند و از طریق بخش Developer options، گزینهٔ مربوطه را فعال نمایند. این محدودیت شامل نصب از طریق ابزار ADB نمیشود.
طرح تأیید هویت توسعهدهندگان از ۸ مهر در چند کشور آغاز و سال آینده جهانی میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
طبق این تغییرات، کاربران برای نصب برنامههای توسعهدهندگان تأییدنشده باید یک دورهٔ انتظار ۲۴ ساعته را طی کنند و از طریق بخش Developer options، گزینهٔ مربوطه را فعال نمایند. این محدودیت شامل نصب از طریق ابزار ADB نمیشود.
طرح تأیید هویت توسعهدهندگان از ۸ مهر در چند کشور آغاز و سال آینده جهانی میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
فکر کنید میخواهید اسپاتیفای (Spotify) را طراحی کنید. اولین چیزی که به ذهنتون میرسه چیه؟ خیلی ساده: کاربر اپلیکیشن رو باز میکنه، اسم یه آهنگ رو سرچ میکنه، دکمه پلی رو میزنه و موسیقی شروع میشه. به همین سادگی، نه؟
اما پشتِ همین یک کلیک، اسپاتیفای باید چندتا مسئلهی بهشدت پیچیده رو در مقیاس عظیم و جهانی حل کنه. فرض کنید اسپاتیفای الان بیش از ۶۰۰ میلیون کاربر فعال داره و توش صدها میلیون آهنگ موجوده. وقتی شما دکمه پلی رو میزنید، هزاران نفر هم همون لحظه دارن همون کار رو میکنن.
https://www.youtube.com/watch?v=8-2xAxpZoLs
اما پشتِ همین یک کلیک، اسپاتیفای باید چندتا مسئلهی بهشدت پیچیده رو در مقیاس عظیم و جهانی حل کنه. فرض کنید اسپاتیفای الان بیش از ۶۰۰ میلیون کاربر فعال داره و توش صدها میلیون آهنگ موجوده. وقتی شما دکمه پلی رو میزنید، هزاران نفر هم همون لحظه دارن همون کار رو میکنن.
https://www.youtube.com/watch?v=8-2xAxpZoLs
YouTube
مهندسی معکوس اسپاتیفای؛ پشت پردهی پخش میلیونها آهنگ در صدم ثانیه
آیا تا به حال فکر کردهاید که اسپاتیفای (Spotify) چگونه میلیونها آهنگ را در کسری از ثانیه و بدون هیچ تأخیری برای ۶۰۰ میلیون کاربر همزمان پخش میکند؟ پشت آن دکمه پلی ساده، یک معماری پیچیده و مهندسی نرمافزار بینظیری نهفته است!
در این ویدیو، به کالبدشکافی…
در این ویدیو، به کالبدشکافی…
عمو باب یا آقای رابرت مارتین نویسنده کتاب Clean Code میگه که کدهای نوشته شده توسط هوش مصنوعی و بازخوانی و بررسی نکنید!
رابرت مارتین معتقد است برای اینکه واقعاً از بهرهوری هوش مصنوعی بهرهمند شویم، نباید کدهای تولید شده توسط آن را خط به خط خواند. اگر بخواهیم همه کدها را بازبینی کنیم، سرعت خواندن انسان به گلوگاه سیستم تبدیل شده و سرعت هوش مصنوعی هدر میرود.
تغییر رویکرد: از «بازبینی چشمی» تا «ابزارهای سنجش»
مارتین این تغییر را به گذر از ابزارهای دستی به دستگاههای CNC تشبیه میکند.
در کارخانه، اپراتور تکتک برشها را با چشم بررسی نمیکند، بلکه قطعه نهایی را با ابزارهای دقیق (گیجها) اندازهگیری میکند. در نرمافزار هم باید به جای خیره شدن به کد، «ابزارهای سنجش و محدودیت» بسازیم.
مارتین کدها را بدون بررسی منتشر نمیکند، بلکه آنها را در یک مسیر پر از محدودیتهای سختگیرانه و خودکار قرار میدهد:
تستهای پذیرش (Acceptance Tests): رفتار سیستم را به زبان ساده و قابل فهم برای ذینفعان تعریف میکنند.
تستهای واحد (Unit Tests): با پوشش بالا برای قفل کردن رفتار قطعات کوچک.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
رابرت مارتین معتقد است برای اینکه واقعاً از بهرهوری هوش مصنوعی بهرهمند شویم، نباید کدهای تولید شده توسط آن را خط به خط خواند. اگر بخواهیم همه کدها را بازبینی کنیم، سرعت خواندن انسان به گلوگاه سیستم تبدیل شده و سرعت هوش مصنوعی هدر میرود.
تغییر رویکرد: از «بازبینی چشمی» تا «ابزارهای سنجش»
مارتین این تغییر را به گذر از ابزارهای دستی به دستگاههای CNC تشبیه میکند.
در کارخانه، اپراتور تکتک برشها را با چشم بررسی نمیکند، بلکه قطعه نهایی را با ابزارهای دقیق (گیجها) اندازهگیری میکند. در نرمافزار هم باید به جای خیره شدن به کد، «ابزارهای سنجش و محدودیت» بسازیم.
مارتین کدها را بدون بررسی منتشر نمیکند، بلکه آنها را در یک مسیر پر از محدودیتهای سختگیرانه و خودکار قرار میدهد:
تستهای پذیرش (Acceptance Tests): رفتار سیستم را به زبان ساده و قابل فهم برای ذینفعان تعریف میکنند.
تستهای واحد (Unit Tests): با پوشش بالا برای قفل کردن رفتار قطعات کوچک.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
مصاحبه های برنامه نویسی فلاتر هم مثل بقیه مصاحبه های حوزه تِک تغییر کرده, دیگه قرار نیست بشینید از حفظ بگید فرق Stateful و Stateless چیه یا کد ویجت بنویسید.
الان مصاحبهکنندهها میخوان ببینن آیا میتونید تصمیمات معماری بگیرید و مبادلات (Trade-offs) رو تحلیل کنید یا نه.
▫️عجیب نیست که بپرسن "این کد رو با AI زدی؟" اصلاً تدافعی برخورد نکنید.
بگید بله، اما مثل کد یه توسعهدهنده جونیور باهاش برخورد کردم؛ ریویو کردم، Edge caseهاش رو فیکس کردم و تست نوشتم.
نقطه ضعف اصلی AI تو معماری و امنیته (مثلاً لو دادن توکن)، چون با اعتماد به نفس کدهای اشتباه مینویسه!
اگر تو مصاحبه میخوان یه شبکه اجتماعی طراحی کنید بزرگترین اشتباه اینه که سریع برید سراغ ادیتور و کد بنویسید.
این یه چالش System Design هست. باید اول نیازمندیها رو بپرسید (پلتفرم؟ آفلاین؟ ریلتایم؟) و بعد مدل داده و لایهها رو طراحی کنید.
جونیورها تو مسیر خوش و راحت (Happy Path) جواب میدن، اما ارشدها تو مصاحبه خودشون رو با حالتهای خطا (Failure States) نجات میدن.
خودتون به مصاحبهکننده بگید که اگه شبکه قطع بشه چی میشه؟ اگه کاربر وسط کار لاگاوت کرد، آیا کش اکانت قبلی رو میبینه؟ این پیشبینی خطاها همون چیزیه که تاییدیه میگیره.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
الان مصاحبهکنندهها میخوان ببینن آیا میتونید تصمیمات معماری بگیرید و مبادلات (Trade-offs) رو تحلیل کنید یا نه.
▫️عجیب نیست که بپرسن "این کد رو با AI زدی؟" اصلاً تدافعی برخورد نکنید.
بگید بله، اما مثل کد یه توسعهدهنده جونیور باهاش برخورد کردم؛ ریویو کردم، Edge caseهاش رو فیکس کردم و تست نوشتم.
نقطه ضعف اصلی AI تو معماری و امنیته (مثلاً لو دادن توکن)، چون با اعتماد به نفس کدهای اشتباه مینویسه!
اگر تو مصاحبه میخوان یه شبکه اجتماعی طراحی کنید بزرگترین اشتباه اینه که سریع برید سراغ ادیتور و کد بنویسید.
این یه چالش System Design هست. باید اول نیازمندیها رو بپرسید (پلتفرم؟ آفلاین؟ ریلتایم؟) و بعد مدل داده و لایهها رو طراحی کنید.
جونیورها تو مسیر خوش و راحت (Happy Path) جواب میدن، اما ارشدها تو مصاحبه خودشون رو با حالتهای خطا (Failure States) نجات میدن.
خودتون به مصاحبهکننده بگید که اگه شبکه قطع بشه چی میشه؟ اگه کاربر وسط کار لاگاوت کرد، آیا کش اکانت قبلی رو میبینه؟ این پیشبینی خطاها همون چیزیه که تاییدیه میگیره.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir