Writing scientific software: a guide for good style
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Cambridge [u.a.]
Cambridge Univ. Press
2006
|
Ausgabe: | 1. publ. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XII, 303 S. graph. Darst. |
ISBN: | 0521675952 0521858968 9780521675956 9780521858960 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV021661976 | ||
003 | DE-604 | ||
005 | 20140417 | ||
007 | t | ||
008 | 060718s2006 xxkd||| |||| 00||| eng d | ||
020 | |a 0521675952 |c pbk |9 0-521-67595-2 | ||
020 | |a 0521858968 |c hbk |9 0-521-85896-8 | ||
020 | |a 9780521675956 |c pbk |9 978-0-521-67595-6 | ||
020 | |a 9780521858960 |c hbk |9 978-0-521-85896-0 | ||
035 | |a (OCoLC)255082807 | ||
035 | |a (DE-599)BVBBV021661976 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
044 | |a xxk |c XA-GB | ||
049 | |a DE-29T |a DE-703 |a DE-20 |a DE-91G |a DE-11 |a DE-521 | ||
050 | 0 | |a QA76.76.D47 | |
082 | 0 | |a 005.3 |2 22 | |
084 | |a SK 900 |0 (DE-625)143268: |2 rvk | ||
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
084 | |a DAT 310f |2 stub | ||
084 | |a DAT 532f |2 stub | ||
100 | 1 | |a Oliveira, Suely |e Verfasser |0 (DE-588)1076753485 |4 aut | |
245 | 1 | 0 | |a Writing scientific software |b a guide for good style |c Suely Oliveira and David E. Stewart |
250 | |a 1. publ. | ||
264 | 1 | |a Cambridge [u.a.] |b Cambridge Univ. Press |c 2006 | |
300 | |a XII, 303 S. |b graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 7 | |a Engenharia de software |2 larpcal | |
650 | 4 | |a Génie logiciel | |
650 | 4 | |a Logiciels - Développement | |
650 | 7 | |a Projeto de software |2 larpcal | |
650 | 4 | |a Sciences - Informatique | |
650 | 4 | |a Sciences - Logiciels | |
650 | 4 | |a Datenverarbeitung | |
650 | 4 | |a Naturwissenschaft | |
650 | 4 | |a Computer software |x Development | |
650 | 4 | |a Science |v Software | |
650 | 4 | |a Science |x Data processing | |
650 | 4 | |a Software engineering | |
650 | 0 | 7 | |a Programmierung |0 (DE-588)4076370-5 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Wissenschaftliches Rechnen |0 (DE-588)4338507-2 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Numerisches Verfahren |0 (DE-588)4128130-5 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Software Engineering |0 (DE-588)4116521-4 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Softwareentwicklung |0 (DE-588)4116522-6 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Wissenschaftliches Rechnen |0 (DE-588)4338507-2 |D s |
689 | 0 | 1 | |a Programmierung |0 (DE-588)4076370-5 |D s |
689 | 0 | 2 | |a Softwareentwicklung |0 (DE-588)4116522-6 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Numerisches Verfahren |0 (DE-588)4128130-5 |D s |
689 | 1 | 1 | |a Software Engineering |0 (DE-588)4116521-4 |D s |
689 | 1 | |5 DE-604 | |
700 | 1 | |a Stewart, David |d 1961- |e Verfasser |0 (DE-588)138178011 |4 aut | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014876465&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-014876465 |
Datensatz im Suchindex
_version_ | 1804135473625432064 |
---|---|
adam_text | Contents
Preface page ix
Part I Numerical Software 1
1 Why numerical software? 3
1.1 Efficient kernels 4
1.2 Rapid change 5
1.3 Large scale problems 6
2 Scientific computation and numerical analysis 8
2.1 The trouble with real numbers 8
2.2 Fixed point arithmetic 18
2.3 Algorithm stability vs. problem stability 19
2.4 Numerical accuracy and reliability 23
3 Priorities 30
3.1 Correctness 30
3.2 Numerical stability 32
3.3 Accurate discretization 32
3.4 Flexibility 33
3.5 Efficiency: time and memory 35
4 Famous disasters 36
4.1 Patriot missiles 36
4.2 Ariane 5 37
4.3 Sleipner A oil rig collapse 38
5 Exercises 39
Part II Developing Software 43
6 Basics of computer organization 45
6.1 Under the hood: what a CPU does 45
6.2 Calling routines: stacks and registers 47
6.3 Allocating variables 51
6.4 Compilers, linkers, and loaders 53
v
vi Contents
I Software design 57
7.1 Software engineering 57
7.2 Software life cycle 57
7.3 Programming in the large 59
7.4 Programming in the small 61
7.5 Programming in the middle 67
7.6 Interface design 70
7.7 Top down and bottom up development 75
7.8 Don t hard wire it unnecessarily! 77
7.9 Comments 78
7.10 Documentation 80
7.11 Cross language development 82
7.12 Modularity and all that 87
8 Data structures 90
8.1 Package your data! 90
8.2 Avoid global variables! 91
8.3 Multidimensional arrays 92
8.4 Functional representation vs. data structures 96
8.5 Functions and the environment problem 97
8.6 Some comments on object oriented scientific software 106
9 Design for testing and debugging 118
9.1 Incremental testing 118
9.2 Localizing bugs 120
9.3 The mighty print statement 120
9.4 Get the computer to help 122
9.5 Using debuggers 129
9.6 Debugging functional representations 130
9.7 Error and exception handling 132
9.8 Compare and contrast 135
9.9 Tracking bugs 136
9.10 Stress testing and performance testing 137
9.11 Random test data 141
10 Exercises 143
Part III Efficiency in Time, Efficiency in Memory 147
I1 Be algorithm aware 149
11.1 Numerical algorithms 149
11.2 Discrete algorithms 151
11.3 Numerical algorithm design techniques 153
12 Computer architecture and efficiency 156
12.1 Caches and memory hierarchies 156
Contents vii
12.2 A tour of the Pentium 4™ architecture 158
12.3 Virtual memory and paging 164
12.4 Thrashing 164
12.5 Designing for memory hierarchies 165
12.6 Dynamic data structures and memory hierarchies 168
12.7 Pipelining and loop unrolling 168
12.8 Basic Linear Algebra Software (BLAS) 170
12.9 LAPACK 178
12.10 Cache oblivious algorithms and data structures 184
12.11 Indexing vs. pointers for dynamic data structures 185
13 Global vs. local optimization 187
13.1 Picking algorithms vs. keyhole optimization 187
13.2 What optimizing compilers do 188
13.3 Helping the compiler along 191
13.4 Practicalities and asymptotic complexity 192
14 Grabbing memory when you need it 195
14.1 Dynamic memory allocation 195
14.2 Giving it back 197
14.3 Garbage collection 198
14.4 Life with garbage collection 199
14.5 Conservative garbage collection 202
14.6 Doing it yourself 203
14.7 Memory tips 205
15 Memory bugs and leaks 208
15.1 Beware: unallocated memory! 208
15.2 Beware: overwriting memory! 208
15.3 Beware: dangling pointers! 210
15.4 Beware: memory leaks! 214
15.5 Debugging tools 215
Part IV Tools 217
16 Sources of scientific software 219
16.1 Netlib 220
16.2 BLAS 220
16.3 LAPACK 221
16.4 GAMS 221
16.5 Other sources 221
17 Unix tools 223
17.1 Automated builds: make 223
17.2 Revision control: RCS, CVS, Subversion and Bitkeeper 226
viii Contents
17.3 Profiling: prof and gprof 228
17.4 Text manipulation: grep, sed, awk, etc. 230
17.5 Other tools 232
17.6 What about Microsoft Windows? 233
Part V Design Examples 237
18 Cubic spline function library 239
18.1 Creation and destruction 242
18.2 Output 244
18.3 Evaluation 244
18.4 Spline construction 247
18.5 Periodic splines 257
18.6 Performance testing 260
19 Multigrid algorithms 262
19.1 Discretizing partial differential equations 262
19.2 Outline of multigrid methods 264
19.3 Implementation of framework 265
19.4 Common choices for the framework 272
19.5 A first test 273
19.6 The operator interface and its uses 276
19.7 Dealing with sparse matrices 279
19.8 A second test 282
Appendix A Review of vectors and matrices 287
A. 1 Identities and inverses 288
A.2 Norms and errors 289
A.3 Errors in solving linear systems 291
Appendix B Trademarks 292
References 293
Index 299
|
adam_txt |
Contents
Preface page ix
Part I Numerical Software 1
1 Why numerical software? 3
1.1 Efficient kernels 4
1.2 Rapid change 5
1.3 Large scale problems 6
2 Scientific computation and numerical analysis 8
2.1 The trouble with real numbers 8
2.2 Fixed point arithmetic 18
2.3 Algorithm stability vs. problem stability 19
2.4 Numerical accuracy and reliability 23
3 Priorities 30
3.1 Correctness 30
3.2 Numerical stability 32
3.3 Accurate discretization 32
3.4 Flexibility 33
3.5 Efficiency: time and memory 35
4 Famous disasters 36
4.1 Patriot missiles 36
4.2 Ariane 5 37
4.3 Sleipner A oil rig collapse 38
5 Exercises 39
Part II Developing Software 43
6 Basics of computer organization 45
6.1 Under the hood: what a CPU does 45
6.2 Calling routines: stacks and registers 47
6.3 Allocating variables 51
6.4 Compilers, linkers, and loaders 53
v
vi Contents
I Software design 57
7.1 Software engineering 57
7.2 Software life cycle 57
7.3 Programming in the large 59
7.4 Programming in the small 61
7.5 Programming in the middle 67
7.6 Interface design 70
7.7 Top down and bottom up development 75
7.8 Don't hard wire it unnecessarily! 77
7.9 Comments 78
7.10 Documentation 80
7.11 Cross language development 82
7.12 Modularity and all that 87
8 Data structures 90
8.1 Package your data! 90
8.2 Avoid global variables! 91
8.3 Multidimensional arrays 92
8.4 Functional representation vs. data structures 96
8.5 Functions and the "environment problem" 97
8.6 Some comments on object oriented scientific software 106
9 Design for testing and debugging 118
9.1 Incremental testing 118
9.2 Localizing bugs 120
9.3 The mighty "print" statement 120
9.4 Get the computer to help 122
9.5 Using debuggers 129
9.6 Debugging functional representations 130
9.7 Error and exception handling 132
9.8 Compare and contrast 135
9.9 Tracking bugs 136
9.10 Stress testing and performance testing 137
9.11 Random test data 141
10 Exercises 143
Part III Efficiency in Time, Efficiency in Memory 147
I1 Be algorithm aware 149
11.1 Numerical algorithms 149
11.2 Discrete algorithms 151
11.3 Numerical algorithm design techniques 153
12 Computer architecture and efficiency 156
12.1 Caches and memory hierarchies 156
Contents vii
12.2 A tour of the Pentium 4™ architecture 158
12.3 Virtual memory and paging 164
12.4 Thrashing 164
12.5 Designing for memory hierarchies 165
12.6 Dynamic data structures and memory hierarchies 168
12.7 Pipelining and loop unrolling 168
12.8 Basic Linear Algebra Software (BLAS) 170
12.9 LAPACK 178
12.10 Cache oblivious algorithms and data structures 184
12.11 Indexing vs. pointers for dynamic data structures 185
13 Global vs. local optimization 187
13.1 Picking algorithms vs. keyhole optimization 187
13.2 What optimizing compilers do 188
13.3 Helping the compiler along 191
13.4 Practicalities and asymptotic complexity 192
14 Grabbing memory when you need it 195
14.1 Dynamic memory allocation 195
14.2 Giving it back 197
14.3 Garbage collection 198
14.4 Life with garbage collection 199
14.5 Conservative garbage collection 202
14.6 Doing it yourself 203
14.7 Memory tips 205
15 Memory bugs and leaks 208
15.1 Beware: unallocated memory! 208
15.2 Beware: overwriting memory! 208
15.3 Beware: dangling pointers! 210
15.4 Beware: memory leaks! 214
15.5 Debugging tools 215
Part IV Tools 217
16 Sources of scientific software 219
16.1 Netlib 220
16.2 BLAS 220
16.3 LAPACK 221
16.4 GAMS 221
16.5 Other sources 221
17 Unix tools 223
17.1 Automated builds: make 223
17.2 Revision control: RCS, CVS, Subversion and Bitkeeper 226
viii Contents
17.3 Profiling: prof and gprof 228
17.4 Text manipulation: grep, sed, awk, etc. 230
17.5 Other tools 232
17.6 What about Microsoft Windows? 233
Part V Design Examples 237
18 Cubic spline function library 239
18.1 Creation and destruction 242
18.2 Output 244
18.3 Evaluation 244
18.4 Spline construction 247
18.5 Periodic splines 257
18.6 Performance testing 260
19 Multigrid algorithms 262
19.1 Discretizing partial differential equations 262
19.2 Outline of multigrid methods 264
19.3 Implementation of framework 265
19.4 Common choices for the framework 272
19.5 A first test 273
19.6 The operator interface and its uses 276
19.7 Dealing with sparse matrices 279
19.8 A second test 282
Appendix A Review of vectors and matrices 287
A. 1 Identities and inverses 288
A.2 Norms and errors 289
A.3 Errors in solving linear systems 291
Appendix B Trademarks 292
References 293
Index 299 |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Oliveira, Suely Stewart, David 1961- |
author_GND | (DE-588)1076753485 (DE-588)138178011 |
author_facet | Oliveira, Suely Stewart, David 1961- |
author_role | aut aut |
author_sort | Oliveira, Suely |
author_variant | s o so d s ds |
building | Verbundindex |
bvnumber | BV021661976 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.76.D47 |
callnumber-search | QA76.76.D47 |
callnumber-sort | QA 276.76 D47 |
callnumber-subject | QA - Mathematics |
classification_rvk | SK 900 ST 230 |
classification_tum | DAT 310f DAT 532f |
ctrlnum | (OCoLC)255082807 (DE-599)BVBBV021661976 |
dewey-full | 005.3 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.3 |
dewey-search | 005.3 |
dewey-sort | 15.3 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik Mathematik |
discipline_str_mv | Informatik Mathematik |
edition | 1. publ. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02721nam a2200697 c 4500</leader><controlfield tag="001">BV021661976</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20140417 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">060718s2006 xxkd||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0521675952</subfield><subfield code="c">pbk</subfield><subfield code="9">0-521-67595-2</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0521858968</subfield><subfield code="c">hbk</subfield><subfield code="9">0-521-85896-8</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780521675956</subfield><subfield code="c">pbk</subfield><subfield code="9">978-0-521-67595-6</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780521858960</subfield><subfield code="c">hbk</subfield><subfield code="9">978-0-521-85896-0</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)255082807</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV021661976</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">xxk</subfield><subfield code="c">XA-GB</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-29T</subfield><subfield code="a">DE-703</subfield><subfield code="a">DE-20</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-521</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.76.D47</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.3</subfield><subfield code="2">22</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">SK 900</subfield><subfield code="0">(DE-625)143268:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 230</subfield><subfield code="0">(DE-625)143617:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 310f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 532f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Oliveira, Suely</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1076753485</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Writing scientific software</subfield><subfield code="b">a guide for good style</subfield><subfield code="c">Suely Oliveira and David E. Stewart</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. publ.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Cambridge [u.a.]</subfield><subfield code="b">Cambridge Univ. Press</subfield><subfield code="c">2006</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XII, 303 S.</subfield><subfield code="b">graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Engenharia de software</subfield><subfield code="2">larpcal</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Génie logiciel</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Logiciels - Développement</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Projeto de software</subfield><subfield code="2">larpcal</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Sciences - Informatique</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Sciences - Logiciels</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Datenverarbeitung</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Naturwissenschaft</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer software</subfield><subfield code="x">Development</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Science</subfield><subfield code="v">Software</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Science</subfield><subfield code="x">Data processing</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Software engineering</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Wissenschaftliches Rechnen</subfield><subfield code="0">(DE-588)4338507-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Numerisches Verfahren</subfield><subfield code="0">(DE-588)4128130-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Software Engineering</subfield><subfield code="0">(DE-588)4116521-4</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Softwareentwicklung</subfield><subfield code="0">(DE-588)4116522-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Wissenschaftliches Rechnen</subfield><subfield code="0">(DE-588)4338507-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">Softwareentwicklung</subfield><subfield code="0">(DE-588)4116522-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">Numerisches Verfahren</subfield><subfield code="0">(DE-588)4128130-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Software Engineering</subfield><subfield code="0">(DE-588)4116521-4</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Stewart, David</subfield><subfield code="d">1961-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)138178011</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014876465&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-014876465</subfield></datafield></record></collection> |
id | DE-604.BV021661976 |
illustrated | Illustrated |
index_date | 2024-07-02T15:06:17Z |
indexdate | 2024-07-09T20:41:04Z |
institution | BVB |
isbn | 0521675952 0521858968 9780521675956 9780521858960 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-014876465 |
oclc_num | 255082807 |
open_access_boolean | |
owner | DE-29T DE-703 DE-20 DE-91G DE-BY-TUM DE-11 DE-521 |
owner_facet | DE-29T DE-703 DE-20 DE-91G DE-BY-TUM DE-11 DE-521 |
physical | XII, 303 S. graph. Darst. |
publishDate | 2006 |
publishDateSearch | 2006 |
publishDateSort | 2006 |
publisher | Cambridge Univ. Press |
record_format | marc |
spelling | Oliveira, Suely Verfasser (DE-588)1076753485 aut Writing scientific software a guide for good style Suely Oliveira and David E. Stewart 1. publ. Cambridge [u.a.] Cambridge Univ. Press 2006 XII, 303 S. graph. Darst. txt rdacontent n rdamedia nc rdacarrier Engenharia de software larpcal Génie logiciel Logiciels - Développement Projeto de software larpcal Sciences - Informatique Sciences - Logiciels Datenverarbeitung Naturwissenschaft Computer software Development Science Software Science Data processing Software engineering Programmierung (DE-588)4076370-5 gnd rswk-swf Wissenschaftliches Rechnen (DE-588)4338507-2 gnd rswk-swf Numerisches Verfahren (DE-588)4128130-5 gnd rswk-swf Software Engineering (DE-588)4116521-4 gnd rswk-swf Softwareentwicklung (DE-588)4116522-6 gnd rswk-swf Wissenschaftliches Rechnen (DE-588)4338507-2 s Programmierung (DE-588)4076370-5 s Softwareentwicklung (DE-588)4116522-6 s DE-604 Numerisches Verfahren (DE-588)4128130-5 s Software Engineering (DE-588)4116521-4 s Stewart, David 1961- Verfasser (DE-588)138178011 aut HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014876465&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Oliveira, Suely Stewart, David 1961- Writing scientific software a guide for good style Engenharia de software larpcal Génie logiciel Logiciels - Développement Projeto de software larpcal Sciences - Informatique Sciences - Logiciels Datenverarbeitung Naturwissenschaft Computer software Development Science Software Science Data processing Software engineering Programmierung (DE-588)4076370-5 gnd Wissenschaftliches Rechnen (DE-588)4338507-2 gnd Numerisches Verfahren (DE-588)4128130-5 gnd Software Engineering (DE-588)4116521-4 gnd Softwareentwicklung (DE-588)4116522-6 gnd |
subject_GND | (DE-588)4076370-5 (DE-588)4338507-2 (DE-588)4128130-5 (DE-588)4116521-4 (DE-588)4116522-6 |
title | Writing scientific software a guide for good style |
title_auth | Writing scientific software a guide for good style |
title_exact_search | Writing scientific software a guide for good style |
title_exact_search_txtP | Writing scientific software a guide for good style |
title_full | Writing scientific software a guide for good style Suely Oliveira and David E. Stewart |
title_fullStr | Writing scientific software a guide for good style Suely Oliveira and David E. Stewart |
title_full_unstemmed | Writing scientific software a guide for good style Suely Oliveira and David E. Stewart |
title_short | Writing scientific software |
title_sort | writing scientific software a guide for good style |
title_sub | a guide for good style |
topic | Engenharia de software larpcal Génie logiciel Logiciels - Développement Projeto de software larpcal Sciences - Informatique Sciences - Logiciels Datenverarbeitung Naturwissenschaft Computer software Development Science Software Science Data processing Software engineering Programmierung (DE-588)4076370-5 gnd Wissenschaftliches Rechnen (DE-588)4338507-2 gnd Numerisches Verfahren (DE-588)4128130-5 gnd Software Engineering (DE-588)4116521-4 gnd Softwareentwicklung (DE-588)4116522-6 gnd |
topic_facet | Engenharia de software Génie logiciel Logiciels - Développement Projeto de software Sciences - Informatique Sciences - Logiciels Datenverarbeitung Naturwissenschaft Computer software Development Science Software Science Data processing Software engineering Programmierung Wissenschaftliches Rechnen Numerisches Verfahren Software Engineering Softwareentwicklung |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014876465&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT oliveirasuely writingscientificsoftwareaguideforgoodstyle AT stewartdavid writingscientificsoftwareaguideforgoodstyle |