🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: LSP: درک صحیح چندریختی و جلوگیری از مشکلات وراثت
موضوع کلی: برنامه نویسی
موضوع میانی: اصول SOLID
📋 سرفصلهای دوره (100 موضوع)
- 1. مبانی برنامه نویسی شیءگرا (OOP)
- 2. مروری بر مفاهیم کلیدی OOP: کلاس، شی، وراثت، چندریختی، انتزاع، کپسوله سازی
- 3. اهمیت اصول طراحی نرمافزار
- 4. معرفی SOLID: یک استراتژی برای طراحی بهتر
- 5. اصل تک مسئولیتی (SRP) و تاثیر آن
- 6. اصل باز/بسته (OCP) و اهمیت آن در LSP
- 7. اصل جایگزینی لیسکوف (LSP): معرفی و مفهوم اصلی
- 8. ضرورت درک LSP برای توسعهدهندگان
- 9. تفاوت LSP با وراثت و چندریختی سنتی
- 10. نقض LSP: مثالهای کلاسیک و مشکلات ناشی از آن
- 11. تشخیص موارد نقض LSP در کد
- 12. اهمیت پیششرطها، پسشرطها و انواریانتها در LSP
- 13. بررسی قراردادهای طراحی مبتنی بر LSP
- 14. چندریختی ایستا و پویا: تفاوتها و کاربردها
- 15. نقش interface ها در LSP
- 16. استفاده از interface ها برای پیادهسازی LSP
- 17. مثالهای عملی از پیادهسازی LSP با interface ها
- 18. مقایسه interface ها و کلاسهای انتزاعی در LSP
- 19. نقش وراثت در LSP و چالشهای آن
- 20. مسائل رایج در استفاده از وراثت و LSP
- 21. قاعده "is-a" و ارتباط آن با LSP
- 22. قاعده "behaves-like" و اهمیت آن در LSP
- 23. چگونه LSP به خوانایی کد کمک میکند
- 24. چگونه LSP به قابلیت نگهداری کد کمک میکند
- 25. چگونه LSP به توسعهپذیری کد کمک میکند
- 26. اهمیت تست واحد در LSP
- 27. تست واحد برای تایید انطباق با LSP
- 28. استراتژیهای تست برای اطمینان از LSP
- 29. استفاده از mock ها در تست LSP
- 30. LSP و SOLID در عمل: یکپارچهسازی مفاهیم
- 31. بررسی موارد نقض LSP در کدهای واقعی
- 32. مثالهایی از refactoring برای رعایت LSP
- 33. ابزارهای تحلیل کد برای شناسایی نقض LSP
- 34. نقش LSP در طراحی API
- 35. طراحی API های سازگار با LSP
- 36. LSP و معماریهای نرمافزاری
- 37. LSP و طراحی مبتنی بر تست (TDD)
- 38. LSP و توسعه رفتار محور (BDD)
- 39. بررسی LSP در زبانهای برنامهنویسی مختلف (Java, C#, Python, …)
- 40. LSP در جاوا: مثالها و پیادهسازیها
- 41. LSP در C#: مثالها و پیادهسازیها
- 42. LSP در Python: مثالها و پیادهسازیها
- 43. مزایای استفاده از LSP در تیمهای توسعه
- 44. چالشهای پیادهسازی LSP در پروژههای بزرگ
- 45. LSP و مدیریت وابستگیها
- 46. اثرات LSP بر کاهش بدهی فنی
- 47. LSP و الگوی طراحی استراتژی (Strategy Pattern)
- 48. LSP و الگوی طراحی فکتوری (Factory Pattern)
- 49. LSP و الگوی طراحی تمپلیت متد (Template Method Pattern)
- 50. LSP و الگوی طراحی کامپوزیت (Composite Pattern)
- 51. LSP و طراحی سیستمهای توزیعشده
- 52. LSP و طراحی سیستمهای مقیاسپذیر
- 53. LSP و اصل کمترین شگفتی (Principle of Least Astonishment)
- 54. بررسی موردی: LSP در یک سیستم پرداخت
- 55. بررسی موردی: LSP در یک سیستم مدیریت محتوا
- 56. بررسی موردی: LSP در یک سیستم تجارت الکترونیک
- 57. نقش LSP در توسعه نرمافزارهای امن
- 58. LSP و طراحی معماری میکروسرویسها
- 59. LSP و قابلیت اطمینان سیستم
- 60. LSP و ایجاد کدهای قابل استفاده مجدد
- 61. LSP و مستندسازی کد
- 62. چگونه LSP بر کارایی کد تاثیر میگذارد
- 63. بهینهسازی عملکرد با رعایت LSP
- 64. LSP و تکرارپذیری کد
- 65. LSP و توسعه چابک
- 66. LSP و مدیریت تغییر
- 67. LSP و تفکر طراحی
- 68. LSP و طراحی مبتنی بر Domain Driven Design (DDD)
- 69. LSP و SOLID: همافزایی و تداخل
- 70. نقش LSP در جلوگیری از فرسودگی کد
- 71. LSP و آینده توسعه نرمافزار
- 72. LSP و مفاهیم پیشرفته چندریختی
- 73. LSP و استفاده از generics
- 74. LSP و استفاده از delegate ها و lambda ها
- 75. LSP و رویدادها (events)
- 76. LSP و طراحی driven by data
- 77. مقایسه LSP با سایر اصول SOLID
- 78. فاکتورهای موثر بر انتخاب راه حل LSP
- 79. ارزیابی هزینه-فایده پیادهسازی LSP
- 80. LSP و چالشهای فرهنگی تیم
- 81. ایجاد یک فرهنگ سازگار با LSP
- 82. نقش رهبری در پیادهسازی LSP
- 83. LSP و نقش مهندسی نرمافزار
- 84. LSP و طراحی نرمافزار برای طول عمر
- 85. LSP و ارتقا کد legacy
- 86. LSP و استفاده از کتابخانهها و فریمورکها
- 87. LSP و مدیریت ریسک
- 88. LSP و بهینهسازی فرآیند توسعه
- 89. نقش بازبینی کد (code review) در LSP
- 90. بهترین شیوهها (best practices) برای LSP
- 91. موارد رایج نقض LSP و راهحلهای آنها
- 92. چگونه LSP در بهبود کیفیت کد موثر است
- 93. LSP و مفاهیم پیشرفته OOP
- 94. LSP و طراحی سیستمهای مبتنی بر event
- 95. LSP و اهمیت قراردادهای طراحی
- 96. LSP و ارتباط آن با refactoring
- 97. LSP و توسعهی نرمافزار پایدار
- 98. مروری بر تمام مفاهیم و جمعبندی دوره
- 99. ارائه منابع و مراجع تکمیلی
- 100. گامهای بعدی برای یادگیری و تمرین LSP
LSP: درک صحیح چندریختی و جلوگیری از مشکلات وراثت
دوره آموزشی پیشرفته برنامهنویسی برای ساخت سیستمهای پایدار، منعطف و بدون باگهای پنهان!
معرفی دوره: از پیچیدگی وراثت تا سادگی و پایداری طراحی با LSP
آیا تا به حال با کدی مواجه شدهاید که تغییر در یک بخش به ظاهر بیاهمیت آن، منجر به فروپاشی بخشهای دیگر سیستم میشود؟ آیا از نگهداری و توسعه سیستمهای بزرگ و مبتنی بر وراثت که با گذشت زمان به “کابوس کد” تبدیل میشوند، خسته شدهاید؟ در دنیای پرشتاب برنامهنویسی امروز، کیفیت و ساختاردهی مناسب کد بیش از هر زمان دیگری حیاتی است. اصول SOLID، به عنوان ستون فقرات مهندسی نرمافزار مدرن، راهگشای این چالشهاست. اما در میان این اصول بنیادین، Liskov Substitution Principle (LSP) یا اصل جانشینی لیسکوف، نقشی محوری در تضمین پایداری، انعطافپذیری و قابلیت نگهداری سیستمهای شیگرا ایفا میکند.
این دوره برای آن دسته از برنامهنویسان حرفهای، توسعهدهندگان جاهطلب و معماران نرمافزار طراحی شده است که میخواهند از سطح “کاربر” مفاهیم شیگرایی فراتر رفته و به “معمار” سیستمهای پایدار و مقاوم در برابر تغییر تبدیل شوند. ما به شما نشان میدهیم که چگونه درک صحیح و عمیق از چندریختی (Polymorphism) و نحوه استفاده صحیح از وراثت (Inheritance)، میتواند تفاوت بین یک پروژه موفق و یک فاجعه نگهداری را رقم بزند. با یادگیری و اعمال LSP، نه تنها از خطاهای رایج و هزینهبر وراثت جلوگیری میکنید، بلکه کدی مینویسید که نه تنها امروز بینقص کار میکند، بلکه فردا و فرداها نیز به راحتی قابل توسعه، نگهداری و مقیاسپذیری خواهد بود.
تصور کنید کدی را که میتوانید با اطمینان کامل به آن دست بزنید، آن را تغییر دهید و قابلیتهای جدید به آن اضافه کنید، بدون کوچکترین ترس از اینکه بخشهای دیگر سیستم از کار بیفتند. این قدرت LSP است! این دوره، کلید ورود شما به دنیای کدنویسی با کیفیت فوقالعاده، کاهش چشمگیر باگها و افزایش چشمگیر سرعت توسعه در بلندمدت است. آمادهاید تا مهارتهای خود را به سطح بعدی ارتقا دهید و به یک متخصص واقعی در طراحی و معماری نرمافزار تبدیل شوید؟ همین حالا به جمع حرفهایها بپیوندید!
درباره دوره: فراتر از تئوری، تسلط بیقید و شرط بر LSP در عمل
این دوره، صرفاً ارائهای تئوریک و خشک از Liskov Substitution Principle نیست، بلکه یک نقشه راه عملی، جامع و کاربردی برای پیادهسازی صحیح آن در پروژههای واقعی و چالشهای روزمره برنامهنویسی شماست. ما از تعریف اولیه و بنیادین LSP آغاز میکنیم و سپس به عمق آن نفوذ میکنیم تا هر جنبهای از این اصل مهم را با مثالهای ملموس و قابل درک به وضوح روشن کنیم. شما در این دوره یاد میگیرید که چگونه نقض LSP را در کدهای موجود تشخیص دهید، علل ریشهای آنها را بفهمید و با استفاده از تکنیکهای بازآرایی (Refactoring) هوشمندانه و اثربخش، آنها را به کدی تمیز، پایدار و کاملاً سازگار با LSP تبدیل کنید.
با بررسی دهها مثال کاربردی، سناریوهای واقعی و Case Studyهایی از دنیای برنامهنویسی، درک عمیقی از اینکه چگونه رعایت LSP میتواند از بروز مشکلات پیچیده، باگهای پنهان و هزینههای نگهداری سرسامآور در سیستمهای مبتنی بر وراثت جلوگیری کند، به دست خواهید آورد. این دوره به شما کمک میکند تا نه تنها “چه چیزی” را رعایت کنید، بلکه “چرا” رعایت LSP حیاتی است و “چگونه” آن را به بهترین شکل در معماری و طراحی روزمره خود به کار ببندید. هدف نهایی ما توانمندسازی شما برای نوشتن کدی است که نه تنها عملکردی صحیح دارد، بلکه از نظر طراحی نیز بیعیب و نقص، بینهایت انعطافپذیر، و به راحتی قابل نگهداری و توسعه است.
موضوعات کلیدی: قلب تپنده طراحی شیگرا و اصول SOLID با LSP
این دوره بر مباحث بنیادین و پیشرفتهای تمرکز دارد که شما را به یک متخصص بیرقیب در زمینه LSP تبدیل خواهد کرد. مباحثی که در این دوره به آنها خواهیم پرداخت عبارتند از:
- آشنایی عمیق با اصل جانشینی لیسکوف (LSP): تعریف، فلسفه، تاریخچه و اهمیت بیبدیل آن در طراحی نرمافزار مدرن.
- چندریختی (Polymorphism) و وراثت (Inheritance): درک صحیح این مفاهیم بنیادین و رابطه پیچیده اما حیاتی آنها با LSP.
- پیمانها (Contracts)، پیششرطها (Pre-conditions) و پسشرطها (Post-conditions): چگونه این مفاهیم، هسته اصلی رعایت LSP را تشکیل میدهند.
- تفاوت LSP با Type Checking و Upcasting/Downcasting: مرزبندیهای حیاتی برای جلوگیری از اشتباهات رایج و طراحیهای شکننده.
- علائم نقض LSP (Code Smells): چگونه نشانههای عدم رعایت LSP را در کدهای خود و دیگران شناسایی کنید و ریشههای آن را دریابید.
- پیامدهای فاجعهبار نقض LSP: بررسی دقیق مشکلاتی مانند شکنندگی کد، افزایش باگهای منطقی، دشواری نگهداری و افت شدید مقیاسپذیری.
- روشهای عملی اصلاح و بازآرایی کد (Refactoring) برای رعایت LSP: تکنیکهای پیشرفته برای تبدیل کدهای مشکلدار و غیرقابل اعتماد به کدهای تمیز و استاندارد.
- الگوهای طراحی (Design Patterns) مرتبط با LSP: چگونه الگوهایی مانند Strategy، Template Method، Bridge و Decorator به رعایت LSP کمک میکنند و طراحی را قدرتمندتر میسازند.
- LSP در سناریوهای واقعی و پیچیده: از طراحی APIهای قوی و مقاوم تا توسعه فریمورکها و کتابخانههای قابل اعتماد.
- رابطه LSP با سایر اصول SOLID: درک همافزایی، تفاوتهای ظریف و چگونگی تکمیل LSP توسط Single Responsibility Principle (SRP)، Open/Closed Principle (OCP) و Interface Segregation Principle (ISP).
- تستپذیری و LSP: چگونه رعایت LSP به نوشتن تستهای واحد (Unit Tests) موثرتر، قابل اعتمادتر و پایدارتر کمک میکند.
- همبستگی و ضد-همبستگی (Covariance and Contravariance) در متدها: درک عمیق این مفاهیم و ارتباط آنها با LSP.
مخاطبان دوره: چه کسانی باید در این سفر تحولآفرین همراه ما باشند؟
این دوره برای طیف وسیعی از متخصصان و علاقهمندان به برنامهنویسی طراحی شده است که به دنبال ارتقای چشمگیر کیفیت کد، مهارتهای طراحی و جایگاه حرفهای خود هستند:
- برنامهنویسان ارشد و میانی: کسانی که میخواهند از مشکلات وراثت در پروژههای بزرگ و پیچیده جلوگیری کنند و طراحیهای خود را بهینه و پایدار سازند.
- معماران نرمافزار (Software Architects): برای طراحی سیستمهایی که از همان ابتدا پایدار، قابل توسعه، انعطافپذیر و نگهداری آسان باشند.
- تیملیدها و مدیران فنی: برای آموزش بهترین شیوهها به تیم خود، بهبود کیفیت کلی کدبیس و کاهش هزینههای نگهداری.
- توسعهدهندگان بکاند (Backend Developers): برای ساخت APIها، میکروسرویسها و سرویسهایی که با تغییرات آینده سازگار باشند و به راحتی قابل مقیاسپذیری باشند.
- توسعهدهندگان فولاستک (Full-Stack Developers): برای درک عمیقتر از اصول طراحی در تمام لایههای یک برنامه و ایجاد هماهنگی در معماری.
- هر برنامهنویسی که با زبانهای شیگرا کار میکند: فارغ از زبان برنامهنویسی (مانند Java, C#, Python, C++, TypeScript, PHP و غیره)، مفاهیم LSP جهانی و کاربردی هستند.
- دانشجویان و تازهکاران با انگیزه: کسانی که میخواهند از همان ابتدای مسیر حرفهای خود، با بهترین شیوههای کدنویسی و طراحی آشنا شوند و پایههای مستحکمی برای آینده خود بنا کنند.
- کسانی که به دنبال ارتقای شغلی، افزایش حقوق و ایجاد تمایز در بازار کار هستند: تسلط بر SOLID و LSP یک مزیت رقابتی بزرگ و نشاندهنده حرفهایگری شماست.
چرا این دوره را بگذرانیم؟ مزایای بیشمار تسلط بر LSP و طراحی شیگرا
با سرمایهگذاری بر روی این دوره، شما تنها یک مهارت جدید یاد نمیگیرید، بلکه دریچهای نو به سوی یک رویکرد کاملاً متفاوت و حرفهای در برنامهنویسی باز میکنید. مزایای این دوره فراتر از کدنویسی صرف است و بر تمام جنبههای حرفهای و شغلی شما تأثیرگذار خواهد بود:
- نوشتن کد پایدارتر و قابل نگهداری: با رعایت LSP، کدی مینویسید که تغییر در یک بخش آن، منجر به خطای غیرمنتظره و غیرقابل پیشبینی در بخشهای دیگر نمیشود.
- کاهش چشمگیر باگها و خطاهای منطقی: بسیاری از باگهای سختیابی و پنهان که از وراثتهای نادرست ناشی میشوند، با اعمال LSP از بین میروند.
- افزایش سرعت توسعه در بلندمدت: کدی که به درستی طراحی شده باشد، در آینده با هزینه و زمان بسیار کمتری توسعه مییابد و تغییر میکند.
- طراحی سیستمهای انعطافپذیر و مقیاسپذیر: سیستمهای شما قادر خواهند بود بدون نیاز به تغییرات اساسی در ساختار، با نیازهای جدید و تغییرات کسب و کار به راحتی سازگار شوند.
- تبدیل شدن به یک مهندس نرمافزار واقعی و معمار سیستم: از یک کدنویس صرف به فردی ارتقا پیدا میکنید که قادر به طراحی و پیادهسازی معماریهای قدرتمند و مقاوم است.
- افزایش اعتماد به نفس در Refactoring و بازآرایی کد: با درک عمیق از LSP، با اطمینان و دانش بیشتری به بازآرایی و بهینهسازی کدهای موجود میپردازید.
- ارتقای جایگاه شغلی و فرصتهای بهتر: تسلط بر اصول SOLID و LSP نشاندهنده حرفهایگری، دانش عمیق و تفکر سیستمی شما در مهندسی نرمافزار است که بسیار مورد توجه شرکتهای بزرگ و پیشرو قرار میگیرد.
- کاهش “بوی بد کد” (Code Smells): کدهای شما تمیزتر، خواناتر، قابل فهمتر و باکیفیتتر خواهند شد.
- درک عمیقتر و جامعتر از شیگرایی: به ماهیت واقعی چندریختی، وراثت و چگونگی استفاده از قابلیتهای آنها به بهترین شکل ممکن پی میبرید.
- توانایی حل مشکلات پیچیدهتر طراحی: با ابزارهای فکری قویتر و دیدی جامعتر، میتوانید به چالشهای معماری نرمافزار با رویکردی متفاوت و موثرتر نگاه کنید.
سرفصلهای دوره: نقشه راه جامع شما برای تسلط بینظیر (بیش از ۱۰۰ سرفصل جامع!)
این دوره با هدف ارائه کاملترین، جامعترین و عمیقترین آموزش ممکن در زمینه Liskov Substitution Principle (LSP) و تمامی مفاهیم مرتبط با آن طراحی شده است. ما به شما اطمینان میدهیم که تمام جوانب این اصل حیاتی، از مقدماتیترین تعریف تا پیشرفتهترین تکنیکهای پیادهسازی و بازآرایی کد، به صورت کامل و با جزئیات پوشش داده خواهد شد. بیش از ۱۰۰ سرفصل جامع و کاربردی، شما را گام به گام در مسیر تسلط بر LSP و مهندسی نرمافزار حرفهای همراهی میکند و شما را به یک متخصص تبدیل خواهد کرد.
این سرفصلهای بینظیر شامل بررسی جزئی هر یک از قوانین LSP، تحلیل و واکاوی مثالهای نقض رایج در زبانهای برنامهنویسی مختلف، تکنیکهای عملی و اثربخش برای رفع مشکلات وراثت، پیادهسازی الگوهای طراحی مرتبط، و راهکارهایی برای ادغام LSP در چرخه توسعه نرمافزار شما هستند. از تعریف دقیق پیمانها (Contracts) و پیششرطها (Pre-conditions) و پسشرطها (Post-conditions) گرفته تا بررسی رفتار استثناها و اصول تغییرناپذیری، و همچنین بحثهای پیشرفته در مورد همبستگی و ضد-همبستگی (Covariance and Contravariance) در امضاهای متدها.
این آموزش نه تنها تئوریهای بنیادین را به شما میآموزد، بلکه با مثالهای کد زنده، تمرینهای عملی و سناریوهای واقعی از پروژههای بزرگ، شما را قادر میسازد تا دانش کسبشده را بلافاصله و با اطمینان کامل در پروژههای خود به کار بگیرید. هر سرفصل با دقت فراوان و با هدف ایجاد درکی جامع، عملیاتی و ماندگار آماده شده تا اطمینان حاصل شود که پس از اتمام دوره، شما یک متخصص واقعی و متمایز در طراحی نرمافزار با LSP خواهید بود. آماده باشید تا با جزئیاتی بیسابقه، وارد دنیای LSP شوید و کدنویسی خود را یک بار برای همیشه متحول کنید! همین حالا ثبتنام کنید و به جمع حرفهایها بپیوندید.
📦 مجموعه شامل:
- ✅ ویدیوهای فارسی
- ✅ پادکست های صوتی فارسی
- ✅ کتاب PDF فارسی
- ✅ کتاب ۱۰۰۰ نکته فارسی خودمونی
- ✅ کتاب ۱۰۰۰ نکته رسمی فارسی
- ✅ کتاب ۱۰۰۰ پرسش و پاسخ ۴ گزینه ای فارسی
📚 محتوای این محصول آموزشی (پکیج کامل)
💡 این محصول یک نسخهٔ کامل و جامع است
تمامی محتوای آموزشی این کتاب در قالب یک بستهی کامل و یکپارچه ارائه میشود و شامل تمام نسخهها و فایلهای موردنیاز برای یادگیری است.
🎁 محتویات کامل بسته دانلودی
- ویدیوهای آموزشی فارسی — آموزش قدمبهقدم، کاربردی و قابل فهم
- پادکستهای صوتی فارسی — توضیح مفاهیم کلیدی و نکات تکمیلی
- کتاب PDF فارسی — شامل کلیهٔ سرفصلها و محتوای آموزشی
- کتاب خلاصه نکات ویدیوها و پادکستها – نسخه PDF — مناسب مرور سریع و جمعبندی مباحث
- کتاب صدها نکته فارسی (خودمونی) – نسخه PDF — زبان ساده و کاربردی
- کتاب صدها نکته رسمی فارسی – نسخه PDF — نگارش استاندارد، علمی و مناسب چاپ
-
کتاب صدها پرسش و پاسخ تشریحی – نسخه PDF
— هر سؤال بلافاصله همراه با پاسخ کامل و شفاف ارائه شده است؛ مناسب درک عمیق مفاهیم و رفع ابهام. -
کتاب صدها پرسش و پاسخ چهارگزینهای – نسخه PDF (نسخه یادگیری سریع)
— پاسخها بلافاصله پس از سؤال قرار دارند؛ مناسب یادگیری سریع و تثبیت مطالب. -
کتاب صدها پرسش و پاسخ چهارگزینهای – نسخه PDF (نسخه خودآزمایی پایانبخش)
— پاسخها در انتهای هر بخش آمدهاند؛ مناسب آزمون واقعی و سنجش میزان یادگیری. -
کتاب تمرینهای درست / نادرست (True / False) – نسخه PDF
— مناسب افزایش دقت مفهومی و تشخیص صحیح یا نادرست بودن گزارهها. -
کتاب تمرینهای جای خالی – نسخه PDF
— تقویت یادگیری فعال و تسلط بر مفاهیم و اصطلاحات کلیدی.
🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل آموزش تصویری، صوتی، کتابها، تمرینها و خودآزمایی .
ℹ️ نکات مهم هنگام خرید
- این محصول به صورت فایل دانلودی کامل ارائه میشود و نسخهٔ چاپی ندارد.
- تمامی فایلها و کتابها کاملاً فارسی هستند.
- توجه: لینکهای اختصاصی دوره طی ۴۸ ساعت پس از ثبت سفارش ارسال میشوند.
- نیازی به درج شماره موبایل نیست؛ اما برای پشتیبانی سریعتر توصیه میشود.
- در صورت بروز مشکل در دانلود با شماره 09395106248 تماس بگیرید.
- اگر پرداخت انجام شده ولی لینکها را دریافت نکردهاید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینکها دوباره ارسال شوند.
💬 راههای ارتباطی پشتیبانی:
واتساپ یا پیامک:
09395106248
تلگرام: @ma_limbs





نقد و بررسیها
هنوز بررسیای ثبت نشده است.