نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
این دوره به شما کمک می کند تا از درک مفهومی شما برای تولید کد مناسب شی گرا استفاده کنید ، جایی که اشیا 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
-
خلاصه
Summary
-
خلاصه دوره
Course Summary
نمایش نظرات