{"id":"https://openalex.org/W2245030381","doi":null,"title":"C++: Effective Object-Oriented Software Construction","display_name":"C++: Effective Object-Oriented Software Construction","publication_year":1997,"publication_date":"1997-01-01","ids":{"openalex":"https://openalex.org/W2245030381","mag":"2245030381"},"language":"en","primary_location":{"id":"mag:2245030381","doi":null,"is_oa":false,"landing_page_url":"https://www.amazon.com/C-Effective-Object-Oriented-Software-Construction/dp/0131041185","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null},"volume":null,"type":"book","is_traditional":true,"indexed_in":[],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5020290658","display_name":"Kayshav Dattatri","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Kayshav Dattatri","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5060805359","display_name":"Erich Gamma","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Erich Gamma","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.5317,"has_fulltext":false,"cited_by_count":7,"citation_normalized_percentile":{"value":0.72576832,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":88,"max":93},"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.4860999882221222,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.4860999882221222,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.19789999723434448,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12490","display_name":"Software Engineering and Design Patterns","score":0.13899999856948853,"subfield":{"id":"https://openalex.org/subfields/3303","display_name":"Development"},"field":{"id":"https://openalex.org/fields/33","display_name":"Social Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/c","display_name":"C++","score":0.8730000257492065},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"object-oriented programming","score":0.9929999709129333},{"id":"https://openalex.org/keywords/object-oriented-design","display_name":"object-oriented design","score":0.9110000133514404},{"id":"https://openalex.org/keywords/classes-and-objects","display_name":"classes and objects","score":0.8920000195503235},{"id":"https://openalex.org/keywords/data-abstraction","display_name":"data abstraction","score":0.996999979019165},{"id":"https://openalex.org/keywords/inheritance-object-oriented-programming","display_name":"inheritance (object-oriented programming)","score":0.8989999890327454},{"id":"https://openalex.org/keywords/multiple-inheritance","display_name":"multiple inheritance","score":0.9070000052452087},{"id":"https://openalex.org/keywords/generic-programming","display_name":"generic programming","score":0.9959999918937683},{"id":"https://openalex.org/keywords/error-management","display_name":"error management","score":0.8960000276565552},{"id":"https://openalex.org/keywords/multithreading","display_name":"multithreading","score":0.8939999938011169},{"id":"https://openalex.org/keywords/design-reuse","display_name":"design reuse","score":0.7239999771118164},{"id":"https://openalex.org/keywords/uml","display_name":"UML","score":0.6769999861717224},{"id":"https://openalex.org/keywords/smalltalk","display_name":"Smalltalk","score":0.9340000152587891},{"id":"https://openalex.org/keywords/eiffel","display_name":"Eiffel","score":0.8740000128746033},{"id":"https://openalex.org/keywords/software-architecture","display_name":"software architecture","score":0.7149999737739563}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7117223143577576},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6275643110275269},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.5600050091743469},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.5377159118652344},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.49424198269844055},{"id":"https://openalex.org/C146054899","wikidata":"https://www.wikidata.org/wiki/Q181156","display_name":"Software design pattern","level":3,"score":0.4893650412559509},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.4516722559928894},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.4179615378379822},{"id":"https://openalex.org/C2778583558","wikidata":"https://www.wikidata.org/wiki/Q771245","display_name":"Code reuse","level":3,"score":0.4172007441520691},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.3449856638908386},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"mag:2245030381","doi":null,"is_oa":false,"landing_page_url":"https://www.amazon.com/C-Effective-Object-Oriented-Software-Construction/dp/0131041185","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W6995474705","https://openalex.org/W578755966","https://openalex.org/W585223516","https://openalex.org/W2232582033","https://openalex.org/W2225681540","https://openalex.org/W2013999503","https://openalex.org/W605516014","https://openalex.org/W324696926","https://openalex.org/W2110320484","https://openalex.org/W2147701713"],"abstract_inverted_index":{"From":[0],"the":[1,5,23,49,55,131,134,151,169,188],"Publisher:\r\nLearn":[2],"object-oriented":[3,25,52,176,217],"programming":[4],"way":[6],"commercial":[7],"developers":[8,137],"do":[9],"it!":[10],"\r\n\r\nC++:":[11],"Effective":[12,224],"Object-Oriented":[13,225],"Software":[14],"Construction":[15,226],"has":[16],"one":[17],"goal:":[18],"to":[19,35,69,140,149,194,219],"help":[20,228],"you":[21,30,44,229],"understand":[22],"C++":[24,59,109,158,212],"paradigm":[26],"in":[27,54],"depth,":[28],"so":[29],"can":[31],"translate":[32],"object":[33,67,110],"concepts":[34],"practical":[36],"solutions,":[37],"no":[38],"matter":[39],"what":[40],"software":[41,60,73,127,159],"development":[42],"environment":[43],"encounter.":[45],"\r\n\r\nThis":[46],"book":[47,186],"introduces":[48],"fundamentals":[50],"of":[51,57,168,173],"design/programming":[53],"context":[56],"real-world":[58,166],"development,":[61],"presenting":[62],"proven":[63],"strategies":[64,101,135],"for":[65,102,120,123],"using":[66,216],"languages":[68],"engineer":[70],"elegant,":[71],"high-quality":[72],"as":[74,78,235],"quickly":[75],"and":[76,85,89,94,100,105,112,143,171,181],"efficiently":[77],"possible.":[79],"You'll":[80,146],"learn":[81,147],"about:":[82],"\r\n\r\n\r\n\r\nClasses,":[83],"objects,":[84],"data":[86],"abstraction":[87],"\r\n\r\nSingle":[88],"multiple":[90],"inheritance,":[91],"generic":[92],"programming,":[93],"error":[95],"management":[96],"\r\n\r\nOO":[97],"design":[98,144,197],"techniques":[99,218],"building":[103],"efficient":[104],"stable":[106],"architectures":[107],"\r\n\r\nThe":[108],"model,":[111],"its":[113,196],"cost/benefit":[114],"implications":[115],"\r\n\r\nC++":[116],"code":[117,142],"style":[118],"guidelines":[119],"projects":[121],"\r\n\r\nTips":[122],"writing":[124],"multi-threaded":[125],"OO":[126],"\r\n\r\n\r\n\r\nIn":[128],"this":[129,185],"book,":[130],"author":[132],"reveals":[133],"Professional":[136],"have":[138],"learned":[139],"maximize":[141],"reuse.":[145],"how":[148],"manage":[150],"extensive":[152],"housekeeping":[153],"that's":[154],"associated":[155],"with":[156,207],"effective":[157],"development.":[160],"Then,":[161],"you'll":[162],"walk":[163],"through":[164],"detailed,":[165],"comparisons":[167],"strengths":[170],"weaknesses":[172],"each":[174],"major":[175],"language,":[177],"including":[178],"C++,":[179],"Smalltalk":[180],"Eiffel.":[182],"In":[183],"addition,":[184],"uses":[187],"new":[189,202],"UML":[190],"(Unified":[191],"Modeling":[192],"Language)":[193],"illustrate":[195],"examples.":[198],"\r\n\r\nWhether":[199],"you're":[200],"a":[201,204,211,236],"programmer,":[203],"programmer":[205,213],"familiar":[206],"procedural":[208],"languages,":[209],"or":[210],"who":[214],"isn't":[215],"their":[220],"full":[221],"potential,":[222],"C++:":[223],"will":[227],"achieve":[230],"your":[231],"most":[232],"critical":[233],"goals":[234],"developer.":[237]},"counts_by_year":[{"year":2020,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2026-10-03T13:16:28.481748","created_date":"2016-06-24T00:00:00"}
