PDA

View Full Version : تحقیق در مورد سی شارپ



احمد اکرمی
چهارشنبه 06 مرداد 1395, 12:34 عصر
سلام خسته نباشی من یه پروژه با سی شارپ طراحی کردم حالا میگه باید یه تحقیق در مورد سی شارپ بهش اضافه کنید

mrprestige
چهارشنبه 06 مرداد 1395, 18:36 عصر
سلام دوست من وقتت بخیر ، سوالت خیلی کلی بود . خب چه تحقیقی؟؟ تاریخچه اون یا عملکرد و کدنویسیش ؟؟ سی شارپ گسترده س دوست من تو چه بخشیش گفتن تحقیق کنید؟

reza_ali202000
چهارشنبه 06 مرداد 1395, 22:06 عصر
سلام کل سی شارپ:
141698

ciavosh
پنج شنبه 07 مرداد 1395, 01:24 صبح
سلام کل سی شارپ:
141698

البته می‌دونیم که این غلطه کلاً.

reza_ali202000
پنج شنبه 07 مرداد 1395, 01:46 صبح
البته می‌دونیم که این غلطه کلاً.
توی دوره ای که آقای آندرس هلزبرگ توی ماکروسافت برامون برگزار کردن همین را گفت. منم از جزوم برداشتم فقط ترجمش کردم(سال 2002 هند):چشمک:
انشالله که آقای آندرس هلزبرگ رو میشناسید دیگه.

ciavosh
پنج شنبه 07 مرداد 1395, 02:17 صبح
توی دوره ای که آقای آندرس هلزبرگ توی ماکروسافت برامون برگزار کردن همین را گفت. منم از جزوم برداشتم فقط ترجمش کردم(سال 2002 هند):چشمک:
انشالله که آقای آندرس هلزبرگ رو میشناسید دیگه.

نمیشناسم. ولی این که مایکروسافت این ادعا رو داشته باشه عجیب نیست. اگر سی شارپ خوب بود مایکروسافت ویندوز رو با اون مینوشت نه با سی. توی کلاسی که در هند داشتید کاش از استاد میپرسیدید علتش رو. #C چه کاری انجام میده که Qt نمیده؟

reza_ali202000
پنج شنبه 07 مرداد 1395, 03:04 صبح
نمیشناسم. ولی این که مایکروسافت این ادعا رو داشته باشه عجیب نیست. اگر سی شارپ خوب بود مایکروسافت ویندوز رو با اون مینوشت نه با سی. توی کلاسی که در هند داشتید کاش از استاد میپرسیدید علتش رو. #C چه کاری انجام میده که Qt نمیده؟
سیستم عامل ترکیبی از چندتا زبان برنامه نویسی هست. که معمولا هسته رو با اسمبلی و شل(بجز هسته) با سی و پوسته اولیه رو با سی پلاس پلاس و تعاملات رو حتی با وی بی 6 هم نوشته شده. ویندوز لانگهورن پوستش با سی شارپ نوشته شده و حتی قسمتهایی از ویندوز 10 هم با سی شارپ تهیه شده.
ممکنه که با qt بشه تمام کارهایی رو که میشه توی سی شارپ انجام داد توی اونم انجام داد و همچنین برعکسش. دلیل موفقیت روز به روز سی شارپ پشتیبانی دقیق و موثر ماکروسافت هست و نه چیز دیگه.
ماکروسافت خط مشی داره که آقای برنامه نویس بنده فلان ابزار رو که گذاشتم تا 50 سال دیگه پشتیبانی میکنم و هی آپدیتش میکنم پس با خیال راحت ازش استفاده کن. ولی آیا زبان qt شرکتی به قدرت ماکروسافت هست که پشتیبانیش کنه. آیا من برنامه نویس اگه این زبون رو یاد بگیرم امنیت شغلی تا سی سال دیگه دارم؟و خیلی سوالات دیگه.

ciavosh
پنج شنبه 07 مرداد 1395, 10:47 صبح
این که مایکروسافت پشتیابنی می‌کنه قبول. ولی پشتیبانی مایکروسافت هم قابل اعتماد نیست. مثلاً Windows RT ذو روی دستگاه Surface داد و پس از مدت کوتاهی پشتیبانیش رو قطع کرد. کلاً سیاست بازاریابی مایکروسافت Push هست. یک محصولی رو میده و همه رو با روش‌های مختلف مجبور به استفاده می‌کنه. #C کپی برابر اصل Java است + کتابخانه ساخت فرم در ویندوز. اگر استقلال طلبی و انحصار طلبی مایکروسافت نبود با سان کنار میومد و همون کاری رو که داره با #C انجام میده با جاوا انجام می‌داد.

API ویندوز C هست. درسته که از زبان‌های مختلف در ساخت ویندوز استفاده شده ولی بدنه اصلیش رو C تشکیل داده.

radeon
پنج شنبه 07 مرداد 1395, 11:35 صبح
سی شارپ اصلا گزینه مناسبی برای ارتباط با سخت افزار نیست.برای مثال اصلا شما نمیتونید با سی شارپ درایور های کرنل مد بنویسید
اینکه میگید ""اگر سی شارپ خوب بود مایکروسافت ویندوز رو با اون مینوشت نه با سی"" اساس و پایه نداره
با سی شارپ سیستم عامل معنا نداره. چون باید در سطح سخت افزار کد بزنی، و سی شارپ این امکان رو نمیده و خود کتابخونه و فریمورکش با c/c++ پیاده سازی شده

reza_ali202000
جمعه 08 مرداد 1395, 02:15 صبح
سی شارپ اصلا گزینه مناسبی برای ارتباط با سخت افزار نیست.برای مثال اصلا شما نمیتونید با سی شارپ درایور های کرنل مد بنویسید
اینکه میگید ""اگر سی شارپ خوب بود مایکروسافت ویندوز رو با اون مینوشت نه با سی"" اساس و پایه نداره
با سی شارپ سیستم عامل معنا نداره. چون باید در سطح سخت افزار کد بزنی، و سی شارپ این امکان رو نمیده و خود کتابخونه و فریمورکش با c/C++‎ پیاده سازی شده

اتفاقا با سی شارپ هم میشه سیستم عامل نوشت و چند سالی هس که داره روش کار میشه. اپن سورس هم هست.
فکر میکنم تا الان دیگه صف بندی سی پی یو تمام شده و کم کم دارن میرن سمت گرافیکال.
https://cosmos.codeplex.com/

ciavosh
جمعه 08 مرداد 1395, 09:49 صبح
اتفاقا با سی شارپ هم میشه سیستم عامل نوشت و چند سالی هس که داره روش کار میشه. اپن سورس هم هست.
فکر میکنم تا الان دیگه صف بندی سی پی یو تمام شده و کم کم دارن میرن سمت گرافیکال.
https://cosmos.codeplex.com/

هیچ بعید نیست این پروژه بتونه ویندوز ۱۰ رو بشکنه :-). اما دو تا نکته: اول این که توی این پروژه دارن خروجی به ماشین کد میگیرن پس واقعاً نمیتونیم بگیم سی شارپه دوم این که ظاهراً یک زبان دیگر به نام #X درست کردن که به جای اسمبلی استفاده کنن ازش.

radeon
جمعه 08 مرداد 1395, 15:34 عصر
اینکه میشه یه چیزی شبیه به سیستم عامل نوشت شکی توش نیست دوستان
همینطوری که java os هم داشتیم.

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


Cosmos is an Operating System development kit which uses Visual Studio as its development environment. Despite C# in the name, any .NET based language can be used, including VB.NET, Fortran, Delphi Prism, IronPython, F#, and more. Cosmos itself and the kernel routines are primarily written in C#, and thus the Cosmos name. Besides that, NOSMOS (.NET Open Source Managed Operating System) sounds stupid.

Cosmos is not an Operating System in the traditional sense, but instead it is an "Operating System Kit", or as I like to say, "Operating System Legos". Cosmos lets you create Operating Systems just as Visual Studio and C# normally let you create applications. Most users can write and boot their own Operating System in just a few minutes, all using Visual Studio. Cosmos supports integrated project types in Visual Studio, and an integrated debugger, breakpoints, watches, and more. You can debug your Operating System the same way that you debug a normal C# or VB.NET application.

ولی باز برای پیاده این سبک از پروژه ها حتما نیازه با C و اسمبلی x86-64 کار بشه

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




A reliable OS which never hangs (of course until hardware fails). Whichever program crashes, the OS should never hang or go unresponsive.
Very safe (safe in the sense which is free from buffer overflows, heap overflows, exploits etc.)