رفتن به مطلب
مرورگر پیشنهادی آرساکیا گیم مرورگر های تحت موتور کرومیوم می‌باشد، برای دانلود روی مرورگر انتخابی خود کلیک کنید
Google Chrome Microsoft Edge Ungoogled Chromium Brave Opera GX Opera

MiLo

شخص بسیار مهم (VIP)
  • تعداد ارسال ها

    226
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    8

MiLo آخرین بار در روز July 30 2025 برنده شده

MiLo یکی از رکورد داران بیشترین تعداد پسند مطالب است!

درباره MiLo

  • تاریخ تولد 07/15/2003

اطلاعات شخصی

  • نام کاربری در بازی
    Milo

آخرین بازدید کنندگان نمایه

12006 بازدید کننده نمایه

دستاورد های MiLo

ستاره در حال رشد

ستاره در حال رشد (9/14)

  • یک سال گذشت
  • خیلی محبوب نادر
  • دنبال شده مشتی
  • همکار
  • شروع کننده مکالمه

نشان‌های اخیر

212

اعتبار در سایت

  1. دوستان اگه دوست دارید سلامت روان و فکر داشته باشید بعد از وصل شدن به اکسپلور اینستاگرام نرید
    خواهش میکنم!

    1. Ting

      Ting

      چطور مگه چی داره؟

      باید با وی پی ان تو کروم نیاد😁

  2. MiLo

    My Experience 3

    تو این بخش راجب decleration file حرف بزنیم -این فایل ها مثل شناسنامه نیمونن! تمامی اطلاعات و تایپ های لازم برای یک فایل جاوا اسکریپتی رو داخل خودش داره. مثل نوع تغییرا، خروجیای فانکشنا، تایپ های متدا و ... حالا سوال اصلی اینه؛ چرا اصلا باید همچین فایلی داشته باشیم؟ این عمل باعث میشه بتونی از کتابخونه های جاوا اسکریپتی بتونی تو فایلای تایپ اسکریپت استفاده کنی، حتی با اینکه فایل یا پکیج جاوا اسکریپتیه میتونی type checking داشته باشی! مثال زیرو ببین //app.js export function add(a, b) { return a + b; } export function subtract(a, b) { return a - b; } الان ما دوتا فانکشن داریم؛ ولی ما نه تایپ ورودیو میدونیم نه خروجیشو! اینجاست که میاییم براش decleration file تعریف میکنیم و این مشکلو برطرف میکنیم //app.d.ts export function add(a: number, b: number): number; export function subtract(a: number, b: number): number; توی decleration file اومدیم گفتیم ما در فایل app.js دوتا فانکشن داریم به اسم add و subtract، حالا این دو فانکشن ورودی هاشون از نوع نامبر و خروجی هاشونم از نامبره! اینشکلی وقتی میخوایم از app.js توی فایلای تایپ اسکریپتی استفاده کنیم همچنان type ckecking رو داریم با اینکه فایل جاوا اسکریپتیه. تو این بخش میخوایم راجب encapsulation صحبت کنیم چیزی که فکر میکنین بلدین ولی نیستین (ادعا نیست جهت قلابه!) -خب اول از همه باید بدونیم encapsulation یک مفهوم و یک طرز فکر برای حل یک مسئلس. نه صرفا ی چارچوب برای کدنوشتن. حالا بریم ببینیم چه مشکلی رو ازمون حل میکنه. -ما یک مشکل بزرگی که داریم، اینه که محصولاتی ک داریم وقتی به دست مشتری میرسن ممکنه با تغییراتی در چندین جناح اپ، عملکردشو مختل کنن، یعنی مشتری از جزئیات اپ ما خبر داره و به درست و غلط، اونارو تغییر میده! خب این سناریو اصلا نباید اتفاق بیوفته. تصور کن شما ی بانک رو میخوای از صفر طراحی کنی، آیا این توی تصورت هست ک موجودی حسابی کاربر رو خودش تعیین کنه؟ نه. پس ما نباید بزاریم به صورت مستقیم کاربر موجودی حساب خودش دسترسی داشته باشه. -خب حالا ما مشکلو پیدا کردیم. ما مشکلمون اینه که گاهی اوقات جزئیاتیو در اختیار کاربر میزاریم که ممکنه باعث خرابیه سیستم بشن. حالا چجوری بفهمیم چه چیزی این ویژگی رو داره و چجوری ازش جلوگیری کنیم؟ اینجاست که encapsulation به کمکمون میاد. -مفهوم encapsulation به زبون ساده میگه شما حد ممکن باید جزئیات رو از دید کلاینت مخفی کنی. حالا این مخفی کردنه صرفا این نیست که شما لاجیک رو داخلش پرایوت نگه داری. مثل اون بانکس که اجازه دسترسی به داخل یک سیستم رو ندی. و این اصل به ما کمک میکنه که شما اپلیکیشن ایمن تر و قابل اعتماد تری داشته باشی. -مثال خیلی سادش ماشینه! مشکل ماشین های ما اینه که اگر ما فرض کنید کرم داشته باشیم و بخوایم تست کنیم و از دنده 5 یهو بکشیم دنده 1 ماشین رو باید ساعت 9 بزاریم دم در(ماشینای دنده ای)، خب اینجا ما باید جزئی به اسم دنده رو encapsulate کنیم که از این اتفاق جلوگیری کنیم! -حالا چرا گفتم که فکر میکنین ازش خبر دارین؟ چون اکثر برنامه نویسا وقتی اسم encapsulation میاد ذهنشون میره سمت چیزی به اسم access modifier ها، که توی زبانی مثل typescript به (public, private, protected) میشناسیمشون، و هدف این قسمت این بود که شما متوجه بشی صرفا پرایوت کردن یه متد یا یک پراپرتی اسمش encapsulation نیست، و این یک طرز فکر برای حل یک مسئله بزرگتره! اینکه توی شئ گرایی ما با access modifier ها encapsulate میکنیم یک سری چیزهارو، دلیل نمیشه بدون اون ها ما نتونیم encapsulation داشته باشیم.
  3. از اون جایی که اینتجر رو از فروم میشناسم گیت هاب محشری داره در پست های قبلیش هم تعجب کردم که چرا ایشون تو ایرانه! درکل من خودمم تازه راه افتادم تو این حوزه، همه اش ام بخاطر PAWNO که مربوط به سمپ هستش جرقه عه زده شد و علاقه مند شدم همین گذروندن تو این مباحث باعث میشه چیزای بیشتری یاد بگیری از موقعی که این سایت فروم آپدیت شد من کنکجاویم بیشتر شد و رفتم سمت فرانت اند و بک اند تو جنگ 12 روزه که اینترنتا بد شد رفتم شبکه خوندم و با این وضعیت الان اینترنت هم تونستم دور بزنم و یه چیزی رو فهمیدم اینا سواد اینکاری که کردن رو ندارن صددرصد چینیا رو آوردن برای این فایروال که اینقدر قدرتمنده و واقعا با استعدادن تو این کار وقتی خودم دارم دورشون میزنم واقعا هم اعصابم خورد میشه هم به شاهکاری که انجام دادن حال میکنم چطور بگم برای ما یکم جالبه و اینکه الان کل دنیا دارن شرطبندی میکنن که اینترنت ایران باز میشه یا نه! حتی تو خود چین میشه دور زد اما اینجا کلا پورت رو بستن و فقط پورت کلودفلیر CDN 443 باز هستش که اکثر اینایی ام که وصلن از این پورت استفاده میکنن که ریسکشم بالاست
  4. MiLo

    قیمت گلد

    بعضیا یا واقعا نمیفهمن یا خودشونو زدن به نفهمی! قیمت گلدا نرفته بالا ارزش پولیت افت کرده! هزینه پایداری سرورم به قیمت دلار محاسبه میشه! علی هم مثل بقیه مغازه دار ها سودشو میکنه! اگه خیلی باهوش بودی 10 15 سال پیش سرور ران میکردی و با نخوابیدن و مدیریت و ... فعالیت میکردی تو ام به درامدت میرسیدی و ما هم میگفتیم ماشاءالله نه اینکه بگیم از سودت بزن بیا قیمتا رو کم کن هرکی ام جای علی باشه اینکارو میکنه اگرم ادعا میکنی که نه رفاقتی میام همه حالشو ببرن بدون که هنوز بزرگ نشدی وسلام.
  5. متعجب از با استعداد هایی که در ایران زندگی میکنند!
  6. یااااااااااااااااااااااااااااع
  7. MiLo

    میم کده آرساکیا | پارت سوم

    لینک دانلود چرا نمیاد؟
  8. MiLo

    My Experience 2

    سلام دوستان گرامی تصمیم گرفتم هر از گاهی از تجربیات شخصیم بزارم ممکنه تجربه اشتباهی باشه ولی انسانم و ممکن الخطا؛ توی این پست میخوایم راجب Decorator حرف بزنیم پس سوال اصلی اینه Decorator چیه؟ دکوریتور ذاتا یک تابع سازندس که خروجیش یک فانکشنه، حالا چیکار میکنه؟ دکوریتور میاد یکسری قابلیت و رفتار رو به یک متد، پراپرتی یا کلس اضافه میکنه بدون اینکه ماهیت و منطق اصلیشو تغییر بده! این خیلی کمک میکنه به تمیزی و خوانا بودن کدت، کار اصلی دکوریتور تزریق متادیتاها هست (در بخش های بعدی راجبش تخصصی تر صحبت میکنیم) مثال عملی: @injectable () export class UserService {} تو این مثال از یک دکوریتور از پیش تعریف شده در NestJs استفاده کردیم، وقتی این دکوریتور روی این کلس اعمال میشه، با استفاده از تزریق متادیتا به سیستم DI میفهمونه که این کلس تزریق شدنی (Injectable) هست و باید یک نمونه از این کلس رو بسازه تا برای تزریق آماده باشه! حالا بیایین یک دکوریتور کاستوم که خودمون نوشتیم رو روی یک کلس اعمال کنیم که درک عمیق تری از دکوریتور داشته باشیم. function sealed(target: Function) { Object.seal(target); Object.seal(target.prototype); } @sealed class person {} این دکوریتور میاد این کلس رو قفل میکنه و نمیزاره پراپرتی جدیدی بهش اضافه کنی، از اونجا که دکوریتور نویسی یک مقدار پیچیدس در پست های بعدی راجبش تخصصی تر صحبت میکنیم. چندی قبل گفتم متادیتا! خب بریم ببینیم متادیتا چی هست؟ -یکی از ویژگی های خاص تایپ اسکریپت توانایی استفاده از متادیتاس، اما چی هست؟ متادیتا یک سری اطلاعات اضافین که میتونن به class , property , method تزریق بشن. این اطلاعات عموما به صورت key-value ذخیره میشن و با استفاده از decorator ها و کتابخونه هایی مثل reflect-metadata قابل set شدن و get شدن هستن -کاربردای اصلیش میشه به مواردای زیر اشاره کرد: تزریق وابستگی (DI) : تو فریمورکایی مثل NestJs از طریق متادیتا ما متوجه میشیم چه چیزی باید قابل تزریق باشه و ... اعتبارسنجی (validation) : ما با استفاده از متادیتا میتونیم یک سری اطلاعات رو به پراپرتی ها اضافه کنیم (مثلا بگیم فیلد x حتما required هست) که مثالش رو باهم در زیر میتونیم ببینیم function Required(target: any, propertyKey: string) { Reflect.defineMetadata('required', true, tartget, propertyKey); } class User { @Required name string; } const isRequired = Reflect.getMetadata('required', User.prototype, 'name'); console.log(isRequired); //true اینجا مشخص کردیم که پراپرتی name الزامیه و باید وارد بشه بدون اینکه تو منطق class اختلال یا تغییری ایجاد کنیم ختم کلام: متادیتا یک لایه اضافی اطلاعاتی رو برنامته که موقع اجرا میتونی بهش دسترسی داشته باشی و با توجه بهش میتونی رفتار و اساس برنامتو تغییر بدی بدون ضربه زدن به منطق اصلیه برنامه!
  9. MiLo

    samp forum and wiki is shutdown

    هر دوتاتون رو نقل قول کردم چون خیلی جالب بود دومیه تو بحثش اولی رو نقل میکنه که میرم و اولیه ادعای ماندن میکنه ولی جاشون با هم عوض شده خیلی جالبه
  10. MiLo

    My Experience

    خب تو این پست میخوایم راجب فریمورک NestJs صحبت کنیم نست جی اس یک فریمورک بک اندیه که با استفاده از حداکثر قدرت تایپ اسکریپت قابلیت های خاصی رو به خودش اضافه کرده و روز به روز در حال محبوب شدنه و به اکسپرس ترجیح داده میشه. میخوایم باهم دیگه چندتا ویژگی خاصشو ببینیم. تزریق وابستگی (dependency injection) : نست جی اس میاد و با استفاده از تزریق پرووایدر ها (providers) و ... به ماژوال ها جهت مدیریت دپندنسی های یک ماژول، میاد تمامی وابستگی ها و ابزارایی که یک ماژول نیاز داره رو بهش میده استفاده از حداکثری قدرت تایپ اسکریپت : این جمله به چه معنیه؟ ما توی اکسپرس هم میتونیم از تایپ اسکریپت استفاده کنیم، اینجا استفاده حداکثری ازش چه معنیی میده؟ توی نست چون همه کار ها با استفاده از دکوریتور(decorator) ها انجام میشه، به کدتون این قابلیت رو میده که بعدا بتونی دوباره ازش استفاده بکنی(reuseble) هست. جدای اون بخاطر معماریه ioc میتونیم قابلیت dependency injection رو داشته باشیم (یعنی این تزریق وابستگی بخاطر وجود تایپ اسکریپته که امکان پذیره!) و بحث static type و auto complete هم که واضح هست چه کمک شایانی به خوانا بودن و بدون خطا بودن کدمون میکنه. خب یکم از dependency injection (DI) بگیم همانطور که میدونیم NestJs بر پایه کلس ها (class base) هستن. اما چرا؟ چون سیستم تزریق وابستگی باید از هر provider یا entity یا controller یک نمونه بسازه و بعد عملیات تزریق رو انجام بده، اما function ها قابل تزریق نیستن و دقیقا به همین دلیله که از class ها استفاده میکنیم! حالا بریم که پشت صحنه چجوری داره تزریق وابستگی کار میکنه در مرحله اول سیستم تزریق وابستکی از تمامی کلس هایی که قابل تزریق هستن (از دکوریتور هایی مانند Injectable استفاده شده) یک نمونه میسازه و برای کلس هایی که این قابلیتو نداره مقدار undefiend رو قرار میده (مثلا یک کلس رو تعریف کردیم ولی injectable نیست مثل dto ها!) در مرحله دوم نست جی اس با توجه به وابستگی های تعریف شده داخل ماژول های ایمپورت شده داخل appModule میاد وابستگی هارو به صورت درختی resolve میکنه (مثلا اگه userController به userService و userService به userEntity وابستس پس پشت صحنه از userController به userEntity میرسیم! و وقتی رسیدیم سیستم DI برای اطمینان از درست بودن وابستگیا این مسیر رو برعکس میره (یعنی وقتی به userEntity میرسه دوباره از userEntity به userController میرسه)) تو مرحله سوم وقت تزریقه! میاد از هر چیزی که اونجا برای وابستگی اعلام شدرو تزریق میکنه، یک نمونه از هر کلس میسازه و تا آخر از همون یک نمونه در تمامی برنامه از همون استفاده میکنه! حالا سوال اصلی اینه نست چجوری میفهمه چه کلسیو به کجا تزریق کنه؟ درست حدس زدین، با استفاده از تایپ ها!. ینی وقتی توی تایپ اسکریپت یک سرویس داریم که از نوع userService هست، سیستم میره اون رو داخل provider های ماژول پیدا کنه، اگه پیداش نکرد ارور میده که نتونسته dependency هارو resolve کنه! حالا سوال بعدی اینه که چرا ترتیب داخلشون مهم نیست؟ ینی چرا اهمیت نداره کدوم سرویسو اول لیست بزاریم؟ درواقع اون توکن رو سرچ میکنه! بنابراین ترتیب مهم نیست و وجود اون توکن و اسم مهمه! (میگن اگه به یکی توضیح بدی خودت بیشتر میتونی بفهمی که چی داری میگی میدونم میدونم میدونم محیط، محیطه گیمه ولی بدلیل نبود اینترنت بین المللی عه)
  11. دقیقاً عملا کانکشن طبقاتی عه نظر منم منفی هستش
  12. MiLo

    All-in-One DevOps and SEO TOPIC

    معرکه!
  13. MiLo

    هوش مصنوعی VS برنامه نویس

    سلام میگی که منی که هیچی از برنامه نویسی بلد نیستم میتونم خودم سایت رو بسازم دیتابیسش رو خودم اوکی کنم سایت رو صفر تا صد فقط کد رو از هوش مصنوعی بگیرم بزارم و هر وقت که خواستم آپدیتش کنم سایت رو بدون هیچ دانشی فقط از هوش مصنوعی پرسیدن انجامش بدم؟ یا اینکه نیازمند کسی ام که این کارا رو برام انجام بده؟ اون شخص نمیتونه برنامه نویس باشه؟ تو بحث هک و امنیت میتونه خودش همه چیز رو بی نقص انجام بده یا دنبال یه شخصی باید باشن تا کدهای خروجی از هوش مصنوعی رو مدیریت کنه؟ اسم شغل این شخص چی میتونه باشه؟ میتونه مثل ما بدون هیچ ایده ای، ایده خلق کنه یا نیازمند یه هوش واقعی انسان میتونه کمکش کنه؟ شغل این کسی که ایده رو به هوش مصنوعی میده و کدهای دریافتیش رو مدیریت میکنه چی میتونه باشه؟ اصلا کسی که تو توسعه هوش مصنوعی هستش اسم شغل ایم شخص برنامه نویس نمیتونه باشه؟ راهنمایی بیشتر میخوام
  14. فک کنم اگه چیت باشه تا الان بر میداشتن اونیکی نسخه رو برداشتن بدلیل چیت! این یکی رواله
  15. MiLo

    برنامه تمرین هک بانک برای بار صدم

    سلام به همگی! یچی درست کردم که توش می‌تونید هک کردنه بانک رو شبیه‌سازی کنید. https://uupload.ir/view/game1_luef.rar/ اگه خواستی کد بازی رو خودت تغییر بدی یا چیزی روش اضافه کنی، کل کد بازی رو گذاشتم. حالا یه نسخه دیگه دارم ولی فک کنم چیت حساب میشه درواقع برعکس این عمل میکنه. اینطوریه که ست میکنم عدد بین چه بازه ای باشه مثلا 100,000 - 5000,000 و در لحظه نصف این رو در کادر میاره 300,000 که دقیقا نصفشه و در بازی این عدد رو مینویسم و Higher یا Lower بودن رو برام میخونه و من دوباره با کلید های Up Arrow Key(Higher) و Down Arrow Key(Lower) مقدار را مشخص میکنم: بازه اول: [100,000] ______________________________ [500,000] حدس اول: (100,000 + 500,000) / 2 = 300,000 اگر Higher بود: بازه جدید: [300,000] ____________________ [500,000] حدس بعدی: (300,000 + 500,000) / 2 = 400,000 اگر Lower بود: بازه جدید: [100,000] _____________ [300,000] حدس بعدی: (100,000 + 300,000) / 2 = 200,000 حالا ممکنه در جاهایی ام اعشار بیاد عدد رو به پایین گرد میشه. اگه ادمینا مشکلی با این قضیه ندارن این رو هم میزارم براتون. دوستون دارم شدید! فعلا خدافظ! https://uploadkon.ir/uploads/3b8214_25game1.rar
  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی، در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...