Front Cast
رفتن به کانال در Telegram
1 866
مشترکین
اطلاعاتی وجود ندارد24 ساعت
اطلاعاتی وجود ندارد7 روز
-230 روز
آرشیو پست ها
1 866
اجرای تایپ اسکریپت در Node.js
در این مقاله روشهای مختلف اجرای مستقیم تایپاسکریپت در Node.js رو بررسی کردیم. یاد گرفتیم چرا کامپایلر رسمی تایپ اسکریپت همیشه کافی نیست و چه محدودیتهایی داره. ابزارهایی مثل ts-node و tsx رو معرفی کردیم و نحوه استفاده و نقاط ضعفشان رو توضیح دادیم. در نهایت دیدیم که قابلیت Type Stripping Node.js، مسیر اجرای کامل تایپ اسکریپت بدون ابزار جانبی رو هموار کرده.
ادامه مطلب
———————————
@frontcast | فرانت کست
1 866
✅ مقایسه کوتاه: Promises و async/await
این مقایسه برای نوشتن کد خوانا، مدیریت بهتر جریان اجرای برنامه و جلوگیری از callback hell اهمیت زیادی داره.
☑️ Promises:
از ساختارهای
then و catch استفاده میکنن و برای مدیریت وضعیتهای مختلف (pending، fulfilled، rejected) مناسب هستن. کنترل جریان را بهتر از کالبکها ساده میکنن.
☑️ async/await:
سینتکس تمیزتر و شبیه کد synchronous ارائه میده و مدیریت خطا با try/catch بسیار قابل فهمتر و منظمتره.
🔰 جمعبندی:
هر دو بر پایه یک مفهوم ساخته شدن، اما async/await خواناتر، مدرنتر و استاندارد پیشنهادی برای توسعهدهندههاست.
#مقایسه_مفاهیم #کدنویسی #توسعه_وب
———————————
@frontcast | فرانت کست1 866
📂 کد رو از رو نخون: جاوااسکریپت
if ("0") console.log("YES");
👀 در نگاه اول:
تصور میکنیم "0" مقدار صفره و باید falsy باشه.
⚡️ در واقعیت:
این مقدار یک رشته غیرخالیه، بنابراین truthy محسوب میشه و دستور داخل شرط اجرا میشه.
💡 نکته:
در بین رشتهها فقط حالت کاملاً خالی یعنی "" رفتار falsy دارد.
📌 پیشنهاد:
پیش از نوشتن شرطها بهتره نوع داده ورودی رو در نظر بگیری تا نتیجه غیرمنتظره نشه.
#کد_رو_از_رو_نخون #جاوااسکریپت
———————————
@frontcast | فرانت کست1 866
📚 کوییز: Next.js
❓ سؤال: در ساختار جدید App Router، برای گرفتن داده سمت سرور از چه تابعی در فایل سرور (Server Component) استفاده میکنیم؟
1 866
توسعه اپلیکیشن تایپ اسکریپت + React با استفاده از Vite
در این آموزش یک پروژه کامل React + تایپ اسکریپت رو با استفاده از Vite ایجاد میکنیم و مزیتهای این معماری مدرن رو بررسی میکنیم. روش کار با ساختار فایلها، اجرای نرم پروژه و ویژگیهای سرعتی Vite را مرحلهبهمرحله توضیح میدیم. همچنین عملکرد اپلیکیشن Vite رو در مقایسه با CRA تحلیل میکنیم. این مقاله برای توسعهدهندگانی که به دنبال تجربهای سریعتر و حرفهایتر در فرانتاند هستن میتونه خیلی مفید باشه.
ادامه مطلب
———————————
@frontcast | فرانت کست
1 866
✅ مقایسه کوتاه: useEffect و Server Action
با App Router، بسیاری از کاریهای سمت کلاینت به سرور منتقل شدن و این مقایسه برای درک جریان جدید Next.js ضروریه.
☑️ useEffect:
برای اجرای کد بعد از رندر در مرورگر استفاده میشه و روی performance و hydration تأثیر داره.
☑️ Server Action:
توابع سمت سرور هستن که بدون نیاز به API Route اجرا میشن و سریعتر، امنتر و بدون رندر اضافه هستن.
🔰 جمعبندی:
در Next.js جدید، تا جایی که میتونی سرور اکشنها رو جایگزین useEffectهای غیرضروری کن.
#مقایسه_مفاهیم #کدنویسی #توسعه_وب
———————————
@frontcast | فرانت کست
1 866
📂 کد رو از رو نخون: جاوااسکریپت
for (var i = 1; i <= 3; i++) {
setTimeout(() => console.log(i), 0);
}
👀 در نگاه اول:
باید ۱،۲،۳ چاپ بشه.
⚡️ در واقعیت:
سه بار عدد ۴ چاپ میشه، چون var اسکوپ بلاکی نداره.
💡 نکته:
باید دقت کنیم که callbackها مقدار i نهایی رو میگیرن.
📌 پیشنهاد:
از let استفاده کن تا هر iteration مقدار مستقل داشته باشه.
#کد_رو_از_رو_نخون #جاوااسکریپت
———————————
@frontcast | فرانت کست1 866
🎉 ۷۰ درصد تخفیف بلک فرایدی فرانت کست!
✅ این بیشترین تخفیف در سال هست و دیگه تکرار نمیشه.
اگر میخواید به یک متخصص واقعی جاوااسکریپت تبدیل بشید، امروز دقیقا بهترین زمان هست.
⏳ تخفیف فقط تا پایان هفته فعاله و تمدید نمیشه!
💬 اگر نمیدونید کدوم دوره برای شما مناسبه یا میخواید مسیرتون رو مشخص کنید، پیام بدید: @MasoodSadri
مشاهده دورهها
1 866
📚 کوییز: CSS
❓ سؤال: برای وسطچین کردن یک div در وسط صفحه از چه ویژگی استفاده میشود؟
1 866
بررسی ویژگی Cursor در CSS
ویژگی cursor در CSS یکی از ابزارهای کلیدی برای بهبود تجربه کاربریه. این ویژگی با تغییر شکل نشانگر ماوس، نوع تعامل قابل انجام رو بهصورت فوری منتقل میکنه. از کلیکپذیری و درَگکردن گرفته تا حالت بارگذاری، هر حالت پیام مشخصی به کاربر میده. توی این مقاله کاربردها، محدودیتها و راهکارهای بهینهسازی این ویژگی رو بررسی میکنیم.
ادامه مطلب
———————————
@frontcast | فرانت کست
1 866
✅ مقایسه کوتاه: خطاهای Compile-time و خطاهای Run-time
شناخت تفاوت خطاها در برنامهنویسی به رفع سریعتر باگها کمک زیادی میکنه.
☑️ خطاهای Compile-time:
خطاهایی که هنگام کامپایل یا قبل از اجرای برنامه رخ میدن. مثل خطاهای تایپی یا نوع داده اشتباه در تایپ اسکریپت.
☑️ خطاهای Run-time:
خطاهایی که در زمان اجرای برنامه ظاهر میشن. مثل دسترسی به متغیر
undefined یا خطا در API call.
🔰 جمعبندی:
خطاهای Compile-time زودتر شناسایی و رفع میشن، اما خطاهای Run-time نیاز به تست و مدیریت استثنا دارن.
#مقایسه_مفاهیم #کدنویسی #توسعه_وب
———————————
@frontcast | فرانت کست1 866
📂 کد رو از رو نخون: Node.js
setTimeout(() => console.log("A"), 0);
Promise.resolve().then(() => console.log("B"));
console.log("C");
👀 در نگاه اول:
انتظار داری ترتیب اجرا A → B → C باشه.
⚡️ در واقعیت:
خروجی به این شکله:
C B Aبه خاطر رفتار Event Loop و اولویت microtask queue. 💡 نکته: باید یادمون باشه که Promiseها همیشه قبل از callbackهای
setTimeout اجرا میشن.
📌 پیشنهاد:
برای درک بهتر رفتار کد، حتماً Event Loop و ترتیب اجرای taskها رو مطالعه کن.
#کد_رو_از_رو_نخون #Nodejs
———————————
@frontcast | فرانت کست1 866
📋 چکلیست پروژه: نگهداری و مانیتورینگ
نگهداری و مانیتورینگ منظم باعث میشه مشکلات سریعتر شناسایی بشن و پروژه پایدار بمونه.
✅ پیادهسازی لاگگیری مناسب در بکاند
✅ مانیتورینگ منابع سرور (CPU، RAM، Disk)
✅ بهروزرسانی منظم وابستگیها و پکیجها
✅ استفاده از ابزار مانیتورینگ (Sentry، New Relic، Grafana)
✅ تهیه بکاپ دورهای از دیتابیس و فایلها
📌 پیشنهاد:
یک داشبورد مانیتورینگ داشته باش تا همیشه وضعیت سرور و سرویسها رو در لحظه بررسی کنی.
#چک_لیست #توسعه_وب
———————————
@frontcast | فرانت کست
1 866
📚 کوییز: Node.js
❓ سؤال: دستور ()require در Node.js چه کاری انجام میدهد؟
1 866
نکات جاوااسکریپت: شش رفتار کمتر شناخته شده در جاوااسکریپت
جاوااسکریپت پر از جزئیات ظریفه که گاهی حتی برنامهنویسهای باتجربه رو هم غافلگیر میکنه.
توی این مقاله، شش رفتار مهم و کمتر شناخته شده اونو با مثالدبررسی کردیم. از تفاوت Function Declaration و Expression تا تغییرناپذیری دادههای Primitive رو مرور کردیم.
درک این مفاهیم، پایهای برای کدنویسی دقیقتر و پیشبینیپذیرتر فراهم میکنه.
ادامه مطلب
———————————
@frontcast | فرانت کست
1 866
✅ مقایسه کوتاه: Tailwind و Bootstrap
انتخاب فریمورک استایل روی سرعت توسعه و ظاهر پروژه تاثیر مستقیم داره.
☑️ Tailwind:
یک فریمورک utility-first که کلاسهای کوچک و آماده برای استایلدهی ارائه میده. سبک، قابل سفارشیسازی و مناسب طراحیهای مدرن.
☑️ Bootstrap:
یک فریمورک آماده با کامپوننتهای از پیش طراحیشده. سریع برای شروع پروژهها اما ظاهر پروژهها ممکنه شبیه به هم بشه.
🔰 جمعبندی:
فریمورک Tailwind برای طراحیهای یونیک و سفارشی بهتره؛ Bootstrap برای پروژههایی که سرعت شروع و کامپوننت آماده اهمیت داره مناسبتره.
#مقایسه_مفاهیم #کدنویسی #توسعه_وب
———————————
@frontcast | فرانت کست
1 866
📂 کد رو از رو نخون: Node.js
console.log(this);
👀 در نگاه اول:
شاید فکر کنی مثل مرورگر، خروجی window باشه.
⚡️واقعیت:
اما در Node.js ماجرا فرق داره؛
اگه این کد رو بیرون از هر تابعی بنویسی، مقدارش {} (آبجکت خالی) نشون داده میشه.
ولی داخل تابع یا کلاس، this دیگه {} نیست، ممکنه undefined باشه یا به global اشاره کنه (بسته به نوع تابع و حالت strict).
💡 نکته:
تو مرورگر، this معمولاً به window اشاره میکنه،
اما تو Node.js به چیزی مثل global مربوطه و در ماژولها مقدارش {} هست.
📌 پیشنهاد:
برای اینکه کاملاً درک کنی، این کد رو هم تو مرورگر اجرا کن و هم تو Node.js.
تفاوتش رو خودت ببینی، هیچ توضیحی مثل تجربه مستقیم نیست.
#کد_رو_از_رو_نخون #Nodejs
———————————
@frontcast | فرانت کست