تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 15

نام تاپيک: سرعت کدام زبان تحت دات نت بیشتره؟

  1. #1
    کـاربـر بـاسـابـقـه am_merman01's Avatar
    تاريخ عضويت
    May 2006
    محل سكونت
    یه جایی گوشه دهکده جهانی تو یه کانکشن دایال آپ
    پست ها
    893

    14 سرعت کدام زبان تحت دات نت بیشتره؟

    با عرض پوزش از اساتید گرامی به خاطر این سئوال
    من چند روز پیش با یه دانشجوی کامپیوتر بحث میکردم و ایشون می فرمودند که سرعت اجرای کد های نوشته شده با
    #c از کد مشابهی که مثلا با Vb نوشته میشه بیشتره!!!!
    من اولش کلی بهم بر خورد .
    بعد گفتم که چون تحت دات نت کار میکنیم سرعت تمامی برنامه های مشابه نوشته شده تحت فریم ورک با هم برابره.
    ولی ما هرچی اصرار کردیم ایشون انکار کرد و میگفت که ان حرف رو از یکی از اساتید دانشگاه نقل میکنه.
    حالا اگه یکی از اساتید منو از ابهام خارج کنه خیلی ممنون میشم.

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    سرعت زبانهای تحت دات نت فرقی ندارند! و به کد IL تولیدی بستگی دارد، میتوان خروجی IL هر دو را دید تا بفهمید کدام کد کمتری تولید کرده اند!

    در کل بیشتر به برنامه نویسی ربط دارد، در برخی موارد کد IL تولیدی در #C کمتر است و در برخی موارد کد IL تولیدی در VB
    حتی میگویم در مواردی امکانات داخلی #C کدی با حجم دوبرابر کد IL در VB.Net تولید میکنند.

    به دوست شفیقتان بگویید مثالی از کد مورد نظر در #C بزند و نه خودشان بلکه من کد معادل VB.Net اش را بدهم و کد IL نتیجه هر دو را مقایسه کنیم.
    (اغلب #C کارها به دلیل تکبر و عدم تسلط به VB.Net کدهای ضعیف و مشکل داری در VB.Net مینویسند (چون #C کار هستند نه VB.Net کار))

    هیچ فرقی نخواهد داشت! فقط این دوستان شفیق نمی خواهند قبول کنند VB.Net قدرتمند شده و هم سطح C#.net شفیقشان است!
    هنوز می خواهند مثل روزهای VB6 و VC++6 پوز زبانشان را بدهند!
    گرچه من خودم هم خیلی ++VC کار کردم و از آن خوشم می آید و بر قدرتش معترف هستم ولی افراط و تفریط .... (ولللش!)

    منظورم آن است که یک #C کار به راحتای میتواند در #C کد خوبی بنویسید ولی شاید VB.Net هم بلد باشد ولی کدی بد و گاهاً افتضاح در VB.Net مینویسید!
    (همانطور که من VB.Net شاید #C بلد باشم ولی نمیتوانم به خوبی یک #C کار این کار را انجام دهم!)

    در نتیجه با نیمچه تکبر و افتخاری که از احساس میکند از قدرت ++C به او به ارث رسیده فوراً کد خوب #C خود را با کد بد VB.Net خود مقایسه میکند و نتیجه معلوم است!
    Last edited by _H2_; 29-07-2007 at 10:15.

  3. #3
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    ممنون H2 عزيز
    سرعت زبانهای تحت دات نت فرقی ندارند! و به کد IL تولیدی بستگی دارد، میتوان خروجی IL هر دو را دید تا بفهمید کدام کد کمتری تولید کرده اند!
    هميشه پاسخهات کامل و جامعه .
    يه سوال ، چطور ميشه کد IL رو مشاهده کرد ؟ و اگر امکان مشاهده اش وجود داره پس امنيت برنامه هاي نوشته شده با .net به خطر نميفته ؟(با مشاهده شدن کد)

  4. #4
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    يه سوال ، چطور ميشه کد IL رو مشاهده کرد ؟
    به فایل زیر را پیدا کنید و EXE یا DLL تان را تحویلش دهید
    X:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\ildasm.exe

    و اگر امکان مشاهده اش وجود داره پس امنيت برنامه هاي نوشته شده با .net به خطر نميفته ؟(با مشاهده شدن کد)
    این که کد IL است و حالی شدنش به اندازه اسمبلی سخت است!!
    ولی میتوان کل یک DLL یا EXE را در دات نت به کدهای سازنده اولیش بازگرداند و همین مجدداً اثباتی است بر برابری VB.Net و C#.net ! چرا؟
    شما میتوانید یک فایل EXE را که توسط یک زبان دات نتی درست شده به کدهای برنامه نویسی هر زبان دات نتی دیگر که مایل باشید ریسورس کنید!!!!!

    آقا عصبانی نشید! من میخوام صد سال دیگه زندگی کنم! شرمنده! من بی تقصیرم! هر چه فریاد دارید بر سر داداش بیل بزنید!

  5. #5
    داره خودمونی میشه Shahrdar's Avatar
    تاريخ عضويت
    Aug 2004
    پست ها
    185

    پيش فرض

    سلام به همه
    من اين سؤال خيلی وقت بود که به ذهنم رسيده بود. من يه وردپد با vb6 سخته بودم (1 ساله پيش)
    6 ماه پيش هم يه دونه با vb.net 2005 ساختم.با تعجب ديدم سرعت در vb6 خيلی سريع تره(حتی تا 1 يا 2 ثانيه)

    اومدم تو c# يه پروژه ساختم متشکل از يه button که وقتی روش کليک ميکنی بياد حجمه فولدر x رو در بياره
    تو vb8 هم همين کارو کردم اونی که تو c# نوشته شده بود در کل 0.30 تا 1 ثانيه سريتر کار ميکرد
    ولی خودم با vb راحت ترم.. البته بگم که اين کره من فقط يه آزمايش دستی وشخصی بود

  6. #6
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    من حال و حوصله کد نویسی ندارم
    ولی اگر مایل بودید کد VB.Net2005 را بدهید من کدی به شما میدهم که اگر سریعتر نباشد، کندتر نخواهد بود!
    میل شماست!

    اصلاً شما چگونه سرعت را در همچین برنامه ای اندازه گرفته اید؟؟؟؟
    چون کار حجیمی انجام نباید داده باشید و آدم هم متوجه فرق بین 1mS و 10mS نخواهد شد؟؟؟؟؟
    این قبیل تست ها معمولاً در یک حلقه یا برای یک کار سنگین قابل سنجش خواهد بود؟!

  7. #7
    داره خودمونی میشه Shahrdar's Avatar
    تاريخ عضويت
    Aug 2004
    پست ها
    185

    پيش فرض

    خيلی ساده زمانه فشار دادن کليد و زمان اتمام رو منها کردم (همچين سؤالی از شما بعيد بود )

    اين کار هم تو يه حلقه انجام دادم که اندازه حدوده 1000-1500 فايل رو باهم جمع ميزد.فکر نکنم حلقه کوتاهی باشه

  8. #8
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    خيلی ساده زمانه فشار دادن کليد و زمان اتمام رو منها کردم (همچين سؤالی از شما بعيد بود )
    یک دکمه معمولی در یک برنامه Wordpad مانند، اگر عادی باشد، باید به محض فشار دادن جواب دهد، منظورم آنی است! ولی خوب گذاشتن حلقه چیز دیگری است!

    باز هم تاکید میکنم که اگر کد IL تولیدی برابر باشد و نسخه هر دو مورد Release نهایی باشد، سرعت برابر خواهد بود، چون در اصل کامپایلرهای VB.Net و C#.Net و Delphi.Net فقط کد متنی شما را به کد IL تبدیل میکنند و وظیفه تبدیل IL به کدنهایی را کامپایلر اصلی IL بر اهده دارد که یکتاست!

    کامپایلر IL نه VB.Net را میشناسد و نه C#.Net را و پارتی بازی هم نمی تواند بکند!!
    در نتیجه فرق کامپایلرهای تحت دات نت صرفاً به خروجی IL تولیدی بستگی دارد که میشود با ان فایل exe که معرفی کردم خروجی ها را چک کرد.

  9. #9
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    ممنون h2 عزيز

  10. #10
    کـاربـر بـاسـابـقـه am_merman01's Avatar
    تاريخ عضويت
    May 2006
    محل سكونت
    یه جایی گوشه دهکده جهانی تو یه کانکشن دایال آپ
    پست ها
    893

    پيش فرض

    از تمامی دوستان مخصوصاٌ استاد عزیز H2 گرامی تشکر میکنم که انقدر باحوصله به این سئوال پاسخ دادند.
    در ضمن باید بگم من اصلاٌ دل خوشی از دوستان عزیز #C کار ندارم (البته فقط بعضی هاشون)
    ولی من دقیقاً متوجه منظور H2 عزیز نشدم؟!؟من مسیر زیر رو رفتم و فایل EXE مورد نظرمو بهش تحویل دادم
    Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\ildasm.exe
    حالا چه طور میشه کد این فایل رو به یک زبان دیگر تبدیل کرد.؟
    اگه H2 عزیز لطف کنند و یک راهنمایی کوچیک بکنند خیلی ازش ممنون میشم.
    درضمن H2 بزرگوار در تاپیک دیگری امر فرمودید که سعی کنم بار آموزشی تاپیک رو پایین نیارم>>>
    چشم رو جفت چشمام شما هر امری دارید بفرمایید ما اطاعت میکنیم ....
    در ضمن به خاطر پست هام توی اون یکی تاپیک از همه دوستان مخصوصاً anvar.net گرامی و H2 عزیز بینهایت پوزش میخواهم...
    جهت اطلاع عرض میکنم در اسرع وقت پست های غیر مرتبط با بحث رو حذف خواهم کرد...

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •