.Net پلتفرم آينده مايکروسافت براي نسل آينده نرم افزارها است که جهان آکنده از اطلاعات و مردم آن را در يک قالب واحد متصل ميکند..NET ما را قادر مي سازد تا بتوانيم برنامه هاي کاربردي و سرويس هاي اينترنتي خود را بر اساس XML طراحي کرده و به اين وسيله اطلاعات خود را به اشتراک گذاشته و مديريت کنيم.
![آشنايي با طراحي Microsoft .NET Framework](/userfiles/Article/1389/06esfand/06/00085921.JPG)
در نمودار بالا مهمترين لايه هاي Microsoft .NET را از سيستم عامل تا زبان هاي برنامه نويسي مشاهده مي کنيد.در پايين ترين لايه سيتم عامل ( Win32) را مي بينيد وسپس CLR.
CLR و فوايد آن:
CLR کدها را در زمان اجرا مديريت ميکند (مانند مديريت حافظه و thread ها و همچنين کنترل سازگاري انواع Type هاي بکاررفته در کد). به کدهايي که براي اجرا در CLR نوشته شده اند Managed Code و در غير اين صورت Unmanaged Code گفته مي شود.
1)امنيت: هر Managed Component درجه اي از مجوزها را داراست به اين معني که آيا اين Component مي تواند به فايل دسترسي پيدا کند يا خير/مي تواندبه رجيستري دسترسي پيدا کند يا خير/...براي مثال کاربران ميتوانند مطمئن باشند که فايل اجرايي که در يک صفحه Web قرار داده شده غير از اجرا کردن يک موسيقي يا تصوير متحرک هيچ حق ديگري ندارد.
2)Common Type System (CTS) :compiler هاي زبان هاي مختلف که براي .NET طراحي شده اند با CTS مطابقت دارند.اين امر در سازگاري زبان هاي برنامه نويسي تحت .NET با يکديگر تاثير بسزايي دارد. ( منظور از اين سازگاري اين است که با استفاده از هر زبان برنامه نويسي تحت .NET ميتوانيم به ساير component هاي نوشته شده توسط اين زبان ها دسترسي پيدا کنيم)
![آشنايي با طراحي Microsoft .NET Framework](/userfiles/Article/1389/06esfand/06/00085922.JPG)
3)مستقل از پلتفرم ( Platform Independence): وقتي شما با يکي از زبان هاي .NET يک فايل exe يا DLL توليد مي کنيد.اين فيل در فرمت Executable نيست در عوض در فرمت MSIL
( Microsoft Intermediate Language) ميباشد. اين فايل در زمان اجرا يا در زماني که برنامه براي اولين بار نصب ميشود به فرمت ذاتي سيتم عامل ( OS Native Code) کامپايل مي شود.اين خاصيت علاوه بر دارا بودن مزيت Platform Independence سبب افزايش کارايي نيز ميشود.
عمليات کامپايل توسطJIT Compiler ( Just In Time) انجام ميشود.
![آشنايي با طراحي Microsoft .NET Framework](/userfiles/Article/1389/06esfand/06/00085923.JPG)
از ديگر فوايد تبديل Code ها به Microsoft Intermediate Language سازگاري بين زبان هاي تحت .NET با يکديگر ( Language Interoperability) مي باشد.
XML ( eXtensible Markup Language):
XML يک زبان استاندارد شده براي انتقال اطلاعات مي باشد اين اطلاعات مي توانند ازهر برنامه به برنامه ديگر يا از يک کامپيوتربه کامپيوتر ديگر انتقال يابند.
XML چيزي جز متن ساده در يک قالب مشخص نيست ( XML از نوع Binary نمي باشد) بنابراين ميتوان آن را به سادگي از طريق هر پروتکلي ( مانند http و email ) و بدون مزاحمت Firewall ها انتقال داد.
XML Web Service:
فرض کنيد برنامه شما بايد از component هايي استفاده کند که روي اينترنت يا يک انترانت محلي قرار داده شده است.در واقع قسمتي از برنامه روي شبکه اي قرار داده شده که دسترسي به آن از طريق پروتکل http ممکن است.XML Web Service اين نياز شما را پاسخ مي دهد.توسط XML Web Service شما پارامترهاي مورد نظر را در قالب SOAP ( Simple Access Object Protocol) که خود نوعي بسط از XML مي باشد به Service Provider فرستاده و جواب را در همين قالب دريافت مي کنيد.
![آشنايي با طراحي Microsoft .NET Framework](/userfiles/Article/1389/06esfand/06/00085924.JPG)
ADO.NET ( Activex Data Object) . NET:
کار کردن با پايگاه هاي داده مدت هاست که بر اساس مدل Connection Base مي باشد.اين در حالي است که اين مدل در بسياري از موارد نمي تواند برطرف کننده نيازهاي برنامه هاي کاربردي وسرويس هاي امروزي باشد.
ADO.NET براساس مدل Disconnect طراحي شده است.براي رسيدن به اين مدل ADO.NET از قدرت XML استفاده ميکند. Component هاي مربوط به ADO.NET و XML در .NET Framework بطورکامل يکپارچه هستند.در اين ساختار ADO.NET و XML هر دو به شي Dataset ختم مي شوند. Dataset يک شي مقيم در حافظه ( memory-resident) مي باشد که يک مدل برنامه نويسي کامل را براي مديريت اطلاعات بدون ارتباط با Data source ارايه مي کند. قالب اصلي Dataset ، XML ميباشد و مي تواند از هر منبع XML پر شود.عنصر مورد استفاده در .NET براي اينکه ما بتوانيم Dataset را از بانک هاي اطلاعاتي مختلف پر کنيم DataProvider مي باشد.
چون قالب Dataset ، XML مي باشد بنابراين مي تواند يک انتخاب بهينه براي فرستادن به و مصرف اطلاعات از يک XML Web Service باشد.
![آشنايي با طراحي Microsoft .NET Framework](/userfiles/Article/1389/06esfand/06/00085925.JPG)
منابع:
ASP.NET Developer Jump Start
VB.NET Developer Guide
.Net Documentation
http://msdn.microsoft.com ارسال توسط کاربر : sm1372 /ج