ببینید حجم برنامه ها از کوچیک تا بزرگ طبیعی هست مثلا یه برنامه 2 مگابایتی خب چیز سنگینی نیست ولی یه برنامه مثل فوتوشاب بایدم باشه بالای چند صد مگابایت.
نیاز به دات نت یک مشکل نیست یک چهار چوب هستش که مایکروسافت برای خودش مشغولیت کرده و مخ هرچی برنامه نویس هستو با این چهار چوب مزخرفش زده ! :ی مخصوصا در ایران راحت میرن به طرفش چون ساده و تقریبا قابل فهم و یادگیری اون سریع هست.
سیاست مایکروسافت بر این هست که همه چیز ر متکی خودش وابسته خودش کنه و در این صورت برنامه نویسی در چهار چوب دات نت 100% متکی ویندوز هستش و شما نمیتونید بدون نداشتن دات نت حتی در خود ویندوز از برنامتون استفاده کنید.
هر برنامه ای که در چهار چوب دات نت تولید بشه فقط و فقط در ویندوز قابل اجرا خواهد بود و اونم حتما باید دات نت نصب باشه چون وجود کتابخانه برای اجرای برنامه امریست ضروری.
تمام زبان های مایکروسافتی مثل VB.NET و #C در محیط Visual Studio متکی به فریم ورک های دات نتی هستند.
حتی زبان ++C رو که در Visual Studio میبینید نمیتونید راحت از دام متکی بودن به ویندوز و فریم ورک ها و حتی API هاش راحت بشید. در VB و #C از دات نت استفاده میکنید و در ++C در نسخه های CLI بازهم از دات نت استفاده میکنید و در حالت های خیلی Native در ++C از فریم ورک های ATL , Win32 و MFC استفاده میکنید که همه اینها متکی به مایکروسافت میباشند.
برای رهایی از وابستکی به سیستم عامل ویندوز و دنگو فنگاش تنها 2 راه وجود دارد.
1.برنامه نویسی ++C به صورت Native با استفاده از کتابخانه های STL و استاندارد.
2.برنامه نویسی با استفاده از پبتفرم های خاص لینوکسی که در نهایت امکان کامپایل روی تمامی سیستم عامل ها رو براتون خواهد داد.
ذاتا همیشه انتخاب راه ساده و نزدیک خوب هست ولی مسلما ایراداتی دارد ! حالا استفاده از دات نت درسته راحته ولی یکی از مشکلات بزرگش ایجاد وابستگی هست... حالا بماند از این که سرعت و کیفیت برنامه های دات نتی به درد بچه بازی میخوره فقط :ی
هیچوقت نمیان پروژه های بزگ رو با دات نت بنویسین و مدیریت نرم افزار رو به دست سیستم عامل بدن ! قدرت برنامه نویسی و تولید کتابخانه های باز در زبان های بومی مثل ++C هست که در کنار سخت بودن سرعت و. کیفیت بسیار بالایی را دارند.