۱- همه چیز Strongly Typed است در نتیجه بسیاری از خطاها در همان زمان کامپایل کشف میشوند نه در زمان اجرا. مثلا فرض کنید یک کوئری SQL را به صورت استرینگ در داخل کد سیشارپ به کار بردهاید. اگر این کوئری ایرادی داشته باشد تا زمان اجرا (Runtime) مشخص نخواهد شد. چون کامپایلر سیشارپ محتوای داخل استرینگها را مورد بررسی قرار نمیدهد.
۲- با کمک LINQ میتوان کار با SQL، XML و غیره را در هم آمیخته و مقدار زیادی در نوشتن کد صرفه جویی کرد. مثلا میشود یک کوئری LINQ برای استخراج اطلاعات از SQL Server نوشته و در دل همان کوئری یک XML هم ساخت.
۳- کدهای LINQ خواناتر و «قابل نگهداریتر» از کدهای SQL، HQL، NHibernate Criteria و غیره میباشد.
۴- با یادگیری فقط یک زبان/فناوری به اسم LINQ میتوان از یادگیری چندین زبان/فناوری/API از جمله XML DOM، SQL، NHibernate Criteria و… خلاص شد.
۵-…
پ.ن.۱: برای یادگیری LINQ توصیه میکنم از کتاب Manning LINQ in Action استفاده کنید.
پ.ن.۲: برای آشنایی اولیه با LINQ و زیباییهای آن از وبلاگ وحید نصیری استفاده فرمایید.
پ.ن.۳: LINQ از نسخه ۳٫۵ به داتنت فریمورک اضافه شده است.
پ.ن.۴: مدتی است که LINQ to NHibernate نیز عرضه شده و مورد استفاده دوستان میباشد.
![](http://img.zemanta.com/pixy.gif?x-id=4eda545d-5b2e-8f80-9713-4b27e020c603)
Comments
این تکنولوژی LINQ خیلی باحاله
با تشکر
موافقم گرچه در برخورد اول کنار آمدن با روش ها و سینتکس های عجیب و غریب آن کمی سخته اما واقعا در دراز مدت و در کارهای بزرگ ارزشش مشخص میشه
چند تا تکنلوژی هست که اگه کسی الان بلد نباشه میشه گفت از دنیای دات نت یه قدم عقبه که این ها هستند ( ترتیبش مهم نیست ) :
1 – LINQ
2 – EF or L2S or NHibernate
3 – WCF
4 – WPF and SL
یه چیز مهم دیگه هم Design Pattern ها هستند.
واقعا بدون این ها برنامه نویسی زیباییش کم میشه.