close
تبلیغات در اینترنت
معرفی دات نت و جايگاه ASP.NET
مرورگرهای پیشنهادی :
موضوعات
  • پایان نامه و مقاله فنی مهندسی
  • مهندسی برق ، الکترونیک ، مخابرات
  • مهندسی فناوری اطلاعات
  • مهندسی کامپیوتر
  • مهندسی مکانیک
  • مهندسی عمران
  • مهندسی معماری
  • مهندسی ساخت و تولید
  • مهندسی منابع طبیعی
  • مهندسی کشاورزی
  • مهندسی شیلات
  • مهندسی صنایع
  • مهندسی مواد
  • مهندسی نقشه برداری
  • مهندسی تاسیسات
  • مهندسی شیمی
  • مهندسی متالوژی
  • مهندسی نساجی
  • مهندسی معدن
  • مهندسی نفت
  • محیط زیست
  • جوشکاری
  • پایان نامه و مقاله علوم انسانی
  • حقوق
  • اقتصاد
  • مدیریت
  • جغرافیا
  • جهانگردی
  • حسابداری
  • تربیت بدنی
  • ادبیات فارسی
  • علوم سیاسی
  • علوم اجتماعی
  • مدیریت صنعتی
  • مدیریت روابط عمومی
  • احکام و معارف اسلامی
  • روانشناسی و علوم تربیتی
  • گرافیک
  • هنر
  • بیمه
  • تاریخ
  • موسیقی
  • صنایع دستی
  • پایان نامه و مقاله پزشکی
  • علوم آزمایشگاهی
  • بهداشت عمومی
  • طب هسته ای
  • چشم پزشکی
  • جنین شناسی
  • روان پزشکی
  • دندانپزشکی
  • پیراپزشکی
  • دامپزشکی
  • طب سنتی
  • داروسازی
  • پرستاری
  • پزشکی
  • مامایی
  • آناتومی
  • ژنتیک
  • پایان نامه و مقاله علوم پایه
  • زیست شناسی
  • زمین شناسی
  • دندانپزشکی
  • دامپزشکی
  • پزشکی
  • فیزیک
  • پاورپوینت و اسلاید فنی مهندسی
  • پاورپوینت معماری
  • پاورپوینت کامپیوتر و IT
  • نمونه سوالات استخدامی
  • نمونه سوالات استخدامی بانک
  • نمونه سوالات استخدامی آموزش و پرورش
  • نمونه سوالات استخدامی شهرداری
  • نمونه سوالات استخدامی تامین اجتماعی
  • نمونه سوالات استخدامی دستگاه اجرایی
  • نمونه سوالات استخدامی فنی و حرفه ای
  • نمونه سوالات استخدامی وزارت خانه ها
  • نمونه سوالات استخدامی نظامی
  • سایر نمونه سوالات استخدامی
  • جزوات دانشگاهی
  • جزوات دروس مشترک دانشگاهی
  • جزوات مهندسی برق
  • جزوات مهندسی مکانیک
  • جزوات مهندسی عمران
  • جزوات رشته حسابداری
  • جزوات مهندسی فیزیک
  • جزوات مهندسی معماری
  • جزوات مهندسی ریاضی
  • جزوات مهندسی صنایع
  • جزوات مهندسی شیمی
  • جزوات مهندسی کامپیوتر و IT
  • جزوات رشته زمین شناسی
  • جزوات رشته روانشناسی
  • جزوات مهندسی مخابرات
  • جزوات رشته مدیریت
  • جزوات تربیت بدنی
  • جزوات حقوق
  • گزارش کارآموزی فنی مهندسی
  • مهندسی کامپیوتر (سخت افزار - نرم افزار)
  • مهندسی مکانیک
  • مهندسی برق
  • مهندسی شیمی
  • مهندسی فناوری اطلاعات
  • صنایع غذایی
  • حسابداری
  • مدیریت
  • مطالب پربازدید
    مطالب تصادفی
    مطالب پیشین
  • بررسی رابطه تيپ های شخصيتی دبيران دبيرستانهای دخترانه با میزان موفقیت (پنجشنبه 13 اردیبهشت 1397)
  • بررسی پيش تجربی سياهه مشاوره ای لوئيس سوال هاي شماره 3 تا 45 (از مقياس اطمينان اجتماعی) (پنجشنبه 13 اردیبهشت 1397)
  • بررسی مقدماتی شخصيتی كرنل براي سوال 36 و 37 بر روي دانشجويان دانشگاه آزاد اسلامي (پنجشنبه 13 اردیبهشت 1397)
  • مقايسه مشكلات زبان عادی ويژه (چهارشنبه 12 اردیبهشت 1397)
  • مقایسه ویژگی های شخصیتی شخصیت ضد اجتماعی و انحرافات اجتماعی در بین دانشجویان دختر و پسر (جمعه 07 اردیبهشت 1397)
  • بررسی رابطة تك فرزندی با اختلالات رفتاری (چهارشنبه 05 اردیبهشت 1397)
  • بررسی توصيفی موسيقی و موسيقی درمانی بر روی انسان ها (چهارشنبه 05 اردیبهشت 1397)
  • بررسی تأثير ناكامی در ميزان پرخاشگری بين دانش آموزان دختر و پسر مقطع ابتدايی (چهارشنبه 05 اردیبهشت 1397)
  • بررسی ميزان تأثير اردوهای تربيتی ـ آموزشی بر رشد شخصيت دانش آموزان (چهارشنبه 05 اردیبهشت 1397)
  • نياز سنجی كاركنان اطلاعات (چهارشنبه 05 اردیبهشت 1397)
  • مقايسه هوش هيجانی و جرأت ورزی در دانش‌آموزان دختر و پسر نابينا و عادی (چهارشنبه 05 اردیبهشت 1397)
  • مقایسه میزان هیجان خواهی دانشجویان متأهل و مجرد (چهارشنبه 05 اردیبهشت 1397)
  • مددکاری (چهارشنبه 05 اردیبهشت 1397)
  • بررسی علل گرايش جوانان و نوجوانان به قرص های روان گردان (چهارشنبه 05 اردیبهشت 1397)
  • شناسايی نيازهای آموزشی و ترويجی توتون کاران (چهارشنبه 05 اردیبهشت 1397)
  • شرکت مايکروسافت در جولای سال ۲۰۰۰ ميلادی در کنفرانس پياده کنندگان حرفه ای ( PDC ) ابتکار جديد خود يعنی دات نت را معرفی نمود.

    شرکت مايکروسافت در جولای سال ۲۰۰۰ ميلادی در کنفرانس پياده کنندگان حرفه ای ( PDC ) ابتکار جديد خود يعنی دات نت را معرفی نمود.

    دات نت چيست ؟
    در صورتيکه صفحه اختصاصی دات نت در سايت مايکروسافت را مشاهده کرده باشيد با تعريف زير مواجه می گرديد : " پلتفرم (Plathform) مايکروسافت برای سرويس های وب XML " . مايکروسافت همچنين دات نت را بعنوان روشی برای توزيع و عرضه سرويس های نرم افزاری مطرح نموده است . تعاريف فوق گرچه برخی از ابعاد مهم دات نت را تشريح می نمايند ولی نگرش فوق صرفا" از يک بعد ساده و از زاويه يک شرکت مورد توجه قرار گرفته است . برای پياده کنندگان نرم افزار دات نت يک الگوی جديد جهت طراحی و پياده سازی نرم افزار است . در اين مقاله به بررسی الگوی فوق پرداخته و از اين رهگذر جايگاه ASP.NET در اين پروژه نيز تبين خواهد شد.

    نگاهی اجمالی به گذشته

    تاکنون از خود پرسيده ايد که برنامه های کامپيوتری چگونه کار می کنند ؟ چگونه کدهای نوشته شده به يکی از زبانهای سطح بالا نظير ويژوال بيسيک و یا ویژوال سی به يک برنامه اجرائی تبديل می شوند؟
    در گذشته عمليات فوق از طريق بکارگيری کامپايلرها ( مترجم ها ) تحقق پيدا می کرد. کامپايلرها برنامه های خاصی هستند که کدهای نوشته شده به يکی از زبانهای سطح بالا را به زبان اختصاصی ماشين ( کد اسمبلی ) ترجمه می نمايند . کدهای اسمبلی و کدهای زبان ماشين کاملا" وابسته به يک پلات فورم خاص خواهند بود. مثلا" کدهای ماشين نوشته شده برای يک پردازنده اينتل قادر به اجراء بر روی هر نوع ماشين ديگر نظير مکينتاش نخواهند بود. ( در حقيقت کدهای ماشين قادر به اجراء بر روی ماشينی با مجموعه دستورات خاص خواهند بود و در اين راستا ماشين ديگر که از پردازنده ديگر و به تبع آن از مجموعه دستورات خاصی استفاده می کند، قابل اجراء نخواهند بود ) .

    برنامه های نوشته شده برای ويندوز به زبان ماشين ترجمه شده بگونه ای که قادر به استفاده از مجموعه توابع کتابخانه ای موجود در Win32 باشند. کتابخانه فوق شامل مجموعه ای از صدها تابع مختص ويندوز است . توابع فوق مستقيما" با ويندوز ارتباط و مسئوليت ارتباط با سطوح سطح پايين سخت افزار را برعهده خواهند گرفت .

    زماني که يک برنامه ويژوال بيسيک قصد نمايش يک MessageBox را داشته باشد ، تمامی پردازش های مربوطه تا زمانيکه برنامه ترجمه نشده و به يک فايل اجرائی تبديل نگردد، آغاز نخواهد شد. پس از ترجمه، برنامه دارای يک فايل اجرائی با انشعاب exe خواهد بود. فايل فوق را می توان بر روی هر محيطی که سيستم عامل ويندوز بر روی آن نصب شده باشد، اجراء نمود. ( در چنين شرايطی دیگر لزومی به حضور ويژوال بيسيک بر روی کامپيوتر مورد نظر نخواهد بود). در حقيقت کامپايلر ويژوال بيسيک کدهای سطح بالا را بگونه ای تبديل نموده که برای سيستم عامل قابل فهم باشند. در نهايت سيستم عامل کدهای فوق را بگونه ای که قادر به اجراء بر روی يک کامپيوتر خاص باشند، ترجمه و اجراء خواهد نمود.

    بنظر عمليات فوق پيچيده بنظر می آيد . خوشبختانه تمامی مراحل ترجمه های فوق از ديدگاه استفاده کننده مخفی نگاهداشته شده و برنامه نويسان کافی است تمام تمرکز خود را بر روی نوشتن برنامه معطوف داشته و هيچگونه نگرانی در رابطه با ترجمه نداشته و تمامی عمليات در اين راستا را بر عهده کامپايلرها واگذار شده و در نهايت يک فايل اجرائی را تحويل گيرند.

    در رابطه با رويکرد فوق برخی مسائل اساسی وجود دارد که در ادامه به آنها اشاره می گردد.

    * رويکرد فوق کاملا" وابسته به پلات فورم است . اين بدان معنی است که زماني که يک برنامه را مثلا" با ويژوال بيسيک می نويسيد ، برنامه فوق صرفا" بر روی کامپيوترهائی که از ويندوز استفاده می نمايند، قابل اجراء خواهد بود.

    * هيچگونه تضمينی وجود ندارد که دو برنامه اجرائی نوشته شده با زبانهای برنامه نويسی متفاوت دارای کدهای مشابه سطح پايين باشند. بنابراين اشتراک مجموعه ای از توابع برای زبانهای برنامه نويسی غيرممکن بنظر می رسد. ( مايکروسافت با ارائه تکنولوژی Com سعی در ارائه راهکاری جهت حل مشکل فوق را داشت ولی عملا در مراحل عملياتی با مشکل مواجه گرديد. مثلا" اگر قصد بکارگيری عناصر COM نوشته شده به زبان ويژوال بيسيک را بهمراه عناصر COM نوشته شده به زبان ويژوال ++C را داشته باشيد در زمان انتقال دادن پارامتر بين آنها به مشکلات خاصی برخورد خواهيد کرد.

    * کتابخانه Win32 API چيزی بيش از مجموعه وسيعی از توابع نيست . توابع فوق هريک دارای تعاريف اختصاصی خود به همراه پارامترهای مربوطه می باشند. در برنامه های ويژوال بيسيک و يا ++C به دفعات ممکن است اين نياز احساس گردد که مستقيما" يکی از توابع موجود در Win32 API فراخوانی گردد ، يافتن تابع مورد نظر جهت فراخوانی کار ساده ای بنظر نمی آيد!

    به موازات رشد و توسعه نرم افزارها مسئله دوم يکی از اساسی ترين چالش های جدی در زمينه برنامه نويسی گرديد. در حالت ايده آل ما اين انتظار را داريم که هر مجموعه تابع و يا عناصری را که به کمک يک زبان برنامه نويسی نوشته شده اند را بتوان به اشتراک گذاشت و زمينه استفاده از آنان برای ساير زبانهای برنامه نويسی نيز فراهم گردد.

    مسئله فوق از اين زاويه نگران کننده تر به نظر خواهد آمد که توجه داشته باشيم هر زبان برنامه نويسی ممکن است نوع های داده ائی اوليه مربوط به خود را دارا باشد. مثلا" در ويژوال بيسيک می توان برداری را داشت که که ايندکس اولین خانه آن از هر محدوده ای شروع گردد در صورتيکه در ++C اين تاکيد وجود دارد که حتما" می بايست این ایندکس از صفر شروع گردد.

    دات نت NET.

    مايکروسافت با ارائه دات نت عملا" پاسخ شايسته ای را نيز برای هر يک از مسائل گفته شده ارائه نموده است.

    از ديدگاه يک پياده کننده نرم افزار ، دات نت دارای دو بخش اساسی است :
    CLR یا (Common Language Runtime) و کلاس های فريم ورک دات نت (NET framework Classes.)
    بخش های فوق به نوعی به مسائل اشاره شده پاسخ های مناسبی را ارائه داده اند.

    Common Language Runtime یا ( CLR )
    در ابتدای مقاله به نحوه عملکرد کامپايلرهای کلاسيک در رابطه با ترجمه کدهای نوشته شده توسط يکی از زبانهای سطح بالا به دستورات قابل فهم برای کامپيوتر اشاره گرديد . در دات نت فرآيند ترجمه يک برنامه سطح بالا به زبان ماشين بصورت کاملا" محسوس تغيير يافته است . کامپايلرهای سازگار با دات نت کدهای نوشته شده توسط يکی از زبانهای برنامه نويسی را به Win32 API Call ترجمه نخواهند کرد. کامپايلرهای فوق کدهای نوشته شده را به يک زبان ميانه خاص با نام MSIL یا (Microsoft Intermediate Language) تبديل خواهند کرد. در ادامه CLR کدهای زبان ميانه ای ( IL ) را اخذ و on the fly آنان را به دستورالعمل های اختصاصی ماشين تبديل خواهند کرد.

    توجه داشته باشيد که مرحله CLR به Runing Program صرفا" زمانی اتفاق خواهد افتاد که يک برنامه اجراء گردد. کامپايلر فايلی با محتويات کدهای MSIL را ايجاد خواهد کرد. زماني که فايل فوق اجراء می گردد ، کدهای MSIL به سمت CLR روانه شده و در ادامه با استفاده از مترجم JIT یا ( Just-In-Time ) کدهای IL به دستورات قابل فهم برای کامپيوتر تبديل خواهند شد. ( يک برنامه در حال اجراء بکمک CLR )

    NET FramWork Classes.

    در برنامه های نوشته شده تحت ويندوز با استفاده از Win32 API زمينه استفاده از مجموعه ای وسيع از توابع فراهم می گردد. توابع فوق برای انجام عمليات متفاوتی نظير: رابط گرافيکی کاربر ، عمليات متفاوت در رابطه با سخت افزار و ساير عمليات مرتبط ، باسيستم عامل مرتبط خواهند شد. بنابراين برنامه های تحت ويندوز برای ارتباط با سيستم عامل و بهره مندی از خدمات آن ، خواسته خود را از طريق فراخوانی توابع مربوطه در Win32 API انجام خواهند داد.

    برنامه های دات نت چگونه با سيستم عامل مرتبط خواهند شد؟
    خوشبختانه Win32 API مربوط به گذشته بوده و برنامه های دات نت از کلاس های فريم ورک دات نت استفاده می کنند. فريمورک فوق مجموعه ای سازمان يافته از کلاس هائی است که به منظور انجام تمامی عمليات مورد نظر يک طراح و پياده کننده نرم افزار طراحی و پياده سازی شده اند.

    برخلاف Win32 API ، کلاس های دات نت در يک سيستم سلسله مراتبی NameSpace سازماندهی شده اند. هر NameSpace می تواند دارای تعداد نامحدودی از کلاس ها باشد. مثلا" NameSpace پايه ای System شامل کلاس هائی است که از آنها برای نوع داده های اوليه نظير : System.Int32 , System.Array , System.string و غيره استفاده می شود. NameSpace ،System.Data شامل کلاس ها و ساير Namespace های مربوطه برای دستيابی به داده ها است . NameSpace ، System.IO شامل کلاس های مربوطه برای انجام عمليات متفاوت در رابطه با فايل ها و ورودی و خروجی است . دات نت دارای صدها کلاس بوده که تمامی آنها با استفاده از Namespace ها به درستی سازماندهی شده اند. طراحان و برنامه نويسان می توانند در صورت نياز اقدام به طراحی کلاس های اختصاصی و NameSpace مربوط به خود نموده و آنها را در برنامه های دات نت خود استفاده نمايند.

    با توجه به اين امر که هر يک از زبانهای برنامه نويسی از نوع داده های يکسان استفاده و از مجموعه يکسانی از کلاس ها استفاده می نمايند ، ارتباط متقابل بين زبانها ی برنامه نويسی که زمانی بيش از يک آرزو نبود ، ميسر خواهد شد .

    بدون دليل نيست که CLR را Common Language Runtime ناميده اند. برنامه های نوشته شده توسط هر يک از زبانهای برنامه نويسی در نهايت و پس از ترجمه توسط کامپايلرهائی که دات نت را حمايت می نمايند ، به کدهای MSIL تبديل خواهند شد ، بدين ترتيب اين اطمينان و تضمين بوجود خواهد آمد که تا اين مرحله ( مرحله ترجمه کدهای نوشته شده با يک زبان برنامه نويسی و ترجمه آنها به MSIL ) تمامی زبانهای برنامه نويسی از نوع داده ها و کلاس های موجود در فريمورک دات نت استفاده کرده اند.

    حل مشکلات سه گانه

    همان طور که در ابتدای اين مقاله اشاره شده ترجمه مستقيم کدهای نوشته شده به کدهای ماشين باعث بروز سه مسئله اساسی :
    وابستگی محض به پلات فورم ، بروز مشکل در ارتباط متقابل بين زبانها و ساختار آشقته Win32 API می گردد. دات نت برای سه مسئله فوق راهکارهای مناسبی را ارائه نموده است .

    مشکل اول در مرحله تئوری نمی تواند باعث بروز مسائلی گردد . در تئوری مايکروسافت می تواند CLR و کلاس های فريمورک دات نت را برای هر نوع پلات فورم و سيستم عامل ارائه نمايد.اين بدان معنی است که کدهای MSIL توليده شده توسط VB.NET را می توان بر روی لينوکس نيز اجراء نمود. در دنيای واقعي مايکروسافت تاکنون در زمينه تامين خواسته هائی اينچنين فعاليت های خاصی را انجام نداده است .

    در رابطه با مشکل دوم ( ارتباط متقابل بين زبانها ) با ارائه نوع های داده ائی و توابع مورد نظر که در سطح سيستم عامل فعاليت می نمايند ، با مسئله فوق بدرستی برخورد و راهکار مناسبی ارائه شده است . بر اساس راهکار فوق ،تمامی زبانهای برنامه نويسی مورد حمايت در دات نت می بايست از کلاس های فريمورک دات نت استفاده نموده و پس از ترجمه اوليه کدهای MSIL را توليد نمايند.

    در رابطه با مشکل سوم ( ساختار آشفته Win32 API ) فريمورک دات نت ، تمامی کلاس ها را در يک ساختار سلسله مراتبی سازماندهی نموده و از اين طريق دستيابی ،استفاده و شناخت عملکرد هر يک از آنان بمراتب راحت تر از win32 API انجام خواهد شد

    کسب درآمد با فروش فایل های سایت ما

    درباره :
    برچسب ها :معرفی دات نت و جايگاه ASP.NET ,حل مشکلات سه گانه ,ساختار آشفته Win32 API ,ارتباط متقابل بين زبانها ,تئوری ,کلاس های دات نت ,سيستم سلسله مراتبی NameSpace ,NET FramWork Classes. ,دات نت NET. ,نگاهی اجمالی به گذشته ,دات نت چيست ؟ ,
    بازدید : 807 تاریخ : نویسنده : بهرام محمدپور | نظرات ()
    ارسال نظر برای این مطلب

    نام
    ایمیل (منتشر نمی‌شود) (لازم)
    وبسایت
    :):(;):D;)):X:?:P:*=((:O@};-:B/:):S
    نظر خصوصی
    مشخصات شما ذخیره شود ؟[حذف مشخصات] [شکلک ها]
    کد امنیتی
    آمار سایت
  • آمار مطالب
  • کل مطالب : 4311
  • کل نظرات : 17
  • آمار کاربران
  • افراد آنلاین : 6
  • آمار بازدید
  • بازدید امروز : 10,965
  • باردید دیروز : 23,407
  • گوگل امروز : 12
  • گوگل دیروز : 46
  • بازدید هفته : 10,965
  • بازدید ماه : 149,775
  • بازدید سال : 837,695
  • بازدید کلی : 6,691,421
  • نظرسنجی
    چه مطالبی در سایت قرار دهیم؟





    کدهای اختصاصی