{"title":"回顾:Damian Rouson, Jim Xia和Xiaofeng Xu的科学软件设计","authors":"A. Markus","doi":"10.1145/2594488.2594489","DOIUrl":null,"url":null,"abstract":"With their book, Scientific Software Design, Rouson, Xia and Xu pose themselves not a small task: describing the contours of an entire sub-discipline of software engineering. Their exposé comprises such topics as performance of large systems, memory management in relation to language features and the use of design patterns to facilitate the maintenance of the program code. The consequences for coding in Fortran and C++ are described in detail, with the implementations in both languages being as close to each other as possible. This requires some compromises with respect to the more advanced features that are available in the respective languages. The great advantage, however, is that practitioners acquainted with one of the two can compare solutions in the other and even learn some of the subtleties inherent in their own.","PeriodicalId":379614,"journal":{"name":"ACM SIGPLAN Fortran Forum","volume":"100 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"Review: scientific software design by Damian Rouson, Jim Xia and Xiaofeng Xu\",\"authors\":\"A. Markus\",\"doi\":\"10.1145/2594488.2594489\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"With their book, Scientific Software Design, Rouson, Xia and Xu pose themselves not a small task: describing the contours of an entire sub-discipline of software engineering. Their exposé comprises such topics as performance of large systems, memory management in relation to language features and the use of design patterns to facilitate the maintenance of the program code. The consequences for coding in Fortran and C++ are described in detail, with the implementations in both languages being as close to each other as possible. This requires some compromises with respect to the more advanced features that are available in the respective languages. The great advantage, however, is that practitioners acquainted with one of the two can compare solutions in the other and even learn some of the subtleties inherent in their own.\",\"PeriodicalId\":379614,\"journal\":{\"name\":\"ACM SIGPLAN Fortran Forum\",\"volume\":\"100 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-03-15\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"ACM SIGPLAN Fortran Forum\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2594488.2594489\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM SIGPLAN Fortran Forum","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2594488.2594489","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Review: scientific software design by Damian Rouson, Jim Xia and Xiaofeng Xu
With their book, Scientific Software Design, Rouson, Xia and Xu pose themselves not a small task: describing the contours of an entire sub-discipline of software engineering. Their exposé comprises such topics as performance of large systems, memory management in relation to language features and the use of design patterns to facilitate the maintenance of the program code. The consequences for coding in Fortran and C++ are described in detail, with the implementations in both languages being as close to each other as possible. This requires some compromises with respect to the more advanced features that are available in the respective languages. The great advantage, however, is that practitioners acquainted with one of the two can compare solutions in the other and even learn some of the subtleties inherent in their own.