️ CodeNight | آموزش برنامه نویسی
884 subscribers
8 photos
1 file
70 links
🚀 کدنایت | آموزش برنامه‌نویسی از صفر تا صد
گولنگ، جاوااسکریپت، نودجی اس، وب، اپلیکیشن و الگوریتم
🧑🏻‍💻 آموزش پروژه‌محور و رایگان
🤖آموزش هوش مصنوعی و vibe coding و Ai engineering

💻 مناسب مبتدی تا پیشرفته
🌐 codenight.ir
Download Telegram
چرا همه باید داکر را بلد باشند

داکر چیست؟ | مفاهیم پایه داکر
داکر یک پلتفرم متن باز است که به توسعه دهندگان این امکان را میدهد تا سرویس ها و برنامه های خود را به صورت مستقل و جداگانه از یکدیگر در محیط های مجازی اجرا کنند. این امکان باعث میشود که تفاوتهای محیطی بین مراحل توسعه به حداقل برسد و دیگر نگرانی راجب به هماهنگ نبودن محیط توسعه با محیط پروداکشن نخواهیم داشت.

بیشتر …


🔹Telegram Channel:
@codenight_ir
معرفی فریمورک NestJS

نست جی اس چیست؟

اول از همه، باید بدانیم NestJS دقیقا چیست؟
NestJS یک فریمورک Node.js برای توسعه سیستم های بزرگ و چالش برانگیز است. با استفاده از این فریمورک، شما میتوانید برنامه های مقیاس پذیر و آزمایش پذیر را در چارچوبی مشخص و ساختاری بسیار مناسب ایجاد کنید.

بیشتر …


🔹Telegram Channel:
@codenight_ir
مسیر کامل یادگیری DevOps 👇👇👇

https://roadmap.sh/pdfs/roadmaps/devops.pdf

🔹Telegram Channel:
@codenight_ir
🎉 سال نو مبارک 🎉

🌸 با آرزوی بهترین ها برای شما 🌸

کانال تلگرام کدنایت رو حتما به دوستان تون معرفی کنید تا از تخفیف ها و جشنواره ها با خبر بشن


وبسایت : codenight.ir
اینستاگرام: codenight_ir
تلگرام: codenight_ir

⭐️کدنایت، مرجع آموزش برنامه نویسی⭐️
🎉2
💥 ۱۲ اردیبهشت اولین بوت کمپ تخصصی بک اند کدنایت برگذار شد 💥

و استقبال خیلی خوبی شد از بوت کمپ و ظرفیت توی دوروز تکمیل شد 🌸🌼

🛣️ مسیر خوبی رو با دانشجو های بوت کمپ تجربه خواهیم کرد و کلی نکته و آموختنی از هم یادمیگیریم 😎 و قطعا نتایج خوبی خواهد داشت.

از طریق این لینک هم میتونید سایر دوره ها و مقالات رو ببینید : 👇👇

https://codenight.ir/
👍2
🔥 دوره NestJS 🔥

به عنوان فصل های جدید در دوره ی NestJS مایگریش ها در TypeORMیک پروژه فروشگاهی با MySQL و Sequelize طراحی و توسعه داده میشود

https://codenight.ir/courses/nest-js

کانال عمومی کدنایت: @codenight_ir
تخفیف با ظرفیت محدود ۲۰ نفر برای دوستانی که نتونستن توی بوت کمپ شرکت کنن

https://codenight.ir/courses/nest-js
چالش اصلیت از وقتی شروع میشه که فکر میکنی همه چیز رو بلدی!
🔥7👍4
اگر قصد ثبت نام در بوت‌کمپ رو داشتید هزینه دوره هایی که قبلا تهیه کردید از هزینه بوت کمپ کم خواهد✅

و برای این کار هم فردا ساعت ۸ شب به بعد از طریق اینستاگرام یا واتسپ میتونید پیام بدید.
👍1
آپدیت های جدید دوره نست جی اس بارگذاری شد
مقایسه سرعت بین SQL، NoSQL، و Key-Value Storage می‌تونه خیلی مهم باشه، چون هر کدوم برای سناریوهای خاصی بهینه‌سازی شدن. بیایید این رو به طور جزئی‌تر بررسی کنیم:


1️⃣. SQL Databases

▪︎ سرعت خواندن/نوشتن:

خواندن: سرعت خواندن داده‌ها در دیتابیس‌های SQL بستگی به پیچیدگی پرس‌وجو (query)، تعداد جداول مرتبط، و ایندکس‌هایی که روی داده‌ها قرار دادی داره.
وقتی داده‌ها ایندکس بشن، سرعت خواندن می‌تونه خیلی خوب باشه. اما پرس‌وجوهای پیچیده و جداول بزرگ ممکنه سرعت رو کاهش بدن.

نوشتن: دیتابیس SQLی به دلیل پیروی از اصول ACID، ممکنه تو عملیات نوشتن کمی کندتر باشه، چون باید از یکپارچگی داده‌ها مطمئن بشه. همچنین، وقتی تعداد نوشتن‌ها زیاد باشه یا نیاز به قفل کردن جداول باشه، سرعت نوشتن ممکنه پایین بیاد.

▪︎ عملکرد بهینه: وقتی نیاز به تراکنش‌های پیچیده و یکپارچگی داده‌ها داری، SQL می‌تونه بهترین انتخاب باشه، حتی اگر کمی از سرعت کم کنه.


2️⃣. NoSQL Databases

سرعت خواندن/نوشتن:

خواندن: بسته به نوع دیتابیس NoSQLی، سرعت خواندن می‌تونه بسیار سریع باشه. به عنوان مثال، در دیتابیس‌های Document-based مثل MongoDB، دسترسی به داده‌ها سریع‌تره چون معمولاً ساختار داده‌ها به صورت مسطح و سندی ذخیره میشه و نیاز به جداول مرتبط نیست.

نوشتن: به دلیل ساختار انعطاف‌پذیر و عدم نیاز به رعایت دقیق اصول ACID، سرعت نوشتن در NoSQL بالاست. این پایگاه داده‌ها به گونه‌ای طراحی شدن که بتونن حجم بزرگی از داده‌ها رو به سرعت پردازش کنن.

▪︎ عملکرد بهینه: وقتی حجم داده‌ها زیاده و نیاز داری که عملیات نوشتن و خواندن سریع انجام بشه (مثلاً در برنامه‌های real-time)، NoSQL بهترین انتخابه.


3️⃣. Key-Value Storage

▪︎ سرعت خواندن/نوشتن:

خواندن: دسترسی به داده‌ها در Key-Value Storage فوق‌العاده سریعه چون داده‌ها بر اساس کلید ذخیره میشن و به سادگی می‌تونی مقدار مورد نظرت رو با استفاده از کلید پیدا کنی. این پایگاه داده‌ها برای دسترسی‌های مکرر و فوری بهینه‌سازی شدن.

نوشتن: عملیات نوشتن هم به دلیل سادگی ساختار داده‌ها و عدم نیاز به پیچیدگی‌های رابطه‌ای خیلی سریع انجام میشه.

▪︎ عملکرد بهینه: وقتی نیاز به دسترسی بسیار سریع به داده‌ها داری (مثل کشینگ یا مدیریت session)، یه Key-Value Storage انتخابی عالیه.


جمع‌بندی در مورد سرعت:

• دیتابیس SQLی: سرعت خوبی داره ولی در پرس‌وجوهای پیچیده یا با نوشتن های زیاد ممکنه کند بشه.

• دیتابیس NoSQLی: سرعت بالاست و برای مقیاس‌پذیری و مدیریت داده‌های بزرگ بهینه شده.

• دیتابیس Key-Valueی: سریع‌ترین انتخاب برای عملیات ساده و دسترسی فوری به داده‌ها.


⚠️⚠️⚠️توجه⚠️⚠️⚠️

هر کدوم از این دیتابیس‌ها بر اساس نیاز پروژه و نوع داده‌هایی که داری، می‌تونن بهترین عملکرد رو ارائه بدن.
اگر به عملکرد بسیار سریع نیاز داری و ساختار داده‌ها ساده است، Key-Value عالیه. ولی برای تراکنش‌های پیچیده و یکپارچگی داده‌ها، SQL ممکنه کمی کندتر باشه اما قابل اطمینان‌تره.


کانال کدنایت :

https://t.me/codenight_ir
❤4👍4🔥1
گرف کیوال یا GraphQL چیست ؟

@codenight_ir
@codenight_ir
@codenight_ir



👇👇👇
‏

GraphQL یه زبان کوئری برای API‌هاست که توسط فیسبوک توسعه داده شده. ⚒
برخلاف REST که در اون هر endpoint یک منبع مشخص رو برمی‌گردونه، توی GraphQL تو می‌تونی دقیقاً مشخص کنی چه داده‌ای رو نیاز داری و سرور فقط همون داده رو برمی‌گردونه. ♻️

به زبون ساده تر توی REST API، هر endpoint معمولاً به یک منبع خاص اشاره می‌کنه و وقتی به اون آدرس درخواست می‌فرستی، یک ساختار دادهٔ ثابت برمی‌گرده. به عبارت دیگه، تو به عنوان فرانت دولوپر✌🏻 کنترل زیادی روی شکل و محتوای داده‌ای که دریافت می‌کنی نداری اگه به داده‌های بیشتری یا کمتری نیاز داشته باشی، باید به endpointهای مختلفی درخواست بفرستی یا کل داده رو دریافت کنی و بخش‌های اضافه رو نادیده بگیری.🤷🏻‍♀️🤷🏻
اما در GraphQL، تو می‌تونی دقیقاً مشخص کنی که چه فیلدها و داده‌هایی رو نیاز داری. به جای داشتن چندین endpoint، فقط یک endpoint مشترک وجود داره و تو با نوشتن یک کوئری مشخص می‌کنی که کدوم بخش‌های داده رو می‌خوای.


برای مثال فرض کن یه سرویس کاربری داری:👇🏻👇🏻👇🏻👇🏻

در REST:
برای دریافت اطلاعات کاربر باید به /users/1 درخواست بزنی و ممکنه همه اطلاعات کاربر برگرده، مثل نام، ایمیل، آدرس، شماره تلفن و غیره، حتی اگه فقط به نام و ایمیل نیاز داشته باشی.
اگه بخوای پست‌های کاربر رو هم بگیری، باید یک درخواست جدا به /users/1/posts بفرستی.

در GraphQL:
می‌تونی یک کوئری بنویسی که فقط نام و ایمیل کاربر رو برگردونه.🔥
همچنین می‌تونی در همون کوئری درخواست کنی که لیست پست‌های کاربر رو هم برات بیاره.

{
user(id: 1) {
name
email
posts {
title
content
}
}
}

نتیجه: سرور دقیقاً همون داده‌هایی رو برمی‌گردونه که درخواست کردی، نه بیشتر و نه کمتر.😎


👍🏻 مزایا graphql

1. دریافت داده دقیق

2. کاهش over-fetching و under-fetching

‏3. Documentation بهتر: اسکیمای GraphQL به طور اتوماتیک داکیومنت ایجاد می‌کنه که نشون می‌ده چه داده‌هایی در API موجوده و کلاینت چطور می‌تونه بهشون دسترسی پیدا کنه.

4. یک endpoint برای همه درخواست‌ها


👎🏻معایب:

1. پیچیدگی: اگه تازه‌کاری، ممکنه یادگیری GraphQL در ابتدا یه کم گیج‌کننده باشه، مخصوصا اگه به REST عادت کرده باشی.

2. کاهش سرعت در درخواست‌های بزرگ:
گاهی اوقات درخواست‌های پیچیده‌ای که کلی داده از سرور می‌گیرن، می‌تونن بار سنگینی روی سرور بذارن و سرعت رو کاهش بدن.

3. عدم پشتیبانی از Caching به‌صورت پیش‌فرض:
بر خلاف REST که می‌تونی به‌راحتی نتایج رو کش کنی، تو GraphQL باید بیشتر حواست باشه که چطور نتایج رو کش کنی تا درخواست‌ها تکراری نشه و سرور زیر بار نره.

4. نیاز به تنظیمات و امنیت بیشتر:
به دلیل اینکه GraphQL خیلی انعطاف‌پذیره، باید حواست به مسائل امنیتی باشه و مطمئن بشی که کاربران به داده‌هایی که نباید دسترسی داشته باشن، دسترسی پیدا نمی‌کنن.


به طور کلی، انتخاب بین GraphQL و REST بستگی به نیازهای پروژه‌ات داره. اگه انعطاف‌پذیری و امکان تعریف دقیق داده‌ها مهمه، GraphQL می‌تونه انتخاب خوبی باشه، اما اگه سادگی و کارایی بیشتر مد نظرته، REST ممکنه مناسب‌تر باشه.

کانال آموزشی کدنایت :
@codenight_ir
❤2👍1
🔺با چند Utility Type پرکاربرد تایپ‌اسکریپت آشنا بشیم

ـ Utility Type ها چند تایپ درونی تایپ‌اسکریپت هستن که کمک می‌کنن راحت‌تر و سریع‌تر تایپ‌های خاص و پیچیده‌تری بسازیم

- برای مثال، یک Utility Type داریم به اسم ReturnType که کمک می‌کنه یک تایپ جدید از نوع خروجی یک تابع داشته باشیم

- تایپ‌اسکریپت بیشتر از ۲۰ تا Utility Type درونی داره که توی این مقاله می‌خوایم با اونها آشنا بشیم. قسمت اول:

https://codenight.ir/blogs/7-typescript-tricks

پ.ن:‌ از سوال‌های پرتکرار مصاحبه‌هاست 💯
👍1
استخدام توسعه دهنده نودجی اس در مجموعه یکتا هوش ایرسا:

محل کار اصفهان، اصفهان

امکان دورکاری


 مهارت های مورد نیاز: 

تسلط به JavaScript، TypeScript و Node.js

تسلط به مفاهیم مبتنی بر Rest Api

آشنایی با کتابخانه ها و فریم ورک های محبوب مانند Express & Nest.js

دارای تجربه در استفاده از MongoDB و PostgreSQL و سیستم Caching

 


 موارد زیر امتیاز محسوب میشود: 

کار با Docker & K8S

آشنایی با سیستم عامل های لینوکس یا یونیکس

توانایی کار با Git

آشنایی با حوزه DevOps و CI/CD

تسلط به زبان انگلیسی


حقوق پیشنهادی :
14 - 20 میلیون تومان

👇👇👇
لینک آگهی

https://jobvision.ir/jobs/job-detail/851060?ReferrerJobPosition=8&row=1&pageSize=30&keyword=برنامه%20نویس%20node.js&searchId=386088953763464938
#انگیزشی

hard work beats talent when talent doesn't work hard


پشت کار و سخت کار کردن میتونه خیلی بهتر از استعداد باشه 😉


کانال آموزشی کدنایت 👇👇

@codenight_ir
@codenight_ir
@codenight_ir
👍6👎2
#نکته ‼️
هر روز یه نکته :

مطالعه کدهای دیگران 📖
کدهای نوشته شده توسط دیگر برنامه نویس ها را مطالعه کنید تا با انواع روش‌های مختلف حل مسئله و ساختار و ابزار ها آشنا بشید
❤5👍1