سلام.
زبانهای دات نت زیاد فرقی با هم ندارند. من وقتی می خواستم بین سی + دات نت و سی شارپ یکی را انتخاب کنم .....
نقل از :
http://forum.majidonline.com/showthread.php?t=62077
سلام.
سوم اينكه كلا ويژوال سي شارپ دات نت چه فرقي با ويژوال سي پلاس دات نت داره؟ آيا فقط سينتكسش فرق داره؟ چرا اين سينتكس جديد ايجاد شده پس؟ شنيدم كه براي رفع سختي هاي سي. فقط همينه؟ من قبلا سي پلاس داسي كار كرده ام. آيا يادگيري ويژوال سي پلاس باعث صرفه جويي بيشتر براي من ميشه يا ويژوال سي شارپ؟ يعني براي طراحي برنامه هاي مبتني بر دات نت كدام براي من راحت تره؟
شما بهترین کاری که می تونی انجام بدی یاد گیری سی شارپ دات نت شما با اسمبلی هم هر برنامه ای که فکرش رو بکنی می تونی بنویسی اما این یه محیط آمادس و راحت شما می تونی با کد نویسی تو هر محیطی انیمیشنای کارتون شرک یا هر چی رو درست کنی اما وقتی 3D-MAX یا امسالش هس این کار رو می کنی؟محیط آماده با حد اکثر امکانات که قبلا روش کلی فکر شده اگه خودت این کار رو بکنی شاید اون استراتژی هایی که اون تیم برنامه نویسی به ذهنشون اومده و حالا فقط به صورت یه ابزار راحت در اختیارت هست رو به ذهنت نیاد یا حداقل وقت گیر باشه
و نقل از :
http://forum.iranled.com/showthread.php?tid=4058
برای برنامه نویسی گرافیکی و بازی سیشارپ یا سی پلاس پلاس .چرا؟
Programmer:
دوست عزیز به من اعتماد کن هیچ فرقی نداره من هم در C++ و هم در C# دها هزار خط برنامه گرافیک 3 بعدی نوشتم با DirectX, OpenGL, این چیزا هیچ فرقی نداره C# خیلی هم خوش قلق تره!! باور کن!! من امتحان کردم بعد از یه عمر تجربه می گم!!!
سینتکس سی شارپ رند است. خیلی شبیه وی بی دات نت . البته از نظر عملگرها(شرح در پاراگراف بعدی) . ولی کروشه و سمی کلونش شبیه سی است.
البته در سی پلاس دات نت فقط میشه unsafe نوشت . یعنی همان سی قدیمی. مثل اشاره گر و غیره. ولی در دات نت کلا کارها با گاربیج کالکتوره. که حافظه ها را آزاد می کند. در سی پلاس از :: (کلاس و فضا) و فلش -> برای متد شی استفاده می شود. در سی شارپ همه مثل وی بی دات نت نقطه استفاده می شود.
اگر می خواهید سی شارپ شروع کنید می توانید از تاپیک
یادگیری سی شارپ شروع کنید.
یا از کتاب آقای هاشمیان شروع کنید. لینک دانلودش در همان صفحه دوم تاپیک یادگیری سی شارپ است.
و اگر انگلیسی می خواهید از کتاب sams شروع کنید.
http://www.flazx.com/ebook5325.php
من از همین لینک دانلود کردم
Sams.Teach.Yourself.Visual.C.Sharp.2005.in.24.Hours.Complete.Starter.Kit.May.2006
تا مطمئن شوم. 3 تکه بود که یکی کردم و دوباره آپلود کردم اینجا:
http://rapidshare.com/files/34676872/sams_sharp2005_in24hours.rar.html
البته بعد چند ماه اگر دانلود نشود این لینک حذف می شود و به لینک بالا مراجعه کنید.
چند فصل کتاب را استاد گرامی UNIQUE ترجمه کرده در اینجا:
http://forum.majidonline.com/showthread.php?t=62666&page=3
البته ممکن است کتاب مورد ترجمه ویژوال سی شارپ 2003 باشد که این کتاب را من در هاردم داشتم آپلود کردم.
http://rapidshare.com/files/34755509/sams_csharp2003_in24hours.rar.html
بعدش هم کتابهای دیگه را بخوانید و تمرین کنید:
http://www.flazx.com/category3.php
جمله آخر:
من چند روزه دارم با سی پلاس دیتابیس کار می کنم ولی هیچ کتاب و منبعی در اختیار ندارم. دهها کتاب کار با دیتابیس دارم که یا به سی شارپه یا وی بی دات نت. فقط به شیوه ور رفتن و خطا و آزمون دارم می رم جلو. خلاصه کلام اینکه منابع شاید خیلی مهم تر باشه از فاکتورهای دیگر.
بحث کلی:
این برای من هم سئوال بود. و هست.
من پیش خودم می گفتم سی پلاس کار باید برود سی پلاس دات نت.
ولی به نظرم برو سمت سی شارپ .
چون منابع آن زیاده. سینتکسش هم رند است. می دانید که میکروسافت زبان سی شارپ را مخصوص دات نت طراحی کرده.
یک چیزی می گم که دلیلی برای درستی اش ندارم. و جایی هم چیزی راجع بهش نخوندم .......
به نظر من اصلا سی پلاس با دات نت جور در نمی آید.... در سیستم دات نت همه چیز تحت اختیار کلاسهای دات نت است ولی در سی پلاس کنترل همه کامپیوتر دست برنامه نویس است. چطوری این دو تا با هم جور درمیاد. ..
در حقیقت اون سی شارپ هم سی نیست. فقط سینتکسش سی است. شما در محدوده دات نت با کلاسهای دات نت طرفی حالا با هر زبان(سینتکس) که بنویسی. پس باید تکنولوژی دات نت را نقد کرد سینتکس ها همه ظاهری و صوری است.
البته میگم این حرفم را از جایی و مستند نمی زنم ولی به این حس رسیده ام.
البته ممکنه کسی بگه شما می توانی unsafe بنویسی در سی پلاس دات نت یا یک جورایی برنامه های سی استاندارد را وصل کنی به دات نت. ولی من میگم بله این ایده آل خوبی است . نمی دانم کسی این کار را می کند یا نه. البته به نظرم خیلی خوبه که آدم کارهای راحت را با کلاسهای دات نت انجام بدهد و کارهای سخت(غیر روتین) را با سی پلاس(به صورت مستقل و وصل شده به برنامه اصلی). البته من از این کارها تابحال نکردم و کلاسهای دات نت را هنوز مسلط نشده ام تا بروم دنبال این جور کارها. اصلا در نوشتن برنامه های ساده شاید این جور کارها اصلا نیاز نشود. مگه کلاسهای دات نت چی کم داره. برای هر کاری کلاسهایی پیش بینی کرده. شایدم چیزایی باشه که در کلاسهای دات نت پیش بینی در آن نشده باشد ولی اون کارها دیگه خیلی باید غیر روتین باشد. الان چیزی به ذهنم نمی رسد.
بحث تکمیلی: به نظر من نگاه یک سی پلاس کار با نگاه یک دات نت کار متفاوت است.
در سی پلاس ما یاد گرفته ایم که همه چیز بیت و بایت است. سی پلاس قرابت زیادی با زبان اسمبلی دارد.
ولی در دات نت اول شما همه چیز را محدود می کنید و بعد دریچه ها را باز می کنید. در سی پلاس عکس این روند جریان دارد. مثلا در سی پلاس به یک متغیر هر عددی می شود داد و بعد با انوم و کلاس و اینها محدود می کنید رنج را.
در دات نت می گیم مدیریت حافظه در اصل متعلق به گربیج کالکتوره. ولی در گامهای بعدی کلاسی موجود است که نابودی شی را خودمان به عهده بگیریم.
در کل در سی پلاس شما بی قید و آزادید و بعد با ساختارهایی خود را محدود می کنید و دیوار می سازید.
در دات نت اول شما محبوسید در کلاسهای دات نت و بعد باید از لابلای دیوارها(همین کلاسهای دات نت ) ... توسط خود کلاسهای دات خود خود را خارج کنید.
کلا در دات نت شما اول داخل چهارچوبید بعد راهی برای خروج پیدا می کنید. ولی در سی پلاس اولش کاملا آزادید و بعد برای خود چهارچوب می سازید. مثل همان سی که با سی پلاس شی گرا شد. ولی در دات نت از اول کار شی گرا شروع می کنید. در دات نت یک متغیر هم شی ئی از کلاس System است نه چند بایت در Ram که شما بدانید در کدام قسمت Ram است.
===================
یکی از اساتید راجع به تکنولوژی های جدید صحبت کرد که من زیاد نفمیدم ولی دو لینک که داد را در زیر می آورم تا اینجا محفوظ باشد.
http://msdn2.microsoft.com/en-us/vstudio/aa700830.aspx
http://www.microsoft.com/downloads/...3B8-A360-A1C2BD6A421B&displaylang=en#filelist