چهارشنبه , آبان ۲۳ ۱۳۹۷
خانه / تحقیقات و مقالات / معماری دات‌نت

معماری دات‌نت

معماری .net

در گذشته زبانهای برنامه‌سازی، سیستم‌های عامل و محیط‌های اجرایی نرم‌افزار‌ها برای دوره‌ای خاص ساخته می‌شدند. هنگامیکه برنامه‌ها از محیط‌های رومیزی(Desktop) به اینترنت منتقل می‌شدند، ابزارهای موجود نیازمند API هایی اضافی و قابلیتهای دیگری بودند. بیشتر این قابلیتها در کنار زبانهای برنامه‌سازی بعنوان ابزارهایی جهت رفع این نیازمندیها ارائه می‌شدند. هرچند این ابزارهای اضافی بصورت قابل توجهی نیازمندیها را حل کرده و باعث رسیدن اینترنت به وضعیت کنونی شدند، اما همچنان مسائل بسیاری وجود داشت که نیاز به حل شدن داشتند.

.Net به منظور پشتیبانی از کاربردهای عصر جدید اینترنت ساخته شد. مواردی همچون گسترش، امنیت و versioning، که از مسایل مهمی بودند، توسط .Net پوشش داده شدند. قسمت مرکزی .Net بخش CLR (Common Language Runtime) است که یک موتور اجرایی مجازی است که از توسعه، امنیت و ارتقای نسخه کد پشتیبانی می‌نماید. در گذشته چنین امکاناتی برای کدهای کامپایل شده فراهم نبود. بدلیل اینکه .Net توانست بر این مشکلات اساسی فائق آید، راه حل قدرتمندتری جهت ساخت برنامه‌های تحت اینترنت به شمار می‌رود.

.Net چیست؟

.Net محیطی جهت ساخت برنامه‌های توزیع شده است که شامل ابزارهایی نظیر کتابخانه کلاسهای پایه (BCL: Base Class Library) ، CLR و زبانهای برنامه‌نویسی است. این ابزارها امکان ساخت انواع مختلفی از نرم‌افزارها، از قبیل فرمهای ویندوز، ADO.Net، ASP.Net و سرویسهای وب، را فراهم می‌آورند.

فرمهای ویندوز، مجموعه‌ای از کتابخانه‌ها جهت ساخت رابط‌های کاربر گرافیکی برای برنامه‌های کاربردی است. این کتابخانه‌ها اغلب API های Win32 را در خود دارا می‌باشند. همچنین امکان استفاده از رهیافت شی‌گرایی را جهت تولید آسان برنامه‌های تحت ویندوز، فراهم می‌آورند.

زبانهای برنامه‌نویسی

قسمت مهم دیگر  .Net، پشتیبانی آن از چندین زبان برنامه‌نویسی متفاوت است. IL طوری طراحی شده است که از چندین زبان برنامه‌نویسی پشتیبانی نماید. در حقیقت، هم اکنون ده‌ها زبان برنامه‌نویسی مورد پشتیبانی و پذیرش IL می‌باشند. علاوه بر VB.NET، .Net  شامل زبانهایی نظیر  Visual Basic، Jscript ، J#  و C++ نیز می‌باشد. برخی دیگر از زبانهای برنامه‌سازی مهم که بوسیله IL پشتیبانی می‌شوند عبارتند از :  Borland Delphi.Net ، Cobol.Net ، Fujitsu ، Python.Net ، Perl.Net  و بسیاری دیگر از زبانهای برنامه‌سازی که تحت .Net عمل می‌کنند و بوسیله آن مورد پذیرش هستند.

عامل اصلی نگهدارنده این زبانها در کنار یکدیگر، (Common Types System)CTS  است. اگرچه هر یک از این زبانها نوع‌های خود را در روشهای خاص خود ارائه می‌دهند، رفتار زیرساختی هر یک از آنها نسبت به CLR یکسان است. CTS اعضای یک نوع را مشخص می‌نماید: فیلد، متد، رخداد، ویژگی (Property) و اندیکسر. (Indexer) همچنین سطوح دسترسی به آنها را نیز معین می‌نماید: عمومی (public) ، داخلی (internal) ، حفاظت شده (protected) ، حفاظت شده داخلی (protected internal) و خصوصی. (Private) البته باید توجه کرد که مسلماً کلمات کلیدی هر یک از زبانها با سایر زبانها متفاوت است اما ساختار اصلی آنها در CLR یکسان است.

چارچوب دات‌نت یک فناوری نرم‌افزاری است که بر روی تمامی ویرایش‌های سیستم‌عامل ویندوز مایکروسافت قابل اجراست و در سیستم‌عامل‌های دیگر از جمله لینوکس و مکینتاش نیز وارد شده است. این چارچوب شامل مجموعه‌ای از زبانهای برنامه نویسی است که سی شارپ و ویژوال بیسیک مهمترین آنها می‌باشند. مجموعه‌ای از کتابخانه‌های بسیار غنی جهت کمک به سهولت توسعه نرم‌افزار در این چارچوب قرار گرفته‌اند که در قالب بخشهای عمده‌ای همچون فناورهای ASP.NET، ADO.NET  و بسیاری فناوری‌های خاص دیگر ارائه می‌شوند که تعداد آنها در نسخه‌های اخیر همگام با محدود تر شدن اهداف مایکروسافت بیشتر شده است.

بخش کامپایلر این چارچوب یک مفسر همزمان ( Just in Time Compiler ) است. به این معنی که کد تمام زبانها به یک زبان میانی به نام اسمبلی ترجمه شده و توسط یک ماشین مجازی بر اساس نیازها و مشخصات هر سیستم‌عامل و سخت‌افزار به اجرا در می‌آیند. کتابخانه‌های از پیش نوشته شده که در این چارچوب قرار دارند و در واقع پایه‌های اشیاء و کلاس‌های اصلی (Base Classes) این چارچوب را تشکیل می‌دهند بخش وسیعی از نیازهای برنامه‌نویسی را تحت پوشش قرار می‌دهند. از این جمله می‌توان به واسط‌های گرافیکی کاربر، دسترسی به پایگاه‌های داده، رمزنگاری، برنامه‌های تحت‌وب، الگوریتم‌های کار با اعداد و ارتباطات شبکه‌ای را نام برد.

در ژوئن سال ۲۰۰۰، شرکت مایکروسافت ایجاد چهارچوب نرم‌افزاری دات‌نت، به همراه یک زبان برنامه نویسی جدید به نام سی شارپ را اعلام کرد. چارچوب دات‌نت یک مجموعهی وسیع از امکانات برنامه‌نویسی است.

زبانهای سی‌شارپ (#C) و ویژوال بیسیک دات‌نت (وی‌بی دات‌نت) و ای‌اس‌پی دات‌نت (ASP.NET) همگی از چارچوب دات‌نت استفاده می‌کنند. برنامه‌های نوشته شده در این چهارچوب، ابتدا به زبان میانی مایکروسافت و متاداده (metadata) ترجمه شده و سپس توسط CLR اجرا می‌شوند. دات نت باعث شد که قدرت برنامه نویسی در زبانهای تحت این چارچوب یکسان شود و تفاوت فقط در نوع کد نویسی باقی بماند. چون ابزار و قدرت در دات نت از خواص دات نت است، نه زبان.

تغییر عمده‌ای که در برنامه نویسی با دات نت نسبت به گذشته قابل رویت است نحوه اتصال به پایگاه‌های داده است که علاوه بر روشهای قدیمی مانند DAO و ADO می‌توان از فناوری جدید ADO.NET استفاده کرد

درباره‌ رضا رمضانی

رضا رمضانی

جوابی بنویسید

ایمیل شما نشر نخواهد شدخانه های ضروری نشانه گذاری شده است. *

*