فرض کنید توی سیستم عامل لینوکسی تون میخوایید یک پکیجی رو نصب کنید😌
مثلا توی این مثال میخواییم vpn windscribe رو نصب کنیم اما با Error عکس 1 بر میخوریم 😱
این ارور(عکس 1) داره میگه که پکیجی که داری نصب میکنی به پکیج های زیر وابسته اس و باید قبلش اینارو نصب کنی
خب یه راهش اینه بیاییم دستی دونه دونه پکیج هارو نصب کنیم که خب عقلانی نیست شاید پنجاه تا وابستگی داشت
تازه بیشتر اوقات خود دیپندنسی ها باز دیپندنسی دارن🥵
راه بهتر چیه ؟🤔
از دستور زیر استفاده کنیم
این دستور میاد اتوماتیک اون وابستگی هارو شناسایی میکنه و براتون نصب میکنه
✅ حالا میتونید دوباره windscribe رو نصب کنید 🥳
@LearnByLearn
#linux
مثلا توی این مثال میخواییم vpn windscribe رو نصب کنیم اما با Error عکس 1 بر میخوریم 😱
این ارور(عکس 1) داره میگه که پکیجی که داری نصب میکنی به پکیج های زیر وابسته اس و باید قبلش اینارو نصب کنی
خب یه راهش اینه بیاییم دستی دونه دونه پکیج هارو نصب کنیم که خب عقلانی نیست شاید پنجاه تا وابستگی داشت
تازه بیشتر اوقات خود دیپندنسی ها باز دیپندنسی دارن🥵
راه بهتر چیه ؟🤔
از دستور زیر استفاده کنیم
sudo apt install -f
این دستور میاد اتوماتیک اون وابستگی هارو شناسایی میکنه و براتون نصب میکنه
✅ حالا میتونید دوباره windscribe رو نصب کنید 🥳
@LearnByLearn
#linux
👍2
LearnByLearn📖
💬 این متد یک تابع که دارای یک شرط هست رو دریافت میکنه و آیتم هایی که اون شرط رو پاس میکنن توی یک آرایه میریزه و return میکنه Example const myArray = [12, 5, 8, 130, 44]; const filtered = myArray.filter((item)=>item > 10 ); console.log(filtered); هرشب…
💬 این متد دوتا ورودی به اس start و end میگیره
در وقاقع شما با استفاده از این دو ورودی تعیین میکنید چه بخشی از آرایه مورد نظرتون رو برداره بهتون نمایش بده
💬 همچنین خروجی این متد یک آرایه از اون تیکه های جدا شده هست
💬 توجه کنید که هردوتا ورودی start و end اختیاری هستن و میتونید واردشون نکنید که در این صورت
مقدار پیشفرض start اولین عنصر آرایه و
مقدار پیشفرض end آخرین عنصر آرایه هستش
پس طبیعیه که در صورت ندادن ورودی کل آرایه رو برمیگردونه
Example 1
Example 2
Example 3
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_slice
#javanoscript_method
در وقاقع شما با استفاده از این دو ورودی تعیین میکنید چه بخشی از آرایه مورد نظرتون رو برداره بهتون نمایش بده
💬 همچنین خروجی این متد یک آرایه از اون تیکه های جدا شده هست
💬 توجه کنید که هردوتا ورودی start و end اختیاری هستن و میتونید واردشون نکنید که در این صورت
مقدار پیشفرض start اولین عنصر آرایه و
مقدار پیشفرض end آخرین عنصر آرایه هستش
پس طبیعیه که در صورت ندادن ورودی کل آرایه رو برمیگردونه
Example 1
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice());
// ["ant", "bison", "camel", "duck", "elephant"]
Example 2
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(1,3));
// ["bison", "camel"]
Example 3
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(2));
// ["camel", "duck", "elephant"]
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_slice
#javanoscript_method
👌1
☝🏻یه خرده Best Practices های javanoscript رو یاد بگیریم:
✅ از var استفاده نکن به جاش const و let استفاده کن
✅ متغییر هات رو پیشفرض const بنویس مگر خلافش ثابت بشه
✅ به جای if های تو در تو از guard clauses استفاده کن
✅ تا جایی که جا داره از loop استفاده نکن و به جاش از متد های آرایه مثل map و filter و... استفاده کن
✅ جهنم کالبک برای خودت درست نکن و به جاش از async استفاده کن
✅ از سینتکس های ES6 به بعد استفاده کن تا برنامه نویس بعدی اومد روی کدات فحش نده
✅ از arrow function ها به عنوان متد توی شی گرایی استفاده نکن
✅ تا جایی که امکانش هست از default parameter استفاده کن
✅ توی شی گرایی سعی کن از سینتکس ES6 استفاده کنی
✅ هیچوقت از == برای مقایسه استفاده نکن و به جاش از === استفاده کن
✅ بیشتر از سه پارامتر به تابع ات نده و به جاش از destructure استفاده کن
✅ طوری کامنت بنویس و اسم متغییر استفاده کن تا دوماه بعد اومدی کداتو دیدی حس نکنی از یک سیاره دیگه کد ها نوشته شدن
✅ همیشه حواست به هندل کردن error ها توی پرامیس ها باشه
✅ کد هات کمتر imprative باشه بلکه declarative باشه (بعدن راجع بهش پست میزارم)
✅ کلا پاشو برو از typenoscript استفاده کن😁
👈🏻 اگه شمام هم چیزی میدونی تو کامنت ها بگو
@LearnByLearn
#best_practices
#javanoscript
✅ از var استفاده نکن به جاش const و let استفاده کن
✅ متغییر هات رو پیشفرض const بنویس مگر خلافش ثابت بشه
✅ به جای if های تو در تو از guard clauses استفاده کن
✅ تا جایی که جا داره از loop استفاده نکن و به جاش از متد های آرایه مثل map و filter و... استفاده کن
✅ جهنم کالبک برای خودت درست نکن و به جاش از async استفاده کن
✅ از سینتکس های ES6 به بعد استفاده کن تا برنامه نویس بعدی اومد روی کدات فحش نده
✅ از arrow function ها به عنوان متد توی شی گرایی استفاده نکن
✅ تا جایی که امکانش هست از default parameter استفاده کن
✅ توی شی گرایی سعی کن از سینتکس ES6 استفاده کنی
✅ هیچوقت از == برای مقایسه استفاده نکن و به جاش از === استفاده کن
✅ بیشتر از سه پارامتر به تابع ات نده و به جاش از destructure استفاده کن
✅ طوری کامنت بنویس و اسم متغییر استفاده کن تا دوماه بعد اومدی کداتو دیدی حس نکنی از یک سیاره دیگه کد ها نوشته شدن
✅ همیشه حواست به هندل کردن error ها توی پرامیس ها باشه
✅ کد هات کمتر imprative باشه بلکه declarative باشه (بعدن راجع بهش پست میزارم)
✅ کلا پاشو برو از typenoscript استفاده کن😁
👈🏻 اگه شمام هم چیزی میدونی تو کامنت ها بگو
@LearnByLearn
#best_practices
#javanoscript
👍5🔥1
LearnByLearn📖
💬 این متد دوتا ورودی به اس start و end میگیره در وقاقع شما با استفاده از این دو ورودی تعیین میکنید چه بخشی از آرایه مورد نظرتون رو برداره بهتون نمایش بده 💬 همچنین خروجی این متد یک آرایه از اون تیکه های جدا شده هست 💬 توجه کنید که هردوتا ورودی start و end…
💬 این متد به عنوان ورودی هرچندتا دلتون بخواد آرایه میگیره و همه رو میریزه توی یک آرایه
Example 1
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_concat
#javanoscript_method
Example 1
const array1 = ['a', 'b', 'c'];
const array2 = ['d', 'e', 'f'];
const array3 = array1.concat(array2);
//["a", "b", "c", "d", "e", "f"]
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_concat
#javanoscript_method
👍3
LearnByLearn📖
🤔 تا حالا فکر کردین وقتی ما یک method یا یک property رو روی یک object صدا میزنیم، جاواسکریپت چطور میفهمه که اون method از کجا میاد و صداش میزنه؟ توی این مقاله علتش رو میفهمی😉 لینک مقاله 👈🏻 لینک @LearnByLearn #concept #javanoscript #object_oriented_javanoscript…
👈🏻 بررسی ES6 Class و رابطه اش با Constructor Function
لینک مقاله 👈🏻 لینک
@LearnByLearn
#concept
#javanoscript
#object_oriented_javanoscript
#es6_classs
لینک مقاله 👈🏻 لینک
@LearnByLearn
#concept
#javanoscript
#object_oriented_javanoscript
#es6_classs
👏1
LearnByLearn📖
💬 این متد به عنوان ورودی هرچندتا دلتون بخواد آرایه میگیره و همه رو میریزه توی یک آرایه Example 1 const array1 = ['a', 'b', 'c']; const array2 = ['d', 'e', 'f']; const array3 = array1.concat(array2); //["a", "b", "c", "d", "e", "f"] هرشب یه متد از جاواسکریپت…
💬 این متد همون طور که از اسمش معلومه ارایه رو صاف میکنه😁
فرض کنید یه آرایه دارید و باز توی اون آرایه یه آرایه دیگه ای دارید
و اون آرایه داخلی رو محتواش رو بیرون بریزید
اون موقع اس که باید از این متد استفاده کنید
حالا این متد یه آرگومان دلخواه هم میگیره که میگه تا چند مرحله من آرایه رو برات flat کنم
یا حتی میتونی مقدار infinity بهش بدی بگی هرچقدر تو در تو بود بازم flat کن
Example 1
Example 2
Example 3
Example 4
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_flat
#javanoscript_method
فرض کنید یه آرایه دارید و باز توی اون آرایه یه آرایه دیگه ای دارید
و اون آرایه داخلی رو محتواش رو بیرون بریزید
اون موقع اس که باید از این متد استفاده کنید
حالا این متد یه آرگومان دلخواه هم میگیره که میگه تا چند مرحله من آرایه رو برات flat کنم
یا حتی میتونی مقدار infinity بهش بدی بگی هرچقدر تو در تو بود بازم flat کن
Example 1
const arr1 = [1, 2, [3, 4]];
arr1.flat();
// [1, 2, 3, 4]
Example 2
const arr2 = [1, 2, [3, 4, [5, 6]]];
arr2.flat();
// [1, 2, 3, 4, [5, 6]]
Example 3
const arr3 = [1, 2, [3, 4, [5, 6]]];
arr3.flat(2);
// [1, 2, 3, 4, 5, 6]
Example 4
const arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr4.flat(Infinity);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
هرشب یه متد از جاواسکریپت رو یاد بگیر 😉
@LearnByLearn
#method_flat
#javanoscript_method
🔥6❤1👍1🙏1
سلام به اعضای عزیز کانال
بابت کم کار شدن کانال و خودم عذر خواهی میکنم
یکسری مشکلات شخصی و کسالت برام پیش اومده که بیشتر تایمم رو گرفته و امیدوارم زودتر حل بشه
ممکنه چند هفته نتونم توی کانال فعالیت داشته باشم و پستی منتشر کنم اما تلاشم رو میکنم که اینطور نباشه
به محض اینکه اوضام روبراه شه بزودی بر میگردم
دم همه اونایی که کانال رو همراهی میکنن گرم❤️❤️❤️❤️
بابت کم کار شدن کانال و خودم عذر خواهی میکنم
یکسری مشکلات شخصی و کسالت برام پیش اومده که بیشتر تایمم رو گرفته و امیدوارم زودتر حل بشه
ممکنه چند هفته نتونم توی کانال فعالیت داشته باشم و پستی منتشر کنم اما تلاشم رو میکنم که اینطور نباشه
به محض اینکه اوضام روبراه شه بزودی بر میگردم
دم همه اونایی که کانال رو همراهی میکنن گرم❤️❤️❤️❤️
❤15🥰2
LearnByLearn📖
👈🏻 بررسی ES6 Class و رابطه اش با Constructor Function لینک مقاله 👈🏻 لینک @LearnByLearn #concept #javanoscript #object_oriented_javanoscript #es6_classs
👈🏻 بررسی Object.create و نحوه کار کردش
لینک مقاله 👈🏻 لینک
@LearnByLearn
#concept
#javanoscript
#object_oriented_javanoscript
#object_create
لینک مقاله 👈🏻 لینک
@LearnByLearn
#concept
#javanoscript
#object_oriented_javanoscript
#object_create
👏1
اگه میخوایید بدونید Nodejs چطور پس قضیه داره کار میکنه این ویدیو رو پیشنهاد میکنم ببینید
https://youtu.be/1_EVy3tls0k?si=sfTSkGBg0CPmK5Si
https://youtu.be/1_EVy3tls0k?si=sfTSkGBg0CPmK5Si
YouTube
Node.js Event Loop Explained
How does the event loop in Node.js work, what are the phases of the event loop and what is the precedence? What is process.nextTick(), what are microtasks and microtasks in Node.js?
======⚡⚡⚡======
Consider becoming a member of the channel by joining me…
======⚡⚡⚡======
Consider becoming a member of the channel by joining me…
⚡5
LearnByLearn📖
👈🏻 بررسی Object.create و نحوه کار کردش لینک مقاله 👈🏻 لینک @LearnByLearn #concept #javanoscript #object_oriented_javanoscript #object_create
سلام به عزیزانی که کانال رو دنبال میکنن❤️
قسمت ششم یه خرده طولانی هست و ویراستاریش طول میکشه اما بسیار جامع هست چون همه مطالب رو جمع کردم توی یک مقاله و مطمعن باشید درک خوبی از ارث بری توی جاواسکریپت بدست میارید
تا چند ساعت دیگه منتشرش میکنم
#پست_موقت
قسمت ششم یه خرده طولانی هست و ویراستاریش طول میکشه اما بسیار جامع هست چون همه مطالب رو جمع کردم توی یک مقاله و مطمعن باشید درک خوبی از ارث بری توی جاواسکریپت بدست میارید
تا چند ساعت دیگه منتشرش میکنم
#پست_موقت
👏4
LearnByLearn📖
👈🏻 بررسی Object.create و نحوه کار کردش لینک مقاله 👈🏻 لینک @LearnByLearn #concept #javanoscript #object_oriented_javanoscript #object_create
👈🏻 بررسی عمیق و کامل ارث بری (Inheritance ) در جاواسکریپت
لینک مقاله 👈🏻 لینک
@LearnByLearn
#javanoscript
#object_oriented_javanoscript
#inheritance
لینک مقاله 👈🏻 لینک
@LearnByLearn
#javanoscript
#object_oriented_javanoscript
#inheritance
👍7
Media is too big
VIEW IN TELEGRAM
توی این ویدیو یاد میگیریم :
✅ تفاوت Reference by value و primitive by value در جاواسکریپت چیه ؟
✅ تفاوت shallow copy و deep copy چیه ؟
✅ چطور یک آبجکت رو کپی کنیم ؟ و با ابزار lodash آشنا میشیم
@LearnByLearn
#javanoscript
#reference_value
#primitive_value
✅ تفاوت Reference by value و primitive by value در جاواسکریپت چیه ؟
✅ تفاوت shallow copy و deep copy چیه ؟
✅ چطور یک آبجکت رو کپی کنیم ؟ و با ابزار lodash آشنا میشیم
@LearnByLearn
#javanoscript
#reference_value
#primitive_value
👍7👏1
LearnByLearn📖
توی این ویدیو یاد میگیریم : ✅ تفاوت Reference by value و primitive by value در جاواسکریپت چیه ؟ ✅ تفاوت shallow copy و deep copy چیه ؟ ✅ چطور یک آبجکت رو کپی کنیم ؟ و با ابزار lodash آشنا میشیم @LearnByLearn #javanoscript #reference_value #primitive_value
بابت کیفیت صدا عذر میخوام، میکروفونم خیلی حرفه ای نیست🙏🏻
❤11👍3
LearnByLearn📖
The_Complete_Developer_Master_the_Full_Stack_With_TypeScript,_React.pdf
اگه میخوایین ببینید و یادبگیرید یه اپلیکیشن فول استک با جاواسکریپت بسازید این کتاب رو از دست ندین
چیا توش یاد میگیرید؟
Typenoscript
Node.js
MongoDB
Next.js
Docker
TDD
Deploy
البته عمیقا این ابزار هارو یاد نمیده ولی با پروسه تولید یه اپلیکیشن کاملا جی اسی از صفر تا صد اشناتون میکنه
کتاب داغه داغ ساخت 2024 هستش😉
#book
@LearnByLearn
چیا توش یاد میگیرید؟
Typenoscript
Node.js
MongoDB
Next.js
Docker
TDD
Deploy
البته عمیقا این ابزار هارو یاد نمیده ولی با پروسه تولید یه اپلیکیشن کاملا جی اسی از صفر تا صد اشناتون میکنه
کتاب داغه داغ ساخت 2024 هستش😉
#book
@LearnByLearn
🔥3👍1
Audio
رادیو جادی ۱۷۵ - کار و زندگی و تنبلی و فلسفه و جهان بینی در گپی با پادکست کارگاه
https://youtu.be/TC9VV4nxLvc
چند وقت پیش به دعوت میلاد به پادکست کارگاه رفتم و گپی باهاش زدم. نمیدونستم در مورد چی قراره صحبت میکنیم. فکر می کردم بیشتر قراره بگم چطوری کار می کنم و اینها ولی بیشتر در مورد فلسفه زندگی و اینها گپ زدیم به نظرم. راستش درست یادم نیست چی گفتیم ولی یادمه که گفتگوی خوبی بود. به من که خوش گذشت و قرار شد چند روز بعد از اینکه خودش منتشرش کرد و آدم ها اونجا دیدنش، منم اینجا بذارم که در آرشیو من هم باشه.
#پادکست #رادیو
https://youtu.be/TC9VV4nxLvc
چند وقت پیش به دعوت میلاد به پادکست کارگاه رفتم و گپی باهاش زدم. نمیدونستم در مورد چی قراره صحبت میکنیم. فکر می کردم بیشتر قراره بگم چطوری کار می کنم و اینها ولی بیشتر در مورد فلسفه زندگی و اینها گپ زدیم به نظرم. راستش درست یادم نیست چی گفتیم ولی یادمه که گفتگوی خوبی بود. به من که خوش گذشت و قرار شد چند روز بعد از اینکه خودش منتشرش کرد و آدم ها اونجا دیدنش، منم اینجا بذارم که در آرشیو من هم باشه.
#پادکست #رادیو
LearnByLearn📖
رادیو جادی ۱۷۵ - کار و زندگی و تنبلی و فلسفه و جهان بینی در گپی با پادکست کارگاه https://youtu.be/TC9VV4nxLvc چند وقت پیش به دعوت میلاد به پادکست کارگاه رفتم و گپی باهاش زدم. نمیدونستم در مورد چی قراره صحبت میکنیم. فکر می کردم بیشتر قراره بگم چطوری کار…
پیشنهاد میکنم این مصاحبه جادی رو حتما گوش کنید
✅ اونایی که با زبان گولنگ کار کردن میدونن که ارور هندلینگ توی گولنگ اینطوری انجام میشه:
✅ حالا جاواسکریپتی ها پیش خودشون گفتن مگه ما چیمون از گولنگی ها کمتره ؟؟؟ 😎
✅ اومدن یه پروپوزال دادن، گفتن چی؟؟؟
گفتن آقا جان بیاییم از شر try/catch خلاص شیم یا حداقلش اینه که کمتر ازش استفاده کنیم 😍
✅ پس گفتن از این به بعد اینطوری توی جاواسکریپت ارور هارو هندل کنیم
✅ توی این پروپوزال یک اپراتور جدید به اسم safe assignment معرفی کردن که به این شکل هست 👈🏻 =?
که خروجی تابع سمت راست رو توی یک تاپل یعنی [error, response] میریزه
یعنی اگه ارور داشتیم میاد توی error و اگه نتیجه تابع هرچی که بود میاد توی response
⭐️ مزیتش چیه ؟؟؟
از شر try/catch ها خلاصمون میکنه و خیلی کدامون تمیز تر میشه
☝🏻 البته خیلی نکات هستن که نگفتم چون پست طولانی میشد، پس اگه میخوایین بیشتر راجبش بدونید این لینک رو مطالعه کنید
🔗 لینک گیت هاب
⚠️ دقت کنید که این ویژگی در حد پروپوزال هست و در دست توسعه و طبیعتا تا بخواد عملی بشه و مرورگر ها ازش ساپورت کنن طول خواهد کشید
@LearnByLearn
result, err := myFunc(a, b)
✅ حالا جاواسکریپتی ها پیش خودشون گفتن مگه ما چیمون از گولنگی ها کمتره ؟؟؟ 😎
✅ اومدن یه پروپوزال دادن، گفتن چی؟؟؟
گفتن آقا جان بیاییم از شر try/catch خلاص شیم یا حداقلش اینه که کمتر ازش استفاده کنیم 😍
✅ پس گفتن از این به بعد اینطوری توی جاواسکریپت ارور هارو هندل کنیم
const [error, response] ?= await fetch("https://arthur.place")✅ توی این پروپوزال یک اپراتور جدید به اسم safe assignment معرفی کردن که به این شکل هست 👈🏻 =?
که خروجی تابع سمت راست رو توی یک تاپل یعنی [error, response] میریزه
یعنی اگه ارور داشتیم میاد توی error و اگه نتیجه تابع هرچی که بود میاد توی response
⭐️ مزیتش چیه ؟؟؟
از شر try/catch ها خلاصمون میکنه و خیلی کدامون تمیز تر میشه
☝🏻 البته خیلی نکات هستن که نگفتم چون پست طولانی میشد، پس اگه میخوایین بیشتر راجبش بدونید این لینک رو مطالعه کنید
🔗 لینک گیت هاب
⚠️ دقت کنید که این ویژگی در حد پروپوزال هست و در دست توسعه و طبیعتا تا بخواد عملی بشه و مرورگر ها ازش ساپورت کنن طول خواهد کشید
@LearnByLearn
❤3👍1
✅ اگه با داکر کار میکنی و مثل من هی کانتینر بالا میاری و هی تست میکنی و بعد حذف میکنی😥
✅ یا مثلا یه کانتینر میخوایی بیاری بالا یه چیزی رو تست بزنی بعد بری دستی کانتینر رو حذف کنی تا فضاتو اشغال نکنه😤
باید بگم نیاز نیست هی هربار کانتینر بیاری بالا و دستی بیاری پایین
کافیه از فلگ rm-- استفاده کنی، با این فلگ خود داکر میفهمه وقتی کانتینرت stop شد بره حذفش کنه
📿 الله اکبر از این همه هوشمندی😁
یعنی اینطوری:
@LearnByLearn
#docker
#trick
✅ یا مثلا یه کانتینر میخوایی بیاری بالا یه چیزی رو تست بزنی بعد بری دستی کانتینر رو حذف کنی تا فضاتو اشغال نکنه😤
باید بگم نیاز نیست هی هربار کانتینر بیاری بالا و دستی بیاری پایین
کافیه از فلگ rm-- استفاده کنی، با این فلگ خود داکر میفهمه وقتی کانتینرت stop شد بره حذفش کنه
📿 الله اکبر از این همه هوشمندی😁
یعنی اینطوری:
docker run -p 3002:3002/tcp --name nodejs --rm f56er4
@LearnByLearn
#docker
#trick
⚡5👎1
👈🏻 میدلور (middleware) چیه و چطور کار میکنه؟ best practices هاش کدومن ؟ چطور ازش استفاده کنیم ؟
لینک مقاله 👈🏻 لینک
@LearnByLearn
#backend
#expressjs
#concept
لینک مقاله 👈🏻 لینک
@LearnByLearn
#backend
#expressjs
#concept
👍4