آژانس هواپیماییexchanging

چرا مایکروسافت از .net استفاده نمی کنه ؟

شروع موضوع توسط Tiva ‏25 دسامبر 2005 در انجمن برنامه نویسی

  1. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    مدتی هست این سئوال برام پیش اومده که چرا مایکروسافتی که 80% بودجه خودش رو اختصاص به دات نت داده و اینقدر روش تبلیغ می کنه چرا خودش نرم افزارهای خودش رو تحت اون نمی نویسه ؟؟؟؟
     
  2. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    سلام
    البته زیادم اینطور نیست. بخش اعظمی از Visual Studio .NET در C# نوشته شده ؛ مایکروسافت داره روی این کار می کنه که سیستم عامل های آینده اش تحت .NET باشه ، حتی به فکر آوردن .NET به داخل کرنل هم افتاده (نمونه اش پروژه Singularity ) ، مایکروسافت تمامی کارهای تحت وب (مثل صفحات وب و سرویس های وب ) رو با .NET انجام میده. حتی با Intel قرارداد بسته تا CPU های اینتل ، برنامه های نوشته شده در .NET رو بهینه کرده و سریعتر اجرا کنه. دلیل اینکه برنامه های تحت ویندوز ( client ) کمتر نوشته شدن ، اینه که هنوز همۀ مردم روی سیستم عامل هاشون .net رو نصب نکردن ؛
    تو اینترنت مقالاتی دربارۀ ویندوز ویستا بخونید تا متوجه بشید که مایکروسافت چقدر داره رو .net کار میکنه ، در واقع آینده اش رو گذاشته روی دات نت.
    ، کارهایی هستند که توسط دات نت قابل انجام دادن نیستند (مثل نوشتن بازی های سنگین سه بعدی ) و باید از محیط های پر قدرت تر مثل Visual C++ استفاده بشه
    در ضمن قرار نیست حتما خودش برای تمامی کارهاش از دات نت استفاده کنه که ، یه نگاه بندازید به دنیای برنامه نویسی ببینید چقدر از دات نت تاثیر گرفته ، حتی جامعه لینوکس که دشمن درجه یک مایکروسافت هستند بدشون نمی یاد ازش استفاده کنن. (الان بعضی از توزیع های لینوکس ، Mono رو همراه لینوکس عرضه می کنن ، من خودم فقط SUSE رو دیدم ، اما مطمئنم خیلی های دیگه هم این کارو می کنن).
     
  3. mostafa_gm

    mostafa_gm Registered User

    تاریخ عضویت:
    ‏4 آپریل 2005
    نوشته ها:
    1,721
    تشکر شده:
    232
    محل سکونت:
    My House
    به احتمال زیاد در آینده نزدیک Net FrameWork. جای JVM رو میگیره.
     
  4. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    این net. به نظرم دو تا اشکال عمده داره ..
    یکی اینکه سورس برنامه حتی اگر obfuscate هم بشه بازهم در اختیار بقیه هست ..
    دوم اینکه سرعت اجرا و performance برنامه در مقابل برنامه هایی که با ++VC نوشته می شن پایین تر هست !!

    آخه چی طراحی کرده این مایکروسافت ؟!
     
  5. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    اولاً:
    برنامه های C++ رو هم هر چقدر شدید بپیچونی باز قابل کرک شدن و پی بردن به الگوریتم های استفاده شده در اونا هستیم.
    ثانیاً:
    همیشه سرعت حرف اول رو نمیزنه ، پس بازدهی (Productivity) چی میشه ؟

    همیشه در سیستم های نرم افزاری توازنی بین قدرت و سرعت و سهولت در استفاده ، وجود داره.
    درسته برنامه های VC++ سریعتر اجرا میشن اما آیا VC++ به اندازۀ C# راحت هست ؟
    تازه این سرعت در جاهای بحرانی مثل بازی های سنگین سه بعدی ، کار با سخت افزار ، برنامه های گرافیکی و .... خودشو نشون میده ، نه در برنامه های متوسط (که حدود 90 درصد برنامه ها هم جزو همین دسته اند)
    شما در .NET کمی از سرعت رو فدا می کنی اما در عوض چیز هایی به دست می یاری که هزار می ارزه به سرعت ، مثل:
    مدیریت خودکار حافظه ، دسترسی به مجموعۀ بزرگی از کلاس ها که با یک روال منطقی چیده شدن، توانایی کار با چندین زبان در یک پروژه ، سادگی ، یکپارچگی محیط برنامه نویسی و ...
    ببینین ما چقدر راحت توی .NET به فایل ها و database و سوکت های شبکه و Regular Expression و کلاسهای Cryptography و کلاس های کار با XML و هزاران چیز دیگه ، خیلی راحت دسترسی داریم در حالی که در C++ ، کار با این چیزا مصیبته.
     
  6. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    خب به نظرت مایکروسافت نمی تونست یک زبانی اختراع کنه که هم قدرت داشته باشه و هم سرعت و کیفیت !؟
     
  7. appbannerkhuniresbanner
  8. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    اولاً چه ربطی به بنده خدا مایکروسافت داره ؟ (حیوونی بیل گیتس)
    ثانیاً تو پست قبلی مزایای Framework (مثل دات نت)
    یا Virtual Machine (مثل جاوا) رو گفتم ، خب برای استفاده از اون مزایا
    ما نیاز به ارائه دهندۀ اونا داریم ، و حالا ارائه دهنده کیه ؟
    در بحث ما .NET ، یعنی نمیشه بدون یک محیط اجرا (Runtime) و یک چارچوب
    نرم افزاری به مزایایی
    مثل مدیریت خودکار حافظه ، توانایی کار با چندین زبان در یک پروژه و ... دسترسی داشت.
    ثالثاً: بحث زبان نیست ، بحث یک چارچوب نرم افزاریه ، چون فرق نمیکنه در دات نت
    با کدوم زبان کدت رو بنویسی چون در نهایت به MSIL تبدیل خواهد شد .
    رابعاً: .net (مخصوصاً در ورژن 2.0 ) خیلی قدرتمنده ، این همه مزایا ، این همه پشتیبانی
    از استانداردها ، و این همه سازگاری. سرعتش هم واقعاً قابل قبوله ، البته بستگی به
    برنامه نویسش داره ، بهترین محیط با سرعت و قدرت بالا رو بدی دست یه تازه کار ، نمیتونه
    کار فوق العاده ای بکنه .
    منظورت رو از کیفیت متوجه نشدم!!!!
     
  9. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    منظور من این بود که مایکروسافت می تونست چیزی بسازه که همه اون ویژگی ها رو داشته باشه ..
     
  10. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    حالا این ++vc ورژن 6 با ++vc تحت net. فرقی می کنه ؟؟؟ از همون لحاظ ها ؟
     
  11. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    فرقش اینه که حالا نه تنها میتونه مثل قبل برنامه های Win32 ، MFC و ATL درست کنه (البته با سرعت بیشتر از قبل)
    ، بلکه میتونه مثل VB .NET و سی شارپ ، برنامه های تحت دات نت هم ایجاد کنه ، برای همینم یه سری کلمه کلیدی جدید بهش اضافه شدن. (مثل __event , __interface , __gc و __typeof و __box و ... )
    البته کامپایلر و لینکر ، نسبت به نسخه قبل بهبود پیدا کردن و در کتابخانه ها هم تغییراتی ایجاد شده.
    (همچنین این نسخه (یعنی VC7 ) ، از نظر سازگاری با استانداردهای ANSI/ISO C++ ، تا عدد 98 درصد رسیده ، یعنی تقریبا میشه گفت استاندارد ترین نسخه پیاده سازی شده این زبان در جهان.
     
  12. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    من یه عالمه وقته کا دارم #C کار می کنم و می خونم .. اما با این صحبت ها منو تحریک کردی که برم سراغ ویژال سی !!!
     
  13. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    چه نیازی به این کار هست ؟
    الان حتی برنامه نویسای خیلی حرفه ای هم (البته در محیط دات نت) ، 90 درصد کاراشون رو با سی شارپ و تنها ده درصد رو با سی پلاسپلاس انجام میدن. (حتی شما میتونین برنامه های unmanaged نوشته شده در C++ رو در یک کلاس managed بپوشونید (wrap کنید) و در سی شارپ از اون استفاده کنید.
    به نظر من سی شارپ زبان خیلی بهتریه (بازم میگم : در محیط دات نت) ، اگرم واقعا نیاز به انجام یک سری کارهای خیلی سنگین بودید ، یا میخواستید برنامه تون تحت دات نت نباشه که خب ویژوال سی بهتره
    (شما هرکاری که میگین در سی پلاس ممکنه من میتونم مشابهش رو در سی شارپ بهتون بگم .
    دیگه از pointer قویتر که نداریم ؟ که اونم در سی شارپ موجوده)
     
  14. avajang.com .leftavajang.com.right
  15. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    آخه من همیشه می خواستم که یک زبانی که بهترین و قویتیرن باشه رو انتخاب کنم و از اون به بعد وفتم رو بزارم برای مهارت بیشتر توی اون زبان .. حالا اینجا یه خورده به شک افتادم ..
    قبلا با ++C کار می کردم .. الان هم مدتی هست با #C کار می کنم ..
     
  16. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    ببینین انتخاب زبان که یه امر مطلق و قطعی نیست که مثلا دست بذاریم رو فلان زبان و بگیم آره این از همه بهتر و عالیتره. بستگی به کارتون (چه برنامه ای میخواید بنویسید) و محیطتون (سیستم عامل و پلتفرم) و یه سری پارامتر دیگه (مثل پیشینۀ برنامه نویس ، زبانی که در گروهش استفاده میشه ، مسئلۀ زمان و ... ) داره.
    همیشه هم سرعت و قدرت مطرح نیست ؛ سرعت اجرای برنامه های C از Python خیلی بیشتره ، اما ممکنه اون کاری که مد نظر شماست با 1 ساعت کد نویسی در Python انجام بشه، در حالی که شاید نوشتن همون برنامه در C مثلا 3 ساعت وقت بگیره (یا به فرض کد C چند صد خط بیشتر باشه یا بخواید اون برنامه رو روی سیستم عامل های دیگه هم اجرا کنید ) ، حالا در اینجا اگه زمان حرف اول رو میزنه باید برید سراغ اونی که زودتر کارتون رو راه میندازه.
    یا در پردازش لیست ها (یا برنامه نویسی functional ) بالطبع LISP و Haskell و OCAML خیلی بهتر از مثلا سی شارپ هستن
    یا برای نوشتن بازی های سنگین گرافیکی دیگه سراغ سی شارپ (و کلا دات نت ) نمیرن و از C و سی پلاس پلاس استفاده میکنن.
    شما هم اگه حوزۀ کاریتون دات نته ، سی شارپ بهترین گزینه است. اما اگه میخواین برنامه های unmanaged هم بنویسین خب مطمئنا C++ بهترین زبانه .
    در ضمن تحقیقات نشون میده که بهترین برنامه نویسان از حداقل دو زبان برای انجام کاراشون استفاده می کنند.
    به نظر من دربارۀ زبان های برنامه نویسی تحقیق کنید ، چند تا زبان رو یاد بگیرید (نه در حد حرفه ای ، بلکه در حد اینکه با هر کدوم چند ساعت ور برین ) ، از Google هم کمک بگیرین.
     
  17. Mehdi.T

    Mehdi.T کاربر فعال برنامه نویسی کاربر فعال

    تاریخ عضویت:
    ‏30 سپتامبر 2005
    نوشته ها:
    506
    تشکر شده:
    3
    محل سکونت:
    In Search of Sunrise
    جاي تشكر داره
     
  18. Tiva

    Tiva Registered User

    تاریخ عضویت:
    ‏6 آپریل 2005
    نوشته ها:
    708
    تشکر شده:
    115
    بابته چی ؟ از کی ؟ از چی ؟ چرا ؟
     
  19. djfalcon2006

    djfalcon2006 کاربر تازه وارد

    تاریخ عضویت:
    ‏9 فوریه 2006
    نوشته ها:
    2
    تشکر شده:
    0
    avalan mibakhshin ke finglish minevisam sanian khodamo koochiktar az ooni midoonam ke bekham dar in maghoole nazary bedam vali hala be nazar man baraye har kar zaban khsi darym baraye mesal

    agar Game Programming bashe hichi be paye Visual C++ nemirese hamamoon ba akharyn va brhtaryn game engine yani doom 3 ashna hastym va midoonin ke ba VC++ neveshtanesh

    baraye hack ke zamineye takhasosy mane ba eghtedar migam vb6

    baraye database .NET jaye hich shkiro vase adam nemizare farghiam nemikone koodoomeshoon bashe hamashoon alian vase in kar

    barname nevisy mobileam ke maloome

    web programingam faghat PHP
     
  20. H_R

    H_R مدیر بازنشسته

    تاریخ عضویت:
    ‏30 مارس 2005
    نوشته ها:
    3,285
    تشکر شده:
    15
    محل سکونت:
    North Pole

    ببینم #C
    decontractor هم داره ؟؟:D
     
  21. MehdiC#

    MehdiC# کاربر تازه وارد

    تاریخ عضویت:
    ‏2 نوامبر 2004
    نوشته ها:
    55
    تشکر شده:
    0
    محل سکونت:
    ابهر
    ببخشید decontractor یعنی چی ؟
     
  22. H_R

    H_R مدیر بازنشسته

    تاریخ عضویت:
    ‏30 مارس 2005
    نوشته ها:
    3,285
    تشکر شده:
    15
    محل سکونت:
    North Pole
    ما جوونیامون رفتیم یه جا مصاحبه کنیم یارو کم اورد گفت contractor و decontractor میدونی چین ؟ ما گفتیم والا contractor رو میدونیم ولی decontractor چیه دیگه ؟ گفت سوال انحرافی بود مال ++C اه . فکر میکنم چیز خفنی باشه ولی نمیدونم خودمم چیه فقط میدونم #C ندارش خدا رو شکر :lol: