PDA

View Full Version : سوال: فرق #C با C#.Net



Altech
یک شنبه 25 بهمن 1388, 19:28 عصر
سلام .
فقط می خواستم تفاوت این دو رو بدونم و برم سر شروع یادگیری #C .
الان من از کدوم شروع کنم ؟
کتاب C# How to Program کدوم رو یاد داده ؟
اصلا برای شروع این کتاب مناسب هست ؟

CYCLOPS
یک شنبه 25 بهمن 1388, 19:41 عصر
دوست عزیز تفاوتی بین این دو وجود نداره چون سی شارپ در اصل یه زبان دات نتی هست و قبل از دات نت وجود نداشته در واقع مایکروسافت اونو مخصوص دات نت ساخت و عرضه کرد .
البته معمولا به زبان سی شارپ ؛ C#‎‎‎ (یا C#‎‎.NET) و به برنامه نویسی گرافیکی ویندوزی در سی شارپ ؛ Visual C#‎‎‎ (با Visual C#‎‎.NET) گفته میشه .

به نظر من کتاب C#: The Complete Reference کلا کتاب خوبیه مخصوصا برای شروع . . . ( اینجا رو ببین (http://www.amazon.com/Complete-Reference-Osborne/dp/0072134852) )
موفق باشی :چشمک:

Altech
یک شنبه 25 بهمن 1388, 19:47 عصر
ممنون .
منظور از C# 2.0 یا C# 3.0 و اینا چیه ؟ ورژن دات نت فریم ورک رو نشون میدن ؟

HOSSEINGHOLI
یک شنبه 25 بهمن 1388, 19:53 عصر
بله اون ورژن مربوط به frame work است
مثلا c# 3.5 از wpf و linq پشتیبانی میکنه ولی c# 2 پشتیبانی نمیکنه

r00tkit
یک شنبه 25 بهمن 1388, 22:58 عصر
بله اون ورژن مربوط به frame work است
مثلا C#‎ 3.5 از wpf و linq پشتیبانی میکنه ولی C#‎ 2 پشتیبانی نمیکنه


نخیر ورژن c# با ورژن .net فرق می کنه::

CYCLOPS
دوشنبه 26 بهمن 1388, 09:23 صبح
نخیر ورژن C#‎ با ورژن .net فرق می کنه::
لطفا منبع این عکس و گفته خودتون رو هم بگید تا سندیّت پیدا کنه . . .
ممنون :چشمک:

keivan mousavi
دوشنبه 26 بهمن 1388, 10:33 صبح
فرق C#‎‎ با C#‎‎.Net
سلام .
فقط می خواستم تفاوت این دو رو بدونم و برم سر شروع یادگیری C#‎‎ .
الان من از کدوم شروع کنم ؟
کتاب C#‎‎ How to Program کدوم رو یاد داده ؟
اصلا برای شروع این کتاب مناسب هست ؟



نخیر ورژن C#‎‎ با ورژن .net فرق می کنه::

قبلاً در این سایت در موردش بحث شده
هر زبانی که در خانواده ویژوآل استادیو باشد تحت پلتفرم NET. میباشد
پس چیزی به نام C#‎ نداریم فقط در بعضی منابع برای خلاصه گویی C#‎ گفته میشود


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

اصلاً این عکسی که گذاشتید چه ربطی داشت؟؟؟
من که چیزی نفهمیدم

r00tkit
دوشنبه 26 بهمن 1388, 12:37 عصر
لطفا منبع این عکس و گفته خودتون رو هم بگید تا سندیّت پیدا کنه . . .
ممنون :چشمک:
کتاب c# in depth ص 27

Salar Ashgi
دوشنبه 26 بهمن 1388, 12:52 عصر
کتاب C#‎‎ in depth ص 27


حق با ایشونه ، من اون صفحه کتاب رو قرار میدم تا خودتون نگاه کنید .

keivan mousavi
دوشنبه 26 بهمن 1388, 12:53 عصر
کتاب C#‎ in depth ص 27

دوست عزیز لطفاً معنی این عکسو به من بگید

r00tkit
دوشنبه 26 بهمن 1388, 20:30 عصر
1) من نگفتم بین c# و C# .net فرق هست :عصبانی:
کل حرف من این بود بین ورژن C# و net. فرق داره

*منظور از ورژن C# ورژن کامپایلر c# است که خود همراه framework عرضه می شود *

و library و Clr که خود جزء net. بوده نیز دارای ورژن هستنند

مثلا در net. 3 فقط BCL تغییر کرده و کامپایلر c# و clr هیچ تغییری نکرده

و با این جمله هم مشکل دارم :



CLR کامپایلر ویژوآل استادیو هستش


علت :


wikipedia:The Common Language Runtime (http://en.wikipedia.org/wiki/Common_Language_Runtime) (CLR) is the virtual machine component of the .NET framework.



و دیگر هیچ بحث ی با کسی ندارم .

tefos666
دوشنبه 26 بهمن 1388, 21:40 عصر
دوستان من يه مقدار گيج شدم چيزي كه تا حالا فكر ميكردم اين بود كه :

بنا به دلايلي اعم از عدم توانايي در اجراي مفاهيم شي گرايي و مشكلاتي كه زبانهاي قبلي چون vb6 داشتند و از مدل com استفاده ميكردند دات نت بوجود آمد ، محيطي يكپارچه جهت توليد نرم افزار كه مشتمل بر 4500 كلاس كه 1- مستقل از زبان برنامه نوبسي 2- مستقل از پلتفرم (البته اين مورد هنوز در حد ادعاست) ، منظور از مورد 1 هم اينه كه برنامه رو به هر زباني كه دات نت ساپورت ميكنه شما ميتوني بنويسي و اونوقت بجاي compile عمل build انجام ميشه و تبديل ميشه به 1 زبان بينابيني به نام MSIL كه پسوندش يا exe يا dll
نكته اينجاست كه ميگه براي اجراي اين exe شرطي دارم : بايد ابزاري داشته باشي (dot net framework) چون اين زبان بينابيني براي OS‌ناشناخته است
http://barnamenevis.org/forum/attachment.php?attachmentid=44159&stc=1&d=1266258586

wikipedia هم اينطوري گفته
http://en.wikipedia.org/wiki/C_Sharp_(programming_language)



It was developed by Microsoft (http://en.wikipedia.org/wiki/Microsoft) within the .NET (http://en.wikipedia.org/wiki/Microsoft_.NET) initiative .

بنابراين تاحالا فكر ميكردم C#‎‎ جدا از دات نت نيست ، لطفا يكي راهنمايي كنه بالاخره نتيجه چي شد ؟ البته هنوز هم اينطوري فكر ميكنم C#‎ با .net‌معنا پيدا ميكنه

HOSSEINGHOLI
دوشنبه 26 بهمن 1388, 22:49 عصر
دوست عزیز این حرفی که میگی قانع شده نیست
شما میگی مثلا در net. 3 فقط BCL تغییر کرده و کامپایلر C#‎ و clr هیچ تغییری نکرده
عزیز من به نظرت قابلیت های جدید مثل linq اضافه شده و clr و کامپایلر تغییر نکرده:قهقهه:

keivan mousavi
دوشنبه 26 بهمن 1388, 23:06 عصر
عزیز من به نظرت قابلیت های جدید مثل linq اضافه شده و clr و کامپایلر تغییر نکرده:قهقهه:

LINQ بخشیشه شما نگاه کن WCF که به جای Web Srvice ها اومدن و کلاً از معماری سوئیچ استفاده میکنن یا قوانینی مانند کالکشن بین کلاسها

sia_2007
سه شنبه 27 بهمن 1388, 10:23 صبح
البته لحن حرف زدن شما دوستان خوب نیست
بگذرم
در Net 3.5. ؛ LINQ و WF و WCF و WPF و ... اظافه شده اند.
کسی هست این جا به من توضیح بده چگونه کامپایلر #C نسخه 3.0 که قبل از این تکنولوژی ها به وجود آمده و چیزی به نام LINQ نمیشناخته ؛ بدون هیچ تغییری حالا هم کد #C اون رو میخونه !!! هم معادل IL اون رو در میآره.
در مورد نسخه CLR که مشکلی وجود نداره؛ چون با IL سر و کار داره؛ ولی خب کامپایلر #C ؛ نه از LINQ خبر داشته و نه معادل IL اون.
ببینید با آمدن نسخه جدید پلتفرم Net. ؛ نسخه ویژوال استدیو نیز ارتقا پیدا میکند؛ چون کلمات کلیدی جدید در قبلی ها شناسایی نمیشوند.
این امر برای کامپایلر #C هم هست.
یه بره خورده ای میخواد اون کتاب رو بخونه ببینه منظور از نسخه #C چی بوده ؟
آیا منظور نسخه کامپایلر بوده ؟

r00tkit
سه شنبه 27 بهمن 1388, 14:38 عصر
دوست عزیز این حرفی که میگی قانع شده نیست
شما میگی مثلا در net. 3 فقط BCL تغییر کرده و کامپایلر C#‎‎ و clr هیچ تغییری نکرده
عزیز من به نظرت قابلیت های جدید مثل linq اضافه شده و clr و کامپایلر تغییر نکرده:قهقهه:


من گفتم net. 3
شما همه استاد من هستید اما linq توی net.3.5 امد و با امدنش کامپایلر C# عوض شد
برای پشتیبانی از LINQ
هر کی قبول نداره . با دلیل بگه چرا؟؟

توی پروژه های net. 3 این System.Linq وجود ندارد



در Net 3.5. ؛ LINQ و WF و WCF و WPF و ... اظافه شده اند.

نخیر wpf ,wcf ,wf توی net. 3 امدن و linq تو 3.5

در مورد wcf و wpf و... در net.3 نیازی به تغییر compiler نیست؟

وبرای linq ویا Wcf, wpf,و... در هیچ کدام از نسخه های net. نیازی به تغییر clr وجود ندارد


***مطلب بی ربط***:خجالت:
تو سایت برنامه نویس رسم شده:

کاربر تازه وارد =>>> یعنی کاربر تازه کار +...

کاربر دائمی =>>> خدای برنامه نویسی+...

keivan mousavi
سه شنبه 27 بهمن 1388, 14:44 عصر
اما قربون اون آواتار قشنگت(منهای آرم وسطش البته)


اسم الله رو هرجا بنویسی قشنگه


حداقل موقع عصبانیت جواب ندید تا اینجور اشتباهاتو نکنید


نقل قول:
نوشته شده توسط keivan mousavi http://barnamenevis.org/forum/images/buttons/viewpost.gif (http://barnamenevis.org/forum/showthread.php?p=911263#post911263)
CLR کامپایلر ویژوآل استادیو هستش گرفته شده از لغت Command Language Runtime



وقتي با دات نت برنامه مينويسيم كامپايلر دات نت كد برنامه رو به IL يا Intermediate Language (زبان مياني) تبديل ميكنه.حالا نوبت CLR ميرسه كه با استفاده از تكنيك JIT يا (Just-In-Time) كد IL توليد شده رو به كد مختص و وابسته به يك ماشين ترجمه كنه
آیا این وظیفه کامپایلر نیستش؟؟؟
توی کتاب مارچ توی صفحه های اولیش دقیقاً یادم نیست کدوم صفحه اش گفته بود که چون تمام زبانهای ویژوآل استادیو از کامپایلر CLR استفاده میکنن پس از لحاظ سرعت فرقی بین این زبانها نیستش