آموزش نمونه های اولیه جاوا اسکریپت: دوره نهایی (2024)

JavaScript Prototypes: Ultimate Course (2024)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: اکسل در نمونه های اولیه جاوا اسکریپت، الگوهای نمونه سازی، [[نمونه اولیه]]، پروتو، فراتر از آن! تبدیل شدن به یک استاد بزرگ جاوا اسکریپت نمونه های اولیه یادگیری و تبدیل شدن به استاد بزرگ جاوا اسکریپت یاد بگیرید که نمونه اولیه چیست و چگونه از نمونه های اولیه برای ایجاد اشیاء پیچیده استفاده کنید بر تفاوت های بین [[Prototype]]، __proto__ و اشیاء .prototype بیاموزید که چگونه از نمونه های اولیه برای پیاده سازی وراثت استفاده کنید. در جاوا اسکریپت یاد بگیرید چگونه از قدرت نمونه های اولیه در کد خود استفاده کنید یاد بگیرید چگونه نمونه اولیه یک شی را بدست آورید و تنظیم کنید یاد بگیرید چگونه سازنده اشیاء خود را ایجاد کنید 5 روش اصلی ایجاد اشیاء در جاوا اسکریپت را بیاموزید مزایا و معایب مبتنی بر نمونه اولیه را بیاموزید. زبان‌ها در مقابل کلاس‌ها توسعه‌دهنده PRO جاوا اسکریپت شوید و درآمد بیشتری کسب کنید یاد بگیرید چگونه اشیاء موجود را گسترش دهید یاد بگیرید چگونه در جاوا اسکریپت به بهینه‌ترین شکل اشیاء ایجاد کنید آموزش 5 الگوی نمونه سازی پیشرفته در جاوا اسکریپت آموزش ایجاد زنجیره شی با استفاده از نمونه‌های اولیه یاد بگیرید چرا ویژگی [[Prototype]] پنهان است بیاموزید چرا جاوا اسکریپت یک زبان مبتنی بر نمونه اولیه است در مورد ویژگی های پنهان در مقابل شکاف های داخلی در جاوا اسکریپت بیاموزید مثال های عملی از مقایسه جاوا و جاوا اسکریپت برای کمک به درک مفاهیم پیشرفته نمونه اولیه یاد بگیرید چگونه با استفاده از ترکیب بندی زنجیره های شی ایجاد کنید یاد بگیرید تفاوت بین زبان‌های مبتنی بر کلاسیک و جاوا اسکریپت بیاموزید که چرا __proto__ تا حدی توسط ECMAScript منسوخ شده است بدانید چرا __proto__ به عنوان “dunder” نامیده می‌شود درک اینکه چرا ویژگی .prototype تقریباً در هر تابعی وجود دارد یاد بگیرید چرا توابع در جاوا اسکریپت به عنوان شی در نظر گرفته می‌شوند. رویکردهای مختلف برای ایجاد اشیاء در جاوا اسکریپت عملی - ساخت اشیا با چندین سطح از نمونه های اولیه با من اینجا هستم تا از شما حمایت کنم، گام به گام از تسلط بر توسعه وب لذت ببرید از متوسط ​​تا متخصص (پیشرفته +) شما یک متخصص ظاهر خواهید شد. عمق دانش برای افزایش توانایی و اطمینان جزئیات تمایل به تبدیل شدن به یک توسعه دهنده استاد بزرگ یک کامپیوتر لازم است زیرا برای یادگیری موثر باید در کنار من کدنویسی کنید

از اتلاف وقت خودداری کنید به دنبال به اصطلاح "توسعه دهندگان" که آنچه را که موعظه می کنند عمل نمی کنند


همیشه به روز می شود

+ به 9 ساعت ویدیوهای با کیفیت بالا دسترسی فوری داشته باشید

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

+ پشتیبانی مربی


اجازه دهید من دانش خود را با شما به اشتراک بگذارم

من مدت زیادی است که در حال کدنویسی هستم. در سن 7 سالگی، در اوایل دهه 90، اولین کامپیوترم را گرفتم و چند روز بعد تبدیل به یک گیمر مشتاق شدم. من همیشه خودم را با کدنویس احاطه کرده ام. به یاد دارم در 10 سالگی پسر عموی من موفق شد سیستم یک بانک را هک کند. من هنوز روزهای فلاپی دیسک و بازی "Doom"، "Duke Nukem" و البته یکی از مورد علاقه های من، "Red Alert" را به یاد می آورم.

من همیشه در کنار رایانه‌ها بوده‌ام، و این چیزی است که سبک تدریس من را مستقیم، دقیق و قدرتمند می‌کند!

حال، چرا یک دوره آموزشی در مورد نمونه های اولیه ایجاد کردم؟

نمونه های اولیه یک مفهوم اساسی جاوا اسکریپت هستند. آنها برای پیاده سازی وراثت، ایجاد شی و سایر ویژگی های مهم استفاده می شوند. بنابراین بسیار مهم است که نمونه های اولیه را درک کنید - چه هستند، چرا آنجا هستند، چگونه از آنها استفاده کنید، چگونه آنها را ایجاد کنید، و چه زمانی از آنها استفاده کنید!

درک جاوا اسکریپت در حال انجام است. برای اینکه به شما کمک کنم، یک دوره جامع و متمرکز بر روی نمونه‌های اولیه جاوا اسکریپت تشکیل داده‌ام که به گونه‌ای به شما ارائه می‌دهم که بیشترین سود را برای شما داشته باشد. دوره من به شما می آموزد "چرا" کارها کار می کنند و نه فقط "چگونه" کاری را بدون فکر انجام دهید.


این دوره چه چیزی را پوشش می دهد؟

  • از سطح مبتدی که نمونه های اولیه جاوا اسکریپت هستند شروع می شود

  • سپس با آموزش نحوه استفاده از قدرت نمونه های اولیه برای ایجاد اشیاء با سطوح مختلف وراثت، عمیق تر می شود

  • شما یاد خواهید گرفت که چگونه اشیاء را ایجاد کنید، از اصول اولیه اشیا تا الگوهای وراثت شبه کلاسیک پیچیده تر

  • تفاوت بین زبان‌های مبتنی بر کلاس (مانند Java، C#، C++) و زبان‌های مبتنی بر نمونه اولیه مانند JavaScript را بیاموزید

  • الگوهای نمونه سازی مختلف را بیاموزید، مانند نمونه سازی عملکردی، عملکردی مشترک، نمونه اولیه، شبه کلاسیک و کلاسیک خالص

  • بر تفاوت‌های بین [[Prototype]] و __proto__ و ویژگی .prototype مسلط شوید

این دوره به معنای واقعی کلمه همه چیزهایی که باید در مورد نمونه های اولیه در جاوا اسکریپت بدانید، همه در یک مکان :)

تمام استراتژی‌هایی که من آموزش می‌دهم از اصول و تاکتیک‌های کدگذاری همیشگی پیروی می‌کنند.


نمونه های اولیه چیست؟

جاوا اسکریپت توسط شخصی به نام برندان ایچ در اواسط دهه 1990 ایجاد شد. ایچ تصمیم گرفت جاوا اسکریپت را به یک زبان مبتنی بر نمونه اولیه تبدیل کند زیرا می خواست زبانی ایجاد کند که یادگیری و استفاده آسان باشد. او می‌خواست زبانی بسازد که قدرتمند و انعطاف‌پذیر باشد و معتقد بود که نمونه‌های اولیه بهترین راه برای رسیدن به این هدف هستند.

نمونه‌های اولیه یکی از ویژگی‌های قدرتمند جاوا اسکریپت هستند، زیرا به شما اجازه می‌دهند از کدها استفاده مجدد کنید، سلسله‌مراتب شیء پیچیده ایجاد کنید و وراثت را به روشی ساده و کارآمد پیاده‌سازی کنید. با این حال، نمونه‌های اولیه نیز ممکن است گیج‌کننده باشند و درک نحوه عملکرد جاوا اسکریپت را دشوار کنند.

با وجود چالش‌ها، مزایای نمونه‌های اولیه بیشتر از معایب آن است.

س: سوال میلیون دلاری این است که "چرا یادگیری در مورد نمونه های اولیه اهمیت دارد؟"

A: مهم است زیرا هر شی در جاوا اسکریپت دارای ویژگی [[Prototype]] است. این ویژگی [[Prototype]] است که اغلب به عنوان "نمونه اولیه" شناخته می شود. با تسلط بر نمونه های اولیه، می توانید اشیاء پیچیده ای ایجاد کنید که در حافظه بسیار کارآمد هستند - سرعت وب سایت شما را بهبود می بخشد.

نمونه اولیه خود نیز یک شی است ... به این معنی که یک ویژگی [[Prototype]] نیز دارد. آیا می توانید ببینید که یک نمونه اولیه "زنجیره" در حال شکل گیری است؟ شما می توانید زنجیره اولیه را به عنوان یک لیست پیوندی از اشیاء در نظر بگیرید، جایی که هر شی در لیست دارای یک اشاره گر به شی بعدی در زنجیره است.

به همین دلیل است که همه اشیایی که استفاده می‌کنید و ایجاد می‌کنید دارای ویژگی‌ها و روش‌های داخلی هستند که می‌توانید به آنها دسترسی داشته باشید. به همین دلیل است:

  • رشته ها دارای ()toUpperCase و toLowerCase()

    هستند
  • آرایه ها دارای sort()، map()، push() و filter()

    هستند
  • اعداد دارای toFixed(), toPrecision(), parseFloat()

  • ...

شما ایده را دریافت کردید.

چرا یادگیری در مورد نمونه های اولیه مفید است؟

با درک نحوه عملکرد نمونه‌های اولیه، نحوه ایجاد و نحوه تنظیم آن‌ها، می‌توانید اشیایی ایجاد کنید که ویژگی‌ها و روش‌هایی را از اشیاء دیگر به ارث می‌برند، بدون اینکه نیازی به تعریف صریح آن‌ها باشد.

این امکان استفاده مجدد از کد و ایجاد سلسله مراتب شیء پیچیده را به روشی ساده و کارآمد فراهم می کند.

آیا می توانید ببینید که نمونه های اولیه چقدر قدرتمند هستند و امروزه چقدر ضروری هستند؟

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

ایجاد اشیا ممکن است گاهی مشکل باشد، و من این را رد نمی کنم، اما با آموزش صحیح که شامل توضیح اصول اولیه نمونه های اولیه و ایجاد شی به روشی ساده است، شما نیز مانند من یاد خواهید گرفت که به جاوا اسکریپت مسلط شوید و دوست داشته باشید. رویکرد پویا برای ایجاد شی.

اگر می‌خواهید یک توسعه‌دهنده وب کامل شوید، باید در مورد نمونه‌های اولیه اطلاعات داشته باشید و این چیزی است که این دوره در مورد آن است.


چرا درک نمونه های اولیه مهم است؟

  • جاوا اسکریپت بر روی نمونه های اولیه ساخته شده است

  • برای تسلط بر جاوا اسکریپت، باید به نمونه های اولیه تسلط داشته باشید

  • نمونه های اولیه راهی برای پیاده سازی برنامه نویسی شی گرا

    است
  • نمونه های اولیه به شما امکان می دهند اشیاء موجود را گسترش دهید

  • نمونه های اولیه به شما امکان می دهند وراثت را در جاوا اسکریپت پیاده سازی کنید

  • نمونه‌های اولیه به شما امکان می‌دهند سازنده‌های شی سفارشی ایجاد کنید

  • نمونه های اولیه به شما امکان می دهند موتور جاوا اسکریپت را بهتر درک کنید

  • در نهایت، با درک نحوه عملکرد نمونه‌های اولیه، می‌توانید کد کارآمدتر و قابل استفاده‌تر بنویسید.

پس از تکمیل این دوره آموزشی نمونه اولیه، مطمئناً آگاه، مطمئن و قادر به مدیریت یا کمک به دیگران در ایجاد اشیاء به بهترین شکل خواهید بود.


آنچه این دوره شامل می شود

این دوره جامع است و اصول اولیه نمونه های اولیه، ترکیب بندی و زبان های کلاس محور را پوشش می دهد.

به اندازه کافی ساده است.

تنها مشکل این است که برای درک واقعی جاوا اسکریپت، باید فراتر از اصول اولیه حرکت کنید. به همین دلیل است که این دوره اصول اولیه و مفاهیم پیشرفته تر را پوشش می دهد.

اول، این دوره اصول اولیه را به شما آموزش می دهد:

  • بیاموزید که نمونه های اولیه چیست

  • بیاموزید که چرا همه چیز در جاوا اسکریپت به عنوان یک شی در نظر گرفته می شود

  • با نحوه تنظیم و دریافت نمونه اولیه یک شی

    آشنا شوید
  • با نحوه ایجاد نمونه های اولیه سفارشی آشنا شوید

  • درباره الگوهای نمونه سازی در جاوا اسکریپت بیاموزید

  • نمونه کلاس معرفی شده توسط ECMAScript را درک کنید

  • تسلط بر زنجیره نمونه اولیه

  • درباره ویژگی __proto__ بیاموزید

  • به ویژگی .prototype تابع تکیه کنید

  • بدانید چرا همه چیز در جاوا اسکریپت به عنوان یک شی در نظر گرفته می شود

  • و یک دسته دیگر!

این دوره همچنین مفاهیم پیشرفته را به شما آموزش می دهد:

  • بیاموزید که چرا اصلاح نمونه اولیه در طول زمان اجرا خوب نیست

  • چرا نباید همه چیز را به نمونه اولیه یک شی اضافه کنید

  • محدودیت های نمونه های اولیه را بیاموزید

  • روش های مدرن برای دریافت و تنظیم نمونه اولیه یک شی

  • بیاموزید چرا __proto__ تا حدی توسط ECMAScript منسوخ شده است

  • بدانید که چرا [[Prototype]] یک ویژگی پنهان است

  • بیاموزید که چرا ویژگی ".prototype" فقط برای توابع سازنده مهم است

  • مثال عملی از راه‌اندازی یک زنجیره اولیه با استفاده از کلمه کلیدی جدید، با استفاده از Object.create() در مقابل setPrototypeOf()، و مقایسه آن با نحو کلاس جدید

  • تفاوت‌های بین زبان‌های نمونه اولیه و زبان‌های کلاسیک را درک کنید

  • ترکیب در مقابل نمونه های اولیه را درک کنید

و بله، نمونه‌ها را به روشی سرگرم‌کننده کدنویسی می‌کنیم و به نحوه عملکرد اشیاء زیر کاپوت نگاه می‌کنیم.


## جامع ترین دوره آموزشی JavaScript Prototype در Udemy ##

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


آیا این دوره برای شماست؟

بله. اگر در هر یک از این دسته ها قرار دارید، این دوره برای شما مناسب است:

شماره 1: افراد پرمشغله ای که می خواهند در کمترین زمان ممکن در جاوا اسکریپت گواهی دریافت کنند.

#2: برنامه‌ریزی میل. شما می خواهید در دنیای برنامه نویسی پیشرفت کنید.

شماره 3: مشاغل آزاد که می خواهند بدانند توسعه دهندگان موفق چگونه اشیاء پیچیده می سازند

شماره 4: کارمندانی که می‌خواهند درک کاملی از این که چرا جاوا اسکریپت یک زبان مبتنی بر نمونه اولیه است و چگونه می‌توانید از نمونه‌های اولیه در پروژه‌های خود استفاده کنید به دست آورند

شماره 5: کدگذارانی که می‌خواهند برترین‌های بازی باشند.


چرا اکنون شروع کنید؟

در همین لحظه، رقبای شما در حال یادگیری نحوه تبدیل شدن به توسعه دهندگان بهتر هستند.

توسعه وب یک موضوع داغ در حال حاضر است. اما شما یک مزیت مشخص دارید. این دوره موضوعات یادگیری به یاد ماندنی، تاکتیک های عملی و نمونه های واقعی را ارائه می دهد.

اجازه دهید شروع کنیم!


ضمانت بازگشت پول
​​نمی‌خواهم ناامید شوید.

اگر به هر دلیلی این دوره را دوست ندارید، می‌توانید در 30 روز اول بازپرداخت کامل دریافت کنید، که با ضمانت 30 روزه Udemy پشتیبانی می‌شود، بدون سؤال!

امروز روی خودتان سرمایه گذاری کنید و هرگز به گذشته نگاه نکنید.


اکنون ثبت نام کنید.


سرفصل ها و درس ها

معرفی Introduction

  • وراثت نمونه اولیه Prototypal Inheritance

  • جاوا اسکریپت چیست؟ What is JavaScript

  • ویرایشگرهای IDE و متن IDE and text editors

  • همه اشیا یک [[نمونه اولیه]] دارند All objects have a [[Prototype]]

  • همه اشیا یک نمونه اولیه دارند All objects have a prototype

  • [[نمونه اولیه]] اشیاء مختلف وجود دارد There are different [[Prototype]] objects

  • توابع خاص هستند Functions are special

  • چرا اشیا و نمونه های اولیه بسیار مهم هستند Why objects and prototypes are so important

  • در جاوا اسکریپت، اشیاء بر روی زمین حکومت می کنند In JavaScript, objects rule the roost

  • جاوا اسکریپت یک زبان برنامه نویسی شی گرا است JavaScript is an object oriented programming language

  • نمونه پروژه فرضی Hypothetical project example

  • هنگام ایجاد اشیاء با نوع مشابه از نمونه های اولیه استفاده کنید Use prototypes when creating objects with a similar type

  • وراثت نمونه اولیه Prototypal Inheritance

شیء [[نمونه اولیه]] The [[Prototype]] object

  • معرفی بخش Section intro

  • چرا درک نمونه های اولیه مهم است Why understanding prototypes matter

  • همه اشیا دارای ویژگی [[Prototype]] هستند All objects have a [[Prototype]] property

  • [[نمونه اولیه]] پنهان است The [[Prototype]] is hidden

  • چرا [[نمونه اولیه]] یک ویژگی داخلی است Why is the [[Prototype]] an internal property

  • ویژگی پنهان در مقابل ویژگی داخلی در مقابل شکاف داخلی Hidden Property vs Internal Property vs Internal Slot

  • دریافت و تنظیم نمونه های اولیه Getting and setting prototypes

  • تقریباً همه چیز در جاوا اسکریپت از رابط Object به ارث می رسد Almost everything in JavaScript inherits from the Object interface

  • انواع داده های اولیه هیچ نمونه اولیه مستقیمی ندارند Primitive data types have no direct prototype

  • آیا null بدوی است یا شی؟ Is null a primitive or object?

  • مقادیر اولیه و پوشش های شی Primitive values and object wrappers

  • خط پایین: بدوی اشیا نیستند، بلکه به طور غیرمستقیم از Object به ارث می برند Bottom line: primitives are not objects, but indirectly inherit from the Object

  • ایجاد یک شی "اولیه"، با استفاده از سازنده Creating an object "primitive", using a constructor

  • بدوی - یک قدم به عقب برداشتن Primitives - taking a step back

  • ایجاد یک سفارشی [[نمونه اولیه]] Creating a custom [[Prototype]]

  • تنظیم نمونه های اولیه Setting prototypes

  • تنظیم نمونه های اولیه Setting prototypes example

  • نمونه اولیه یک شی به معنای واقعی کلمه به ".prototype" سازنده آن اشاره می کند. The prototype of an object literal will point to its constructor's ".prototype"

  • اصطلاحات تخصصی توسعه دهندگان Developers jargon

  • روش های ارثی Inherited methods

  • زنجیره نمونه اولیه The prototype chain

  • نمونه اولیه زنجیره ای A prototype chain example

  • نمونه اولیه در نهایت به null اشاره خواهد کرد The prototype will eventually point to null

  • خلاصه ای سریع در مورد [[نمونه اولیه]] A quick recap on [[Prototype]]

  • کلمه سریع Quick word

  • نمونه اولیه محدودیت هایی دارد The prototype has limitations

  • سایه زدن خواص و روش های ارثی Shadowing inherited properties and methods

  • خلاصه سایه Shadowing summary

  • نمونه اولیه بر ارزش THIS تأثیر نمی گذارد The prototype does not affect the value of THIS

  • حلقه زدن از میان اشیا Looping through objects

  • خواص قابل شمارش Enumerable properties

  • روش های تکرار Iterating methods

  • هشدار - نمونه اولیه را در لحظه تغییر ندهید Warning - don't change the prototype on the fly

  • هشدار - با اشیاء نمونه اولیه داخلی کار نکنید Warning - don't mess with in-built prototype objects

  • من فقط در مورد اشیاء خالص صحبت می کنم I am only talking about pure objects

  • اصلاح نمونه های اولیه اشیاء داخلی Modifying the prototypes of built-in objects

  • خلاصه Summary

  • [[نمونه اولیه]] مسابقه [[Prototype]] quiz

الگوهای نمونه سازی Instantiation Patterns

  • معرفی بخش Section intro

  • لفظ شیء Object Literals

  • این بخش بسیار مهم است This section is crucial

  • الگوهای نمونه سازی Instantiation Patterns

  • الگوهای نمونه سازی که در این بخش با آنها آشنا خواهید شد Instantiation patterns you'll be learning about in this section

  • نمونه سازی کاربردی Functional Instantiation

  • کاستی های نمونه سازی عملکردی Shortcomings of functional instantiation

  • Instantiation عملکردی - بستن نظرات Functional Instantiation - closing comments

  • نمونه سازی مشترک کاربردی Functional Shared Instantiation

  • نمونه کارکردی مشترک - بستن نظرات Functional Shared instantiation - closing comments

  • نمونه اولیه - مقدمه Prototypal Instantiation - Introduction

  • Object.create() Object.create()

  • نمونه اولیه - نمونه Prototypal Instantiation - example

  • نمونه اولیه - توضیح داده شده است Prototypal Instantiation - explained

  • نمونه اولیه - نظرات پایانی Prototypal Instantiation - closing comments

  • مثال شبه کلاسیک - مقدمه Pseudoclassical Instantiation - intro

  • مثال شبه کلاسیک - مثال Pseudoclassical Instantiation - example

  • Instantiation شبه کلاسیک - نظرات پایانی Pseudoclassical Instantiation - closing comments

  • هشدار: شما نمی توانید همه چیز را به نمونه اولیه اضافه کنید Warning: you can't add everything to the prototype

  • ترکیب وراثت و سازنده Combining inheritance and constructors

  • نحو فلش را نمی توان به عنوان سازنده استفاده کرد Arrow syntax cannot be used as a constructor

  • نحو پیکان هیچ اتصالی به THIS ندارد Arrow syntax has no binding of THIS

  • نمونه سازی کلاس Class Instantiation

  • Class Instantiation - بستن نظرات Class Instantiation - closing comments

  • کد Code

  • BAM، POW - شما این کار را انجام دادید! BAM, POW - you've done it!

  • آزمون الگوهای نمونه Instantiation Patterns Quiz

نمونه های اولیه و الگوهای نمونه سازی - تست Prototypes and Instantiation Patterns - Test

  • نمونه های اولیه و الگوهای نمونه سازی - تست Prototypes and Instantiation Patterns - Test

__proto__ (با نام مستعار: dunder proto) __proto__ (aka: dunder proto)

  • معرفی بخش Section intro

  • __proto__ مقدمه __proto__ introduction

  • ECMAScript چیست و __proto__ چگونه معرفی شد؟ What is ECMAScript and how was __proto__ introduced?

  • بیایید گیرنده و تنظیم کننده __proto__ خودمان را تعریف کنیم Let's define our own __proto__ getter and setter

  • چگونه __proto__ را تلفظ کنید؟ How to pronounce __proto__?

  • Dunder proto یک ویژگی داخلی نیست Dunder proto is not an internal property

  • قیاس تنیس Tennis Analogy

  • __proto__ تا حدی منسوخ شده است، در پیوست B __proto__ is partly deprecated, in Annex B

  • __پرتو__ تمرین __proto__ exercise

  • جایگزین های مدرن برای گرفتن و تنظیم نمونه اولیه یک شی Modern alternatives to getting & setting an object's prototype

  • چه زمانی باید از setPrototypeOf() استفاده کنید When should you use setPrototypeOf()

  • یک قدم به عقب برو Take a step back

  • مشکل شماره 1. __proto__ به راحتی قابل تنظیم است Problem #1. __proto__ is easily configurable

  • مشکل شماره 2. __proto__ یک کلمه کلیدی خاص است Problem #2. __proto__ is a special keyword

  • تنظیم نمونه اولیه یک شی بر روی null Setting an object's prototype to null

  • افکار کلی من در مورد dunder proto My overall thoughts on dunder proto

  • هشدار MDN MDN's warning

  • خلاصه __proto__ Summary of __proto__

  • Dunder را به دیوار آویزان کنید Hang the Dunder on the wall

  • آزمون __proto__ __proto__ quiz

ویژگی .prototype The .prototype property

  • فقط توابع دارای ویژگی .prototype هستند Only functions have a .prototype property

  • برخی از توابع دارای ویژگی .prototype نیستند Some functions do not have a .prototype property

  • چرا توسعه دهندگان با کلمه "نمونه اولیه" اشتباه می شوند Why developers get confused with the word "prototype"

  • [[نمونه اولیه]] با نمونه اولیه یکسان نیست [[Prototype]] is not the same as the prototype

  • نمونه اولیه فقط برای توابع سازنده اهمیت دارد The .prototype only matters for constructor functions

  • استثناهایی از قاعده وجود دارد There are exceptions to the rule

  • یک تابع سازنده با ویژگی های [[Call]] و [[Construct]] تعریف می شود A constructor function is defined by the [[Call]] and [[Construct]] properties

  • ویژگی .prototype یک شی است The .prototype property is an object

  • [[Prototype]] شی به توابع .prototype اختصاص داده شده است The object's [[Prototype]] is assigned to the functions .prototype

  • تقریباً همه توابع دارای ویژگی [[Prototype]] و .prototype هستند Almost all functions have both a [[Prototype]] and .prototype property

  • چرا ویژگی .prototype تابع یک تابع است نه یک شی؟ Why is the Function's .prototype property a function and not an object?

  • توابع در جاوا اسکریپت نیز شی هستند Functions in JavaScript are also objects

  • چندین نمونه اولیه در این زنجیره وجود دارد There are multiple prototypes in the chain

  • دارایی سازنده چیست؟ What is the constructor property?

  • یک تست سرگرم کننده A fun test

  • ویژگی .prototype را می توان رونویسی کرد The .prototype property can be overwritten

  • کل زنجیره نمونه اولیه فاش شد The entire prototype chain revealed

  • Object.prototype بر فضای زندگی حاکم است The Object.prototype rules the roost

  • تفاوت بین [[Prototype]] و .prototype Differences between [[Prototype]] and .prototype

  • [[Prototype]] و .prototype دو هدف متفاوت دارند [[Prototype]] and .prototype serve two different purposes

  • خلاصه ای از ویژگی .prototype Summary of the .prototype property

  • توابع دارای ویژگی .prototype هستند Functions have a .prototype property

  • آزمون نمونه اولیه تابع Function prototype quiz

همه چیز در مورد نمونه های اولیه - خلاصه پیشرفته Everything about Prototypes - Advanced Recap

  • تست نمونه های اولیه پیشرفته Advanced Prototypes Test

کاربرد عملی - ساختن زنجیره های نمونه اولیه خود را Practical Application - building your own prototype chains

  • نمای کلی پروژه دوره Course project overview

  • استفاده از کلمه کلیدی "جدید" برای راه اندازی یک زنجیره اولیه (قبل از سال 2011) Using the 'new' keyword to set up a prototype chain (prior to 2011)

  • ایجاد زنجیره اولیه با استفاده از کلمه کلیدی "جدید". Creating the prototypal chain using the 'new' keyword

  • مشکلات استفاده از کلمه کلیدی "جدید". The problems with using the 'new' keyword

  • رفع مشکل مرجع سازنده Fixing the constructor reference problem

  • استفاده از Object.create() برای راه اندازی یک زنجیره اولیه (بعد از ES5 - 2011) Using Object.create() to set up a prototype chain (after ES5 - 2011)

  • استفاده از Object.create() هنوز ایده آل نیست Using Object.create() is still not ideal

  • استفاده از Object.setPrototypeOf() برای راه اندازی یک زنجیره اولیه (پس از ES6 - 2015) Using Object.setPrototypeOf() to set up a prototype chain (after ES6 - 2015)

  • استفاده از کلاس ها برای راه اندازی یک زنجیره اولیه (پس از ES6 - 2015) Using Classes to set up a prototype chain (after ES6 - 2015)

  • استفاده از کلمه کلیدی "extends" برای ساختن زنجیره نمونه اولیه مبتنی بر کلاس ما Using the "extends" keyword to build our class-based prototype chain

  • ساخت یک زنجیره نمونه اولیه سفارشی 3 سطحی - با استفاده از توابع سازنده Building a 3 level custom prototype chain - using Constructor Functions

  • ساخت یک زنجیره نمونه اولیه سفارشی 3 سطحی - با استفاده از کلاس ها Building a 3 level custom prototype chain - using Classes

  • مشکل با کد ما - تکراری Problems with our code - duplication

  • راه حل: با استفاده از متد call() با توابع سازنده Solution: using the call() method with constructor functions

  • تکمیل 3 سطح وراثت نمونه اولیه - توابع سازنده Completing 3 levels of prototype inheritance - Constructor Functions

  • تکمیل 3 سطح وراثت نمونه اولیه - نحو کلاس Completing 3 levels of prototype inheritance - Class Syntax

  • خلاصه Summary

  • اضافه کردن سطوح بیشتر و خواهر و برادر Adding more levels and siblings

  • شما نمونه های اولیه را شکست داده اید You've beaten prototypes

زبان‌های اولیه در مقابل زبان‌های کلاسیک Prototypal languages vs Classical languages

  • زبان OOP چیست و چگونه کلاس‌ها و نمونه‌های اولیه در تصویر قرار می‌گیرند؟ What is an OOP language and how do classes and prototypes fit into the picture?

  • نحوه برخورد زبان‌های مبتنی بر کلاس و زبان‌های مبتنی بر نمونه اولیه با وراثت How class-based languages and prototype-based languages deal with inheritance

  • مثال Hello World - کلاس ها در مقابل نمونه های اولیه Hello World example - classes vs prototypes

  • کنسول جاوا در مقابل کنسول جاوا اسکریپت Java Console vs JavaScript Console

  • کد ارثی با جاوا (یک زبان مبتنی بر کلاس) Inheritance code with Java (a class-based language)

  • تست کد در JDoodle Testing code on JDoodle

  • مقایسه بین کلاس ها و نمونه های اولیه Comparison between classes and prototypes

  • خلاصه بخش Section Summary

  • نمونه های اولیه در مقابل کلاس ها Prototypes vs Classes

  • از این دانش استفاده کنید Use this knowledge

نمونه های اولیه در مقابل ترکیب Prototypes vs Composition

  • مقدمه ای بر ترکیب Intro into composition

  • کد ترکیب - تبدیل مدل مبتنی بر نمونه اولیه ما به ترکیب Composition code - converting our prototypal-based model, to composition

  • وراثت در مقابل ترکیب - خلاصه Inheritance vs Composition - summary

  • خلاصه - زمان استفاده از ترکیب در مقابل نمونه های اولیه Summary - when to use composition vs prototypes

  • کد نوشتن - نمونه های اولیه/وراثت در مقابل ترکیب Writing code - prototypes/inheritance vs composition

Outro Outro

  • Outro Outro

نمایش نظرات

آموزش نمونه های اولیه جاوا اسکریپت: دوره نهایی (2024)
جزییات دوره
9 hours
148
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
165
5 از 5
دارد
دارد
دارد
Clyde Matthew
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Clyde Matthew Clyde Matthew

همه چیز همیشه #000000 و #FFFFFF نیست