Functional Design Patterns.pdf

Functional Design Patterns.pdf

ID:34818286

大小:4.26 MB

页数:249页

时间:2019-03-11

Functional Design Patterns.pdf_第1页
Functional Design Patterns.pdf_第2页
Functional Design Patterns.pdf_第3页
Functional Design Patterns.pdf_第4页
Functional Design Patterns.pdf_第5页
资源描述:

《Functional Design Patterns.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、FunctionalDesignPatterns@ScottWlaschinfsharpforfunandprofit.comFunctionalDesignPatternsX@ScottWlaschinfsharpforfunandprofit.comFunctionalDesignPatterns@ScottWlaschinfsharpforfunandprofit.comFunctionalpatterns•Apomorphisms•Dynamorphisms•Chronomorphisms•Zygohi

2、stomorphicprepromorphismsFunctionalpatterns•CorePrinciplesofFPdesign–Functions,types,composition•Functionsasparameters–Abstraction,Dependencyinjection–Partialapplication,Continuations,Folds,•Chainingfunctions–Errorhandling,Async–Monads•Dealingwithwrappeddata

3、–Lifting,Functors–ValidationwithApplicatives•Aggregatingdataandoperations–MonoidsThistalkFunctionalprogrammingisscaryFunctionalprogrammingisscaryObjectorientedprogrammingisscaryOOpattern/principleFPpattern/principle•SingleResponsibilityPrinciple•Functions•Op

4、en/Closedprinciple•Functions•DependencyInversion•Functions,alsoPrinciple•InterfaceSegregation•FunctionsPrinciple•Factorypattern•Yes,functions•Strategypattern•Ohmy,functionsagain!•Decoratorpattern•Functions•Visitorpattern•FunctionsSeriously,FPpatternsarediff

5、erentAshortandmostlywronghistoryofprogrammingparadigmsObject-Orientedprogramming•Whatweenvisioned:–Smalltalk•Whatwegot:–C++“Worseisbetter”–ObjectorientedCobol–PHP–JavaFunctionalprogramming•Whatweenvisioned:–Haskell,OCaml,F#,etc•Whatwegot:–??Pleasedon’tletthi

6、shappentoFP!Importanttounderstand!COREPRINCIPLESOFFPDESIGNCoreprinciplesofFPdesignStealfrommathematicsTypesarenotclassesFunctionsarethingsFunctionCompositioneverywhereCoreprinciple:Stealfrommathematics“Programmingisoneofthemostdifficultbranchesofappliedmathe

7、matics”-E.W.DijkstraWhymathematicsDijkstrasaid:•Mathematicalassertionstendtobeunusuallyprecise.•Mathematicalassertionstendtobegeneral.Theyareapplicabletoalarge(ofteninfinite)classofinstances.•Mathematicsembodiesadisciplineofreasoningallowingassertionstobemad

8、ewithanunusuallyhighconfidencelevel.“Object-orientedprogrammingisanexceptionallybadideawhichcouldonlyhaveoriginatedinCalifornia.”E.W.DijkstraMathematicalfunctionsDomain(int)Codomain(int)……-10011

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。