Item 11: Avoid Conversion Operators in Your APIsItem 12: Use Optional Parameters to Minimize Method OverloadsItem 13: Limit Visibility of Your TypesItem 14: Prefer Defining and Implementing Interfaces to InheritanceItem 15: Understand How Interface Methods Differ from Virtual MethodsItem 16: Implement the Event Pattern for NotificationsItem 17: Avoid Returning References to Internal Class ObjectsItem 18: Prefer Overrides to Event HandlersItem 19: Avoid Overloading Methods Defined in Base ClassesItem 20: Understand How Events Increase Runtime Coupling Among ObjectsItem 21: Declare Only Nonvirtual EventsItem 22: Create Method Groups That Are Clear, Minimal, and CompleteItem 23: Give Partial Classes Partial Methods for Constructors, Mutators, and Event HandlersItem 24: Avoid ICloneable Because It Limits Your Design ChoicesItem 25: Limit Array Parameters to params ArraysItem 26: Enable Immediate Error Reporting in Iterators and Async Methods Using Local Functions