ترکیب این دو عزیز با این رزومهها میتونه تو یه هفته گوگل رو از صفر بالا بیاره
🆔 @IranCoderz | 👩💻🧑💻
🆔 @IranCoderz | 👩💻🧑💻
Media is too big
VIEW IN TELEGRAM
📌اسکار بهترین ویدئو معرفی محصول هم تعلق میگیره به تیم MongoDB که به این صورت و با الهام از آهنگ Cheap Thrills سیا در اواخر سال 2017 محصول جدید خودشون به اسم Atlas رو معرفی کردند
لینک یوتیوب
🆔 @IranCoderz | 👩💻🧑💻
لینک یوتیوب
🆔 @IranCoderz | 👩💻🧑💻
یه متن انگلیسی خوندم راجع به آدمهایی که تو دنیای امروز به عنوان خود ساخته و موفق معرفی میشن و قسمتهایی از زندگیشون رو که رسانهها نمیگن که آدمهای معمولی فکر کنن همه میتونن به اون بالا برسن و اگه نمیرسن،کم تلاش کردن یا باهوش نیستن.دوست داشتین بخونین:
از جف بزوس که ثروتمندترین آدم دنیاست چی میدونیم؟همه میگن آمازون سال ۱۹۹۴ از یه گاراژ شروع شده.ولی شاید همه ندونن تو سال ۱۹۹۵،مامان وباباش بهش نزدیک ۲۵۰هزار دلار دادن چون بیزینسش در حال ورشکستگی بوده.حتما جف بزوس خودش هم به شدت باهوش و با استعداده اما بدون اون پول،آمازون هم نبود
باز هم میگم،حتما بیل گیتس هم باهوش و کار بلد بوده،اما بدون پارتی مامان جونش که براش یه همچین فرصتی رو درست بکنه،حتما به اندازه الان ثروتمند نمیشد.
قصه زندگی همه آدمهای خیلی موفق هست.بازی رسانهها اینه که کمرنگش کنن.آدمهای باهوش و پرتلاش حتما به یه جایی میرسن ولی برای رسیدن به بالاترین قله،بابا مامان پولدار و پارتی هم خیلی کمک میکنه
* hanieh35 *
🆔 @IranCoderz | 👩💻🧑💻
از جف بزوس که ثروتمندترین آدم دنیاست چی میدونیم؟همه میگن آمازون سال ۱۹۹۴ از یه گاراژ شروع شده.ولی شاید همه ندونن تو سال ۱۹۹۵،مامان وباباش بهش نزدیک ۲۵۰هزار دلار دادن چون بیزینسش در حال ورشکستگی بوده.حتما جف بزوس خودش هم به شدت باهوش و با استعداده اما بدون اون پول،آمازون هم نبود
باز هم میگم،حتما بیل گیتس هم باهوش و کار بلد بوده،اما بدون پارتی مامان جونش که براش یه همچین فرصتی رو درست بکنه،حتما به اندازه الان ثروتمند نمیشد.
قصه زندگی همه آدمهای خیلی موفق هست.بازی رسانهها اینه که کمرنگش کنن.آدمهای باهوش و پرتلاش حتما به یه جایی میرسن ولی برای رسیدن به بالاترین قله،بابا مامان پولدار و پارتی هم خیلی کمک میکنه
* hanieh35 *
🆔 @IranCoderz | 👩💻🧑💻
مثل اینکه ایرانی بودن واقعا تبدیل به جرم شده و بایننس به ایرانیها، فارغ از اینکه کجا زندگی میکنند سرویس ارائه نمیده و داره حساب کسایی که ملیت ایرانی دارند رو مسدود میکنه :)
🆔 @IranCoderz | 👩💻🧑💻
🆔 @IranCoderz | 👩💻🧑💻
👤Mohammad Rajabi
سالید SOLID به زبان ساده👇
[PART 1]
Single Responsibility Principle
به این معنی که هر کلاس فقط باید یک کار انجام دهد و نه بیشتر
مثال : در کلاس ارسال ایمیل فقط باید متدهای ارسال ایمیل پیاده سازی شود و نه بیشتر، اگر در این کلاس از متدهای ارسال اس ام اس استفاده شود این قانون نقض میشود
Open-Closed Principle
هر کلاس باید قابل توسعه و غیر قابل تغییر باشد
مثال : کلاسی داریم که ارسال ایمیل با سرور جیمیل را انجام میدهد که تعدادی ورودی و یک خروجی استرینگ دارد
حال اگر بخواهیم ارسال ایمیل با سرور یاهو را هم به پروژه اضافه کنیم دو راه داریم یکی اینکه در متد قبلی یک ورودی برای سرور اضافه کنیم و یک شرط ایف در بدنه متد قراردهیم برای چک کردن ، که این عملیات اصل دو سالید را نقض میکند
راه دوم و صحیح افزودن یک متد دیگر برای ارسال با یاهو
🆔 @IranCoderz | 👩💻🧑💻
سالید SOLID به زبان ساده👇
[PART 1]
Single Responsibility Principle
به این معنی که هر کلاس فقط باید یک کار انجام دهد و نه بیشتر
مثال : در کلاس ارسال ایمیل فقط باید متدهای ارسال ایمیل پیاده سازی شود و نه بیشتر، اگر در این کلاس از متدهای ارسال اس ام اس استفاده شود این قانون نقض میشود
Open-Closed Principle
هر کلاس باید قابل توسعه و غیر قابل تغییر باشد
مثال : کلاسی داریم که ارسال ایمیل با سرور جیمیل را انجام میدهد که تعدادی ورودی و یک خروجی استرینگ دارد
حال اگر بخواهیم ارسال ایمیل با سرور یاهو را هم به پروژه اضافه کنیم دو راه داریم یکی اینکه در متد قبلی یک ورودی برای سرور اضافه کنیم و یک شرط ایف در بدنه متد قراردهیم برای چک کردن ، که این عملیات اصل دو سالید را نقض میکند
راه دوم و صحیح افزودن یک متد دیگر برای ارسال با یاهو
🆔 @IranCoderz | 👩💻🧑💻
[PART 2]
Liskov Substitution Principle
هر کلاسی که از کلاس دیگر ارث بری میکند هرگز نباید رفتار کلاس والد را تغییر دهد
مثال: این مورد رو با یک مثال کاملا قابل فهم بیان میکنم
در ریاضیات مربع همان مستطیل است
طبق این اصل ما میتوانیم کلاسی به نام مستطیل ایجاد کنیم که طول و عرض را به عنوان ورودی میگیرد و مستطیل را در خروجی بر میگرداند
کلاس دیگری داریم به نام مربع که این کلاس از کلاس مستطیل مشتق شده
کلاس را نمونه سازی میکنیم به شکل زیر
Rectangle rstngl=new Squre();
حال وقتی متد مستطیل این متغیر را فراخوانی میکنیم و ورودی ها را ست میکنیم خروجی ما یک مربع است در حالی که کلاس والد خروجی اش باید یک مستطیل باشد، این خروجی در ریاضیات صحیح اما در برنامه نویسی غلط است چراکه کلاس فرزند در رفتار کلاس والد تغییر ایجاد کرد و خروجی آن را به مربع تبدیل کرد
برای حل این موضوع باید از اینترفیس ها به جای کلاس والد استفاده کرد
🆔 @IranCoderz | 👩💻🧑💻
Liskov Substitution Principle
هر کلاسی که از کلاس دیگر ارث بری میکند هرگز نباید رفتار کلاس والد را تغییر دهد
مثال: این مورد رو با یک مثال کاملا قابل فهم بیان میکنم
در ریاضیات مربع همان مستطیل است
طبق این اصل ما میتوانیم کلاسی به نام مستطیل ایجاد کنیم که طول و عرض را به عنوان ورودی میگیرد و مستطیل را در خروجی بر میگرداند
کلاس دیگری داریم به نام مربع که این کلاس از کلاس مستطیل مشتق شده
کلاس را نمونه سازی میکنیم به شکل زیر
Rectangle rstngl=new Squre();
حال وقتی متد مستطیل این متغیر را فراخوانی میکنیم و ورودی ها را ست میکنیم خروجی ما یک مربع است در حالی که کلاس والد خروجی اش باید یک مستطیل باشد، این خروجی در ریاضیات صحیح اما در برنامه نویسی غلط است چراکه کلاس فرزند در رفتار کلاس والد تغییر ایجاد کرد و خروجی آن را به مربع تبدیل کرد
برای حل این موضوع باید از اینترفیس ها به جای کلاس والد استفاده کرد
🆔 @IranCoderz | 👩💻🧑💻
[PART 3]
Interface Segregation Principle
این اصل به این موضوع اشاره دارد که چند اینترفیس کوچک شده بهتر از یک اینترفیس است
مثال: همان طور که میدانید یک کلاس میتواند متدهای چندین اینترفیس را ایمپلمنت یا همان پیاده سازی کند
فرض کنید اینترفیسی داریم که حاوی ده متد است و یک کلاس داریم که از این اینترفیس ارث بری میکند و فقط به یکی از این متدها نیاز دارد
بنابراین نه متد دیگر بلا استفاده هستند ولی باید حتما بدنه آنها در کلاس فرزند ساخته شود
برای رفع این مشکل میتوانیم اینترفیس را به دو اینترفیس مجزا که یکی داری نه متد و دیگری یک متد است تبدیل کنیم و هر کجا به هر ده متد نیاز داشتیم کلاس از هر دو اینترفیس ارث بری کند
🆔 @IranCoderz | 👩💻🧑💻
Interface Segregation Principle
این اصل به این موضوع اشاره دارد که چند اینترفیس کوچک شده بهتر از یک اینترفیس است
مثال: همان طور که میدانید یک کلاس میتواند متدهای چندین اینترفیس را ایمپلمنت یا همان پیاده سازی کند
فرض کنید اینترفیسی داریم که حاوی ده متد است و یک کلاس داریم که از این اینترفیس ارث بری میکند و فقط به یکی از این متدها نیاز دارد
بنابراین نه متد دیگر بلا استفاده هستند ولی باید حتما بدنه آنها در کلاس فرزند ساخته شود
برای رفع این مشکل میتوانیم اینترفیس را به دو اینترفیس مجزا که یکی داری نه متد و دیگری یک متد است تبدیل کنیم و هر کجا به هر ده متد نیاز داشتیم کلاس از هر دو اینترفیس ارث بری کند
🆔 @IranCoderz | 👩💻🧑💻
[PART 4]
Dependency Inversion Principle
اصل معکوس سازی وابستگی
مثال: اوایل که موبایل تازه داشت رونق میگرفت یک سری تولید کننده شارژر وجود داشتند که هر بار که یک موبایل روانه بازار می شد مجبور بودن طراحیشون رو بر طبق این مدل موبایل تغییر بدن و کار به جایی رسید که یک سیم شارژی تولید شد که بیش از ده خروجی داشت برای همه موبایل ها
اما این راه حل صحیح نبود !!!
بنابراین شرکت های تولید شارژر تصمیم گرفتند اعتصاب کنند که به جای اینکه چیزی که شما میخواین رو ما تولید کنیم
چیزی که ما میخوایم رو شماها تولید کنید
اتفاقا شرکت های موبایلی هم از این طرح استقبال کردن و یک استاندارد بینشون رد و بدل شد
بنابراین وابستگی وارونه شد !!!
در کلاس ها هم دقیقا مشابه این اتفاق بارها برای همه پیش اومده
راه حل :اول استفاده از اینترفیس ها به جای کلاس های سطح بالا
دوم عدم اشاره به جزئیات در اینترفیس ها
🆔 @IranCoderz | 👩💻🧑💻
Dependency Inversion Principle
اصل معکوس سازی وابستگی
مثال: اوایل که موبایل تازه داشت رونق میگرفت یک سری تولید کننده شارژر وجود داشتند که هر بار که یک موبایل روانه بازار می شد مجبور بودن طراحیشون رو بر طبق این مدل موبایل تغییر بدن و کار به جایی رسید که یک سیم شارژی تولید شد که بیش از ده خروجی داشت برای همه موبایل ها
اما این راه حل صحیح نبود !!!
بنابراین شرکت های تولید شارژر تصمیم گرفتند اعتصاب کنند که به جای اینکه چیزی که شما میخواین رو ما تولید کنیم
چیزی که ما میخوایم رو شماها تولید کنید
اتفاقا شرکت های موبایلی هم از این طرح استقبال کردن و یک استاندارد بینشون رد و بدل شد
بنابراین وابستگی وارونه شد !!!
در کلاس ها هم دقیقا مشابه این اتفاق بارها برای همه پیش اومده
راه حل :اول استفاده از اینترفیس ها به جای کلاس های سطح بالا
دوم عدم اشاره به جزئیات در اینترفیس ها
🆔 @IranCoderz | 👩💻🧑💻
پ ن:
👤Naser Emami
در مورد اصل اول؛ فانکشن، پراسیجر و در حالت کلی هر ماژولی هم باید صادق باشد. به عنوان مثل متدی که علاوه بر کنترل صحت نام کاربری و پسورد، لاگ هم ثبت میکند دقیقا این اصل را نقض کرده است.
در مورد اصل دوم هم همین موضوع صادق است و موضوع اصل فقط کلاسها نیستند.
یا در مورد اصل سوم، کلا اصل لیسکوف به شیوه ایی دیگر بیان شده است . این اصل نمیگه ساب کلاس هرگز نباید رفتار سوپر کلاس رو تغییر بده، بلکه میگه باید طوری طراحی کنید که بتونید آبجکتهای ساب کلاس رو در متغیرهایی از جنس سوپر کلاس قرار بدهید.
و گرنه یکی از اهداف ارث بری اتفاقا همین است که به کلاس مشتق شده اجازه بدهیم رفتار کلاس والد رو تغییر دهد
🆔 @IranCoderz | 👩💻🧑💻
👤Naser Emami
در مورد اصل اول؛ فانکشن، پراسیجر و در حالت کلی هر ماژولی هم باید صادق باشد. به عنوان مثل متدی که علاوه بر کنترل صحت نام کاربری و پسورد، لاگ هم ثبت میکند دقیقا این اصل را نقض کرده است.
در مورد اصل دوم هم همین موضوع صادق است و موضوع اصل فقط کلاسها نیستند.
یا در مورد اصل سوم، کلا اصل لیسکوف به شیوه ایی دیگر بیان شده است . این اصل نمیگه ساب کلاس هرگز نباید رفتار سوپر کلاس رو تغییر بده، بلکه میگه باید طوری طراحی کنید که بتونید آبجکتهای ساب کلاس رو در متغیرهایی از جنس سوپر کلاس قرار بدهید.
و گرنه یکی از اهداف ارث بری اتفاقا همین است که به کلاس مشتق شده اجازه بدهیم رفتار کلاس والد رو تغییر دهد
🆔 @IranCoderz | 👩💻🧑💻
در نسخه بتا تلگرام اندروید امکان مشاهده افرادی که پیامهای شما را سین کردهاند اضافه شده است
این امکان فعلاً فقط برای گروههای کوچک فعال شده
همچنین امکان تغییر تم برای هر گفتگو به صورت جداگانه فراهم شده است و جهت تسهیل تماس اینترنتی، دکمهی تماس به داخل چت اضافه شده است.
منبع: @AliSentinel
🆔 @IranCoderz | 👩💻🧑💻
این امکان فعلاً فقط برای گروههای کوچک فعال شده
همچنین امکان تغییر تم برای هر گفتگو به صورت جداگانه فراهم شده است و جهت تسهیل تماس اینترنتی، دکمهی تماس به داخل چت اضافه شده است.
منبع: @AliSentinel
🆔 @IranCoderz | 👩💻🧑💻