Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
این دوره به شما کمک می کند تا از درک مفهومی شما برای تولید کد مناسب شی گرا استفاده کنید ، جایی که اشیا completely به دلیل انعطاف پذیری و قابلیت نگهداری کاملاً جایگزین کد رویه می شوند. برنامه نویسان درک مفهومی از مفاهیم OO دارند ، اما اغلب آنها را به یک هدف مناسب تبدیل نمی کنند کد گرا در این دوره ، ساخت شی C # کد خود به صورت شی # گرا ، یاد می گیرید که چگونه کدی مناسب شی گرا ایجاد کنید. اول ، شما یاد خواهید گرفت که چگونه از انشعاب و حلقه جلوگیری کنید. بعد ، شما یاد خواهید گرفت که چگونه از عبارات بولی جلوگیری کنید. سرانجام ، شما خواهید آموخت که چگونه می توان پیاده سازی منطق دامنه را پویا و قابل تنظیم کرد. با پایان این دوره ، شما می توانید خطای گذشته خود را تشخیص داده و سبک کدگذاری صحیح تری ایجاد کنید.
سرفصل ها و درس ها
بررسی اجمالی دوره
Course Overview
بررسی اجمالی دوره
Course Overview
دستیابی به قابلیت توسعه با کد شی گرا
Attaining Extensibility with Object-oriented Code
چه چیزی کد را شی گرا می کند؟
What Makes Code Object-oriented?
آنچه در این دوره دنبال می شود
What Follows in This Course
مثالی که فاقد اشیا است
An Example that Lacks Objects
قرار دادن اشیا Where در جایی که به نظر ممکن نیست
Putting Objects Where It Doesn’t Seem to Be Possible
خلاصه
Summary
ارائه انشعابات بیش از آزمایش های بولی منسوخ شده است
Rendering Branching Over Boolean Tests Obsolete
معرفی مشکل در کد
Introducing the Problem in Code
شناختن مسئله
Recognizing the Problem
تبدیل شاخه به یک عملکرد
Turning Branching into a Function
تبدیل عملکرد به حالت
Turning Function into a State
انتقال کلیه کدهای مربوط به ایالت به ایالات
Moving All State-related Code into States
ارزیابی پیشرفت
Assessing Improvement
خلاصه
Summary
تمرکز بر منطق دامنه با توالی ها
Keeping the Focus on Domain Logic with Sequences
درک مسئله
Understanding the Problem
طرح کلی راه حل مورد نظر
Outlining the Desired Solution
جمع کردن دنباله
Aggregating the Sequence
بهبود قابلیت خواندن
Improving the Readability
بهبود عملکرد عملیات زیرساختی
Improving Performance of Infrastructural Operations
خلاصه
Summary
گره خوردن ساختار از عملیات روی داده های تجاری
Untangling Structure from Operations on Business Data
شناسایی مشکل انتخاب یک شی
Identifying the Problem of Selecting an Object
شناسایی مشکل سنتز یک شی
Identifying the Problem of Synthesizing an Object
درک مشکلات
Understanding the Problems
درمان مجموعه اشیا به عنوان یک شی
Treating Collection of Objects as an Object
پیاده سازی مجموعه اشیا
Implementing the Collection of Objects
معرفی ایده عملکرد ترکیبی
Introducing the Compositional Function Idea
عملکرد ترکیبی عمومی
Generalized Composition Function
خلاصه
Summary
تبدیل الگوریتم ها به اشیا Strate استراتژی
Turning Algorithms into Strategy Objects
شناسایی مسئله الگوریتم متفاوت
Identifying the Problem of a Varying Algorithm
کالبد شکافی الگوریتم
Dissecting the Algorithm
شناسایی قطعات متحرک الگوریتم
Identifying the Moving Parts of the Algorithm
تجزیه و تحلیل روش الگو با هدف استراتژی
Analysis of the Template Method with Strategy Object
استراتژی خارجی سازی به یک کلاس جداگانه
Externalizing Strategy to a Separate Class
اجرای کلاس استراتژی بتن
Implementing a Concrete Strategy Class
خلاصه
Summary
استفاده از اشیا Im غیرقابل تغییر در صورت امکان
Using Immutable Objects When Possible
ایجاد اشکال ناشی از یک شی M قابل تغییر
Causing a Bug That Comes from a Mutable Object
کشف اشکال مستعار
Discovering the Aliasing Bug
رفع اشکال Aliasing
Fixing the Aliasing Bug
درک اشیاue ارزش
Understanding Value Objects
پیاده سازی نوع مرجع به عنوان نوع مقداری
Implementing Reference Type as a Value Type
مصرف کلاس تغییرناپذیر
Consuming the Immutable Class
تبدیل اشیا Im غیر قابل تغییر به اشیاue ارزش
Turning Immutable Objects into Value Objects
پشتیبانی از جداول هاش
Supporting Hash Tables
تکمیل تست های برابری
Completing the Equality Tests
قابل تغییر در مقابل شیm تغییر ناپذیر در مقابل ارزش
Mutable vs. Immutable vs. Value Object
خلاصه
Summary
استفاده از اشیا Case مورد خاص برای حذف بی اعتبار چک ها
Leveraging Special Case Objects to Remove Null Checks
درک مسئله Null
Understanding the Problem of Null
رئوس مطالب طراحی بدون منابع صفر
Outlining the Design Without Null References
چگونه هرگز صفر را برگردانیم
How to Never Return Null
نمایش قدرت اشیا N پوچ
Demonstrating the Power of Null Objects
معرفی موارد خاص
Introducing Special Cases
تبدیل روش های Boolean Query به عملیاتی واقعی
Turning Boolean Query Methods into Real Operations
جایگزینی اشیا در زمان اجرا
Substituting Objects at Run Time
خلاصه
Summary
تبدیل تماس های اختیاری به تماس با اشیاption اختیاری
Turning Optional Calls into Calls on Optional Objects
مواردی را که منجر به استفاده از Null می شود ، پیچیده می کند
Complicating the Requirements That Lead to Use of Nulls
شناسایی مشکل اشیا N موجود
Identifying the Problem of a Nonexistent Objects
نمایندگی شیption اختیاری به عنوان مجموعه
Representing Optional Object as a Collection
بسته بندی یک مجموعه به نوع گزینه
Wrapping a Collection into an Option Type
بهبود خوانایی کد مشتری
Improving Readability of the Client Code
افزودن تطبیق الگو به گزینه ها
Adding Pattern Matching to Options
اجرای سنگین وزن گزینه ها با تطبیق الگو
Heavyweight Implementation of Options with Pattern Matching
نشان دادن استفاده از گزینه سنگین وزن
Demonstrating the Use of Heavyweight Option Type
خلاصه
Summary
افزایش انعطاف پذیری با اجتناب از اظهارات سوئیچ
Increasing Flexibility by Avoiding Switch Statements
اضافه کردن شرایطی که منجر به چند شاخه شدن می شود
Adding Requirements that Lead to Multiway Branching
با استفاده از دستورالعمل سوئیچ به سبک قدیمی و یک Enum
Using the Old-fashioned Switch Instruction and an Enum
کپسول کردن نمایندگی در یک کلاس جداگانه
Encapsulating Representation in a Separate Class
استفاده از نمایندگی کپسوله به عنوان کلید
Using Encapsulated Representation as the Key
تبدیل شاخه های چند راهه به یک شی Dictionary فرهنگ لغت
Turning Multiway Branching into a Dictionary Object
جایگزینی شی Multi چند شاخه در زمان اجرا
Substituting the Multiway Branching Object at Runtime
خلاصه
Summary
تبدیل شاخه های زنجیره ای به زنجیره اشیاule حاکم
Turning Chained Branching into the Chain of Rule Objects
پیاده سازی زنجیره کلاسیک If-then-Elses
Implementing Classical Chain of If-Then-Elses
پیشنهاد یک طرح شی گرا
Proposing an Object-oriented Design
اجرای قوانین بتونی
Implementing Concrete Rules
ساده سازی پیاده سازی از طریق Refactoring
Simplifying Implementation Through Refactoring
ترکیب قوانین بدوی در مجتمع ها
Combining Primitive Rules into Complex Ones
نشان دادن انعطاف پذیری زنجیره قوانین
Demonstrating the Flexibility of the Chain of Rules
خلاصه
Summary
Refactoring برای اتصال همه چیز با هم
Refactoring to Bind It All Together
معرفی مثالی
Introducing an Example
تجزیه و تحلیل اجرای اولیه
Analyzing Initial Implementation
شناخت کد زیر ساختی
Recognizing Infrastructural Code
ساخت زیرساخت صریح
Making Infrastructure Explicit
حذف همه زیرساخت ها از پیاده سازی
Removing All Infrastructure from Implementation
با کد زیر ساختی کجا برویم؟
Where to Go with Infrastructural Code?
کسب سود از انعطاف پذیری کد شی گرا
Making Profit on Flexibility of Object-oriented Code
نمایش نظرات