دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Kit Eason
سری:
ISBN (شابک) : 9781484240007
ناشر: Apress
سال نشر: 2018
تعداد صفحات: 403
زبان: english
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 3 مگابایت
در صورت تبدیل فایل کتاب Stylish F#. Crafting elegant functional Code for .NET and .NET Core به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب F# شیک. ایجاد کدهای کاربردی زیبا برای دات نت و هسته دات نت نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Contents......Page 3
Intro......Page 12
Why a Style Guide?......Page 14
Good Guidance from Bad Code......Page 15
Comple xity Explosions......Page 21
Summary......Page 22
Miles and Yards (No, Really!)......Page 23
How to Design a Function......Page 25
A Final Polish......Page 34
Summary......Page 36
Exercises......Page 37
Exercise Solutions......Page 38
A Brief History of Null......Page 41
Option Types versus Null......Page 44
Consuming Option Types......Page 46
Option Type No-Nos......Page 55
Designing Out Missing Data......Page 56
Interoperating with the Nullable World......Page 59
The ValueOption Type......Page 66
Recommendations......Page 67
Exercises......Page 68
Exercise Solutions......Page 70
Anatomy of a Collection Function......Page 72
Picking the Right Collection Function......Page 75
Detailed Collection Function Tables......Page 77
Practicing with Collection Functions......Page 83
P artial Functions......Page 91
Try… Function Exercises......Page 97
Functions for Other Kinds of Collections......Page 98
When the Collection Function Is Missing......Page 99
Common Mistakes......Page 100
Recommendations......Page 104
Exercise Solutions......Page 105
Classic Mutable Style......Page 110
Immutability Basics......Page 112
Common Mutable Patterns......Page 114
Recommendations......Page 125
Summary......Page 126
Exercises......Page 127
Exercise Solutions......Page 128
Pattern Matching Basics......Page 130
Pattern Matching on Arrays and Lists......Page 133
Pattern Matching on Tuples......Page 136
Pattern Matching on Records......Page 137
Pattern Matching on Discriminated Unions......Page 139
Pattern Matching on DUs in Function Parameters......Page 141
Pattern Matching in Let Bindings......Page 143
Pattern Matching in Loops and Lambdas......Page 144
Pattern Matching and Enums......Page 146
Active Patterns......Page 148
Pattern Matching with ‘&’......Page 154
Pattern Matching on Types......Page 155
Pattern Matching on Null......Page 157
Recommendations......Page 158
Summary......Page 160
Exercises......Page 161
Exercise Solutions......Page 163
Record Type Basics......Page 167
Record Types and Immutability......Page 168
Default Constructors, Setters, and Getters......Page 170
Records versus Classes......Page 171
Records Everywhere?......Page 178
Pushing Records to the Limit......Page 179
Record Layout......Page 185
Recommendations......Page 187
Exercises......Page 188
Exercise Solutions......Page 190
Asymmetric Representation......Page 193
Constructor Bodies......Page 195
V alues as Members......Page 197
Getters and Setters......Page 198
Additional Constructors......Page 199
Explicit Getters and Setters......Page 200
Internal Mutable State......Page 202
Generic Classes......Page 203
Named Parameters and Object Initializer Syntax......Page 206
Inde xed Properties......Page 208
Interf aces......Page 212
Object Expressions......Page 217
Abstract Classes......Page 220
Class Equality and Comparison......Page 223
Recommendations......Page 231
Summar y......Page 232
Exercises......Page 233
Exercise Solutions......Page 235
Functions as Values......Page 238
Currying and Partial Application......Page 240
Mixing Tupled and Curried Styles......Page 242
Function Signatures Revisited......Page 244
Type Hints for Functions......Page 245
Functions That Return Functions......Page 247
Function Composition......Page 249
Recommendations......Page 252
Exercises......Page 253
Exercise Solutions......Page 256
Ordering Pizza......Page 260
A World Without Async......Page 261
Running the Synchronous Downloader......Page 267
Converting Code to Asynchronous......Page 268
Locking Shared Resources......Page 274
Testing Asynchronous Downloads......Page 275
Batching......Page 276
Throttling......Page 280
C# Task versus F# Async......Page 283
Recommendations......Page 285
Summar y......Page 286
Exercises......Page 287
Exercise Solutions......Page 288
Going Off the Rails......Page 291
On the Factory Floor......Page 292
Adapting Functions for Failure......Page 296
Writing a Bypass Adapter......Page 297
Building the Production Line......Page 298
Making It Official......Page 303
Love Your Errors......Page 304
Recommendations......Page 308
Summary......Page 309
Exercises......Page 310
Exercise Solutions......Page 313
Design Is Compromise......Page 316
BenchmarkDotNet......Page 317
Case Study: Inappropriate Collection Types......Page 319
Case Study: Short-Term Objects......Page 331
Case Study: Naive String Building......Page 343
Other Common Performance Issues......Page 350
The Importance of Tests......Page 351
Recommendations......Page 353
Exercises......Page 354
Exercise Solutions......Page 356
Where Are My Braces?......Page 358
It’s Okay Pluto, I’m Not a Planet Either......Page 359
Some Infelicitous Code......Page 361
Convenience Functions......Page 365
Column Extraction Functions......Page 366
The Observation Range Type......Page 368
The Importance of Alignment......Page 371
The Minor Planet Type......Page 373
Recommendations......Page 380
Summar y......Page 381
Exercise Solution......Page 382
Designing Functions with Types......Page 384
Collection Functions......Page 385
Record Types......Page 386
Programming with Functions......Page 387
Asynchronous and Parallel Programming......Page 388
P erformance......Page 389
Onwards!......Page 390
Index......Page 392