اگر که از کاربران قدیمی ویندوز باشید، احتمالا عبارت Micorosoft .Net به گوشتان خوردهاست، که ممکن است به دلیل پیشنیاز برای نصب برنامهای به آن احتیاج داشتهاید، یا متوجه نصب بودن آن در لیست برنامهها شده باشید. در صورتی که یک توسعهدهنده باشید، نیازی به دانش زیاد درباره کارکرد آن ندارید. تنها لازم است که با آن بتوانید کار کنید. اما، از آنجایی که گیکهای فناوری دوست دارند تا از همهچیز سر در بیاورند، به بررسی اینکه Net. چیست و چرا بسیاری از برنامهها به آن نیاز دارند، پرداختهایم.
شرح Net framework.
نام “ Net Framework.” به خودی خود قسمتی از یک اسم بیمسمی است. یک چارچوب (یا فریمورک از نظر برنامهنویسی) در حقیقت مجموعهای از رابطهای کاربردی برنامهنویسی (APIها) و یک کتابخانه مشترک از کدها است که توسعهدهندگان میتوانند آنها را هنگام توسعه یک برنامه فراخوانی کنند، به طوری که مجبور به نوشتن کدها از ابتدا نباشند. در Net framework. کتابخانهای که شامل کدهای مشترک است، چارچوب کتابخانه کلاس (FCL) نامیده میشود. قسمتهای مختلف کد در کتابخانه مشترک میتوانند تمامی گونههای مختلف توابع را اجرا کنند. برای مثال، یک توسعهدهنده، نیاز دارد تا نرمافزار خود را قادر به پینگ کردن آدرس IP دیگر روی شبکه نماید. به جای نوشتن کد به وسیله خودشان و سپس نگارش تمامی قسمتهایی که مربوط به نتیجه پینگ خواهد بود، آنها میتوانند از این کد در کتابخانهای که اجرا کننده تابع مورد نظر است، استفاده نمایند.
این تنها مثال کوچکی از این موضوع بود. Net framework. شامل دهها هزار قطعه کد به اشتراک گذاشته شده است. این کدها زندگی را برای توسعه دهندگان بسیار راحتتر میکند، چرا که هنگام نیاز به اجرای توابع یکسان، دیگر احتیاجی به اختراع مجدد چرخ ندارند. در عوض، آنها میتوانند تمرکز خود را روی کد منحصر به فرد برنامه و رابط کاربری که کل برنامه را دربردارد، بگذارند. علاوه بر این با استفاده از چارچوب کد مشترک، آنها قادرند تا برخی از استانداردها را بین برنامههای مختلف فراهم کنند. سایر توسعهدهندگان میتوانند حس بهتری را هنگام کار کردن با برنامه ایجاد کنند تا کاربر یک نرمافزار بتواند روی موضوعاتی مثل کادر محاورهای بازکردن یا ذخیره فایلی که در دیگر برنامهها موجود است، ارتباط بهتری برقرار کند.
به چه دلیل اسم آن بیمسمی است؟
به خاطر خدمترسانی به عنوان یک چارچوب کد مشترک، Net. محیط زماناجرایی را برای برنامهها فراهم میکند. یک محیط زمان اجرا (runtime environment) یک ماشین مجازی را در برنامهای که آن را اجرا میکند، ایجاد میکند. بسیاری از پلتفرمهای توسعه نرمافزار موارد مشابهی را فراهم میکنند. Java و Ruby، هر دو محیطهای زمان اجرای خودشان را دارند. در مفهوم Net. محیط زمان اجرا، زبان مشترک زمان اجرا ((Common Language Runtime (CLR) نام دارد. زمانی که یک کاربر برنامهای را اجرا میکند، در زماناجرا کدهای برنامه به کد ماشین ترجمه میشوند و سپس به اجرا در میآیند. علاوه بر این CLR سرویسهای دیگری را ارایه میکند، مانند مدیریت حافظه و نخهای پردازنده، مدیریت استثنائات برنامه و مدیریت امنیت. در واقع محیط زمان اجرا، مسیر انتزاع یک برنامه از سختافزار واقعی است که آن را اجرا میکند.
مزایای بسیاری برای داشتن برنامهای که داخل محیط زماناجرا شروع به کار میکند، وجود دارد. بزرگترین آن قابلیت حمل است. توسعهدهندگان میتوانند کدهای برنامه خود را با استفاده از تعداد مختلفی از زبانهان پشتیبانشده بنویسند که شامل موارد محبوبی چون C#,C++ ,F# ,Visual Basic و دهها مورد دیگر میشود. آن کدها پس از این میتوانند روی هر سختافزار دیگری که از Net. پشتیبانی میکند، اجرا شوند. هنگامی که ظاهر پلتفرم برای پشتیبانی از سختافزارهای دیگری که مبتنی بر ویندوز نیستند، طراحی شد، طبیعت وابسته به آن منجر به این میشود که بیشتر برای استفاده از برنامههای ویندوزی به کار بیایند.
مایکروسافت پیادهسازیهای دیگری از Net. را برای رفع این مساله ایجاد نموده است. Mono یک پروژه متنباز است که برای فراهمکردن سازگاری میان برنامههای Net. و سایر پلتفرمها، به خصوص لینوکس طراحی شده است. Net Core. چارچوب متنباز و رایگانی است که برنامههای ماژولار و سبک را برای چند پلتفرم به ارمغان میآورد. Net Core. برای پشتیبانی از سیستمعاملهای مک، لینوکس و ویندوز (از جمله پشتیبانی از برنامههای همگانی پلتفرم ویندوز) در نظر گرفته شده است.
همانطور که تصور میکردید، چارچوبی مانند Net. میتواند به وضوح یک مزیت برای توسعه باشد. این چارچوب به توسعهدهندگان اجازه نوشتن کدهها توسط زبان دلخواه خود را میدهد و این اطمینان را میدهد که کد میتواند هرجای دیگری که از این چارچوب پشتیبانی میکند، به اجرا دربیاید. مزیت آن برای کاربران، داشتن برنامههای سازگار است. علاوه بر این، واقعیت این است که امکان توسعه بسیاری از برنامهها برای توسعهدهندگانی که به چارچوب دسترسی ندارند، وجود ندارد.
چگونه Net. به سیستم ما راه پیدا کرد؟
Net framework. دارای تاریخچه پر پیچ و خمی است و در این سالها نسخههای زیادی از آن را شاهد بودیم. معمولا جدیدترین نسخه از Net. با انتشار هر نسخه از ویندوز در دسترس قرار میگیرد. نسخههایی وجود داشتند که برای سازگاری با موارد قبلی در نظر گرفته شده بود (یعنی مثلا برنامهای که برای نسخه ۲ نوشته شده بتواند در صورت نصب نسخه ۳ Net. اجرا شود)، اما این کار به خوبی صورت نگرفت. همه برنامهها نمیتوانستند با نسخه جدید کار کنند. به خصوص روی سیستمهایی که ویندوز ایکسپی و ویستا داشتند، نسخههای متعددی از Net. را روی یک کامپیوتر میدیدیم.
اساسا ۳ راه برای نصب نسخههای خاصی از Net framework. وجود دارد:
-
نسخه ویندوز شما ممکن است که آن را در برنامههای پیشفرض خود داشته باشد.
-
یک برنامه به نسخه ویژهای از آن نیاز دارد که ممکن است در حین، نصب خود آن را هم نصب نماید.
-
برخی از برنامهها حتی ممکن است که شما را به سایت جداگانهای برای دانلود و دریافت آن ارجاع دهند و بخواهند تا نسخه خاصی از Net framework. را نصب کنید.
خوشبختانه، همه چیز در نسخههای امروزی ویندوز به سادگی در دسترس است. سابقا در زمانهای استفاده از ویندوز ویستا، ۲ مورد اتفاق افتاد. یکی از آنها انتشار Net framework.3.5 بود. این ورژن شامل جزییات مربوط به نسخههای ۲ و ۳ میشد. برنامههایی که به نسخههای قبلی نیاز داشتند، حالا در صورتی که نسخه ۳.۵ را نصب مینمودید، میبایست کار میکردند. مورد بعدی، سرانجام ارتقای Net framework. از طریق بروزرسانیهای ارایهشده بود.
در مجموع، این دو مورد به این معنی بود که حالا توسعهدهندگان میتوانستند با تکیه بر نصببودن اجزای مناسب توسط کاربران، دیگر آنها را مجبور نمیکردند تا موارد اضافهتری را برای اجرای برنامه نصب نمایند.
زمانی که ویندوز ۸ به میدان آمد، نسخه کاملا جدید و بازطراحی شده Net framework. ورژن ۴ عرضه شد. نسخه ۴ (به بعد) قابلیت سازگاری با نسخههای قدیمیتر را ندارد. این نسخه طوری طراحی شده است که بتواند در کنار نسخه ۳.۵ روی یک کامپیوتر به اجار دربیاید. نرمافزارهای نوشته شده با نسخه ۳.۵ و پایینتر نیاز به نصب بودن نسخه ۳.۵ آن داشتند و برنامههای نوشته شده با نسخه ۴ به بالا به ورژن ۴ از آن را احتیاج داشتند. خبر خوب این است که شما به عنوان یک کاربر مجبور نیستید تا در مورد نصب این موارد نگران باشید. ویندوز همه این مسایل را به خوبی مدیریت میکند.
ویندوز ۸ و ۱۰ شامل نسخههای ۳.۵ و ۴ هستند (که نسخه کنونی آن به ۴.۶.۱ تغییر یافته است). آنها در اولین نیاز به موارد اساسی نصب شدهاند، بنابراین اولین باری که هنگام نصب برنامهای به یکی از نسخههای آن احتیاج دارید، ویندوز آن را بهطور خودکار اضافه مینماید. در واقع شما میتوانید آن را توسط خودتان با دسترسی به ویژگیهای اختیاری ویندوز، اضافه کنید. گزینههای در اختیار شما برای افزودن آن به طور جداگانه، نسخههای ۳.۵ و ۴.۶ است.
این طور گفته میشود که دلیل درستی برای افزودن آنها توسط خود شما وجود ندارد، مگر اینکه کاربر توسعهدهنده باشید. اولین باری که برنامهای را نصب میکنید و احتیاج به یکی از نسخههای آن دارید، ویندوز در پسزمینه آن را برای شما اضافه میکند.
در صورت برخورد با مشکل هنگام استفاده از Net. چه کار باید کرد؟
به احتمال زیاد شما هم در نسخههای جدید ویندوز مشکلاتی را با Net. داشتهاید. از آنجایی که هردو نسخه مورد نیاز به همراه ویندوز موجود هستند و در هنگام نیاز نصب میگردند، نصب برنامهها بیدردسر خواهد بود. در نسخههای پیشین ویندوز، شما اغلب مجبور بودید تا نسخههای مختلفی از Net. را حذف کرده و مجدد نصب نمایید تا برنامه شروع به کار کند. اما هماکنون ویندوز همه آن کارها را برای شما انجام میدهد.
اگر فکر میکنید با مشکلاتی روبهرو هستید که مربوط به Net framework. میشود، چند گام برای اقداماتی در این زمینه وجود دارد.
در ابتدا، باید مطمین شوید که ویندوز تمامی آپدیتهای جدید را دریافت نموده است. اگر بروزرسانی از Net framework. در دسترس است، ممکن است که مشکل شما با آن حل شود. علاوه بر این میتوانید نسخههای مختلف آن را از سیستم خود پاک کنید و سپس دوباره آنها را نصب کنید. اگر این روشها کارساز نبود، میتوانید اقدام به جستجوی فایلهای مخرب ویندوز نمایید. این مورد زمان زیادی را نیاز ندارد و میتواند فایلهای سیستمی که آسیب دیده یا گم شدهاند را بازیابی کند.
اگر هیچکدام از موارد فوق کار نکرد، بهتر است از Net framework.Repair Tool. استفاده نمایید. این ابزار از تمامی نسخههای Net framework. پشتیبانی میکند. به وسیله آن میتوانید مسایلی را که هنگام نصب یا بروزرسانی Net. با آن مواجه میشوید، رفع کنید و احتمالا تمام مشکلات سیستم خود را به طور خودکار حل کنید.
سلام خسته نباشید.
سوالی در خصوص نصب برنامه Microsoft .NET Framework 4 Client Profile داشتم
من دوبار اخری که رفتم بخش کنترل پنل تا برنامه های اضافی رو پاک کنم برنامه ذکر شده رو یادم نمیاد که دیده باشم یعنی نمیدونم از قبل نصب بود یا نه وهمچنین مطمعنم که خودم نصبش نکردم
ایا ممکنه ضرری برای سیستم یا فایل های کامپیوتر داشته باشه؟؟؟
اخه وقتی نه خودم نصب کردم و نه مطمنم که قبلا نصب بوده باشه از کجا یهو نصب شد؟؟؟
خیلی مفید بود
تا حدی از کارش سر در اووردم
ممنونم