CON1148_Gee2013年ORACLE全球大会资料

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

TrishaGee#GeeCONJavaDriverDeveloper,10gen@trisha_geeWhatdoyoumean,backwardscompatibility?Design:translatetherequirementsinaspecificationthatdescribestheglobalarchitectureandthefunctionalityofthesystem.~paulk/patents/isnot/node4.htmlManagingtheDevelopmentofLargeSoftwareSystems-DrWinstonRoyce,notaDocument•Designisajourney,enjoytheride•TherewillbeMonsters•TherewillbeSafeHouses•Theremightnotevenbeadestination...Whatareyousaying?BestJobEvar!!We’reoff!BackwardCompatibilityLotsofunknownsDesignGoalsYes,it’sadocumentDesignGoals•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleLackofconsistencyCodingStandardsZeroAnalysisErrorsNomoreargumentsDesignGoals✓Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleUsersIdentifyOurUsers1.JavaDevelopers2.ODMs/otherdrivers/thirdparties3.ContributorsThreeTypesOfUsersJavaDevelopers•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleThirdPartyLibraries•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleContributors•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleUsersareourfriendsBackwardCompatibilityArchitectureUML,yuk!HighLevelArchitectureScalaDriverDesignGoals•Consistency✓Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleDesignGoals•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleHighLevelArchitectureOption1:WrappingOption2:ConnectingBackwardCompatibility?TestsPassWewin!DesignGoals•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly✓BackwardscompatibleNotDeadYet...ThePublicAPIDesignGoals•Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleCaveats•Itwon’tlooklikethis•Haven’tdecidedconsistentnamesyet•NeedsomethingthatsuitsalldriversFindcollection.find(query).skip(1000).limit(100);collection.find(query).skip(1000).limit(100);Findcollection.find(query).skip(1000).limit(100);collection.find(query).skip(1000).limit(100);collection.find(query,fields);WhichOne?Findcollection.find(query).skip(1000).limit(100);collection.find(query).skip(1000).limit(100);collection.find(query,fields);collection.find(query).fields(fieldsToSelect);FewerDecisions“Cmd+space”friendlyFindcollection.find(query).skip(1000).limit(100);collection.find(query).skip(1000).limit(100);collection.find(query,fields);collection.find(query).select(fields);Removecollection.remove(query);collection.find(query).remove();FindandModifycollection.findAndModify(query,update);collection.find(query).updateOneAndGet(update);Theyhateme!FindandModifycollection.findAndModify(query,update);collection.find(query).updateOneAndGet(update);collection.findAndModify(query,fields,sort,false,update,true,false);collection.find(query).sort(sort).updateOneAndGet(update);FindandModifycollection.findAndModify(query,update);collection.find(query).updateOneAndGet(update);collection.findAndModify(query,fields,sort,false,update,true,false);collection.find(query).sort(sort).updateOneAndGet(update);collection.find(query).sort(sort).getOneAndUpdate(update);LackofconsistencyConsistencyatlastcollection.find(query).limit(10);collection.find(query).limit(10).remove();collection.find(query).sort(sortCriteria).getOne();collection.find(query).sort(sortCriteria).remove();collection.find(query).sort(sortCriteria).count();Muertodeltodo✓Consistency•Cleanerdesign•IntuitiveAPI•SaneExceptionhandling•Testfriendly•BackwardscompatibleDesignGoals•Consistency•Cleanerdesign•IntuitiveAPI...•SaneExceptionhandling•Testfriendly•BackwardscompatibleNotDeadYet!Tutorial/hacksessionThistalkDesignisaProcess,notaDocumentQ&AAreyouusingtheJavadriver?Whatdoyoulikeaboutit?Whatareyourpainpoints?DesignisaProcess,notaDocumentYourQuestions•TrishaGee•trisha.gee@10gen.com•@trisha_gee

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功