سالها است كه NET Framework به عنوان مهم ترین و جدید ترین فن­ آوری ساخت نرم­ افزار، مورد استفاده برنامه­ نویسان قرار می­گیرد، این چارچوب به منظور ایجاد یک محیط برنامه­ نویسی جدید برای توسعه هر نوع برنامه کاربردی روی ویندوز طراحی شده است. مطالب عنوان شده در این نوشتار، خصوصیات .NET Framework 3.5 را در بردارد.

مزایای NET

در این بخش ، برخی از خصوصیات مهم  .NET را به طور مختصر شرح می­دهیم.

برنامه نویسی شیء گرایی: .NET Framework بطور کامل مبتنی بر قواعد کلی شیءگرایی می­باشد.

طراحی خوب: این چارچوب مشتمل بر یک کتابخانه کلاس پایه است كه در بخش های مختلف ساخت یك نرم­افزار بكار می­روند.

استقلال زبان: با  .NET، تمامی زبانهای  Visual Basic.NET، C# ، J# و C++ به یک زبان میانی مشترک کامپایل می شوند. به این معنی که این زبانها با روشی که قبلاً بنظر نمی­ رسیده است قابل اعمال هستند.­

پشتیبانی بهتر صفحات وب پویا: با اینکه ASP انعطاف­پذیری بالایی را عرضه کرده است، می­توان گفت که هنوز هم غیرمؤثر و ناکارآمد است، زیرا با بکارگیری زبانهای اسکریپتی تفسیر شده و عدم بکارگیری یک طراحی شیءگراء، اغلب کد ASP درهمی را تولید می کند. .NET پشتیبانی  جامع و خوبی را با استفاده از تکنولوژی جدید یعنی ASP.NET برای صفحات وب ارائه داشـته اسـت. با ASP.NET ، کددر صفحات شما کامپایل شده، و ممکن است در.NET  ، با زبانهای سطح بالایی مانند C# ،  J#یا Visual Basic 2005نوشته شده باشد.

دسترسی مؤثر به داده ­ها : یک مجموعه از کامپوننت­های .NET ، که جمعاً با عنوان ADO.NET شناخته می­شوند، دسترسی مؤثری را برای بانک اطلاعاتی رابطه ای و منابع داده گوناگون مهیا می­کنند. همچنین کامپوننت­ها برای اجازه­ی دستیابی به سیستم فایل و پوشه­ها قابل دسترس هستند. بویژه اینکه .NET ، می­تواند XML را با دادن مجوز تغییر داده­هایی که ممکن است از یک بستر غیر ویندوزی وارد یا خارج شده باشند، پشتیبانی می­کند.

به اشتراک گذاشتن کد: .NET با معرفی مفهوم اسمبلی( assembly ) که جایگزین DLL های قدیمی است، روش اشتراک­گذاری کد را بطور کلی بین برنامه­ها تغییر داده است. اسمبلی­ها یکسری قوانین قراردادی برای تفسیر دارند، و نسخه­های مختلف از آنها می­توانند در کنار هم قرار بگیرند.

امنیت بالا : هر اسمبلی می­تواند شامل اطلاعات امنیتی از قبل ایجاد شده باشد که می­تواند مشخص کند که چه کسی یا چه گروهی از کاربران یا فرایندها اجازه فراخوانی چه توابعی را روی چه کلاسهایی دارد. این کار امکان استفاده از یک درجه بالای کنترلی برای چگونگی استفاده از اسمبلی­های نوشته شده را به شما خواهد داد.

نصب ساده : دو نوع کد اسمبلی وجود دارد: به اشتراک گذاشته شده و خصوصی. اسمبلی­های به اشتراک گذاشته شده، کتابخانه­های مشترک موجود در کلیه نرم­افزارها هستند، در حالی که، اسمبلی­های خصوصی، تنها جهت استفاده با یک نرم­افزار خاص معنی خواهند داشت. یک اسمبلی خصوصی، ذاتاً محتاط و خوددار است، بنابراین فرایند نصب آن ساده می­باشد. نیاز به ورود هیچ اطلاعاتی در رجیستری نداشته و فایلهای لازم به راحتی در شاخه مناسبی در سیستم فایل قرار خواهند گرفت.

پشتیبانی سرویس های وب: .NET جهت توسعه سرویس­های وب، به خوبی نوشتن برنامه­های کاربردی دیگر، پشتیبانی می شود.

q  Visual Studio 2008 .NET : همراه یک محیط برنامه­نویسی به نام Visual Studio 2005 عرضه شده که می­تواند مانند ASP.NET ، به خوبی از عهده زبانهای C++ ، C# ، J# ، Visual Basic 2005 برآید. Visual Studio 2008 به منظور مرتبط کردن محیط­های زبان Visual Studio .NET 2002/2003 و Visual Studio 6 ، تمام خصوصیات خوب آن­ها را با یکدیگر ادغام و یکپارچه کرده است.

 

معرفی .NET Framework 3.5

آخرین نسخه از .NET Framework ، .NET Framework 3.5 معرفی شده است. این نسخه از framework توانایی­ های جـدید و مـهیجـی را ارائه می­دهـد. در ایـن نسـخه، توانایـی سـاخت نـوعی برنامه جـدید با استـفـاده از Windows Presentation Foundation (WPF) به خوبی ساخت برنامه­ ها و کتابخانه­ های مبتنی بر Windows Communication Foundation (WCF) ،  Windows Workflow Foundation (WFWindows CardSpace به شما داده می­شود. در زیر به توضیح هر كدام از این بخش­ها پرداخته­ ایم.

 

Windows Communications Foundation :بستری برای ارتباطات شبکه می­باشد. این بستر سرویس­ها و امکاناتی برای برنامه­نویسی ارتباطی فراهم کرده و در اختیار شما قرار می­دهد.

Windows Presentation Foundation :امکاناتی که این بستر در اختیار شما قرار می­دهد، برای لایهPresentبرنامه شماست. به زبان ساده­تر برای UI برنامه خواهد بود. در .NET 3.0 طراحی UI برای محیط وب و براینرم­افزارهای مبتنی برWindows  خیلی شبیه به هم شده است. اصول طراحی UI در این بستر مبتنی بر زبانXAML است. <!--[endif]-->

Windows Workflow Foundation : برای شناخت این بستر کاملاً جدید باید ابتدا معنیWorkflow  را بدانید.یعنی توالی انجام دادن فعالیتها در یک ترتیب مشخص. windows Workflow Foundation ، امکاناتی برای کار با Workflow ها در اختیار شما قرار می­دهد. Workflow

Windows CardSpace: این بستر برای ایجاد و استقرار هویت دیجیتال با یک دیدگاه جدید و امن طراحی شده است.

 

 

کلاس­های .NET Framework

شاید یکی از بزرگترین مزیت­های نوشتن یک کد مدیریت شده، لااقل از یک دید برنامه­ نویس، این باشد که مجبور به استفاده از کتابخانه کلاس پایه .NET خواهید بود.

کلاس­های پایه­ی .NET مجموعه­ی بزرگی از کلاس­های مدیریت شده هستند که تقریباً به شما اجازه انجام هر کاری را که قبلاً توسط API ویندوز امکان انجامش بوده را می­دهند. این کلاس­ها از آبجکت­های مشابه مدل IL پیروی می­کنند که بر پایه ارث­بری تنها گذاشته شده­اند. این بدان معناست که شما می­توانید اشیاء را از هر کلاس پایه­ ای .NET نمونه­ گیری کرده، یا اینکه می­توانید کلاس­های خود را از آنها مشتق بگیرید.

نکته مهمی که درباره کلاس­های پایه­ ای .NET وجود دارد این است که آنها طوری طراحی شده­ اند که بسیار واضح بوده و استفاده راحـت داشـته باشـند. به طور مثال، برای شروع یک نخ (thread) ، شما تابع Start() موجود

 

در کلاس نخ (Thread) را فراخوانی می­کنید. برای غیرفعال کردن یک TextBox ، خصوصیت Enabled شئی TextBox را false می­کنید. این مسئله در مقایسه با برنامه­ نویسان آشنا به زبانهای برنامه­نویسی Visual Basic و Javaکه استفاده از کتابخانه­ های مربوط به آنها ساده است، برای برنامه­ نویسان C++ یعنی کسانی که سالها مجبور به استفاد ه مستقیم از توابع API مانند GetDIBits() ، RegisterWndClassEx() و IsEqualIID() ، و یا توابعی که نیاز به انتقال Windows handle دارند بوده­ اند، بسیار ساده خواهد بود.

از طرف دیگر، برنامه ­نویسان C++ همیشه دسترسی راحتی به کل API ویندوز داشتند، در حالی که
برنامه­ نویسان
Visual Basic   و Java محدودیت بیشتری در بکارگیری توابع پایه سیستم عامل داشته ­اند، چون دسترسی آنها تنها از طریق زبان برنامه­ نوبسی مربوط به خود بوده است. چیزی که در مورد کلاس­های پایه­ ای .NET جدید است، سادگی در استفاده از آنها می­باشد که می­تواند آنها را نوعی از کتابخانه­ های Visual Basic و Java دانست که پوشش بسیار وسیعی از توابع API ویندوز دارند. خصوصیات زیادی از ویندوزها وجود دارند که هنوز هم بواسطه کلاس­های پایه در دسترس قرار نمی­گیرند، و برای بکارگیری آنها نیاز به فراخوانی مستقیم توابع API خواهیم داشت. البته بطور کلی این توابع بیشتر به یکسری خصوصیات کم کاربرد و نامتعارف محدود می­شوند. به منظور استفاده مداوم، شما احتمالاً کلاس­های پایه مؤثرتر و پرکاربردتر را پیدا می­کنید. و درصورتی که نیاز به فراخوانی توابع API داشته باشید،  .NETفراخوانی platform-invoke را پیشنهاد می­کند که شما را از درست برگردانده شدن انواع داده مطمئن می­سازد، بنابراین در مقایسه با فراخوانی مستقیم تابع از درون کد C++ ، کار سختی نیست .

برخی از شرایط کلاس­های پایه .NET 3.5 شامل موارد زیر می­باشند:

خصوصیات اصلی تولید شده توسط IL (شامل انواع داده اولیه در CTSمی­باشد)

  پشتیبانی و کنترل GUI ویندوز

پشتیبانی فرم­های وب

بكارگیری مكانیسم­های پیشرفته دسترسی به داده­ ها

دسترسی به دایرکتوری

دسترسی به سیستم فایل و رجیستری

جستجوی وب و شبکه

خصوصیات و تعامل .NET

دسترسی به زوایای سیستم عامل ویندوز

عملیاتی کردن COM

 


دانشگاه آزاد اسلامی واحد لاهیجان

اگر هنر نبود حقیقت( واقعیت) ما را نابود می کرد. (نیچه)