کدمو تمیز بنویسم یا فعلا یه چیزی باشه که کار کنه؟
گیر افتادن تو تلهی کمالگرایی ⛔️
برنامهنویسی هم مثل خیلی چیزای دیگهست:
گاهی باید قبل از اینکه بخوای کدت کامل و تمیز باشه، اول یه چیزی راه بندازی که کار کنه.
به قول یکی از دوستای متخصص، هروقت نمیدونی باید کدوم گزینه رو اولویت بذاری ببین کدومش اول بیزنستو به پول میرسونه.!!
کد تمیز و مرتب مهمه، ولی نه همیشه از همون اول!
مرحلهی اول: کار کن
مرحلهی بعد: تمیزکاری و بهتر کردن
اینطوری هم زودتر به نتیجه میرسی، هم وقت داری بعداً همه چیزو حرفهای کنی
Hoori Nikoo
گیر افتادن تو تلهی کمالگرایی ⛔️
برنامهنویسی هم مثل خیلی چیزای دیگهست:
گاهی باید قبل از اینکه بخوای کدت کامل و تمیز باشه، اول یه چیزی راه بندازی که کار کنه.
به قول یکی از دوستای متخصص، هروقت نمیدونی باید کدوم گزینه رو اولویت بذاری ببین کدومش اول بیزنستو به پول میرسونه.!!
کد تمیز و مرتب مهمه، ولی نه همیشه از همون اول!
مرحلهی اول: کار کن
مرحلهی بعد: تمیزکاری و بهتر کردن
اینطوری هم زودتر به نتیجه میرسی، هم وقت داری بعداً همه چیزو حرفهای کنی
Hoori Nikoo
👍4🔥1
خبر جدید: React در مسیر استقلال از متا
ا React در یک تغییر تاریخی، از زیر چتر Meta در حال انتقال به نهادی مستقل به نام React Foundation است.
این بنیاد زیر نظر Linux Foundation اداره خواهد شد تا React دیگر وابسته به یک شرکت خاص نباشد.
نکات مهم:
ا Meta همچنان پشتیبانی مالی و فنی میدهد، اما کنترل انحصاری ندارد.
شرکتهایی مثل Microsoft، Amazon و Vercel هم عضو بنیاد خواهند شد.
هدف: تصمیمگیری بیطرفانه، آینده پایدار و جامعهمحور برای React.
نتیجه؟
ا React وارد دورهای جدید میشود: آزادتر، جهانیتر و مستقلتر از همیشه.
ا React در یک تغییر تاریخی، از زیر چتر Meta در حال انتقال به نهادی مستقل به نام React Foundation است.
این بنیاد زیر نظر Linux Foundation اداره خواهد شد تا React دیگر وابسته به یک شرکت خاص نباشد.
نکات مهم:
ا Meta همچنان پشتیبانی مالی و فنی میدهد، اما کنترل انحصاری ندارد.
شرکتهایی مثل Microsoft، Amazon و Vercel هم عضو بنیاد خواهند شد.
هدف: تصمیمگیری بیطرفانه، آینده پایدار و جامعهمحور برای React.
نتیجه؟
ا React وارد دورهای جدید میشود: آزادتر، جهانیتر و مستقلتر از همیشه.
👍3🔥1
کلین آرکیتکچر توی Node.js چیه و چرا مهمه؟
اگه توی پروژههات همهچیز رو ریختی توی route و controller و الان هر تغییری میخوای بدی میترسی چیزی خراب شه، وقتشه با یه معماری حرفهای آشنا بشی: Clean Architecture
کلین آرکیتکچر چی میگه؟
این معماری میخواد بگه:
منطق اصلی پروژهت (Business Logic) نباید وابسته به دیتابیس یا Express باشه
هر بخش وظیفه خودش رو داشته باشه، نه بیشتر
تغییر دادن یه بخش، کل سیستم رو به هم نریزه
مثال ساده
توی Domain فقط تعریف میکنی کاربر چیه
توی Use Case میگی "چطور کاربر جدید ثبت کنیم"
توی Infrastructure مشخص میکنی دیتا کجا ذخیره شه (Mongo، Postgres…)
توی Interface فقط درخواست رو میگیری و جواب میدی (Express)
چرا استفاده کنیم؟
پروژهت وابسته به Express یا دیتابیس خاص نمیشه
میتونی دیتابیس رو عوض کنی بدون درد
تستنویسی خیلی سادهتر میشه
کدها منظم، قابل فهم و حرفهای میشن
اگه توی پروژههات همهچیز رو ریختی توی route و controller و الان هر تغییری میخوای بدی میترسی چیزی خراب شه، وقتشه با یه معماری حرفهای آشنا بشی: Clean Architecture
کلین آرکیتکچر چی میگه؟
این معماری میخواد بگه:
منطق اصلی پروژهت (Business Logic) نباید وابسته به دیتابیس یا Express باشه
هر بخش وظیفه خودش رو داشته باشه، نه بیشتر
تغییر دادن یه بخش، کل سیستم رو به هم نریزه
/domain → قوانین و موجودیتها (Entities)
/use-cases → سناریوها مثل ثبتنام کاربر
/infrastructure→ دیتابیس، سرویسها، ابزارها
/interfaces → کنترلرها و API (مثل Express)
مثال ساده
توی Domain فقط تعریف میکنی کاربر چیه
توی Use Case میگی "چطور کاربر جدید ثبت کنیم"
توی Infrastructure مشخص میکنی دیتا کجا ذخیره شه (Mongo، Postgres…)
توی Interface فقط درخواست رو میگیری و جواب میدی (Express)
چرا استفاده کنیم؟
پروژهت وابسته به Express یا دیتابیس خاص نمیشه
میتونی دیتابیس رو عوض کنی بدون درد
تستنویسی خیلی سادهتر میشه
کدها منظم، قابل فهم و حرفهای میشن
Alireza 👨🏻💻
کلین آرکیتکچر توی Node.js چیه و چرا مهمه؟ اگه توی پروژههات همهچیز رو ریختی توی route و controller و الان هر تغییری میخوای بدی میترسی چیزی خراب شه، وقتشه با یه معماری حرفهای آشنا بشی: Clean Architecture کلین آرکیتکچر چی میگه؟ این معماری میخواد بگه:…
فریمورک NestJS چیه؟
ا NestJS یه فریمورک برای Node.js هست که با TypeScript ساخته شده. هدفش اینه که پروژههای بکاند رو منظمتر کنه، مثل وقتی که هر چیزی سرجای خودش توی کمد باشه.
چرا بعضیا سمت NestJS میرن؟
- ساختار مرتب و ماژولار: کدها پخش و پلا نمیشن، همه چیز دستهبندی شدهست.
- TypeScript از اول توش هست: لازم نیست خودت ts رو تنظیم کنی.
- مقیاسپذیر برای پروژههای بزرگ: برای کار تیمی و پروژههای جدی خیلی قابلاتکاست.
- دیپندنسی اینجکشن (DI): وابستگیها بهتر مدیریت میشن، مخصوصاً وقتی پروژه بزرگ میشه.
کِی به درد میخوره؟
- وقتی پروژه کوچیک نیست
- وقتی چند نفر قراره روی یه بکاند کار کنن
- وقتی دنبال نظم توی Node.js هستی
خلاصه:
ا NestJS همون Node.js هست، فقط با نظم و قانون.
ا NestJS یه فریمورک برای Node.js هست که با TypeScript ساخته شده. هدفش اینه که پروژههای بکاند رو منظمتر کنه، مثل وقتی که هر چیزی سرجای خودش توی کمد باشه.
چرا بعضیا سمت NestJS میرن؟
- ساختار مرتب و ماژولار: کدها پخش و پلا نمیشن، همه چیز دستهبندی شدهست.
- TypeScript از اول توش هست: لازم نیست خودت ts رو تنظیم کنی.
- مقیاسپذیر برای پروژههای بزرگ: برای کار تیمی و پروژههای جدی خیلی قابلاتکاست.
- دیپندنسی اینجکشن (DI): وابستگیها بهتر مدیریت میشن، مخصوصاً وقتی پروژه بزرگ میشه.
کِی به درد میخوره؟
- وقتی پروژه کوچیک نیست
- وقتی چند نفر قراره روی یه بکاند کار کنن
- وقتی دنبال نظم توی Node.js هستی
خلاصه:
ا NestJS همون Node.js هست، فقط با نظم و قانون.
Alireza 👨🏻💻
فریمورک NestJS چیه؟ ا NestJS یه فریمورک برای Node.js هست که با TypeScript ساخته شده. هدفش اینه که پروژههای بکاند رو منظمتر کنه، مثل وقتی که هر چیزی سرجای خودش توی کمد باشه. چرا بعضیا سمت NestJS میرن؟ - ساختار مرتب و ماژولار: کدها پخش و پلا نمیشن، همه…
یه مثال خیلی کوتاه: برای تعریف routeها توی express همه چیز رو باید دستی نوشت ولی توی nestjs فقط کافیه اینجوری به controller و بالای فانکشنی که میخوایم اضافش کنیم
Express:
NestJS:
Express:
app.get('/users', (req, res) => {
const users = getUsers()
res.send(users)
})NestJS:
@Get('users')
findAll() {
return this.userService.getUsers()
}👍2
این یک ریپوزیتوری هستش که بهتون 100 تا ریجکس پترن پرکابرد ایرانی رو بهتون میده که میتونید در فرم ها و در هرجایی که میخواید ولیدیشن انجام بدید استفاده کنید و لذت ببرید و تقریبا میشه گفت خیلی تکمیله و هر چیزی داخلش پیدا میشه و میتونید استفاده کنید
https://github.com/ImLeoNova/100-Iranian-Regex-Patterns
LeoNova
https://github.com/ImLeoNova/100-Iranian-Regex-Patterns
LeoNova
👍1
گیتهاب روی بلاکچین میرود؟
جک دورسی، بنیانگذار توییتر، از ایدهی ساخت نسخهای غیرمتمرکز از گیتهاب حمایت کرد. ماجرا از جایی شروع شد که یکی از برنامهنویسها در شبکهی X نوشت حسابش در گیتهاب بدون دلیل بسته شده، و دورسی در جواب فقط نوشت: «بله.»
خیلیها حدس زدند منظورش تأیید ساخت نسخهای شبیه گیتهاب اما بدون سانسور است؛ جایی که هیچ شرکت یا سروری نتواند حساب کسی را ببندد. دورسی که حالا دنبال اینترنت آزاد میباشد، شاید این بار سراغ ساخت گیتهاب روی بلاکچین برود.
جک دورسی، بنیانگذار توییتر، از ایدهی ساخت نسخهای غیرمتمرکز از گیتهاب حمایت کرد. ماجرا از جایی شروع شد که یکی از برنامهنویسها در شبکهی X نوشت حسابش در گیتهاب بدون دلیل بسته شده، و دورسی در جواب فقط نوشت: «بله.»
خیلیها حدس زدند منظورش تأیید ساخت نسخهای شبیه گیتهاب اما بدون سانسور است؛ جایی که هیچ شرکت یا سروری نتواند حساب کسی را ببندد. دورسی که حالا دنبال اینترنت آزاد میباشد، شاید این بار سراغ ساخت گیتهاب روی بلاکچین برود.
👍6
How do you convert an object to a JSON string?
Anonymous Quiz
9%
JSON.toString(obj)
9%
stringify(obj)
61%
JSON.stringify(obj)
5%
String(obj)
16%
See answer
سیستم پیشنهاد پستهای توییتر X که الان بر پایه لایک، ریت و ... هست از ماه دیگه بر پایه یادگیری ماشین میشه، یعنی هوشمصنوعی تشخیص میده پست شمارو به بقیه نشون بده یا نه. یه شانس ایجاد میکنه برای پستهایی که معمولا دیده نمیشه و بیشتر میره سمت نشون دادن پستهایی که دوست دارید.
تغییر دوم هم اینه که میتونید از Grok برای شخصی سازی فید خودتون استفاده کنید، مثلا بگی فقط توییتهای برنامهنویسیرو توی فید من بیار.
Geek Alerts
تغییر دوم هم اینه که میتونید از Grok برای شخصی سازی فید خودتون استفاده کنید، مثلا بگی فقط توییتهای برنامهنویسیرو توی فید من بیار.
Geek Alerts
1👍4
یه جا خوندم نوشته بود:
اگه شما قبل از هوش مصنوعی کارتون خوب بوده، با استفاده ازش کار شما بهتر و سریعتر میشه.
اگه قبلش چیزی برای ارائه نداشتین، شاید موقتا چهارتا خروجی ازش بگیرین، ولی نهایتا گند کار درمیاد.
خنگ طبیعی با هوش مصنوعی هوشمند نمیشه :)
اگه شما قبل از هوش مصنوعی کارتون خوب بوده، با استفاده ازش کار شما بهتر و سریعتر میشه.
اگه قبلش چیزی برای ارائه نداشتین، شاید موقتا چهارتا خروجی ازش بگیرین، ولی نهایتا گند کار درمیاد.
خنگ طبیعی با هوش مصنوعی هوشمند نمیشه :)
👍9
What will be the output?
Anonymous Quiz
28%
Number
11%
10
39%
Object
11%
TypeError
10%
See the answer
چرا Clean Code مهمه؟
کد تمیز یعنی کدی که بعداً خودت ببینی و حالِت بد نشه. به همین سادگی.
چه فایدهای داره؟
- دیباگ راحتتر
- تغییر سادهتر
- کار تیمی بهتر
اصول ساده Clean Code:
- اسم درست انتخاب کن
مثلا countUsers بهتر از x یا data1 ـه. مغز آدم autocomplete نداره.
- تابع کوتاه باشه
اگه تابع رو اسکرول میکنی، یعنی زیادی حرف زده.
- فقط یه کار انجام بده
تابع نباید هم یوزر بسازه، هم لاگین کنه، هم چای بریزه.
- کد تکراری ننویس
کپیپیست زیاد = باگهای تکراری.
خلاصه:
کد تمیز = کار کمتر در آینده.
کد تمیز یعنی کدی که بعداً خودت ببینی و حالِت بد نشه. به همین سادگی.
چه فایدهای داره؟
- دیباگ راحتتر
- تغییر سادهتر
- کار تیمی بهتر
اصول ساده Clean Code:
- اسم درست انتخاب کن
مثلا countUsers بهتر از x یا data1 ـه. مغز آدم autocomplete نداره.
- تابع کوتاه باشه
اگه تابع رو اسکرول میکنی، یعنی زیادی حرف زده.
- فقط یه کار انجام بده
تابع نباید هم یوزر بسازه، هم لاگین کنه، هم چای بریزه.
- کد تکراری ننویس
کپیپیست زیاد = باگهای تکراری.
خلاصه:
کد تمیز = کار کمتر در آینده.
👍2
ابزار کاربردی: Lodash – جعبهابزار توابع آماده
ا Lodash یه کتابخانه قدرتمنده پر از توابع آماده برای کار با آرایه، آبجکت، استرینگ و ...
مثال: حذف مقدارهای خالی از آرایه
مزایا:
- سادهسازی کد
- جلوگیری از باگ
- توابع آماده مهم و کاربردی مثل: debounce, cloneDeep, merge, uniq
ا Lodash یه کتابخانه قدرتمنده پر از توابع آماده برای کار با آرایه، آبجکت، استرینگ و ...
مثال: حذف مقدارهای خالی از آرایه
import _ from "lodash";
const data = ["Ali", "", null, "Sara", undefined, " "];
const cleaned = _.compact(data);
console.log(cleaned);
// ["Ali", "Sara", " "]
مزایا:
- سادهسازی کد
- جلوگیری از باگ
- توابع آماده مهم و کاربردی مثل: debounce, cloneDeep, merge, uniq
👍4
لحظات مشترک javscript developerها - قسمت اول (کلاسیک)
- از console.log() به عنوان ابزار اصلی دیباگ استفاده کردی، و کار کرد.
- تو لاگها undefined رو دیدی و گفتی: عه چرا :/
- بدون اینکه دقیقاً بدونی چرا، === رو به جای == گذاشتی، و همهچیز درست شد.
- کد نوشتی که دیروز کار میکرد، امروز کار نمیکنه، بدون اینکه حتی چیزی رو دست بزنی.
- تلاش برای نوشتن map، filter و reduce تو یه خط
- با CORS جنگیدی و باختی.
- چجور div رو ببرم وسط؟؟؟
- از console.log() به عنوان ابزار اصلی دیباگ استفاده کردی، و کار کرد.
- تو لاگها undefined رو دیدی و گفتی: عه چرا :/
- بدون اینکه دقیقاً بدونی چرا، === رو به جای == گذاشتی، و همهچیز درست شد.
- کد نوشتی که دیروز کار میکرد، امروز کار نمیکنه، بدون اینکه حتی چیزی رو دست بزنی.
- تلاش برای نوشتن map، filter و reduce تو یه خط
- با CORS جنگیدی و باختی.
- چجور div رو ببرم وسط؟؟؟
🤣9👍2👎1
یه سایت پر از کامپوننتهای UI، دکمههای خفن، چکباکسها، loading، input و ...
https://uiverse.io/elements
https://uiverse.io/elements
👍5