رپو فایل

مرجع دانلود و خرید فایل

رپو فایل

مرجع دانلود و خرید فایل

چارچوبNET

نوشتن برنامه برای یک کامپیوتر همانند یاد دادن گره زدن بند کفش به کودکان است تا زمانی که شما نتوانید درست مراحل کار را بیان کنید ، هیچ کاری انجام نمی شود ویژوال C یک زبان برنامه نویسی است که بوسیله آن می توانید به کامپیوتر خود بگویید چه کارهایی را انجام دهد اما کامپیوتر نیز مانند یک کودک است و فقط کارهایی را می تواند انجام دهد که م
دسته بندی کامپیوتر و IT
بازدید ها 0
فرمت فایل doc
حجم فایل 532 کیلو بایت
تعداد صفحات فایل 116
چارچوبNET

فروشنده فایل

کد کاربری 2106
کاربر

چارچوبNET

مقدمه :

نوشتن برنامه برای یک کامپیوتر همانند یاد دادن گره زدن بند کفش به کودکان است . تا زمانی که شما نتوانید

درست مراحل کار را بیان کنید ، هیچ کاری انجام نمی شود . ویژوال C# یک زبان برنامه نویسی است که بوسیله

آن می توانید به کامپیوتر خود بگویید چه کارهایی را انجام دهد اما کامپیوتر نیز مانند یک کودک است و فقط

کارهایی را می تواند انجام دهد که مراحل آن به وضوح مشخص می شوند . اگر تا کنون هیچ برنامه ای ننوشته

باشید ممکن است این کار بسیار مشکل به نظر برسد ، البته در بعضی مواقع نیز به همین صورت است. اما

خوشبختانه . ویژوال C# زبانی است که سعی کرده است این موضوع را تا حد ممکن ساده کند و به شما اجازه

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

یک برنامه رخ می دهد هیچ وقت ضرری نداشته است ، اما در . ویژوال C# برای نوشتن یک برنامه نیازی

به درگیری با مسائلی از این قبیل ندارید و می توانید به راحتی بر الگوریتم برنامه ای که می خواهید بنویسید

تمرکز کنید.

برنامه هایی که بوسیله . ویژوال C# نوشته می شوند می توانند بر روی سیستم عامل ویندوز اجرا شوند

حتی اگر تا کنون هیچ برنامه ای برای کامپیوتر ننوشته باشید . ویژوال C# ( همانطور که از اسم .NET

مشخص است) می توانید برای ایجاد برنامه های قابل استفاده در اینترنت مورد استفاده قرار گیرد شما می توانید

با این زبان به راحتی برای دستگاههای موبایل و یا Pocket PC برنامه بنویسید.

فصل اول

چارچوب .NET

چارچوب .NET

چارچوب .NET چیست ؟

چارچوب .NET چگونه کار می کند وچه چیزی باعث شده است که به یک فریم ورک پر طرفدار تبدیل شود ؟

با زبان C# چه برنامه هایی را می توان نوشت ؟

چارچوب .NET چیست ؟

درتعریف .NET می توانیم بگوییم که : " چارچوب .NET یک پلتفرم جدید است که توسط مایکروسافت برای

طراحی و توسعه نرم افزار ایجاد شده است ."

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

خوبی وجود دارد . برای شروع، توجه کنید که در این تعریف نگفته ام " طراحی و توسعه نرم افزار برای سیستم

عامل ویندوز . " اگر چه مایکروسافت چارچوب .NET را برای اجرا روی سیستم عامل ویندوز منتشر کرده است

، به زودی نسخه های دیگری از این چارچوب را مشاهده خواهید کرد که بر روی سیستم عامل های ویندوز منتشر

کرده است ، به زودی نسخه های دیگری از این چارچوب را مشاهده خواهید کرد که بر روی سیستم عامل های

دیگر مانند لینوکس نیز اجرا می شوند . یکی از این نسخه ها مونو است. مونو یک نسخه متن باز از چارچوب

.NET است

(که شامل کامپایلر C# نیز هست) که برای سیستم عامل های گوناگونی مانند نسخه های مختلف لینوکس و

مکینتاش منتشر شده است به علاوه میتوانید با استفاده از نسخه فشرده این چارچوب به نام

Microsoft .NET Compact Framework که زیر مجموعه ای از چارچوب .NET است . اگر به تعریفی

که در بالا برای چارچوب .NET آورده شده است مشاهده می کنید که این تعریف محدود به نوع خاصی از برنامه

ها نیست . در حقیقت در مورد نوع برنامه هایی که می توان با .NET نوشت هیچ محدودیتی وجود ندارد که

بخواهیم آنرا ذکر کنیم از چارچوب .NET می توانید برای طراحی برنامه های تحت ویندوز برنامه های تحت وب ،

سرویسهای مبتنی بر وب و ... استفاده کنید .

چارچوب .NET یک چارچوب کلی است و محدود به زبان برنامه نویسی خاصی نیست. شما میتوانید برنامه

خودتان را به هر زبانی که بخواهید بنویسید

چارچوب .NET از چه اجزایی تشکیل شده است ؟

یکی از اجزای اصلی چارچوب .NET کتابخانه کلاس عظیم آن است که می توانید از آن در برنامه های خود

استفاده کنید کتابخانه کلاس یک مجموعه از توابع وکلاسها است که برای انجام امور مختلف مورد استفاده قرار

می گیرد . برای مثال یک کتابخانه کلاس ، شامل توابعی برای کنترل ورودی و خروجی ، استفاده از امکانات چاپ ،

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

شده اند ، در .NET به گروهها یا فضای نامهای مختلفی دسته بندی می شوند .

در نوشتن یک برنامه می توانید هر کدام از فضای نامها را که نیاز داشتید به برنامه اضافه کنید برای مثال یکی از

این فضای نامها برای برنامه نویسی تحت ویندوز بکار می رود ،یکی دیگر برای برنامه نویسی شبکه مورد استفاده

قرار می گیرد فضای نام دیگری برای برنامه نویسی تحت وب به کار می رود . بعضی از این فضای نامها خود به

فضای نامهای کوچکتری تقسیم می شوند که برای کار برد خاصی در آن قسمت استفاده می شود. برای مثال

فضای نام برنامه نویسی تحت وب شامل یک فضای نام کوچکتر است که برای نوشتن سرویسهای تحت وب بکار

می رود .

باید توجه داشته باشید که تمام سیستم عامل ها،همه توابع موجود در این فضای نامها را پشتیبانی نمی کنند.

برای مثال یک دستیار دیجیتال شخصی از توابع اصلی چارچوب .NET پشتیبانی می کند ، اما یک سری از

توابع که در این وسایل کاربردی ندارند به وسیله آنها پشتیبانی نمی شود .

بخش دیگری از چارچوب .NET یک سری نوع های داده های ابتدایی را تعریف می کند . نوع های داده ای برای

نگهداری اطلاعات یک برنامه در طول اجرای آن مورد استفاده قرار می گیرند.نوع های داده های که در این قسمت

از .NET تعریف می شوند به صورت بسیار پایه ای هستند (مانند "عدد صحیح علامتدار 32 بیتی ") . نوع های

داده ای پیشرفته تری که در زبانهای برنامه نویسی مبتنی .NET مانند C# و یا ویژوال بیسیک وجود دارند باید

بر اساس یکی از این نوع های داده ای تعریف شده در این قسمت از چارچوب .NET باشند . این مورد باعث

هماهنگی بین زبانهای برنامه نویسی می شود که از چارچوب .NET استفاده می کنند . این قسمت از چارچوب

.NET ، سیستم نوع داده ای عمومی و یا به اختصار CTS نامیده می شود .

علاوه بر کتابخانه کلاسی که ذکر شد چارچوب .NET شامل بخشی به نام زبان عمومی زمان اجرا و یا به اختصار

CLR است.این بخش از چارچوب .NET (که مهمترین بخش آن نیز محسوب می شود)مسئول کنترل ومدیریت

اجرای تمام برنامه هایی است که با استفاده از کتابخانه کلاس نوشته شده اند .

جهت دریافت فایل چارچوبNET لطفا آن را خریداری نمایید


NET تکنولوژی

یقیناً، میکروسافت برجسته ترین تحولات را در صنعت رایانه به وجو آورده است موفقیت های DOS ، حاصل تلاش بی وقفه بیل گیتس و استیوبالمر بود، وقتی آنها به IBM اطلاع دادند که سیستم عاملی برای فروش دارند حرکت قابل توجهی در دنیای رایانه ایجاد شد میکروسافت با الهام گرفتن از جذابیت اپل مکینتاش سیستم عاملی ایجاد کرد که به طور گسترده در جهان مورد استفاده قرار گر
دسته بندی کامپیوتر و IT
بازدید ها 0
فرمت فایل doc
حجم فایل 83 کیلو بایت
تعداد صفحات فایل 102
NET تکنولوژی

فروشنده فایل

کد کاربری 2106
کاربر

NET تکنولوژی

مقدمه ای درباره NET.

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

اکنون، میکروسافت با ابداع مجدد روشی برای استفاده و برنامه ریزی رایانه ها تحول دیگری در جهان ایجاد کرده است. اگر شما یک برنامه نویس C++ هستید یا اگر با سیستم عامل ویندوز یا کلاس (رده) خیت بنیادین میکروسافت (MFC) کار می کنید، بدون شک کاملاً تحت تأثیر الزامات NET، خواهید بود.

اخیراً اینترنت به رسانه ای تبدیل شده است که ما از طریق آن میتوانیم تجارت کنیم، دوستان خود را ملاقات کنیم، حساب جاری خود را انجام دهیم، بازی کنیم، گپ بزنیم و با اشخاصی که دوست داریم در تماس باشیم . انجام همه کارها از طریق یک نرم افزار نوشته شده، عملی و امکان پذیر شده اند تا ارتباطات ضابطه اینترنت (IP) برای وب جهانی برقرار می شوند. از آن جا که وب پیشرفت نموده و پیچیده تر شده است نرم افزار لازم است برای اجرای آن نیز باید میلیون ها داده IP را به رایانه ما انتقال دهد تا از آن دریافت کند. با استفاده از پست الکترونیکی مرور صفحات وب تعامل (فعل و انفعال) با پایگاه دادهع ها و اجرای برنامه های کاربردی توزیع شده بسیار پیچیده تر شده است و در نتیجه مهارت ها و تکنیک های برنامه نویسی نیز به ایجاد و حفظ نرم افزاری نیاز دارد که پیچیده تر باشد. یک برنامه نویس، اغلب مواقع (و به طور روزانه) با XML , SOAP , ASP , DCOM . CoM+ COM، و XSL و یک آرایه رو به افزایش از SDK های کامل و نیز راهنماییهایی در رابطه با آنها مواجه می گردد.

میکروسافت، بنابر اصل نیازهای فناوری جاری همانند بسیاری از صنعتکاران به طور روزافزون، برنامه های کاربردی، مجموعه ابزارهای و سیستم های عامل و کتابخانه ها قابل حمل نیستند، زیرا بسیار گسترده تر می باشند و همچنین حاوی افزودنی ها، الحاقات (extensions) و توافق ها (compromisers) هستند. چارچوب NET، در اصل آن را تغییر می دهد. این تغییر نه نمونه ی است و نه برای تحکیم کار، بلکه این یک حرکت بسیار بزرگ، برجسته و قابل تأمل است که همه مطالب مربوط به برنامه نویسی رایانه های شخصی شما (در هر شکل و اندازه ای) را دوباره تعریف می کند و شامل خود زبان ها نیز می باشد.

یکی از مهمترین حقایق موجود در مورد چارچوب NET. (و شاید این نظر از جهانی درست نباشد) آنست که این زبان، همانند جاوا از فناوری ماشین مجازی استفاده نمی کند. نرم افزار قابل اجرا در NET کاملاً کامپایل (همگردانی) می شود و همانند کد (رمز) کامپایل شده از یک برنامه C در سطح ماشین اجرا خواهد شد. این تصور غلط رایج از آن ناشی می شود که NET از یک زبان میانه که گاهی اوقات به عنوان “P – code” تعریف می شود، استفاده می کند. NET در واقع روش کامپایل (همگردانی) چند مرحله ای را به کار می برد. یک کامپایل اولیه به یک فرمت (قالب) میانه قابل حمل و یک کامپایل درجا (JIT) برای یک برگه نهایی قابل اجرا در زمان اجرا.

این سیستم (در حالی که نسبتاً پیچیده است) برای انجمن برنامه نویسی فواید زیادی دارد. یعنی در همه زبان ها دارای یک سطح عمومی هستند که در شکل میانه خود آن را به اشتراک می گذارند. بنابر این ترکیبی از ماجول(پیمانه) های نوشته شده در زبان های COBOL . FORTRAN , Eiffel , Visual Basic , C# یا هر زبانی که در آینده پشتیبانی خواهد شد میتواند برای زبان میانه (IL) کامپایل (همگانی) می شود و همراه با شرح کاملی از خود بسته بندی می گردد. رابط ها،خصوصیات (Prroperties) روش ها و کلاس (رده) های آن (همانند فوق داده ها) برای سایر ماجول (پیمانه) ها با محیط های توسعه برنامه کاربردی که سریعاً مجتمع شده اند (نظیر Visual Studio. NET) در دسترس می باشند.

هنگامی که زمان اجرای NET برای اجرای یک برنامه تبدیل شده به IL استفاده می شود، NET از یک JITer برای کامپایل (همگردانی) IL به یک کد ماشین اصلی (درتبدیل کامل) که در ریز پردازنده دستگاه اجرا می شود، استفاده می کند. JITer ها حتی برای برخی از بخشهای بی استفاده کامپایل نشده از کد‌ (رمز) میانه نیز بسیار سریع و مؤثر هستند. بدیهی است که این فرایند کامپایل وقت گیر است، بنابر این وقتی زمان های بارگذاری مهم هستند یا مسأله قابلیت حمل ضروی نیست، این سیستم یک کامپایلر pre – JIT را ارائه می دهد که آن رمز مبتنی بر IL را به یک قالب پایدار و اصلی تبدیل می کند.

چهارچوب NET چهار زبان اصلی را ارائه می دهد: C#، ویژوال بیسیک، C++ (همراه با الحاقات اداره شده) و Jscript. شرکت های دیگری نیز در حال ایجاد چند زبان دیگر هستند. مثلاً شرکت فوجیستو، نگارشی از COBOL را ارائه داده است.

مجموعه های اصلی از همگردان ها وجود دارند که زبان های تحت NET را می گیرند و ماجول (پیمانه) های زبان های میانه را ایجاد می کنند. در ‌آنسوی این مجموعه ها، Jiter های IL به رمز ماشین هستند. یک Jiter استاندارد وجود دارد که عمدتاً توسط سیستم های دارای قدرت و حافظه زیاد استفاده می شود. این نوع Jiter یک شکل استاندارد IL را به شکل استاندارد IL را به یک شکل بهینه شده در ماشین کامپایل (همگردانی) می کند. در نتیجه یک کامپایلر JIT مقرون به صرفه به دست می آید که سرعت زیادی دارد ولی کمی بهینه سازی شده است و وابسته به زیرمجموعه ای از IL از پیش بهینه می باشد. در نهایت per – JIT موجود یک کد (رمز) اصلی قابل اجرا ایجاد می کند که میتواند در شکل آماده برای کامپایل خود توزیع شود. این روشها تنها زمانی استفاده می شود که برنامه مورد نظر نتواند برای سکوی (دستگاه) سخت افزاری دیگری توزیع گردد.

سرانجام زمانی نسبی سخت افزار و سیستم عامل موجود در ماشین همان زمان اجرای زبان عمومی NET(CLR)، می باشد. این بلوک مؤثر خدماتی را ارائه می دهد که مؤلفه ها بتوانند از آنها استفاده کنند تا به رایانه شما یا OS اصلی ماشین تعامل داشته باشد. این نکته، جالب توجه است که میزبان ماشین CLR به عنوان یک PC شناخته نمی شود و سیستم عامل مورد نظر لزوماً نباید DOS یا ویندوز باشد. میکروسافت برای گسترش چارچوب، NET در بسیاری از سکوها (از کوچک ترین وسایل دستی ها، تلفن ها، PDA ها تاسیستم های لینوکس و یونیسک) یک راهکار (استرانژی) کاملی دارد. با وجود این که این راهکار در سیستم هایی غیر از سیستم 1386Windose 2000 سریعاً در دسترس قرار نمی گیرند، ولی قابلیت حمل آن باعث شد توسعه گران یک محیط برنامه نویسی قابل اجرا در همه جا و یکبار نوشته شده را ایجاد کنند.

زبان میانه (IL) میکروسافت

یک نکته قابل توجه در مورد زبان میانه (IL) میکروسافت این است که این زبان در ماشین مزبور پنهان نشده است. IL، یک زبان کاملاً جدید و مبتنی بر stake (پشته) است و شباهت کمی با کد اسمبلی (همگذاری) دارد که در صورت لزوم می توانید آن را با دست بنویسید. همچنین ابزارهایی وجود دارند که شما را قادر می سازد تا IL را از اسامبلی (همگذاری) خارج نموده و محتوای موضوعات سیستم رمز مختص به خود را مشاهده کنید. در فص 3-1 زبان میانه IL جزئیات بیشتری از IL را بررسی خواهیم کرد و حتی می توانیم مستقیماً آن را برای نوشتن برخی از برنامه ها مورد استفاده قرار دهیم.

مقدمه ای برای مدیریت حافظه .NET

یکی از واقعیت های NET که افراد بسیاری را هیجان زده نگران و یا فقط مات و مبهوت می کند این است که مدیریت حافظه زمان اجرای NET همانند یک سیستم GC (جمع آوری آشغال) می باشد. برنامه نویسان قدیمی در روزهای اوج زبان Lisp دچار کابوس می شدند، روزهایی وجود داشت که انتظار برای رسیدن به جمع کننده آشغال (garbage - collector) یک تجربه سخت بود زیرا این کار فقط در روزهای سه شنبه انجام می شد. برنامه نویسان C++، مدیریت حافظه ای داشتند که به آنها یادآوری می کرد که از دست دادن نظارت بر تخصیص حافظه ها و حذف ها کار درستی نیست.

سیستم مدیریت حافظه NET، تخصیص منابع حافظه را به شکل دیگری انجام می دهد. یک بلوک حافظه، به آشغال های جمع آوری شده یا کپه (heap) اداره شد، اختصاص دارد که سابقه (رکورد) همه موضوعات ارجاع داده شده به آن را حفظ می کند. فقط زمانی که آن مرجع ها ترخیص می شوند، موضوع از بین می رود. بدین وسیله، برنامه نویس از مسئولیت مدیریت حافظه خلاص می شود. شما دیگر مجبور نیستید که پاکسازی حافظه را به خاطر بسپارید، بلکه فقط باید استفاده از آن را متوقف نمایید. همچنین یک کلاس (رده) دیگر نباید از شمارش های مرجع ‌آگاه باشد بلکه فقط زمان حذف خود را می داند. برای تکه تکه شدن کمتر کپه، GC موضوعات را جابجا می کند تا فضاهای خالی و استفاده شده ای که در ذخیره گاه حافظه اداره شده قرار دارند را یکپارچه نماید.

این امر مانع از نشست های (leaks) حافظه می شود و باعث پیشرفت کارآیی سیستم های خادمی که به شدت فشرده شده اند، می گردد. همچنین کپه اداره شده باید اطمینان یابد که دستیابی های ناامن ]نظیر سرریزش ها و صدمات بافر (میانگاه) [ نمی توانند داده های مربوط به سایر اجرای برنامه های روی همان سیستم را اصلاح کنند. این امر کل سیستم عامل را ایمن تر و مطمئن تر خواهد کرد. سیستم های جمع آوری کننده آشغال، به نامؤثر و کند بودن معروف هستند. ولی میکروسافت به مرحله ای رسیده است که کارکرد واقعی جمع آوری آشغال در NET را تضمین می کند. این برنامه دارای سرعت بسیار زیادی است و تأثیر عمیقی در بارگذاری مهم CPU نخواهد داشت. معمولاً در یک برنامه ویندوز 2000 (مبتنی بر ماشین)، GC (جمع کننده آشغال) فقط به حدود 1000/1 از کل زمان پردازنده نیاز دارد.

در نهایت برای برنامه نویسانی که به استفاده از اشاره گرهای موجود در بلوک های حافظه نیاز دارند وسیله ای در سیستم وجود دارد که کد (رمز) و حافظه نا امن یا اداره نشده ناامیده می شود می شود. این به صورتی است که شما می توانید ساختارهای قدیمی خود یا برنامه های کاربردی قبلی که مبتنی بر C++ هستند به موازات ویژگی های NET استفاده کنید.

جهت دریافت فایل NET تکنولوژی لطفا آن را خریداری نمایید