CHANNELS
HOME
TOP STORIES
COLUMNS
OPINIONS
ZEICHICK'S TAKE
EMBEDDED NEWS
TEST & QA REPORT
ECLIPSESOURCE
SPECIAL REPORTS
SD TIMES 100
JOB BOARD
EVENTS CALENDAR
RESOURCE CENTER
WEBINAR CENTER
ADVANCED SEARCH
RSS
ON THE WEB
SITE MAP
ADVERTISE
EDITORIAL
PRIVACY POLICY
CONTACT US
REPORT A BUG
PRINT EDITION
SUBSCRIBE NOW!
CURRENT ISSUE
BACK ISSUES
SUBSCRIBER SERVICES
BZ MEDIA
ABOUT US
NEWS
BZ RESEARCH
SYSMANNEWS
ST&P MAGAZINE
STPCON
ECLIPSEWORLD
ADVERTISER LINKS
activePDF
Alexsys
Altova
Amyuni Technologies
Automated QA
Axosoft
Business Objects
Codejock Software
ComponentOne
Coverity
Data Dynamics
Developer Express
dtSearch
Dundas
Dynamsoft
Hewlett-Packard
IBM
Imagix
Infragistics
InstallAware Software
InterSystems
iWay
Kovair
LEAD Technologies
McObject
Microsoft
MKS
No Magic
nsoftware
Parasoft
Pegasus Imaging Corp
Perforce
Prezza Technologies
Programmer's Paradise
Programming Research
Rally Software Dev
Red Gate Software
ScaleOut
Seapine
Serena
Software FX
Sparx Systems
Swell Software
Syncfusion
TechExcel
Telerik
UrbanCode
WANdisco
Xceed Software
LOADING...
LOADING...
AS OF 8/21/2008 6:34PM EST
Does .NET With LINQ Beat Java?
Framework's data query capabilities give it an edge, experts claim.
By
David Worthington
January 29, 2008 —
There is a question some developers are asking: Has LINQ given Microsofts latest .NET Framework an edge over Java? Industry experts say yes, but with some caveats.
Microsoft shipped Language Integrated Query as part of the .NET Framework 3.5 in November. LINQ was originally one of many research projects that the company has under way. LINQ integrates query concepts directly into .NET programming languages using a syntax that is similar to SQL, to simplify the querying of data, objects and XML.
Patrick Hynds, president of security consultancy CriticalSites, said that LINQ is an object-oriented revolution for data, because it, like object-oriented programming, allows programmers to write code that is more like the way people think.
Before LINQ, he explained, developers had to adapt to a particular programming languages precepts of the way data was organized and accessed. One of the key things that I found about Java is that it has been very comfortable to make the developer conform to what they [Sun and The Java Community Process executive committee] thought that the developer should use, Hynds noted, adding that Microsofts LINQ implementation deals with data in a more conversant way.
Hynds is a regional director of the Developer Platform evangelism group, volunteers recognized by Microsoft for technical expertise.
Other Options
RedMonk analyst Stephen O'Grady noted that while there may not currently be equivalent functionality within the Java platform, there are options for Java persistence that offer LINQ-like functionality, naming db4objects as an example.
Db4objects is an open-source object database for Java and .NET developers, which uses a technology called Native Query that can optimize native language constructs into queries, without relying on a particular languages syntactical extensions.
Jonathan Bruce, program manager for .NET technology group at DataDirect Technologies, and formerly JDBC specification lead and architect for the Java platform at Sun, said that developers are clearly excited about what Microsoft has come up with, but cautioned that it is not as original as they make it out to be.
LINQ, Bruce said, is elegantly packaged and tightly coupled with C# and Visual Basic, but called the notion of tightly coupling queries to languages nothing new, citing embedded SQL as an example.
Whats different is that they are neutralized the coupling between the query and data model, using the same query constructs against multiple data models, he added. It is a graceful part of the day-to-day programming language and easy to use with day-to-day programming models.
Another advantage, he said, is that LINQ takes the pain out of allowing query-based programming, and that instead of relying on databases, it is done programmatically. It is a big change for a lot of people, he conceded.
Enter the Caveats
DataDirects Bruce acknowledged that from a productivity point of view, LINQ combined with its tooling gives .NET shops a productivity advantage that the Java community cannot match. He credits Microsofts ability to package [productivity patterns and tooling] all up into something useful."
That said, he noted that LINQ is an unproven technology that is new to the market and said that he could not imagine anyone making corporate bets on LINQ just yet. On the Java side, data access is rounded and stable. As a technology officer, it is an easier bet to make [on] what will reduce risks from a data perspective, he explained.
Likewise, he noted that LINQ is highly static in nature, and that embedding queries within an application presents challenges to programming patterns. He explained that LINQ queries are tightly coupled to the source code and that LINQ makes it difficult to build dynamic queries.
There is a ways to go before LINQ has broad acceptance across the data access market, he said, adding that constructing more queries in a more dynamic manner is the next horizon for LINQ.
Bruce said that Java is making strides to answer LINQs progress by implementing scriptable languages such as Groovy and JRuby, making the platform more versatile by consuming functional languages that are written as scripts. He also cited the IBM JLINQ application framework as a worthwhile but poorly marketed attempt to answer the call of LINQ.
Another example is XQuery, a language designed to query XML data. XQuery, he said, does a better job with data from many venues because of XMLs flexibility. By contrast, he claimed, the current implementation of LINQ is very targeted to what the developer is querying and the ability to mash up data sources has not been delivered yet, Bruce explained.
He believes that a LINQ implementation combined with XQuery would enable Java to reposition [itself] strongly against what Microsoft has done. However, he added that the Java standards process could delay any Java-based alternative because Java platform technologies are only adopted if they become a formal part of it, or if the community reaches a tipping point, citing Hibernate as an example.
If anyone ever comes up with a LINQ implementation even close to Microsofts, he concluded, it will never be integrated into the platform as well as Microsoft LINQ, adding, it will always be an uphill battle to make an apples-to-apples comparison.
EMAIL THIS ARTICLE
SEND FEEDBACK
MORE TOP STORIES
 
SUBSCRIBE TODAY!
E-Newsletters:
News on Mon/Thurs.
Test & QA Report
EclipseSource
SUBMIT
 
JOB BOARD
PDF & PRINT EDITION
* Requires Resource Account! 
LOGIN
or
SIGN UP
*
Download Current Issue!
ISSUE 8/15/2008 PDF
*
Need Back Issues?
DOWNLOAD HERE
Receive The Print Edition?
SUBSCRIBE HERE
 
EVENTS CALENDAR
Business of Software 2008
9/3/2008 to 9/4/2008
Boston
Red Gate Software
VSLive New York
9/7/2008 to 9/10/2008
New York City
1105 Media
Interop New York
9/15/2008 to 9/19/2008
New York
TechWeb
VMworld 2008
9/15/2008 to 9/18/2008
Las Vegas
VMware
Mobile Business Expo
9/16/2008 to 9/19/2008
New York City
TechWeb
REGISTER
MORE EVENTS
GET NOTIFIED!
About all of the latest Resources
SD TIMES 100
6th Annual SD Times 100
It's time once again to
recognize the organizations
or individuals that have
demonstrated leadership in
their markets.