Thinking in LINQ: Harnessing the Power of Functional Programming in .NET Applications

By Sudipta Mukherjee

LINQ represents a paradigm shift for builders used to an imperative/object orientated programming sort, simply because LINQ attracts on practical programming rules. Thinking in LINQ addresses the diversities among those through offering a suite of succinct recipes prepared in different teams, together with:

  • Basic and prolonged LINQ operators
  • Text processing
  • Loop refactoring
  • Monitoring code health and wellbeing
  • Reactive Extensions (Rx.NET)
  • Building domain-specific languages

Using the universal "recipes" procedure, Thinking in LINQ indicates you the way to method development LINQ-based options, how such options are assorted from what you know, and why they’re higher. The recipes hide quite a lot of real-world difficulties, from utilizing LINQ to interchange latest loops, to writing your individual Swype-like keyboard access workouts, to discovering replica documents in your hard disk. The target of those recipes is to get you "thinking in LINQ," so that you can use the innovations on your personal code to write down extra effective and concise data-intensive applications.

Show description

Preview of Thinking in LINQ: Harnessing the Power of Functional Programming in .NET Applications PDF

Best Programming books

Joe Celko's SQL for Smarties: Advanced SQL Programming Third Edition (The Morgan Kaufmann Series in Data Management Systems)

SQL for Smarties was once hailed because the first booklet dedicated explicitly to the complicated ideas had to rework an skilled SQL programmer into a professional. Now, 10 years later and within the 3rd version, this vintage nonetheless reigns best because the ebook written by means of an SQL grasp that teaches destiny SQL masters.

Designing Audio Effect Plug-Ins in C++: With Digital Audio Signal Processing Theory

Not only one other theory-heavy electronic sign processing publication, nor one other uninteresting build-a-generic-database programming ebook, Designing Audio impact Plug-Ins in C++ grants every little thing you every little thing you want to comprehend to do exactly that, together with totally labored, downloadable code for dozens audio influence plug-ins and virtually offered algorithms.

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

“Every C++ specialist wishes a duplicate of potent C++. it really is an absolute must-read for an individual taking into consideration doing severe C++ improvement. If you’ve by no means learn potent C++ and also you imagine you recognize every thing approximately C++, re-evaluate. ”— Steve Schirripa, software program Engineer, Google “C++ and the C++ neighborhood have grown up within the final fifteen years, and the 3rd version of powerful C++ displays this.

Cocoa Design Patterns

“Next time a few child indicates up at my door soliciting for a code evaluate, this is often the ebook that i'm going to throw at him. ”   –Aaron Hillegass, founding father of titanic Nerd Ranch, Inc. , and writer of Cocoa Programming for Mac OS X   Unlocking the secrets and techniques of Cocoa and Its Object-Oriented Frameworks   Mac and iPhone builders are usually crushed by way of the breadth and class of the Cocoa frameworks.

Extra resources for Thinking in LINQ: Harnessing the Power of Functional Programming in .NET Applications

Show sample text content

FullName, NumberOfParameters = d. GetParameters(). Count()} ) . the place (d => d. NameSpace=="System. Linq") . OrderByDescending (d => d. NumberOfParameters ) . Take(20) . Dump(); The previous code generates the output proven in determine 7-10. determine 7-10. the pinnacle 20 equipment looked after by means of the variety of arguments they take 163 CHAPTER 7 N STATIC CODE research the way it Works the reason for this instance is the same to its predecessors. The code first makes a projection, after which kinds it in descending order in accordance with the variety of parameters, delivering a listing of the main complicated equipment in each one namespace. to save lots of house, i've got constrained the output to just 20 equipment. to work out the complete record, eliminate the Take(20) name. precis during this bankruptcy, you’ve noticeable a number of examples of ways you should use LINQ to mirrored image to quick locate info and achieve insights right into a code base. those examples may also help illustrate so that you can use LINQ to question basically any facts. Code is mostly thought of break away facts, yet through the use of LINQ, you could deal with code itself as info. along with exhibiting the best way to use LINQ to mirrored image, the examples during this bankruptcy exemplify a number of idiomatic LINQ usages—for instance, projecting through construction of a look up. the following bankruptcy follows up at the concept of LINQ as a general-purpose software to accomplish scripting-like exploratory info research. 164 CHAPTER eight Exploratory information research Generalization is a really strong proposal whilst utilized thoroughly. for instance, in MATLAB even the main trivial addition is played as a matrix addition. information is available in many codecs. often those codecs should not prepared for research, so programmers, researchers, and information scientists usually have to write loads of data-wrangling code to get the information right into a worthy shape. notwithstanding, LINQ has replaced the best way programmers have interaction with facts. LINQ works at the generalization that facts is a list—of anything. for instance, you could consider a database desk as a listing of rows, an XML dossier as a listing of nodes, a CSV dossier as a listing of comma-delimited string arrays, etc. Exploratory facts research quite often starts off with a collection of questions after which attempts to procure solutions through analyzing the on hand information. occasionally this can be performed simply by discovering information, yet different occasions plotting info is helping locate developments or examine values. In a few of the examples during this bankruptcy, one can find facts visualizations that symbolize the findings in a concise demeanour. This method usually results in insights that transcend the preliminary solutions to questions. you can find examples of utilizing LINQ to investigate information and locate such insights. for every challenge awarded the following, a number of questions might be posed, after which you’ll see instance LINQ queries which could locate the solutions to these questions. alongside the way in which, you might want to choose up a few important LINQ idioms that i am hoping are basic sufficient to use for your personal information research difficulties. nameless kinds and nameless equipment will play an incredible function in many of the queries during this bankruptcy. 8-1. reading the colossal Survivors Dataset The gigantic dataset is a CSV dossier containing the checklist of passengers and their survival prestige.

Download PDF sample

Rated 4.99 of 5 – based on 38 votes