|
|
London .NET User Group:Push LINQ: Watching Data Fly By
Push LINQ: Watching Data Fly By
In this session Jon Skeet, author of Manning's C# In Depth, explains the "Push LINQ" framework he developed with Marc Gravell.
The "standard" LINQ to Objects is based on IEnumerable, involving the consumer "pulling" data from a supplier. This works very well in many cases, but has some unfortunate consequences when many consumers are interested in the same data, or when a producer wishes to push data selectively from a single source to different consumers.
Push LINQ is based on observers subscribing to events to see data as it's produced. This enables multiple aggregates to be computed with a single pass through the data, as well as allowing data to be fully streamed in cases which might otherwise require buffering.
Review:
Jon Skeet reveals the Push LINQ framework that he and Marc Gravell have developed to provide a solution for a familiar issue of traversing data stored in a linked list whilst having an efficient implementation for pulling such data without the need for more than one traversal. Jon begins with the explanation of how his framework operates, via user interaction; he provides a solid foundation of understanding for viewers to translate his ideas into the C# code behind the ideas. He outlines the advantages and limitations of his framework, such as allowing multiple aggregates to be computed with single traversals through potentially large amount of streaming data and inability to direct such data to multiple consumers. Although currently Jon and Marc’s framework may appear to have few real world applications, it is certainly very promising - especially if the ability to use multiple consumers is implemented.
Review by Jim Li
ABOUT JON SKEET
|
Jon Skeet is a C# and Java developer currently working at Google in the UK. For many years he has been a frequent poster in technical newsgroups, and has been awarded as a C# MVP by Microsoft since 2003...
More about Jon Skeet
|
|
PODCAST PUSH LINQ: WATCHING DATA FLY BY
|
|
|
OPEN SOURCE .NET PODCASTS
|
OTHER OPEN SOURCE .NET EVENTS
|
London .NET User Group
FREE EVENT:
Functional and OO Approaches t
London, Wednesday, March 31st
|
|
Persistence with NHibernate
3 DAY COURSE. Featuring Oren Eini aka Ayende Rahien London, Monday, April 26th
|
|
Introduction into Raven DB
FREE EVENT:
In The Brain of Oren Eini aka Ayende Rahien
London, Wednesday, April 28th
|
|
London F-Sharp User Group
FREE EVENT:
F-Sharp Numerical Optimization
London, Thursday, April 29th
|
|
Robert Pickering's Beginning F# Workshop
2 DAY COURSE. Featuring Robert Pickering London, Monday, May 10th
|
|
Progressive .NET Tutorials
CONFERENCE (3 DAYS)
London, Wednesday, May 12th
BOOK NOW!
|
|
Persistence with NHibernate
3 DAY COURSE. Featuring Oren Eini aka Ayende Rahien London, Monday, May 17th
|
|
Agile Castle Web Development
2 DAY COURSE. Paris, Tuesday, May 18th
|
|
|
|