انجام پایان نامه

درخواست همکاری انجام پایان نامه  بانک مقالات رایگان انجام پایان نامه

سفارش پایان نامه

|

انجام پایان نامه ارشد

 پایان نامه 

پایان نامه‏ کامپیوتر

انجام پایان نامه‏ ارشد کامپیوتر

مفاهيم اوليه برنامه نويسی در دات نت ( بخش اول )
دات نت محيطی جديد بمنظور طراحی، پياده سازی  و اجرای برنامه های کامپيوتری را در اختيار طراحان و پياده کنندگان نرم افزار قرار می دهد.  با استفاده از پلات فرم فوق ، می توان بسرعت اقدام به پياده سازی نرم افزار نمود.
برنامه های توليده شده ، امکان استفاده از پتانسيل های  محيط
( Common Language Runtime CLR ) را خواهند داشت . آشنائی با مفاهيم اوليه برنامه نويسی در محيط فوق ، دارای اهميت خاص خود بوده و  سرعت در استفاده مطلوب از محيط فوق ، را بدنبال خواهد داشت . در مقالاتی که در اين زمينه ارائه خواهد شد به بررسی مفاهيم اوليه برنامه نويسی محيط فوق ، خواهيم پرداخت . در اين راستا ، در ابتدا با نحوه نوشتن يک برنامه  آشنا و در ادامه به تشريح برخی از مفاهيم مهم در اين زمينه ، خواهيم پرداخت .
نوشتن يک برنامه در فريمورک دات نت
تمامی زبانهای حمايت شده در دات نت ، از سيستم نوع يکسان ، کتابخانه کلا س فريمورک مشابه  و  CLR استفاده خواهند کرد . بدين ترتيب، تمامی برنامه های نوشته شده با يکی از زبانهای حمايت شده ، خصايص مشابهی را به اشتراک می گذارند. شايد مهمترين تفاوت قابل توجه در رابطه با زبان های برنامه نويسی حمايت شده در دات نت ،  به گرامر هر يک از آنها برگردد . ( در مثال هائی که در اين مقاله ذکر می گردد ، از ويرايشگر Notepad ،در مقابل ويژوال استوديو دات نت،  استفاده شده است . مثال های ارائه شده به اندازه کافی ساده بوده تا بتوان بکمک آنان با  فرآيندهای ترجمه و اجراء ، بسرعت آشنا گرديد ).
نوشتن يک برنامه
برای نوشتن يک برنامه ساده در دات نت ، مراحل زير را دنبال می نمائيم :
•    فاز اول : ايجاد برنامه
برنامه Notepad را فعال و  پس از درج کدهای زير آن را با نام  Hello.vb ، ذخيره نمائيد .
يک برنامه نمونه  نوشته شده به زبان VB.NET
Imports  System
Public Class MainApp
     Public Shared Sub Main( )
          Console.WriteLine( "Welcome to .NET Programming " )
      End Sub
End Class  
•    فاز دوم : ترجمه و ايجاد يک فايل اجرائی
برای اجراء برنامه ايجاد شده در مرحله قبل ، در ابتدا کمپايلر VB.NET را از طريق خط دستور و بصورت زير فعال می نمائيم : ( دستور فوق را می توان از طريق خط دستور ويندوز و يا خط دستور موجود در ويژوال استوديو ، فعال کرد )
vbc  Hello.vb
           در ادامه و پس از ايجاد فايل اجرائی (hello.exe ) ، امکان اجرای برنامه فراهم می گردد.
 
استفاده از Namespace
با استفاده از VB.NET ، می توان به کلاس ها مراجعه و از آنان استفاده کرد . در مثال زير ، يک نمونه از کلاس System.Io.FileStream ، ايجاد شده است .
Dim aFileStream  As  System.IO.Filestream   
مراجعه به Namespace های مورد نياز در يک برنامه روشی مناسبتر در اين زمينه است . با  استفاده از namespace ، ضرورتی به توصيف تمامی مراجعات به کتابخاته کلاس ، وجود نخواهد داشت .
Imports System.IO
.....
Dim aFileStream As Filestream  
مثلا" برای دستيابی به اشياء System ، می بايست از Namespace با نام System در برنامه استفاده گردد. ( Imports) .
تعريف namespace و کلاس  
VB.NET ، امکانات حمايتی لازم در خصوص ايجاد Namespace های خاص و کلاس های مربوط به آن را ارائه می نمايد. (نکته : مدل زير يک روش عمومی برای نامگذاری namespace است ) :
 

CompanyName.TechnologyName
.For Example:
Microsoft.Office
namespace در VB.NET  
در VB.NET با استفاده از عبارت namespace می توان يک namespace را تعريف کرد . با استفاده از  namespace تعريف شده ،  امکان کپسوله نمودن کلاس های ايجاد شده ، فراهم خواهد شد.
Namespace CompVB
   Public Class StringComponent
      ....
   End Class
End Namespace
برخی از ويژگی های namespace  عبارتند از :
•     namespace می تواند درون ساير namespace ها ، مستقر گردند .
•    يک namespace می تواند در چندين فايل تعريف گردد .
•    يک فايل حاوی کد مبداء می تواند چندين namespace  را تعريف نمايد.
نقاط ورود ، حوزه ، تعاريف
هر برنامه اجرائی می بايست شامل يک نقطه ورود خارجی باشد . مکان فوق ، محلی را که برنامه اجرای خود را از آنجا آغاز می نمايد ، مشخص می نمايد..در  VB.NET تمامی کد می بايست در متدهای يک کلاس قرار بگيرد.
نقاط ورود در VB.NET  
بمنظور ارائه کد  نقطه ورود در VB.NET ، در ابتدا می بايست يک ماژول و يا يک کلاس مشخص گردد .
Public Module modMain

Public Class clsMain
در ادامه می بايست نقطه ورود برای برنامه ، مشخص گردد. نقطه ورود ، می بايست بعنوان يک  متد عمومی که main ناميده می شود ، در نظر گرفته شود.( کمپايلر به دانش فوق نياز خواهد داشت ) . در يک کلاس ، متد فوق می بايست بصورت اشتراکی تعريف گردد .امکان تعريف متد فوق در يک ماژول بصورت اشتراکی ، وجود نخواهد داشت . نحوه تعريف ( مشخص نمودن ) نقاط ورود برای يک ماژول و يا يک کلاس ، بصورت زير است :
Public Module modMain
      Public Sub Main( )
         ...
      End Sub
 End Module

Public Class clsMain
      Public Shared Sub Main( )
        ...
      End Sub
End Class
حوزه   
VB.NET ، از نقطه بعنوان يک عملگر resolution حوزه ، استفاده می نمايد . مثلا" در صورت استفاده از متد WriteLine مربوط به کلاس Console ،   از گرامر Console.WriteLine ، استفاده می شود.
تعاريف
در VB.NET ، الزامی  به تعريف يک متغير قبل از استفاده از آن نمی باشد . پيشنهاد می گردد که در چنين مواردی متغيرها با صراحت تعريف گردند. در اين راستا می توان از  عبارت options ، استفاده کرد.  بمنظور ايجاد نمونه ای از يک شی ، از  New استفاده می گردد. مثال زير ، نحوه تعريف يک شی از نوع Comp در namespace با نام Lib   و با نام MyComp را نشان می دهد .
Dim myComp As New Lib.Comp( )
کنسول ورودی و خروجی
می توان  از کلاس Console ، مربوط به CLR وابسته به System Namespace  ،  برای ورودی و خروجی هر نوع رشته و مقادير عددی توسط متدهای Read , ReadLine و Write,WriteLine استفاده کرد . برنامه زير، نحوه نمايش يک رشته در خروجی را نشان می دهد .
برنامه نمونه :
Imports  System
Public Class MainApp
     Public Shared Sub Main( )
          Console.WriteLine( "Welcome to .NET Programming " )
      End Sub
End Class  
ترجمه و اجراء يک برنامه فريمورک دات نت  
اکثر جنبه های برنامه نويسی در دات نت برای تمامی زبانهای سازگار ، يکسان است . هر کمپايلر حمايت شده باعث توليد کدهای "خود تشريح "  MSIL)Microsoft Intermediate Language) ، می گردد . تمامی کدهای مديريت يافته ( Managed code ) با استفاده از CLR(Common Language runtime) ، اجراء خواهند شد . CLR ، امکان يکپارچگی بين برنامه ها ، مديريت اتوماتيک حافظه ، برخورد يکدست با موارد خاص و استثناء ، امنيت پيشرفته و در نهايت  يک مدل برنامه نويسی ساده و همگن را ارائه می نمايد.  
گزينه های کمپايلر
فريمورک دات نت،  دارای يک کمپايلر خط دستوری برای VB.NET است ( vbc.exe ) . برای ترجمه برنامه Hello.vb ، بکمک کمپايلر فوق ، از دستور زير استفاده می شود :
vbc Hello.vb
گرامر فوق،  باعث فراخوانی کمپايلر VB.NET  می گردد. در اين مثال خاص، صرفا" نام فايل مورد نظر برای کمپايلر مشخص شده و در ادامه ، کمپايلر فايل اجرائی را توليد خواهد کرد ( Hello.exe )
گزينه های خط دستور
در VB.NET ، می توان  ليست کاملی از گزينه های همراه کمپايلر را با استفاده از ?/ ، مشاهده نمود ( ?/ Vbc ) . از گزينه های مفيد در اين زمينه، می توان به  سوئيچ out/ ، ( نام فايل خروجی را مشخص می نمايد)  و سوئيچ target/ ، ( نوع کد مقصد را مشخص می نمايد") ، اشاره کرد. بصورت پيش فرض ، نام فايل خروجی مشابه نام فايل ورودی و با انشعاب exe . ، خواهد بود. مقدار پيش فرض برای تعيين نوع کد مقصد ، يک برنامه اجرائی است ( سوئيچ t/ ، دارای عملکردی معادل با سوئيچ target/ است ). دستور زير نحوه استفاده از سوئيچ های فوق را نشان می دهد :
vbc /out :hello.exe  /t:exe hello.vb  
استفاده از  گزينه کمپايل reference/  
در زمان مراجعه به ساير اسمبلی ها ، می بايست از سوئيچ  reference/ ، استفاده گردد . گزينه فوق اين امکان را برای کمپايلر فراهم می آورد که اطلاعاتی را ايجاد و در کتابخانه های مشخص شده استقرار تا زمينه استفاده از آنان برای کد مورد نظر ( در حال ترجمه ) ، فراهم گردد. مثال زير نحوه ايجاد يک برنامه اجرائی از طريق خط دستور و  با استفاده از reference /  ، را نشان می دهد .
 ( عملکرد سوئيچ r / مشابه reference /  است ).
Vbc / r:assembll.dll  , assemb2.dll / out :output.exe  input.vb   
در بخش دوم اين مقاله به بررسی فرآيند اجراء مديريت يافته ( اداره شده ) ، خواهيم پرداخت .
مفاهيم اوليه برنامه نويسی در دات نت ( بخش دوم )
در بخش اول اين مقاله به بررسی يک برنامه نمونه ساده دات نت پرداخته شد و از اين رهگذر با برخی  مفاهيم اوليه و در عين حال مهم  برنامه نويسی  در دات نت آشنا شديم . در بخش دوم اين مقاله به بررسی فرآيند اجراء پرداخته و بدنبال آن با برخی ديگر از مفاهيم اساسی برنامه نويسی در دات نت آشنا خواهيم شد .
در فريمورک دات نت ، CLR زير ساخت لازم برای يک محيط اجراء مديريت يافته ( اداره شده ) را فراهم می نمايد . در زمان پياده سازی  يک برنامه در فريمورک دات نت ، برنامه مورد نظر می تواند  با استفاده از هر يک از زبان های سازگار با CLR ، نوشته گردد. کمپايلر استفاده شده ، کدها را به مقصد CLR ، ترجمه می نمايد . پس از فرآيند ترجمه کد نوشته شده ،  يک ماژول مديريت يافته( اداره شده )  ايجاد خواهد شد. ماژول فوق، در  فايلی  که PE)Portable Executable) ، ناميده می شود، قرار گرفته و شامل اطلاعات زير خواهد بود :
•     MSIL)Microsoft Intermediate Language) ، کمپايلر کد نوشته شده  را به MSIL ترجمه می نمايد . کد فوق ، مجموعه ای از دستورالعمل های مستقل از نوع پردازنده  بوده و  در ادامه با توجه به نوع پردازشگر به کدهای مختص ماشين تبديل می گردند.
•    Type metadata .اطلاعات فوق ،  نوع ها ، اعضاء و ساير مراجع  استفاده شده توسط  CLR  در زمان اجراء را بطور کامل تشريح خواهد کرد.
•    مجموعه ای از ساير منابع . منابع فوق ،  شامل موارد متععدی نظير فايل های Jpg .  و يا Bmp . ،  می باشند .
اگر در زمان استفاده از کمپايلر ويژوال بيسيک از سوئيچ target /  ، استفاده و مقدار آن  Exe و يا Library  در نظر گرفته شود ، کمپايلر يک ماژول اجرائی را توليد که يک اسمبلی (Assembly ) خواهد بود.  اسمبلی ها  بخش ضروری و اساسی برنامه نويسی در فريمورک دات نت بوده و CLR از آنان بعنوان  واحدهای پايه  و بمنظور اشتراک ، بکارگيری امنيت و ورژن های متفاوت، استفاده می نمايد. CLR  دات نت ، صرفا" کدهای MSIL را که  در يک اسمبلی موجود  می باشند ، اجراء خواهد کرد . در صورتيکه بهمراه سوئيچ target /  (در کمپايلر ويژوال بيسيک ) ، از Module استفاده شود ، کمپايلر يک ماژول مديريت يافته را توليد که يک اسمبلی نخواهد بود .ماژول توليده شده ، شامل يک مانيفست نبوده و نمی تواند توسط CLR ، اجراء گردد.    يک ماژول مديريت يافته را می توان به يک اسمبلی  و از طريق استفاده از کمپايلر ويژوال بيسيک و يا با استفاده از Assembly Linker) Al.exe) اضافه نمود. در ادامه به تشريح MSIL ، متاديتا و اسمبلی خواهيم پرداخت .
کد اجرائی  
در زمان اجرای  يک برنامه مديريت يافته ، لودر سيستم عامل ، CLR را در حافظه مستقر و در  ادامه زمينه اجرای  کد MSIL ماژول های مديريت يافته ، فراهم می گردد. با توجه به اينکه پردازنده  ميزبان در مقطع کنونی ، قادر به اجرای مستقيم دستورالعمل های MSIL  نخواهد بود، CLR ، می بايست در ابتدا دستورالعمل های MSIL را به کد مختص ماشين و با توجه به نوع پردازنده ،  تبديل نمايد .
CLR ، تمام کدهای MSIL را به دستورالعمل های مستقل از پردازنده  در زمان لود ، ترجمه نخواهد کرد . در مقابل،  CLR  در زمان فراخوانی هر يک از توابع ، دستورالعمل های مربوطه را به کد مختص پردازنده تبديل خواهد کرد.MSIL ، صرفا" در زمان مورد  نياز، ترجمه خواهد شد . عناصر CLR که مسئوليت انجام عمليات فوق را برعهده دارند، کمپايلر JIT)Just in Time) ، ناميده می شود . ترجمه JIT ، باعث صرفه جوئی  حافظه و زمان  در حين مقداردهی اوليه برنامه می گردد .
Appliaction Domain  
سيستم عامل و محيط های اجراء نوع های خاصی از ايزولاسيون ( تمايز)  بين برنامه ها را ارائه می نمايند . با ارائه سرويس فوق ، اين اطمينان بوجود خواهد آمد که يک برنامه در حال اجراء قادر به تاثير منفی بر ساير برنامه ها ی غير مرتبط ،  نخواهد بود . ويژگی فوق ، يک واحد ايمن و چندکاره  پردازش  را  ارائه  نموده و CLR بر اساس آن قادر به ايزولاسيون بين برنامه ها خواهد بود. حوزه های برنامه ، عموما" توسط ميزبانان زمان اجراء که مسئوليت فعال نمودن  CLR   قبل از اجرای برنامه ها  را برعهده دارند ، فراهم می گردد.








انجام پایان نامه

انجام پایان نامه کامپیوتر، انجام پایان نامه ارشد کامپیوتر، انجام پایان نامه، پایان نامه

برای دیدن ادامه مطلب از لینک زیر استفاده نمایید

 

انجام پایان نامه | دانلود مقاله

سفارش پایان نامه