Refactoring: improving the design of existing code
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Boston [u.a.]
Addison-Wesley
2010
|
Ausgabe: | 24. print. |
Schriftenreihe: | The Addison-Wesley object technology series
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XXI, 431 S. Ill., graph. Darst. |
ISBN: | 0201485672 9780201485677 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV037370097 | ||
003 | DE-604 | ||
005 | 20110505 | ||
007 | t | ||
008 | 110428s2010 xxuad|| |||| 00||| eng d | ||
020 | |a 0201485672 |9 0-201-48567-2 | ||
020 | |a 9780201485677 |9 978-0-201-48567-7 | ||
035 | |a (OCoLC)700430988 | ||
035 | |a (DE-599)BVBBV037370097 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
044 | |a xxu |c US | ||
049 | |a DE-739 | ||
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
100 | 1 | |a Fowler, Martin |d 1963- |e Verfasser |0 (DE-588)115868321 |4 aut | |
245 | 1 | 0 | |a Refactoring |b improving the design of existing code |c Martin Fowler |
250 | |a 24. print. | ||
264 | 1 | |a Boston [u.a.] |b Addison-Wesley |c 2010 | |
300 | |a XXI, 431 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a The Addison-Wesley object technology series | |
650 | 0 | 7 | |a Software |0 (DE-588)4055382-6 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Reengineering |0 (DE-588)4404560-8 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Java |g Programmiersprache |0 (DE-588)4401313-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Refactoring |0 (DE-588)4784343-3 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Programmtransformation |0 (DE-588)4263654-1 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Verbesserung |0 (DE-588)4309013-8 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Programmoptimierung |0 (DE-588)4191605-0 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Softwareentwicklung |0 (DE-588)4116522-6 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Design |0 (DE-588)4011510-0 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Software |0 (DE-588)4055382-6 |D s |
689 | 0 | 1 | |a Design |0 (DE-588)4011510-0 |D s |
689 | 0 | 2 | |a Verbesserung |0 (DE-588)4309013-8 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Programmtransformation |0 (DE-588)4263654-1 |D s |
689 | 1 | 1 | |a Programmoptimierung |0 (DE-588)4191605-0 |D s |
689 | 1 | |5 DE-604 | |
689 | 2 | 0 | |a Software |0 (DE-588)4055382-6 |D s |
689 | 2 | 1 | |a Reengineering |0 (DE-588)4404560-8 |D s |
689 | 2 | |8 1\p |5 DE-604 | |
689 | 3 | 0 | |a Refactoring |0 (DE-588)4784343-3 |D s |
689 | 3 | |8 2\p |5 DE-604 | |
689 | 4 | 0 | |a Softwareentwicklung |0 (DE-588)4116522-6 |D s |
689 | 4 | |8 3\p |5 DE-604 | |
689 | 5 | 0 | |a Java |g Programmiersprache |0 (DE-588)4401313-9 |D s |
689 | 5 | |8 4\p |5 DE-604 | |
856 | 4 | 2 | |m Digitalisierung UB Passau |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=022523459&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-022523459 | ||
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
883 | 1 | |8 2\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
883 | 1 | |8 3\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
883 | 1 | |8 4\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk |
Datensatz im Suchindex
_version_ | 1804145650832506880 |
---|---|
adam_text | Contents
Foreword
............................................ . xiii
Preface
................................................xv
What Is
Refactoring?
..............................xvi
What s in This Book?
.............................xvii
Who Should Read This Book?
......................xviii
Building on the Foundations Laid by Others
.............xix
Acknowledgments
.................................xix
Chapter
1:
Refactoring,
a First Example
.......................1
The Starting Point
.................................. 1
The First Step in
Refactoring
.......................... 7
Decomposing and Redistributing the Statement Method
..... 8
Replacing the Conditional Logic on Price Code
with Polymorphism
.............................. 34
Final Thoughts
................................... 52
Chapter
2:
Principles in
Refactoring
......................... 53
Defining
Refactoring
............................... 53
Why Should You
Refactor?
.......................... 55
When Should You
Refactor?
......................... 57
What Do I Tell My Manager?
........................ 60
Problems with
Refactoring
.......................... 62
Refactoring
and Design
.............................66
Refactoring
and Performance
........................69
Where Did
Refactoring Come
From?
..................71
Contents
Chapter
3:
Bad Smells in Code (by Kent Beck and Martin Fowler)
. . 75
Duplicated Code
................................. 76
Long Method
.................................... 76
Large Class
...................................... 78
Long Parameter List
............................... 78
Divergent Change
................................. 79
Shotgun Surgery
.................................. 80
Feature Envy
.................................... 80
Data Clumps
.................................... 81
Primitive Obsession
............................... 81
Switch Statements
................................ 82
Parallel Inheritance Hierarchies
...................... 83
Lazy Class
...................................... 83
Speculative Generality
............................. 83
Temporary Field
.................................. 84
Message Chains
.................................. 84
Middle Man
..................................... 85
Inappropriate Intimacy
............................. 85
Alternative Classes with Different Interfaces
............ 85
Incomplete Library Class
........................... 86
Data Class
...................................... 86
Refused Bequest
.................................. 87
Comments
...................................... 87
Chapter
4:
Building Tests
................................. 89
The Value of Self-testing Code
....................... 89
The JUnit Testing Framework
....................... 91
Adding More Tests
................................ 97
Chapter
5:
Toward a Catalog of Refactorings
................ 103
Format of the Refactorings
......................... 103
Finding References
............................... 105
How Mature Are These Refactorings?
................ 106
Chapter
6:
Composing Methods
........................... 109
Extract Method
.................................110
Inline Method
..................................117
Inline Temp
.....................................119
Replace Temp with Query
......................... 120
Introduce Explaining Variable
...................... 124
Split Temporary Variable
.......................... 128
Remove Assignments to Parameters
..................131
Replace Method with Method Object
................. 135
Substitute Algorithm
.............................. 139
Chapter
7:
Moving Features Between Objects
................. 141
Move Method
................................... 142
Move Field
..................................... 146
Extract Class
.................................... 149
Inline Class
..................................... 154
Hide Delegate
................................... 157
Remove Middle Man
............................. 160
Introduce Foreign Method
......................... 162
Introduce Local Extension
...................... ... 164
Chapter
8:
Organizing Data
...............................169
Self Encapsulate Field
.............................171
Replace Data Value with Object
.....................175
Change Value to Reference
......................... 179
Change Reference to Value
.........................183
Replace Array with Object
......................... 186
Duplicate Observed Data
.......................... 189
Change Unidirectional Association to Bidirectional
...... 197
Change Bidirectional Association to Unidirectional
...... 200
Replace Magic Number with Symbolic Constant
........ 204
Encapsulate Field
................................ 206
Encapsulate Collection
............................ 208
Replace Record with Data Class
..................... 217
Replace Type Code with Class
,...,.,.,,.,,,,,.,,,,.218
Replace Type Code with Subclasses
................. 223
Replace Type Code with State/Strategy
,,,,,,,,.,.,.,,, 227
Replace Subclass with Fields
........................ 232
Chapter
9:
Simplifying Conditional Expressions
............... 237
Decompose Conditional
........................... 238
Consolidate Conditional Expression
................. 240
Consolidate Duplicate Conditional Fragments
.......... 243
Remove Control Flag
............................. 245
Replace Nested Conditional with Guard Clauses
........ 250
Replace Conditional with Polymorphism
.............. 255
Introduce Null Object
............................ 260
Introduce Assertion
.............................. 267
Chapter
10:
Making Method Calls Simpler
.................. 271
Rename Method
................................. 273
Add Parameter
.................................. 275
Remove Parameter
............................... 277
Separate Query from Modifier
...................... 279
Parameterize Method
............................. 283
Replace Parameter with Explicit Methods
............. 285
Preserve Whole Object
............................ 288
Replace Parameter with Method
.................... 292
Introduce Parameter Object
........................ 295
Remove Setting Method
........................... 300
Hide Method
................................... 303
Replace Constructor with Factory Method
............ 304
Encapsulate Downcast
............................ 308
Replace Error Code with Exception
.................. 310
Replace Exception with Test
....................... 315
Chapter
11:
Dealing with Generalization
.................... 319
Pull Up Field
....____........................... 320
Pull Up Method
. .____....____................... 322
Pull Up Constructor Body
......................... 325
Push Down Method
.............................. 328
Push Down Field
.......____..................... 329
Extract Subclass
................................. 330
Extract Superclass
............................... 336
Extract Interface
................................. 341
Collapse Hierarchy
...............................344
Form Template Method
........................... 345
Replace Inheritance with Delegation
................. . 352
Replace Delegation with Inheritance
..................355
Chapter
12:
Big Refactorings (by Kent Beck and Martin Fowler)
. . 359
Tease Apart Inheritance
........................... 362
Convert Procedural Design to Objects
................ 368
Separate Domain from Presentation
.................. 370
Extract Hierarchy
................................ 375
Chapter
13:
Refactoring,
Reuse, and
Reality (fry William Opdyke)
............................ 379
A Reality Check
................................. 380
Why Are Developers Reluctant to
Refactor
Their Programs?
............................... 381
A Reality Check (Revisited)
......................... 394
Resources and References for
Refactoring
.............. 394
Implications Regarding Software Reuse
and Technology Transfer
........................395
A Final Note
....................................397
References
......................................397
Chapter
14:
Refactoring
Tools {by Don Roberts and John Brant)
.. 401
Refactoring
with a Tool
...........................401
Technical Criteria for
a Refactoring Tool
.............. 403
Practical Criteria for
a Refactoring Tool
............... 405
Wrap Up
....................................... 407
Chapter
15:
Putting It All Together (by Kent Beck)
............. 409
References
............................................ 413
List of Soundbites
...................................... 417
Index
.................................„..„,..... = ,;.. 419
|
any_adam_object | 1 |
author | Fowler, Martin 1963- |
author_GND | (DE-588)115868321 |
author_facet | Fowler, Martin 1963- |
author_role | aut |
author_sort | Fowler, Martin 1963- |
author_variant | m f mf |
building | Verbundindex |
bvnumber | BV037370097 |
classification_rvk | ST 230 |
ctrlnum | (OCoLC)700430988 (DE-599)BVBBV037370097 |
discipline | Informatik |
edition | 24. print. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02845nam a2200673 c 4500</leader><controlfield tag="001">BV037370097</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20110505 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">110428s2010 xxuad|| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0201485672</subfield><subfield code="9">0-201-48567-2</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780201485677</subfield><subfield code="9">978-0-201-48567-7</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)700430988</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV037370097</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">xxu</subfield><subfield code="c">US</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-739</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="100" ind1="1" ind2=" "><subfield code="a">Fowler, Martin</subfield><subfield code="d">1963-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)115868321</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Refactoring</subfield><subfield code="b">improving the design of existing code</subfield><subfield code="c">Martin Fowler</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">24. print.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Boston [u.a.]</subfield><subfield code="b">Addison-Wesley</subfield><subfield code="c">2010</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XXI, 431 S.</subfield><subfield code="b">Ill., 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="490" ind1="0" ind2=" "><subfield code="a">The Addison-Wesley object technology series</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Software</subfield><subfield code="0">(DE-588)4055382-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Reengineering</subfield><subfield code="0">(DE-588)4404560-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Java</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4401313-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Refactoring</subfield><subfield code="0">(DE-588)4784343-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmtransformation</subfield><subfield code="0">(DE-588)4263654-1</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Verbesserung</subfield><subfield code="0">(DE-588)4309013-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmoptimierung</subfield><subfield code="0">(DE-588)4191605-0</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="650" ind1="0" ind2="7"><subfield code="a">Design</subfield><subfield code="0">(DE-588)4011510-0</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Software</subfield><subfield code="0">(DE-588)4055382-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Design</subfield><subfield code="0">(DE-588)4011510-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">Verbesserung</subfield><subfield code="0">(DE-588)4309013-8</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">Programmtransformation</subfield><subfield code="0">(DE-588)4263654-1</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Programmoptimierung</subfield><subfield code="0">(DE-588)4191605-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="2" ind2="0"><subfield code="a">Software</subfield><subfield code="0">(DE-588)4055382-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2="1"><subfield code="a">Reengineering</subfield><subfield code="0">(DE-588)4404560-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="3" ind2="0"><subfield code="a">Refactoring</subfield><subfield code="0">(DE-588)4784343-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="3" ind2=" "><subfield code="8">2\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="4" ind2="0"><subfield code="a">Softwareentwicklung</subfield><subfield code="0">(DE-588)4116522-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="4" ind2=" "><subfield code="8">3\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="5" ind2="0"><subfield code="a">Java</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4401313-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="5" ind2=" "><subfield code="8">4\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Passau</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=022523459&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-022523459</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">2\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">3\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">4\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield></record></collection> |
id | DE-604.BV037370097 |
illustrated | Illustrated |
indexdate | 2024-07-09T23:22:50Z |
institution | BVB |
isbn | 0201485672 9780201485677 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-022523459 |
oclc_num | 700430988 |
open_access_boolean | |
owner | DE-739 |
owner_facet | DE-739 |
physical | XXI, 431 S. Ill., graph. Darst. |
publishDate | 2010 |
publishDateSearch | 2010 |
publishDateSort | 2010 |
publisher | Addison-Wesley |
record_format | marc |
series2 | The Addison-Wesley object technology series |
spelling | Fowler, Martin 1963- Verfasser (DE-588)115868321 aut Refactoring improving the design of existing code Martin Fowler 24. print. Boston [u.a.] Addison-Wesley 2010 XXI, 431 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier The Addison-Wesley object technology series Software (DE-588)4055382-6 gnd rswk-swf Reengineering (DE-588)4404560-8 gnd rswk-swf Java Programmiersprache (DE-588)4401313-9 gnd rswk-swf Refactoring (DE-588)4784343-3 gnd rswk-swf Programmtransformation (DE-588)4263654-1 gnd rswk-swf Verbesserung (DE-588)4309013-8 gnd rswk-swf Programmoptimierung (DE-588)4191605-0 gnd rswk-swf Softwareentwicklung (DE-588)4116522-6 gnd rswk-swf Design (DE-588)4011510-0 gnd rswk-swf Software (DE-588)4055382-6 s Design (DE-588)4011510-0 s Verbesserung (DE-588)4309013-8 s DE-604 Programmtransformation (DE-588)4263654-1 s Programmoptimierung (DE-588)4191605-0 s Reengineering (DE-588)4404560-8 s 1\p DE-604 Refactoring (DE-588)4784343-3 s 2\p DE-604 Softwareentwicklung (DE-588)4116522-6 s 3\p DE-604 Java Programmiersprache (DE-588)4401313-9 s 4\p DE-604 Digitalisierung UB Passau application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=022523459&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis 1\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk 2\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk 3\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk 4\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk |
spellingShingle | Fowler, Martin 1963- Refactoring improving the design of existing code Software (DE-588)4055382-6 gnd Reengineering (DE-588)4404560-8 gnd Java Programmiersprache (DE-588)4401313-9 gnd Refactoring (DE-588)4784343-3 gnd Programmtransformation (DE-588)4263654-1 gnd Verbesserung (DE-588)4309013-8 gnd Programmoptimierung (DE-588)4191605-0 gnd Softwareentwicklung (DE-588)4116522-6 gnd Design (DE-588)4011510-0 gnd |
subject_GND | (DE-588)4055382-6 (DE-588)4404560-8 (DE-588)4401313-9 (DE-588)4784343-3 (DE-588)4263654-1 (DE-588)4309013-8 (DE-588)4191605-0 (DE-588)4116522-6 (DE-588)4011510-0 |
title | Refactoring improving the design of existing code |
title_auth | Refactoring improving the design of existing code |
title_exact_search | Refactoring improving the design of existing code |
title_full | Refactoring improving the design of existing code Martin Fowler |
title_fullStr | Refactoring improving the design of existing code Martin Fowler |
title_full_unstemmed | Refactoring improving the design of existing code Martin Fowler |
title_short | Refactoring |
title_sort | refactoring improving the design of existing code |
title_sub | improving the design of existing code |
topic | Software (DE-588)4055382-6 gnd Reengineering (DE-588)4404560-8 gnd Java Programmiersprache (DE-588)4401313-9 gnd Refactoring (DE-588)4784343-3 gnd Programmtransformation (DE-588)4263654-1 gnd Verbesserung (DE-588)4309013-8 gnd Programmoptimierung (DE-588)4191605-0 gnd Softwareentwicklung (DE-588)4116522-6 gnd Design (DE-588)4011510-0 gnd |
topic_facet | Software Reengineering Java Programmiersprache Refactoring Programmtransformation Verbesserung Programmoptimierung Softwareentwicklung Design |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=022523459&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT fowlermartin refactoringimprovingthedesignofexistingcode |