Design Patterns - Refactoring.Guru
文章推薦指數: 80 %
Design Patterns are typical solutions to commonly occurring problems in software design. They are blueprints that you can customize to solve a particular ... Hey,Ihavejustreducedthepriceforallproducts.Let'sprepareourprogrammingskillsforthepost-COVIDera.Checkitout» DesignPatterns Designpatternsaretypicalsolutionstocommonproblems insoftwaredesign.Eachpatternislikeablueprint thatyoucancustomizetosolveaparticular designprobleminyourcode. What'sadesignpattern? Catalogofpatterns Listof22classicdesignpatterns, groupedbytheirintent. Lookinsidethecatalog» Benefitsofpatterns Patternsareatoolkitofsolutionstocommon problemsinsoftwaredesign.Theydefine acommonlanguagethathelpsyourteam communicatemoreefficiently. Moreaboutthebenefits» Classification Designpatternsdifferbytheircomplexity,levelof detailandscaleofapplicability.Inaddition, theycanbecategorizedbytheirintent anddividedintothreegroups. Moreaboutthecategories» Historyofpatterns Whoinventedpatternsandwhen? Canyouusepatternsoutsidesoftware development?Howdoyoudothat? Moreaboutthehistory» Criticismofpatterns Arepatternsasgoodasadvertised? Isitalwayspossibletousethem? Canpatternssometimesbeharmful? Moreaboutthecriticism» DiveIntoDesignPatterns Checkoutourebookondesign patternsandprinciples.It'savailablein PDF/ePUB/MOBIformatsandincludesthe archivewithcodeexamplesin Java,C#,C++,PHP,Python,Ruby, Go,Swift,&TypeScript. Learnmoreaboutthebook Facebook Twitter Language English Español Français Polski PortuguêsBrasileiro Русский Українська 中文 Contactus Login HELPUKRAINESTOPRUSSIA EnglishEnglish EspañolEspañol FrançaisFrançais PolskiPolski PortuguêsBrasileiroPortuguês-Br РусскийРусский УкраїнськаУкраїнська 中文中文 HELPUKRAINE STOPRUSSIA PremiumContent DesignPatternseBook RefactoringCourse Refactoring WhatisRefactoring Cleancode Technicaldebt Whentorefactor Howtorefactor Catalog CodeSmells Bloaters LongMethod LargeClass PrimitiveObsession LongParameterList DataClumps Object-OrientationAbusers SwitchStatements TemporaryField RefusedBequest AlternativeClasseswithDifferentInterfaces ChangePreventers DivergentChange ShotgunSurgery ParallelInheritanceHierarchies Dispensables Comments DuplicateCode LazyClass DataClass DeadCode SpeculativeGenerality Couplers FeatureEnvy InappropriateIntimacy MessageChains MiddleMan OtherSmells IncompleteLibraryClass Refactorings ComposingMethods ExtractMethod InlineMethod ExtractVariable InlineTemp ReplaceTempwithQuery SplitTemporaryVariable RemoveAssignmentstoParameters ReplaceMethodwithMethodObject SubstituteAlgorithm MovingFeaturesbetweenObjects MoveMethod MoveField ExtractClass InlineClass HideDelegate RemoveMiddleMan IntroduceForeignMethod IntroduceLocalExtension OrganizingData SelfEncapsulateField ReplaceDataValuewithObject ChangeValuetoReference ChangeReferencetoValue ReplaceArraywithObject DuplicateObservedData ChangeUnidirectionalAssociationtoBidirectional ChangeBidirectionalAssociationtoUnidirectional ReplaceMagicNumberwithSymbolicConstant EncapsulateField EncapsulateCollection ReplaceTypeCodewithClass ReplaceTypeCodewithSubclasses ReplaceTypeCodewithState/Strategy ReplaceSubclasswithFields SimplifyingConditionalExpressions DecomposeConditional ConsolidateConditionalExpression ConsolidateDuplicateConditionalFragments RemoveControlFlag ReplaceNestedConditionalwithGuardClauses ReplaceConditionalwithPolymorphism IntroduceNullObject IntroduceAssertion SimplifyingMethodCalls RenameMethod AddParameter RemoveParameter SeparateQueryfromModifier ParameterizeMethod ReplaceParameterwithExplicitMethods PreserveWholeObject ReplaceParameterwithMethodCall IntroduceParameterObject RemoveSettingMethod HideMethod ReplaceConstructorwithFactoryMethod ReplaceErrorCodewithException ReplaceExceptionwithTest DealingwithGeneralization PullUpField PullUpMethod PullUpConstructorBody PushDownMethod PushDownField ExtractSubclass ExtractSuperclass ExtractInterface CollapseHierarchy FormTemplateMethod ReplaceInheritancewithDelegation ReplaceDelegationwithInheritance DesignPatterns WhatisaPattern What'sadesignpattern? Historyofpatterns WhyshouldIlearnpatterns? Criticismofpatterns Classificationofpatterns Catalog CreationalPatterns FactoryMethod AbstractFactory Builder Prototype Singleton StructuralPatterns Adapter Bridge Composite Decorator Facade Flyweight Proxy BehavioralPatterns ChainofResponsibility Command Iterator Mediator Memento Observer State Strategy TemplateMethod Visitor CodeExamples C# C++ Go Java PHP Python Ruby Swift TypeScript Login Contactus
延伸文章資訊
- 1為什麼要學Design Pattern
一般軟體圈講的設計模式是指GoF 的23個design pattern ,而GoF 的23個設計模式全名是object oriented design pattern,所以設計模式是指在物件導向...
- 2什麼是設計模式(Design Pattern)? 設計模式系列文(上)
模式(Pattern),以一句話來解釋:. 描述在特定情境(Context)下,解決設計問題(Problem) 的最佳實踐。 而模式中所提出的 ...
- 3設計模式(電腦) - 維基百科,自由的百科全書
在軟體工程中,設計模式(design pattern)是對軟體設計中普遍存在(反覆出現)的各種問題,所提出的解決方案。這個術語是由埃里希·伽瑪(Erich Gamma)等人在1990年代 ...
- 4Design Patterns - SourceMaking
In software engineering, a design pattern is a general repeatable solution to a commonly occurrin...
- 5[ Day 1 ] 我為什麼想學設計模式( Design Pattern ) - iT 邦幫忙
在軟體工程中,設計模式(design pattern)是對軟體設計中普遍存在(反覆出現)的各種問題,所提出的解決方案。這個術語是由埃里希·伽瑪(Erich Gamma)等人在1990年代 ...