اطلاعیه

Collapse
No announcement yet.

برتری ویژوال c++ به C#

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    برتری ویژوال c++ به C#

    سلام بزرگان

    فکر کنم کسانی که vc++ رو خوب بلدن بتونن بهم جواب بدن.
    من اصلا vc++ نخوندم.
    دوست دارم برای بازی نویسی بازی نویسی یادش بگیرم.
    اگه در این مورد برتری به c# داره لطفا بگین.
    اصلا هرچی ازش میدونین بگین.
    سختیش زیاد برام مهم نیست. البته اگه وجود این سختی در کنار قابلیت های بیشتر باشه.
    راستش با vc++ زیاد بازی مینویسن و تو نوشتن سیستم عامل هم زیاد بکار رفته . البته یکی از دلایلش میتونه قدیمی بودنش باشه که قدیمی کارایی که اینو بلدن دیگه ولش نمیکنن برن یه زبون جدید مثل c# رو بخونن و از تجربه ی قبلیشون استفاده میکنن . اگه مطلب خاصی دارین بفرمایین.
    اگه تونستین مثال هایی هم برای مقایسه ی بهترش بزنین.
    مرسی . اطفا هر چی سریعتر جواب بدین. ضروریه برام.
    من منتظرم.
    Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

    #2
    پاسخ : برتری ویژوال c++ به C#

    سلام بزرگواران

    البته باید عرض کنم که برای من کل C++ با تمام دم و دستگاهش آب خوردن به حساب میاد. یعنی منظورم اینه که اگه اینو بعنوان فرض داشته باشیم که c++ برام آسونه ، ایا بازم میگین که vc++ یه زبان سخت برام هست ، یا اینکه سختی vc++ فقط باتوجه به c# در نظر گرفته میشه؟
    لطفا جواب صریح و واضح و کافی بدید .
    من منتظرم. :rolleyes: :rolleyes:

    Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

    دیدگاه


      #3
      پاسخ : برتری ویژوال c++ به C#

      سلام

      موقع سرچ ، یه مطلبی رو پیدا کردم که اینجا میذارم:

      کد:
      دو تا از مهم ترین اهداف .Net ساده کردن برنامه نویسی و جدا از پلتفرم بودن کدها می باشد که برای همین منظور مایکروسافت زبانی شبیه C را با نام سی شارپ عرضه کرد تا هم سبک C را داشته باشد هم ساده تر باشد. به همین منظور اکثریت افرادی که قصد دارند از دات نت استفاده کنند از سی سارپ استفاده می کنند نه ++C دات نت . و اگر کسی بخواهد از ++C دات نت استفاده کند بیشتر قصد این را دارد که کد های نوشته شده قبلی خود که با ++C و آن هم به صورت Native می باشند را با قابلیت های دات نت ترکیب کنند (یعنی برنامه هایی که قبلا با همان API های سطح پایین و high performance سیستم عامل نوشته شده اند) 
      
      به گفته توسعه دهندگان بخش ++C ویژوال استادیو ، اولین و بالاترین اولویت آنها در توسعه همان بخش native می باشد (API ها و MFC) و سپس کمی پشتیبانی از دات نت آن ولی همواره تاکید می کنند که هرگز توسعه بخش ++C دات نت (CLR) مانند سایر زبان ها نخواهد بود و دلیل آن را اینگونه ذکر کرده اند که این کار در حال حاضر شدنی است(یعنی توسط #C و VB) و قبلا انجام شده ، لذا انتظار نداشته باشید که همه آنها بدین شکل دوباره پیاده سازی شوند.(البته مسلما خود دستورات دات نت برای همه زبان ها یکسان هستند)
      
      بنابراین توصیه می کنم اگر می خواهید با دات نت کار کنید با همان سی شارپ کار کنید ، در غیر این صورت برای کار های غیر دات نت (که کاربرد آن را قبلا ذکر کردم ) بهترین انتخاب C++ Native می باشد.








      شما هم اگه چیزی برای اضافه کردن دارین بذارین.

      Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

      دیدگاه


        #4
        پاسخ : برتری ویژوال c++ به C#

        سلام

        اینم الان پیدا کردم:

        کد:
        ++VC زبان بسیار قدرتمندی است و توانای کد نویسی مدیریت شده دات نت را هم تحت عنوان VC++.Net دارد و از نظر قدرت فول است ولی از C#.Net یا VB.Net مشکل تر است.
        
        که در بیشتر مواقع همان زبانهای معمولی دات نتی مشکل را حل میکنند، و در مورد شما هم، اتصال به پورت های COM و LPT بسیار ساده است، در نتیجه قالباً افراد یک کم سادگی بیشتر و کد نویسی ساده تر را به قدرت بیشتر ترجیح میدهند، وگرنه به نظر شخصی من از نظر قدرت هیچ زبانی نمیتواند به پای ++VC برسد، هم توانای کدنویسی عادی دارد و هم مدیریت شده دات نتی و هم کد نویسی تحت اسمبلی به کمک کلمه کلیدی asm__ و....
        خب حالا سوالم اینه که با توجه به مطلب فوق ، اگه ما بخوایم از vc++ .net همون استفاده های c# رو بکنیم ، ایا بازم سختی برای اون وجود داره؟
        منظورم این نیست که میخوام این کارو بکنم . منظورم اینه که میخوام بدونم وقتی میگن vc++ سخته یعنی چی ؟ کجاش سخته؟
        آخه قبلا هم یه حرف مسخره ای رو شنیده بودم که طرف که c بلد بود میگفت c++ از c سخت تره. (مورچه چیه که کله پاچه داشته باشه :mrgreen
        البته نظر من این بود که اولا c++ سخت نیست و ثانیا اگه بخوایم به فرض شما سخت باشه ، اگه بخوایم از همون قابلیت های معدل c که تو c++ هست استفاده کنیم ، همون اسونی رو برات داره.
        خب حالا از این لحاظ vc++ و C# رو مقایسه کنین.

        مرسی
        Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

        دیدگاه


          #5
          پاسخ : برتری ویژوال c++ به C#

          از لحاظ سرعتی بالاتر از C# و باید توی اشاره گر ها یکم دردسر کشید تا خوب جا بیفته همین.
          Difficult But possible
          به اميد ايراني آباد.
          http://art-net.ir

          دیدگاه


            #6
            پاسخ : برتری ویژوال c++ به C#

            نوشته اصلی توسط علی-
            از لحاظ سرعتی بالاتر از C#
            سلام ممنون که جواب دادی.
            خب میتونی در این مورد یه مثال بزنی؟
            یعنی تو کدوم قسمت سرعتش بیشتره؟ منظورت unmanaged code هست که .net رو خطاهاش چک نمیکنه و از این لحاظ سرعتش بیشتره؟
            اگه موارد دیگه ی هم هست لطف کن بگو.
            منظورم اینه که من سوالایی که بالا کردم رو اگه کامل جواب بدی بهتر میشه برام.
            راستش میخوام c# رو ول کنم و برم سر vc++
            پس باید یه دلیل قانع کننده ای پیدا کنم.


            نوشته اصلی توسط علی-
            باید توی اشاره گر ها یکم دردسر کشید تا خوب جا بیفته
            در این مورد اگه بخوایم اونو با
            native c++
            مقایسه کنیم ، آیا دردسر اشاره گرا به یک اندازه ست؟
            یعنی منظورتو دقیقتر بفرما و در صورت امکان با
            native c++
            مقایسه ش کن.


            مرسی.

            از بین بزرگواران کسی vc++ کار نکرده؟

            Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

            دیدگاه


              #7
              پاسخ : برتری ویژوال c++ به C#

              سلام دوستان

              من نیاز فوری به یه جواب دقیق و صریح و واضح دارم. :cry2: :cry2:
              اگه کسی vc++ .net رو خوب کار کرده و بلده جواب بده.
              کارم لنگ اینه.
              خب الکی که نمیشه سوئیچ کرد.
              لطفا به سوالایی کهت وژست بالا کردم جواب بدین.
              Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

              دیدگاه


                #8
                پاسخ : برتری ویژوال c++ به C#


                http://forums.hexus.net/software-web-development/15218-speed-c-vs-c.html
                http://bytes.com/forum/thread250694.html
                Difficult But possible
                به اميد ايراني آباد.
                http://art-net.ir

                دیدگاه


                  #9
                  پاسخ : برتری ویژوال c++ به C#

                  سلام دوستان

                  ممنون علی اقا لینک اولیت گفت که
                  Sorry. The administrator has banned your IP address. To contact the administrator click here
                  دیگه حوصله نکردم ادامه بدم ، ولی دومی باز شد. خوب بود ولی جواب همه ی سوالا رو نداد و در ضمن vc++ رو مقایسه کرد با إ¾c# نه vc++.net رو
                  به هر حال ممنونم.

                  من خودم هم گشتم. این دفعه دیدم که سرچ فارسی نتیجه ی فوق العاده بهتری داد تا سرچ انگلیسی. (برخلاف تمام موارد دیگه ای که برام پیش اومده بود)
                  خب دم هموطنامون گرم. حسابی برنامه نویسن این سایت خوبیه برای برنامه نویسا: http://barnamenevis.org

                  من بعد از سرچ اینجا رو پیدا کردم . ژیشنهاد میکنم حتما تمام صفحات این تاپیکو بخونین:
                  http://barnamenevis.org/forum/showthread.php?t=59570&page=14
                  البته از صفحه ی اول ش شروع کنین بیاین جلو.
                  تقریبا تمام سوالامو جواب داد.
                  اینطور که من تو اینجا خوندم ، کلمه ی unsafe از c#.net ورإ¾ن 2005 اضافه شده که کار همون unmanaged code تو vc++ v رو میکنه.
                  اگه اشتباه میکنم بهم بگین.
                  پس اگه ما از unsafe استفاده کنیم، میتونیم به طریقی از سرعت کدهای مدیریت نشده استفاده کرد. (دوستان خواهش میکنم اگه اشتباه میکنم حتما بگین تا از چاله به چاه نیفتم)

                  از طرفی سیاست کاری مایکروسافت هم حمایت از vb.net و C#.net هست که باعث میشه همونطور که قبلا تو یه تاژیک دیگه ای عرض کردم آینده ی این دو زبان بهتر باشه و از طرفی چون سینتکس c بهتر و قویتره، از بین این دو زبان c# بهتره . ولی خب نظرات متفاوته ، چون هر دو به یه زبان سطح اجرای مشترک تبدیل میشن میتونه قدرتاشون برابر باشه.

                  خب نهایتا من فعلا C# رو انتخاب کردم/ :wow: :wow:
                  دوستان من به سرعت برنامه خیلی اهمیت میدم. (تو بازی سازی خیلی فاکتور مهمیه)
                  پس اگه مورد دیگه ای هست حتما بهم بگین.

                  اینجا رو ببینین :
                  http://www.devnewsgroups.net/group/microsoft.public.dotnet.framework/topic62419.aspx

                  میگه:

                  Here are the results (for release mode running from console, with default
                  settings in the IDE)

                  C# Test for loop (50000 iterations) 0.000023931 (23 micro seconds)
                  C++ Test for loop (50000 iterations) 0.000000350 (0.35 micro seconds)

                  So its like C++ compiler is about 20 times faster than the managed CLR
                  Jitter. And if I also remove time taken for the QueryPerf...... apis then the
                  diff is even more


                  خب نتیجه ی تحقایقات خودتونو اینجا هم بذارین تا ماهم باخبر بشیم.

                  مرسی

                  Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                  دیدگاه


                    #10
                    پاسخ : برتری ویژوال c++ به C#

                    ویرایش شد. تکراری بود.
                    Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                    دیدگاه


                      #11
                      پاسخ : برتری ویژوال c++ به C#

                      سلام دوستان

                      اینا رو ببینین:
                      http://www.tech-archive.net/pdf/Archive/VisualStudio/microsoft.public.vstudio.general/2006-04/msg00037.pdf
                      http://www.tech-archive.net/pdf/Archive/VisualStudio/microsoft.public.vstudio.general/2006-04/msg00030.pdf
                      فایلا کوچیکن دانلودشون کنین.
                      نتایج وحشتناکه. :eek: :eek:



                      اینجا رو ببینین. http://www.daniweb.com/forums/thread13333.html
                      میگه:
                      whereas C# is managed. VB and VC# programs run in the same style. VC++ is twice faster in accessing memory objects, arithmetic operations and database access.

                      But, I didn't tried with unsafe code in C#. Some of my friends are telling that unsafe code in C# will do better (but do it with careful).
                      :applause: :applause:

                      من که طرفدار unsafe هستم که تازه امکان داره تو ورإ¾نای بعدی بهتر توسعه داده بشه تا سرعتش بازم بیشتر شه.


                      موفق باشیم همگی.
                      Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                      دیدگاه


                        #12
                        پاسخ : برتری ویژوال c++ به C#

                        سلام دوست عزیز
                        ببخشید اگر یکم دیر این پست رو دیدم و دارم جواب میدم
                        من کاری به مقایسه زبان ها ندارم ولی در مورد طراحی بازی اطلاعات مختصری دارم شاید کمک کنه:
                        شما برای طراحی بازی اول باید هدف و امکاناتت رو مشخص کنی و با توجه به زمانی که داری و هزینه ای که میتونی بکنی تصمیم بگیری که آیا از یک 3D game engine استفاده میکنی که کار رو راحت تر و سریعتر انجام بدی یا اینکه مستقیما به سراغ برنامه نویسی DirectX یا OpenGL میری، که مشکل تر هست و زمان بیشتری هم نیاز داره.
                        معمولا اگر قرار باشه طراحی بازی مستقیما با مثلا DirectX انجام بشه و طراحی خود Game Engine هم با خودتون باشه، خیلی وقت صرف میشه و کار خیلی حرفه ای هم هست و معمولا کسی تنهایی این کار رو نمیکنه، اگر هم بکنه از این راه شروع نمیکنه، پیشنهاد میکنم برای شروع طراحی بازی با Game Engine ها شروع کنید و اول از بازی های 2D. طراحی یک بازی مثل Snake توسط یک Game Engine شاید کار ساده ای باشه اما اصول کار در همین بازی ها هست. بعضی از این موتور های بازیسازی خیلی دیگه کار رو راحت کردند و البته از اونطرف هم دست طراح بازی رو بستند مثلا در Game maker که یک موتور دو بعدی هست گاهی اصلا نیاز به برنامه نویسی هم نباشه و بشه بازی های نسبتا قابل قبول 2 بعدی رو ساخت اما چیز زیادی ازش یاد نمیگیرید و خیلی هم محدود هستید. شما باید اول موتور بازی سازی رو انتخاب کنی، بعضی از اینها زبونهای برنامه نویسی خاص خودشون رو دارند که من پیشنهادشون نمیکنم، بعضی ها هم یک زبان استاندارد مثل مثلا C# رو پشتیبانی میکنند و بعضی ها هم چندین زبان رو پشتیبانی میکنند. تا اونجا که یادم هست من هم Engine برای C# پیدا کرده بودم هم برای C++ و شما هم اگر بگردی حتما گیرت میاد و البته باید یکم دنبال کرک و .. هم بگردی براشون و دانلود کنی.
                        شما اگر C# مسلط هستی میتونی به تنهایی و با صرف وقت و حوصله برنامه یک بازی رو با اون Engine بنویسی و البته برای تکمیل بازی به طراحی مدل های سه بعدی و انیمیشن و .. و دونستن مقداری ریاضی برداری و ماتریسی نیاز داری. بعد از اینکه به کار و ساخت بازی با این Engine ها مسلط شدی میتونی به یادگیری برنامه نویسی DirectX یا OpenGL مشغول بشی و Game Engine رو هم خودت طراحی کنی.
                        البته این رو بگم که طراحی یک بازی کار خیلی پر دردسری هست و نیازمند وقت و حوصله زیادی هست و معمولا حداقل یک تیم قوی برای اینکار لازم هست. اگر بخوای بازی واقعی جلوه کنه باید علاوه بر طراحی انیمیشن های دقیق و برنامه نویسی دقیق به فیزیک هم مسلط باشی و بتونی فیزیک هر چیز رو روی کامپیوتر پیاده کنی به خصوص برای طراحی شبیه سازهای اتومبیلرانی. راستی خوب شد که این یادم اومد، برای سبک ها مختلف بازی Engine های مختلف وجود داره شاید شما با یکی از این Game Engine ها دستت باز باشه و بتونی یک بازی FPS خیلی خوب طراحی کنی اما برای طراحی یک بازی Strategy توی اون GameEngine دچار محدودیت بشی.
                        موفق باشی
                        از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                        هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                        اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                        اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                        شاد و موفق باشید

                        دیدگاه


                          #13
                          پاسخ : برتری ویژوال c++ به C#

                          سلام

                          ممنون از توجه شما

                          من در این مواردی که فرمودید اطلاعات دارم و فقط میخواستم دقیقا جواب همین سوالاتی رو که عرض کردم بگیرم که تقریبا گرفتم.
                          ولی همه ی بازی که انجینش نیست. هست؟
                          اگه بخوای بازی نویسی با directX یا openGL/AL رو انجام بدی باید یه زبان پایه ای خوب انتخاب کنی.
                          منم یه هدف کوتاه مدت ندارم برای نوشتن بازی .
                          میخوام خودمو اماده کنم تا لااقل یه نقشی تو بوجود اومدن صنعت بازی سازی تو ایران عزیز داشته باشم .
                          الان اگه توجه کنی تو یکی از این لینک هایی که دادم تفاوت اجرای یه الگوریتم تو این دو زبان مورد بحث وقتی تفاوت یک ثانیه و 18 ثانیه هست پس باید اهمیتی در این فاکتور باشه
                          خیلی ها میگن vc++ سخته ، ولی دلیلشو نگفتن
                          خیلی ها میگن سریعتره ولی مقدار سریعتر بودن و موارد وجود سرعت رو نگفتن.

                          به هر حال ممنونم از توجهت.

                          راستی اگه کسی تونست کتابای اینجا رو دانلود کنه بگه چطوری اینکارو کرده: :mrgreen: :mrgreen:
                          http://gamedevbooks.awardspace.com/index.php

                          موفق باشین/

                          Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                          دیدگاه


                            #14
                            پاسخ : برتری ویژوال c++ به C#

                            خواهش میکنم عابد جان
                            من هم نگفتم همه بازی Engin هست، خیلی چیزها مهمتر هست. با بقیه نظرات شما هم موافقم
                            موفق باشی
                            از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                            هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                            اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                            اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                            شاد و موفق باشید

                            دیدگاه


                              #15
                              پاسخ : برتری ویژوال c++ به C#

                              سلام
                              منو ببخشید پا برهنه میام وسط سفره ولی میتونم بپرسم چرا vc++ رو باvc# مقایسه میکنید

                              اصلا اینا در حیطه کاری هیچ ربطی به هم ندارن

                              vc++ نوشته شده برای تولید برنامه های سیستمی مثله درایور و سیستم عامل البته هر چند که همه کار میکنه ولی...

                              c# هم نوشته شده برای کارهای اتوماسیون اداری و ایجاد روند کار و از این چیزا مثلا اگه یه شرکت بخواد یه برنامه برای پرداخت حقوق کارمندا بده و کنترل و شرح وظایف و ... کارمندا اگه عقل درست حسابی داشته باشه باید با c# بنویسه چون به قولی c# برای این کار optimize شده یا بهینه شده

                              ولی اگه کسی خواست برای دستگاهش درایور بنویسه دیگه نیمتونه با c# بنویسه چون C# اصلا وابسته به فناوری .net و نمیتونه مستقل از اون کار کنه و در کل هیچ کار سیستمی مطلوب ازش برنمیاد علاوه براینکه چون برای کار دیگه ساخته شده سرعتش نسبت به c++ کمه ولی برای کار اداری اگه با c++ نیاز باشه که چرخ اول طراحی باشه c# موتور و سوخت رو هم داره و ماشین توی دندست فقط پا رو از رو کلاج وردار

                              در کل اگه میخواید توی زمینه الکترونیک کار کنید C++ اما ما تو ایرانیم و حال و حوصله تعطیل همه با vb کار میکنن اما اگه میخواین اتوماسیون اداری کار کنید
                              c# چون به هر حال c# عزیز در دونه مایکروسافته و امکاناتی رو بهش داده که هیچ چیزی توان مقابله باهاش رو نداره در ضمن اگه پیگیر باشید همه زبانهای برنامه نویسی مال مایکروسافت دارن شبیه به هم میشن با .net و با این بهایی که به c# داده میشه حتما تا چند سال دیگه فقط c# رو داریم و c++ هم میشه برنامه تخصصی مایرکسافت که فقط توی خودش استفاده میشه برای ایجاد سیستم عامل
                              به وبلاگم سر بزنید

                              دیدگاه

                              لطفا صبر کنید...
                              X