Effective C#: 50 specific ways to improve your C#
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Upper Saddle River, NJ ; Munich [u.a.]
Addison-Wesley
2010
|
Ausgabe: | 2. ed. |
Schriftenreihe: | Effective software development series
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | Includes index |
Beschreibung: | XVIII, 328 S. |
ISBN: | 9780321658708 0321658701 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV036461951 | ||
003 | DE-604 | ||
005 | 00000000000000.0 | ||
007 | t | ||
008 | 100520s2010 |||| 00||| eng d | ||
020 | |a 9780321658708 |9 978-0-321-65870-8 | ||
020 | |a 0321658701 |9 0-321-65870-1 | ||
024 | 3 | |a 9780321658708 | |
035 | |a (OCoLC)699662114 | ||
035 | |a (DE-599)BSZ32212333X | ||
040 | |a DE-604 |b ger | ||
041 | 0 | |a eng | |
049 | |a DE-11 |a DE-523 |a DE-2174 | ||
082 | 0 | |a 005.13/3 | |
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
100 | 1 | |a Wagner, Bill |e Verfasser |0 (DE-588)139283307 |4 aut | |
245 | 1 | 0 | |a Effective C# |b 50 specific ways to improve your C# |c Bill Wagner |
250 | |a 2. ed. | ||
264 | 1 | |a Upper Saddle River, NJ ; Munich [u.a.] |b Addison-Wesley |c 2010 | |
300 | |a XVIII, 328 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Effective software development series | |
500 | |a Includes index | ||
650 | 4 | |a C# Computer program language | |
650 | 4 | |a Database management | |
650 | 4 | |a Microsoft .NET | |
650 | 0 | 7 | |a C sharp 4.0 |0 (DE-588)7683323-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a C sharp |0 (DE-588)4616843-6 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a C sharp |0 (DE-588)4616843-6 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a C sharp 4.0 |0 (DE-588)7683323-9 |D s |
689 | 1 | |8 1\p |5 DE-604 | |
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=020333825&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-020333825 | ||
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk |
Datensatz im Suchindex
_version_ | 1804142953809051648 |
---|---|
adam_text | Titel: Effective C#
Autor: Wagner, Bill
Jahr: 2010
Contents
Introduction xiii
Chapter 1 C# Language Idioms 1
Item 1: Use Properties Instead of Accessible Data Members 1
Item 2: Prefer r e adonly to c ons t 8
Item 3: Prefer the is or as Operators to Casts 12
Item 4: Use Conditional Attributes Instead of #if 20
Item 5: Always Provide ToStringQ 28
Item 6: Understand the Relationships Among the Many Different
ConceptsofEquality 36
Item 7: Understand the Pitfalls of GefHashCodef) 44
Item 8: Prefer Query Syntax to Loops 51
Item 9: Avoid Conversion Operators in Your APIs 56
Item 10: Use Optional Parameters to Minimize Method Overloads 60
Item 11: Understand the Attraction of Small Functions 64
Chapter 2 .NET Resource Management 69
Item 12: Prefer Member Initializers to Assignment Statements 74
Item 13: Use Proper Imtialization for Static Class Members 77
Item 14: Minimize Duplicate Initialization Logic 79
Item 15: Utilize using and try/f inally for Resource Cleanup 87
Item 16: Avoid Creating Unnecessary Objects 94
Item 17: Implement the Standard Dispose Pattern 98
Item 18: Distinguish Between Value Types and Reference Types 104
Item 19: Ensure That 0 Is a Valid State for Value Types 110
Item 20: Prefer Immutable Atornk Value Types 114
Chapter 3 Expressing Designs in C# 125
Item 21: Limit Visibility of Your Types 126
Item 22: Prefer Defining and Impiementing Interfaces to Inheritance 129
Item 23: Understand How Interface Methods Differ firom Virtual
Methods 139
Item 24: Express Cailbacks with Delegat« 143
Item 25: Implement the Event Pattern for Notiications 146
Item 26: Avoid Returaing References to Internal Class Objects 154
XI
xil Contents
Item 27: Prefer Making Your Types Serializable 157
Item 28: Create Large-Grain Internet Service APIs 166
Item 29: Support Generic Covariance and Contravariance 171
Chapter 4 Working with the Framework 179
Item 30: Prefer Overridesto Event Handlers 179
Item 31: Implement Ordering Relations with IComparable T and
IComparer T 183
Item 32: Avoid ICioneable 190
Item 33*. Use the new Modifier Only to React to Base Class Updates 194
Item 34: Avoid Overloading Methods Defined in Base Classes 198
Item 35: Learn How PLINQ Implements Parallel Algorithms 203
Item 36: Understand How to Use PLINQ for I/O Bound Operations 215
Item 37: Construct Parallel Algorithms with Exceptions in Mind 220
Chapter 5 Dynamic Programming in C# 227
Item 38: Understand the Pros and Consof Dynamic 227
Item 39: Use Dynamic to Leverage the Runtime Type of Generic
Type Parameters 236
Item 40: Use Dynamic for Parameters ThatReceiveAnonymous Types 239
Item 41: Use DynamicObject or IDynamicMetaObjectProvider for
Data-Driven Dynamic Types 243
Item 42: Understand How to Make Use of the Expression API 254
Item 43: Use Expressions to Transform Late Binding into Early Binding 261
Item 44: Minimize Dynamic Objects in Public APIs 267
Chapter 6 Miscetlaneous 275
Item 45: Minimize Boxing and Unboxing 275
Item 46: Create Complete Appiication-Specific Exception Classes 279
Item 47: Prefer the Strong Exception Guarantee 284
Item 48: Prefer Safe Code 294
Item 49: Prefer CLS-Compliant Assemblies 298
Item 50: Prefer Srnaler, Cohesive Assemblies 303
index 309
|
any_adam_object | 1 |
author | Wagner, Bill |
author_GND | (DE-588)139283307 |
author_facet | Wagner, Bill |
author_role | aut |
author_sort | Wagner, Bill |
author_variant | b w bw |
building | Verbundindex |
bvnumber | BV036461951 |
classification_rvk | ST 250 |
ctrlnum | (OCoLC)699662114 (DE-599)BSZ32212333X |
dewey-full | 005.13/3 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.13/3 |
dewey-search | 005.13/3 |
dewey-sort | 15.13 13 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 2. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01725nam a2200469 c 4500</leader><controlfield tag="001">BV036461951</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">00000000000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">100520s2010 |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780321658708</subfield><subfield code="9">978-0-321-65870-8</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0321658701</subfield><subfield code="9">0-321-65870-1</subfield></datafield><datafield tag="024" ind1="3" ind2=" "><subfield code="a">9780321658708</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)699662114</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BSZ32212333X</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-11</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-2174</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.13/3</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Wagner, Bill</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)139283307</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Effective C#</subfield><subfield code="b">50 specific ways to improve your C#</subfield><subfield code="c">Bill Wagner</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">2. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Upper Saddle River, NJ ; Munich [u.a.]</subfield><subfield code="b">Addison-Wesley</subfield><subfield code="c">2010</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVIII, 328 S.</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">Effective software development series</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Includes index</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">C# Computer program language</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Database management</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Microsoft .NET</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C sharp 4.0</subfield><subfield code="0">(DE-588)7683323-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C sharp</subfield><subfield code="0">(DE-588)4616843-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">C sharp</subfield><subfield code="0">(DE-588)4616843-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">C sharp 4.0</subfield><subfield code="0">(DE-588)7683323-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</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=020333825&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-020333825</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></record></collection> |
id | DE-604.BV036461951 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T22:39:58Z |
institution | BVB |
isbn | 9780321658708 0321658701 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-020333825 |
oclc_num | 699662114 |
open_access_boolean | |
owner | DE-11 DE-523 DE-2174 |
owner_facet | DE-11 DE-523 DE-2174 |
physical | XVIII, 328 S. |
publishDate | 2010 |
publishDateSearch | 2010 |
publishDateSort | 2010 |
publisher | Addison-Wesley |
record_format | marc |
series2 | Effective software development series |
spelling | Wagner, Bill Verfasser (DE-588)139283307 aut Effective C# 50 specific ways to improve your C# Bill Wagner 2. ed. Upper Saddle River, NJ ; Munich [u.a.] Addison-Wesley 2010 XVIII, 328 S. txt rdacontent n rdamedia nc rdacarrier Effective software development series Includes index C# Computer program language Database management Microsoft .NET C sharp 4.0 (DE-588)7683323-9 gnd rswk-swf C sharp (DE-588)4616843-6 gnd rswk-swf C sharp (DE-588)4616843-6 s DE-604 C sharp 4.0 (DE-588)7683323-9 s 1\p DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=020333825&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 |
spellingShingle | Wagner, Bill Effective C# 50 specific ways to improve your C# C# Computer program language Database management Microsoft .NET C sharp 4.0 (DE-588)7683323-9 gnd C sharp (DE-588)4616843-6 gnd |
subject_GND | (DE-588)7683323-9 (DE-588)4616843-6 |
title | Effective C# 50 specific ways to improve your C# |
title_auth | Effective C# 50 specific ways to improve your C# |
title_exact_search | Effective C# 50 specific ways to improve your C# |
title_full | Effective C# 50 specific ways to improve your C# Bill Wagner |
title_fullStr | Effective C# 50 specific ways to improve your C# Bill Wagner |
title_full_unstemmed | Effective C# 50 specific ways to improve your C# Bill Wagner |
title_short | Effective C# |
title_sort | effective c 50 specific ways to improve your c |
title_sub | 50 specific ways to improve your C# |
topic | C# Computer program language Database management Microsoft .NET C sharp 4.0 (DE-588)7683323-9 gnd C sharp (DE-588)4616843-6 gnd |
topic_facet | C# Computer program language Database management Microsoft .NET C sharp 4.0 C sharp |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=020333825&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT wagnerbill effectivec50specificwaystoimproveyourc |