صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 76

نام تاپیک: آیا Qt بهترین انتخاب است؟

  1. #1

    آیا Qt بهترین انتخاب است؟

    سلام

    دوستان من دنبال یک زبان برنامه نویسی + یک IDE میگردم که همه نیازهای یک برنامه نویس رو مرتفع کنه . مستقل باشه و روی همه جور سیستم عاملی اجرا بشه . بشه برنامه های سطح خیلی پایین سخت افزاری و برنامه های سطح بالای ویژوالی باهاش نوشت .

    فوکوس اصلی من روی مباحث برنامه نویسی ربات هست ، از هوش مصنوعی و پردازش صوت و تصویر تا برنامه نویسی پورت ها و سخت افزارهای مختلف . میخوام همه جور سخت افزاری رو بشه باهاش پروگرام کرد .

    نتیجه تحقیق شاید چند ساله من روی سی++ و محیط Qt رسیده . آیا این نتیجه درسته و روی این زبون و این محیط تمرکز کنم و همه چیزشو با جزییات یاد بگیرم یا اینکه در آینده نزدیک اینها از رده خارج میشه و زبون هایی مثل C#‎ یا JAVA جای C++‎ رو خواهند گرفت (یا شاید تا الان هم گرفتند؟!)

    ممنون میشم یکی از دوستان یک راهنمایی جامع و علمی به زبون ساده داشته باشند

    اینکه اصلا فریم ورک یعنی چی؟ فرقش با کامپایلر چیه؟ چرا زبون سی native هست و سی شارپ نیست؟آیا ممنکنه سی شارپ هم روزی native حساب شه؟ جاوا کجای این ماجراست؟

    همه میگن دنیا داره به سمت cross-platform میره . مگه ما غیر از C++‎ و فکر کنم بیسیک و دلفی زبون دیگه داریم که به درد کراس پلتفرم بخوره؟

    پس مایکروسافت که اینهمه رو سی شارپ سرمایه گذاری کرده و میکنه داره به بیراهه میره؟!!!

    و یا سیستم عامل های جدید شبیه اندروید که تقریبا کل بازار موبایل رو گرفته و زبون اصلی برنامه نویسیش java هست چرا اینقدر گسترش یافته؟ آیا این گسترش جاوا روی سایر سیستم ها از جمله کامپیوترها و یا embede-systems ادامه خواهد داشت و یا فقط تمرکزش روی موبایل هستش؟!
    جاوا جای سی++ رو میتونه بگیره یا خیر؟ چرا؟


    و خیلی سوالای دیگه که در ادامه خواهم پرسید .
    امیدوارم با همکاری دوستان بحث جامع و مفیدی شکل بگیره

  2. #2
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    زمانی میشه به این سوالات جواب درستی داد که یک فرد همه ی این فریم ورک ها رو تجربه کرده باشه ، که بعید میدونم کسی وقت کرده باشه به همه ی این ها سر زده باشه!!!
    و قطعا هم بهترین بودن مطلق نیست و نمیتونیم بگیم فلان FrameWork بهترین و اون یکی نیست !! پس جواب هایی که داده میشه بیشتر تجربه شخصی افراد هست...(به این نکته دقت کنید)
    نتیجه تحقیق شاید چند ساله من روی سی++ و محیط Qt رسیده . آیا این نتیجه درسته و روی این زبون و این محیط تمرکز کنم و همه چیزشو با جزییات یاد بگیرم یا اینکه در آینده نزدیک اینها از رده خارج میشه و زبون هایی مثل C#‎‎ یا JAVA جای C++‎‎ رو خواهند گرفت (یا شاید تا الان هم گرفتند؟!)
    مطمئنا این زبان ها یعنی جاوا و C#‎ جایگاه خیلی خوبی دارند ، بویژه جاوا !! و اینکه آیا C++‎ از رده خارج میشه رو جدا نمیدونم ولی بعید میدونم چرا ، چون C++‎ خودش یک زبان قدرتمند هست اما جاوا و C#‎ قدرتشون رو از فریم ورک های پشتشون می گیرن...
    در هر صورت من به این سوال اینجوری جواب میدم و از تجربه ی خودم استفاده می کنم ، من با جاوا تجربه ای ندارم ، اما از C#‎ تجربه دارم و هر از چند گاهی مجبورم باهاش پروژه هام انجام بدم ، برای پروژه های کوچیک خوبه ، کاراست اما برای پروژه های بزرگ خیلی نمیتونه کارایی داشته باشه ، البته من با Qt هم تجربه کمی دارم و این سوال همیشه برای خودم هم هست که آیا وقت گذاشتن روش با ارزش هست یا نه !؟ باید این بگم وقتی که من با C++‎ تحت Qt کد میزنم خیلی بیشتر لذت می برم تا زمانی که با C#‎ تحت دات نت کد میزنم شاید بپرسید چرا ، من هم باید بگم نمیدونم!!

    اینکه اصلا فریم ورک یعنی چی؟ فرقش با کامپایلر چیه؟ چرا زبون سی native هست و سی شارپ نیست؟آیا ممنکنه سی شارپ هم روزی native حساب شه؟ جاوا کجای این ماجراست؟
    شاید جواب دادن به این سوال ها بیشتر شما رو روشن کنه!!
    اصلا فریم ورک چیه!؟ فریم ورک یا چارچوب کاری ، به مجموعه کلاس ها و کتابخانه هایی می گن که به برنامه نویس کمک میکنه نرم افزار مورد نظرش ، خیلی راحت تر و سریع تر توسعه بده!! پس حالا می تونید تفاوت قائل بشید بین زبان برنامه نویسی و چارچوب کاری!! C#‎ و C++‎ و همچنین ربان جاوا (نه کلیات جاوا) زبان برنامه نویسی اند نه چارچوب کاری ، اما Qt و دات نت و چارچوب جاوا (همون کلاس های آماده جاوا) همون چارچوب کاری یا فریم ورکند...
    فرقش با کامپایلر چیه؟
    فرقش از زمین تا آسمانه!! کامپایلر وظیفش ترجمه کد ها به زبان ماشین هست ، در حالی که فریم ورک صرفا یک سری کلاس ها و کد های از قبل نوشته شده برای راحتی کار برنامه نویس است...
    چرا زبون سی native هست و سی شارپ نیست؟آ
    آها !! سوال اصلی اینجاست ، وقتی میگیم یک زبان native یا manage یعنی چی ؟! C++‎ یک زبان native چون کد های نوشته شده به این زبان بعد از کامپایل مستقیما به کد قابل فهم برای سیستم عامل مقصد ترجمه میشه ، در حالی که کد هایی که در Framework های manage تولید میشه مستقیما به کد های قابل فهم برای سیستم عامل مقصد ترجمه نمیشه بلکه به زبانی ترجمه میشه که برای ماشین مجازی FrameWork مورد نظر قابل فهم باشه ، خوب چرا اینکار انجام میدن !؟ دقیقا همینجاست که Cross-Platfom معنا پیدا میکنه ، این کار انجام میدن تا مجبور نباشیم برای هر سیستم عامل زمان کامپایل یک نوع کد تولید کنیم ، یک بار کد رو به زبان قابل فهم برای ماشین مجازی ترجمه میکنیم ، و روی سیستم عامل مورد نظر ماشین مجازی رو نصب می کنیم ، حالا وظیفه ی ماشین مجازی که کد ما را برای سیستم عامل مقصد ترجمه کنه...
    پس در نتیجه C#‎ (تمام زبان های تحت دات نت) و جاوا به این دلیل زبان های Manage خوانده میشن که کد های آنها بعد از کامپایل دو باره باید توسط ماشین مجازی مورد نظر برای سیستم عامل مقصد ترجمه بشن!! به ماشین مجازی جاوا میگن JVM و به ماشین مجازی دات نت میگن CLR...
    جاوا کجای این ماجراست؟
    جاوا ، جای خوبه این ماجراست!! فریم ورک دات نت ، هیچوقت نتونستن بطور کامل Cross-Platfom باشن ، و خیلی ضعف دارن در این مسئله ، اما جاوا در این زمینه بسیار موفق تر از دات نت عمل کرد...
    همه میگن دنیا داره به سمت cross-platform میره . مگه ما غیر از C++‎‎ و فکر کنم بیسیک و دلفی زبون دیگه داریم که به درد کراس پلتفرم بخوره؟
    زبان هایی که اینجا نام بردید هیچ کدوم به تنهایی Cross-Platform نیستن ، مگر C++‎/Qt و VB/.net یا Delphi/.net ( Delphi prism) اما آره زبان هایی بیشتر بدرد چند سکویی می خورن که قبل از اجرا کامپایل نشن ، و در واقع تفسیری باشن ، مثل HTML ، چرا برای وب زبانی مثل HTML را ارائه دادن چون در سطح اینترنت n تا ماشین بود با n تا سیستم عامل مختلف!! پس باید یک زبانی می بود که برای همه قابل فهم بود ، اما زبان هایی مثل HTML فعلا فقط به درد طراحی اینترفیس می خورن و برای نوشتن هسته برنامه اصلا کارا نیستن...
    پس مایکروسافت که اینهمه رو سی شارپ سرمایه گذاری کرده و میکنه داره به بیراهه میره؟!!!
    این نمیدونم و باید از خود میدیران ماکروسافت بپرسی ببنی چه آینده ای را متصور شدن ، اما احساس می کنم خودشون هم دارن به این نتیجه میرسن ، و برای همین صداهایی داره میرسه از طراحی زبانی جدید به اسم WinC++‎ ، البته اطلاعات دقیقی در این مورد ندارم ، یا مثلا همینکه برای نوشتن برنامه های Metro Style کنار C#‎/Vb+XAML ، امکان کد نویسی با Java Script+HTML5 هم گذاشتن ، نشان میده یکم دنبال تغییرند....
    و یا سیستم عامل های جدید شبیه اندروید که تقریبا کل بازار موبایل رو گرفته و زبون اصلی برنامه نویسیش java هست چرا اینقدر گسترش یافته؟ آیا این گسترش جاوا روی سایر سیستم ها از جمله کامپیوترها و یا embede-systems ادامه خواهد داشت و یا فقط تمرکزش روی موبایل هستش؟!
    جاوا جای سی++ رو میتونه بگیره یا خیر؟ چرا؟
    جاوا در Cross-platform بودن بسیار موفق بوده و همیشه می گیم جاوا خیلی خوبه ، اما جاوا هم مثل هر چیز یکسری ضعف و یکسری قوت داره ، جاوا انقدر خوب هست که منکه هیچ تجربه ای با جاوا ندارم ، به صراحت بگم جاوا خیلی خوبه حالا شما حساب اونیکه داره با جاوا پول در میاره رو بکن!! اما ضعفش نسبت به Qt اینکه نیاز نیست برای هر سیستم عامل کدی که نوشتیم رو ببریم در همان سیستم عامل یک بار کامپایل کنیم تا خروجی اجرایی بگیریم ، کافیه یکبار کامپایل و n بار در n سیستم عامل اجرا کنیم ، اما جاوا به دلیل manage بودن ، نیاز داره کدش دو باره ترجمه بشه ، پس کند تر از Qt هست...
    من چون خیلی نمیتونم آینده Qt را پیش بینی کنم در این مورد چیزی نمیگم....

  3. #3

    نقل قول: آیا Qt بهترین انتخاب است؟

    خب سوال اصلی اینجاست که زبون هایی مثل سی شارپ و جاوا بعد از سی++ اومدند . و اونها که این زبون هارو ساختند به همه این موضوعات native بودن و پایین اومدن زمان اجرا اشراف داشتند اما چرا اینطوری این زبان هارو طراحی کردند؟!!!

    ضمن اینکه امروز مطلبی رو در فروم stack overflow میخوندم که به دلیل بهینه سازی خودکار کد زبان هایی مقل سی شارپ و جاوا سرعت اونها حتی از سی++ هم بیشتر شده و یا خاصیتی مثل garbage collection به این موضوع خیلی کمک میکنه .

    و من فکر میکنم اونها خواستند یک برتری به وجود بیارند که یک واسط بین کامپایلر زبان و کامپابلر سیستم عامل ایجاد کردند نه اینکه باعث کند تر شدن و غیر cross-platform شدن یک زبانی بشند . وگرنه میتونستند یک زبانی مثل سی++ طراحی کنند و این کتابخونه هارو به صورت پکیح های جداگانه بفروشند براش؟

    من فکر میکنم اینها این واسط رو طراحی کردند تا ایتدا کدهای نوشته شده توسط کاربر رو به بهترین شکل ممکن خودش یکبار دیگه بتویسه (مثل اینکه یک نفر که کد زده ف کدش رو بده به یک استاد کد نویسی که از همه لحاظ کدش رو اصلاح و بهینه کنه ) و بعدش به زبون ماشین تبدیلش کنه

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

    ***البته همه این نظرات شخصی بوده و وجاهت علمی نداره و امیدوارم دوستان با اطلاع بیان و اصلاح و تکمیل کنند

  4. #4

    نقل قول: آیا Qt بهترین انتخاب است؟

    در مورد cross-platform من فکر میکنم دلیل عدم موفقیت مایکروسافت این بوده که مایکروسافت اساسا انحصارگراست و خودش .net رو گسترش نمیده تا هرکی میخواد ازش استفاده کنه بیاد و از دیگر محصولش یعنی ویندوز هم استفاده کنه

  5. #5
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    و من فکر میکنم اونها خواستند یک برتری به وجود بیارند که یک واسط بین کامپایلر زبان و کامپابلر سیستم عامل ایجاد کردند نه اینکه باعث کند تر شدن و غیر cross-platform شدن یک زبانی بشند
    فکر می کنم شما این قسمت بد متوجه شدید !! زبان های مدیریت شده آمدند تا Cross-platfrom بودن رو به برنامه نویس ها هدیه بدند نه اینکه غیر Cross-platform باشند...
    در ضمن باید بگم خوب همونطور که میدونید در زبان های مدیریت شده ، مدیریت حافظه تا حد زیادی به عهده کامپایلر هست ، شما با اشاره گر ها درگیر نیستید ، وظیفه ی تخریب شی تا حد زیادی از روی دوش برنامه نویس بر داشته شده و...
    خوب میبینیم که تو این زبان ها هم سعی شده تا حد زیادی بهینه باشند ، حالا آیا در سرعت اجرا بهینه تر از زبان های native باشند ، مطمئن نیستم!!
    البته من یک تذکر رو هم اضافه کنم : با قدرتمند شدن ، سخت افزار های امروزی ، خیلی رو سرعت اجرای زبان ها تمرکز نمیشه ، چون تقریبا به چشم نمیاد بلکه سعی میشه در بهینه بودن الگوریتم های بکار گرفته شده در یک پروژه ، تمرکز بشه ، پس نباید به این مسئله خیلی سخت گرفت...
    آخرین ویرایش به وسیله returnx : سه شنبه 17 بهمن 1391 در 19:43 عصر

  6. #6

    نقل قول: آیا Qt بهترین انتخاب است؟

    ضمن این نکته که قبلا خونده بودم انگار زبون های C#‎ یا java توی مولتی تسکینگ و مولتی تردینگ و کلا پیاده سازی رو سیستم های چند پروسسوری موفقتر هستند!!

  7. #7

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط returnx مشاهده تاپیک
    فکر می کنم شما این قسمت بد متوجه شدید !! زبان های مدیریت شده آمدند تا Cross-platfrom بودن رو به برنامه نویس ها هدیه بدند نه اینکه غیر Cross-platform باشند.....
    خب من دقیقا همینجارو نمیفهمم !!! مگر زبون های نیتیو cross-platform نبودند؟!!
    اما زبونی مثل سی شارپ که مدیریت شده است cross-platform نیست!

  8. #8
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    خب من دقیقا همینجارو نمیفهمم !!! مگر زبون های نیتیو cross-platform نبودند؟!!
    اما زبونی مثل سی شارپ که مدیریت شده است cross-platform نیست!
    این مسئله که یک زبان Cross-platform باشه یا نباشه، خیلی به native بودن یا mange بودن ربطی نداره ، اما اصولا زبان های مدیریت شده در این امر یعنی Cross-platform موفق ترند ، چراکه مجبور نیستند کد خودشون رو به زبان محلی سیستم عامل خاصی کامپایل کنند ، بلکه به یک زبان میانی کامپایل کرده و سپس توسط ماشین مجازی به زبان محلی سیستم عامل ترجمه می کنند ، به همین دلیل هست که برای اجرای برنامه هایی که به زبان Java نوشته شده اند باید JVM رو سیستم مقصد نصب باشه یا همین موضوع برای .net هم صادق هست ، اما شما برنامه ای رو در C++‎‎‎‎‎‎ می نویسید و بعد کامپایل می کنید ، دیگه نیاز ندارید ماشین مجازی خاصی رو هم نصب کنید ولی C++‎‎‎‎ خیلی Cross-platform نیست ، اما در مورد کیوت داستان یکم فرق داره ، کیوت برا اینکه هم بتونه هم Cross-platform بمونه و هم از مزایای native بودن بهره ببره ، مجبور شد تمام Object های مورد نیاز برنامه نویسان رو خودش ایجاد کنه و از object های سیستم عامل ها استفاده نکنه و این باعث میشه تا از API های سیستم عامل های خاصی استفاده نکنه ، برای همین هم هست که زمان اجرای کد های Qt او چند تا DLL معروف رو باید کنار برنامتون قرار بدید...
    در ضمن میبینیم وقتی Qt برای ایجاد object های خاص از API های یک سیستم عامل استفاده کرده تو اون زمینه دیگه Cross-platform نبوده و فقط در همون سیستم عامل خاص قادر به استفاده از اون Object ها هستیم ، مثل Mac Style که Style پنجره های پروژه رو به شکل پروژه های Macintosh در میاره ، اما در Windows قابل استفاده نیست...
    ببینید :
    This class is implemented as a wrapper to the HITheme APIs, allowing applications to be styled according to the current theme in use on Mac OS X. This is done by having primitives in QStyle implemented in terms of what Mac OS X would normally theme.
    Warning: This style is only available on Mac OS X because it relies on the HITheme APIs
    در ضمن C#‎‎‎‎ ، البته کل دات نت یکی از اهدافش Cross-platform بودن بود ، نه اینکه الان نباشه ، هست اما خیلی موفق نبود در این زمینه ، شما همین الان هم میتونید با C#‎‎‎‎ برنامه بنویسید و در mac اجرا کنید ، اما هیچ تضمینی نیست که برنامتون درست اجرا بشه ، برای همین هست که روی دات نت به عنوان یک چارچوب کاری Cross-platfom حساب نمیشه ....
    امیدوارم این توضیحات کمک بیشتری بهتون کرده باشه...

  9. #9

    نقل قول: آیا Qt بهترین انتخاب است؟

    من الان یه نکته که خیلی برام جالب بود اینه توی رنکینگ زبان های برنامه نویسی معمولا همیشه زبان C اول هست و بعدش java و بعدشم C++‎‎‎ و C#‎‎‎ و .....
    الته جدیدا انگار زبان objective-c داره تو رنکینگ میاد جای یکی از اینهارو بگیره!!

    الان این واسم سوال شده که ما توی ایران میگیم سی++ همون ارتقا یافته یا تکمیل شده یا پیشرفته C هست اما نمیدونم چرا همیشه C++‎‎‎ رتبه اش از C پایینتره؟!!

    البته فکر میکنم دلیلش اینه که ما 2 جور عمده برنامه نویسی داریم . شی گرا و روالگرا و هنوز 35% برنامه نویسها روالگرا مینویسند و از C استفاده میکنند و به خاطر این شاید رتبه C همیشه (از سال 1988 تا الان) صدر جدول بوده! اما درصد ها در شی گرایی شکسته میشه بین C++‎‎‎ و java و C#‎‎‎ و ......
    و چون توی شی گرایی جاوا از سی++ برتری داره رتبه سی++ بعد جاوا قرار میگیره

    حالا چقدر این تحلیل درسته نمیدونم!!!

    اما یه نکته جالبی هم دیدم یه تقسیم بندی دیگه از زبان ها بود که یه 2 دسته staticly و dynamicly تقسیم میشند . متاسفانه اطلاعتی در این زمینه ندارم و فقط میتونم حدس بزنم مربوط به نوع تعریف متغیر ها و نوع اجرای برنامه به صورت single-tasking or multitasking باشه! اگر در این زمینه اطلاعاتی دارید خوشحال میشم بشنوم

  10. #10
    کاربر دائمی آواتار aidinMC
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    یه گوشه دنج از هارد!
    پست
    129

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط returnx مشاهده تاپیک
    مثل HTML ، چرا برای وب زبانی مثل HTML را ارائه دادن چون در سطح اینترنت n تا ماشین بود با n تا سیستم عامل مختلف!! پس باید یک زبانی می بود که برای همه قابل فهم بود ، اما زبان هایی مثل HTML فعلا فقط به درد طراحی اینترفیس می خورن و برای نوشتن هسته برنامه اصلا کارا نیستن...
    HTML زبان نیست. HTML تگهای رابط ، بین مفسر و کاربر هست.

  11. #11
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: آیا Qt بهترین انتخاب است؟

    در مورد native نبودن .net باید بگم که میشه با mono/aot تبدیلش کرد.ولی چون تنها خاصیت .net همین managed بودنشه.من ترجیح میدم از اول با C++‎ بنویسم و حداقل یه اسمی داشته باشم.(بگن طرف با یه زبون واقعی برنامه مینویسه نه با یه اسباب بازی)

  12. #12
    کاربر دائمی آواتار aidinMC
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    یه گوشه دنج از هارد!
    پست
    129

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط FastCode مشاهده تاپیک
    در مورد native نبودن .net باید بگم که میشه با mono/aot تبدیلش کرد.ولی چون تنها خاصیت .net همین managed بودنشه.من ترجیح میدم از اول با C++‎ بنویسم و حداقل یه اسمی داشته باشم.(بگن طرف با یه زبون واقعی برنامه مینویسه نه با یه اسباب بازی)
    موافقم واقعا اسباب بازی هستش ....

  13. #13

    نقل قول: آیا Qt بهترین انتخاب است؟

    چرا اسباب بازی هست؟ چون فرمی که باید کلی وقت بذاری بنویسی رو از قبل آماده داره؟

    یا برنامه ای هست که آدم نتونه با سی شارپ بنویسه اما با سی ++ بتونه؟ لطفا علمی بحث کنید

  14. #14
    کاربر دائمی آواتار aidinMC
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    یه گوشه دنج از هارد!
    پست
    129

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط prince0fpersia مشاهده تاپیک
    چرا اسباب بازی هست؟ چون فرمی که باید کلی وقت بذاری بنویسی رو از قبل آماده داره؟

    یا برنامه ای هست که آدم نتونه با سی شارپ بنویسه اما با سی ++ بتونه؟ لطفا علمی بحث کنید
    بله برنامه های هست که نمیشه با سی شارپ ساخت ::::: مثال -> کامپایلر سی شارپ با سی پلاس ساخته شده. آیا سی شارپ میتونه؟ (من این مثال تو این انجمن بارها زدم)

    درمورد سوال اولت. شما میخوای یه ماشین (اتومبیل) بسازی تو دوتا حالت میتونی این کارو بکنی:

    1) بیای از صفر همه چی رو طبق محاسبات خودت طراحی کنی و بسازی
    2) یکی بیاد قطعات رو آماده کنه بهت بگه بیا اینارو به هم وصل کن

    سوال: تو کدوم حالت به خودت افتخار میکنی؟

  15. #15

    نقل قول: آیا Qt بهترین انتخاب است؟

    یعنی تو سی شارپ نمیشه از صفر طراحی کرد؟!!

  16. #16

    نقل قول: آیا Qt بهترین انتخاب است؟

    البته من بحثم زیاد در مورد سی شارپ نیست چون مایکروسافت ذاتا انحصار طلبه و مسلما به درد من که دلم میخواد با زبانی که بلدم هرکاری که خواستم روی هر سخت افزار و سیستم عاملی کنم جور درنمیاد (هرچند من شنیدم با سی شارپ هم میشه همه کار کرد و الزامی نیست که شما حتما از toolbox آماده اون استفاده کنید!! و حتی میتونید کد اسمبلی رو هم تو برنامه هاتون استفاده کنید)

    من بیشتر در مورد جاوا سوال دارم که توی ایران خیلی کم بهش پرداخته شده اما توی جهان از محبوب ترین زبان ها (اگر محبوبترین نیاشه) هستش و جدیدا حتی سیستم عامل اختصاصی اندروید رو هم یه جورایی واسه موبایل ها و تبلت ها جا انداخته و من فکر میکنم در آینده بیشتر گسترش پیدا کنه و به pc ها و سایر سیستم های سخت افزاری هم برسه و یکحورایی جایگزین c ,C++‎ هم بشه و در نهایت بالای 50% برنامه نویسان و برنامه هارو به خودش اختصاص بده

    نمیدونم چقدر این پیش بینی میتونه درست باشه اما اینطوری که جاوا پیشروی میکنه بعید به نظر نمیرسه

  17. #17

    نقل قول: آیا Qt بهترین انتخاب است؟

    دوستان من دنبال یک زبان برنامه نویسی + یک IDE میگردم که همه نیازهای یک برنامه نویس رو مرتفع کنه . مستقل باشه و روی همه جور سیستم عاملی اجرا بشه . بشه برنامه های سطح خیلی پایین سخت افزاری و برنامه های سطح بالای ویژوالی باهاش نوشت .
    زبان C++‎

    نتیجه تحقیق شاید چند ساله من روی سی++ و محیط Qt رسیده . آیا این نتیجه درسته و روی این زبون و این محیط تمرکز کنم و همه چیزشو با جزییات یاد بگیرم یا اینکه در آینده نزدیک اینها از رده خارج میشه و زبون هایی مثل C#‎‎ یا JAVA جای C++‎‎ رو خواهند گرفت (یا شاید تا الان هم گرفتند؟!)
    جاوا که در ابتدا oak (بلوط) نامیده می‌شد کراس‌پلت‌فرم بوده را هدف قرار داده است و بر این هدف هم مسلط شده است. جاوا روی پلت‌فرم دستکتاپ ویندوز، لینوکس، مک‌او‌اس و دستگاه‌های همراه و به عنوان زبان سمت‌سرور برنامه‌نویسی وب‌سایت کاملاً کاربردی و عالی‌است.
    C#‎ یا بهتر بگوییم کل دات‌نت را اندروهلزبرگ در راستای سیاست‌های مایکروسافت طراحی کرده است. مایکروسافت در کنفرانس توسعه‌دهندگان در آوریل سال ۲۰۰۰ (اگر اشتباه نکنم) اعلام کرد فریم‌ورک دات‌نت در آینده جز جداناشدنی ویندوز خواهد بود. حال اینکه کی و تا چه حد یا اینکه اینک هم دیدگاه مایکروسافت همان است یا نه اطلاعی ندارم. اما نقطه‌اصلی هدف دات‌نت برنامه‌های سازمانی است. هر چند دات‌نت استاندارد شده است و شرکت‌های دیگری هم پیاده‌سازی‌هایی از آن را ارائه کرده‌اند اما زمان ثابت کرده همچنان مایکروسافت به کس دیگری موقعیت عرضه‌اندام در این زمینه را نمی‌دهد. عمده تولیدات تحت لوای دات‌نت برنامه‌ها و سایت‌های درون سازمانی هستند که برای همیشه در حیطه عملکرد یک سازمان خواهند ماند. دات‌نت و جاوا دو رقیب قدرتمند برای برنامه‌های سازمانی هستند که زبان‌هایی مانند C++‎ توانایی مقابله با‌ آنها را ندارند!


    و یا سیستم عامل های جدید شبیه اندروید که تقریبا کل بازار موبایل رو گرفته و زبون اصلی برنامه نویسیش java هست چرا اینقدر گسترش یافته؟ آیا این گسترش جاوا روی سایر سیستم ها از جمله کامپیوترها و یا embede-systems ادامه خواهد داشت و یا فقط تمرکزش روی موبایل هستش؟!
    جاوا جای سی++ رو میتونه بگیره یا خیر؟ چرا؟
    زبان اصلی برنامه‌نویسی اندروید C++‎ هست. افزونه‌های اندروید برای جاوا مجموعه‌ای از رابط‌های دیداری برای ساده‌تر کردن برنامه‌نویسی است. وگرنه نرم‌افزار‌های سیستمی و بازی‌ها با C++‎ (android ndk) نوشته می‌شوند.
    جاوا جای خودش رو داره که هیچ تکنولوژی به این سادگی نمیتونه جاشو بگیره تصمیم هم نداره جای C++‎ رو بگیره. اما اگر بنا باشه جوابی به سوال شما بدم «خیر» خواهد بود.

    پاورقی: digia قول داده در طول امسال (۲۰۱۳) پورت کیوت رو برای اندروید و ios آماده کنه که بنده شدیداً منتظر هستم و برای پیگیری کوچکترین خبری در این رابطه هر روز به سایت digia سر میزنم. اگر دنبال شماره یک کراس‌پلت‌فرم (لقبی که digia تصمیم داره برای کیوت محقق کنه) هستید این نکته رو در نظر بگیرید.



    پس مایکروسافت که اینهمه رو سی شارپ سرمایه گذاری کرده و میکنه داره به بیراهه میره؟!!!
    مایکروسافت بسیار هدفمند و با یک برنامه‌ریزی عالی دات‌نت رو توسعه میده. کوچکترین خللی بر کار مایکروسافت نیست!


    ضمن اینکه امروز مطلبی رو در فروم stack overflow میخوندم که به دلیل بهینه سازی خودکار کد زبان هایی مقل سی شارپ و جاوا سرعت اونها حتی از سی++ هم بیشتر شده و یا خاصیتی مثل garbage collection به این موضوع خیلی کمک میکنه .
    درسته که قابلیت optimize های بسیار عالی در دات‌نت و جاوا وجود داره. اما این مسائل ربطی به سرعت ندارند و فقط برای راحتی کار برنامه‌نویس هستند. برنامه‌نویس دات‌نت و جاوا نمیدونه زباله‌های برنامش کی منهدم میشن اما برنامه‌نویس C++‎ باید خودش اونا رو بذاره دم در!


    ضمن این نکته که قبلا خونده بودم انگار زبون های C#‎‎ یا java توی مولتی تسکینگ و مولتی تردینگ و کلا پیاده سازی رو سیستم های چند پروسسوری موفقتر هستند!!
    پس چرا ژاپنی‌ها برنامه تمام(شایدم اکثر) روبوت‌های خودشون رو با C++‎ می‌نویسن و اونو روی لینوکس اجرا می‌کنند؟ ادامه جواب همان عرایضم در پاراگراف قبلی هست!


    من الان یه نکته که خیلی برام جالب بود اینه توی رنکینگ زبان های برنامه نویسی معمولا همیشه زبان C اول هست و بعدش java و بعدشم C++‎‎‎‎ و C#‎‎‎‎ و .....
    توجه کن که این رنکینگ‌ها بر مبنای سورس نرم‌افزارهای اوپن‌سورس ساخته میشن. لذا تا زمانی که هسته لینوکس و gtk و هزاران هزار کتابخانه و نرم‌افزار کدباز لینوکسی با زبان سی هست این آمار جای تعجب نداره. سی هم مثل سی‌پلاس‌پلاس امکانات خوبی برای چند سکویی داره.

  18. #18
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    HTML زبان نیست. HTML تگهای رابط ، بین مفسر و کاربر هست.
    بله ، به این معنای زبان های برنامه نویسی که ما فعلا روش بحث داریم نیست اما همونطور که می دونید اون" L" کلمه ی HTML به Language اشاره داره!!
    من با اون مثال سعی کردم تا مفهوم Cross-platform را توضیح بدم...

  19. #19
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط prince0fpersia مشاهده تاپیک
    چرا اسباب بازی هست؟ چون فرمی که باید کلی وقت بذاری بنویسی رو از قبل آماده داره؟

    یا برنامه ای هست که آدم نتونه با سی شارپ بنویسه اما با سی ++ بتونه؟ لطفا علمی بحث کنید
    نمونش که خیلی زیاده.
    نمیخوام وارد بحث کرنل و درایور و بوت لودر و .... بشم
    همین برنامه های معمولی و روزمره ای که باهاشون کار میکنیم رو میگم.
    فکر کن یه انجین ه بازی یا انجین دیتابیس رو با C#‎‎‎‎ بنویسی.
    من که به کسی که این کار رو بکنه میخندم.حتی خودم یک بار سعی کردم انجامش بدم.(قبلش فکر میکردم اونایی که میگن نمیشه شوخی میکنن)
    نتیجه؟پروژه چند ماه به دلیل سرعت تخیلی متوقف شده تا به Qt تبدیل بشه.

  20. #20

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط FastCode مشاهده تاپیک
    نمونش که خیلی زیاده.
    نمیخوام وارد بحث کرنل و درایور و بوت لودر و .... بشم
    همین برنامه های معمولی و روزمره ای که باهاشون کار میکنیم رو میگم.
    فکر کن یه انجین ه بازی یا انجین دیتابیس رو با C#‎‎‎‎ بنویسی.
    من که به کسی که این کار رو بکنه میخندم.حتی خودم یک بار سعی کردم انجامش بدم.(قبلش فکر میکردم اونایی که میگن نمیشه شوخی میکنن)
    نتیجه؟پروژه چند ماه به دلیل سرعت تخیلی متوقف شده تا به Qt تبدیل بشه.


    ولی من با سی شارپ و در ویژوال استودیو کار پردازش تصویر با EMGU که همون تبذیل شده ی opencv برای سی شارپ هست کد زدم و روی ربات های تیم AUT دانشگاه امیرکبیر هم الان همین کدها پیداه سازی شده + کل کد های دیگه ربات و ربات از خیلی نظرها حتی از نمونه های لینوکسی خارجی بهتر عمل میکنه و سریعتره!

    ما یک کد رو هم با opencv و هم با emgu تست کردیم . تفاوت سرعتی ندارند . نکته ای که توی سایت ها و فروم ها و بحث های خارجی هم خوندم همین بوده که این بحث سرعت کاملا ادعایی هست و واقعیت عملی نداره . حتی بالاتر هم نوشتم که یک جا یک بحث خیلی مفصلی در stackoverflow بود که چرا جاوا و سی شارپ از C++‎ سریعتر هستند!!!!!!!!! و اتفاقا کسی این حرفو رد نکرده بود و دلیل رو به خاطر optimizition این دو زبون دونسته بودند

  21. #21
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    حتی بالاتر هم نوشتم که یک جا یک بحث خیلی مفصلی در stackoverflow بود که چرا جاوا و سی شارپ از C++‎‎ سریعتر هستند!!!!!!!!! و اتفاقا کسی این حرفو رد نکرده بود و دلیل رو به خاطر optimizition این دو زبون دونسته بودند
    در مورد موارد قبل خیلی بحثی ندارم ، ولی در این مورد خیلی عجیب بنظر میرسه!! در ضمن من هم مثل جناب FastCode اصلا نمیتونم تصور کنم که مثلا بیان ، برنامه ای مثل photoshop ، یا هر برنامه دیگه ای که نیاز به پردازش بالا دارن را با C#‎ بنویسن !! یکم مضحک بنظر میریسه !! این برنامه ها را اصولا با C++‎ و فریم ورک های تحت آن مثل MFC یا Qt و... توسعه میدن...
    حتی خود ماکروسافت هم نمیاد حتی برنامه های کاربردیش را با دات نت بنویسه ، جز برنامه های خیلی کوچیک مثل Calculator ،که یجورایی می خواست WPF را نمایش بده!!

  22. #22

    نقل قول: آیا Qt بهترین انتخاب است؟

    متاسفانه آدرس اون بحث رو پیدا نکردم .

    اما من یک لیست بلند بالا ار برنامه هایی که با جاوا نوشته شده پیدا کردم : http://platform.netbeans.org/screenshots.html
    همه جور برنامه توش پیدا میشه . از فوتوشاپ گرفته تا طراحی بوئینگ و برنامه هواشناسی و ......

    اما چون همچین لیستی برای سی شارپ وجود نداره دلیل نمیشه که اسباب بازی باشه . چون بیشتر در برنامه های درون سازمانی به کار برده میشه که دیده نمیشن!
    منم تا قبل اینکه کار پردازش تصویر انجام بدم همین نظر رو داشتم ، اما وقتی کار سنگینی مثل image-processing رو در سی شارپ میشه real-time و بدون خطا انجام داد دیگه حرف زدن در مورد سرعت بی معنی میشه!

    هرکس قبول نداره میتونه هر دو کتابخونه Emgu و OpenCV رو دانلود کنه و روی انواع پلتفرم ها تست کنه ببینه کدوم سریعتر هست! فکر نمیکنم هیچ برنامه ای سنگین تر از مثلا پیدا کردن یک سری شکل در تصویر آنلاین یک دوربین باشه! اگر تصویر دوربین رو 600*800 هم فرض کنید با 30 فریم در ثانیه میشه 480 هزار پیکسل در 30/1 ثانیه که برنامه باید اطلاعات تک تک اینهارو بخونه ، انواع الگوریتم های پیچیده هوش مصنوعی رو روی اینها اجرا کنه و درنهایت با تغییر دادن اطلاعات برخی از اینها مثلا دور اون شکل خاص یک خط بکشه به نشانه اینکه کجای تصویر قرار داره و بعد تازه مثلا به موتورهای ربات فرمانه بده چطوری حرکت کنند نسبت به اون شی !

    اگر برنامه ای سنگینتر از این وجود داره که باید real-time هم اجرا بشه باشه سی شارپ اسباب بازیه!!!

    من اصلا نمیخوام از C#‎‎‎ دفاع کنم اما این کارارو باهاش انجام دادم و نمیتونم بپذیرم اسباب بازی باشه!! فقط همین!
    چون با سی شارپ در این مثل اسباب بازی رفتار میشه و همه ویندوز فرم میسازند دلیل نمیشه قابلیت این زبان فقط همینقدر باشه!

  23. #23

    نقل قول: آیا Qt بهترین انتخاب است؟

    برای این جور کارایی که شما می گی زبان فقط سی پلاس مناسبه !
    به نظر من دات نت فقط بدرد وب می خوره ! خودم خیلی سی شارپ کار کرده بودم !
    شما تا حالا برنامه دات نتی خوب دیدی تو دنیا ؟ نت پد ویندوز هم با سی پلاسه برادر !
    QT هم زبان نیست ! به طور خیلی ساده رابط کاربری برنامه رو باهاش می نویسن ! و خیلی قابلیت ها داره !
    دیگه پردازش تصویر که خودش نداره ! باید از کتاب خونه های دیگه استفاده کنید !


    چرا جاوا و سی شارپ از C++‎‎ سریعتر هستند!
    جان ! دیگه این حرفو نزنی ها ! مردیم از خنده !

    البته در مواقعی برنامه ای که با سی پلاس نوشته شده باشه از نمونه دات نتی کند تره
    و دلیلش چیزی نیست جز این که شما برنامه رو بد نوشتی !
    چون توی دات نت مدیریت حافظه و .. اتوماتیک انجام میشه مشکلی نیست
    اما تو سی پلاس اگه شما اشتباه کنی برنامت واقعا افتضاه میشه !
    اتفاقا یکی از دوستای من یه برنامه نوشته بود new تو سی پلاس رو new تو سی شارپ فرض کرده بود !
    delete هم یادش رفته بود بکنه !


    برای کارایی مثل پردازش تصاویر و برنامه رباط دیگه حتما باید سی / سی پلاس کار کنید !
    دلیل اینکه مایکروسافت هم اینهمه هوای سی شارپو داره طبیعیه می خواد برنامه نویس ها فقط برا ویندوز برنامه بزنن ! از محصولات خودش استفاده کنن و ...

    سی شارپ در برابر سی پلاس هیچه !

    ++C

    ++C

  24. #24

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط __UFNHGGI_H__ مشاهده تاپیک
    برای این جور کارایی که شما می گی زبان فقط سی پلاس مناسبه !
    به نظر من دات نت فقط بدرد وب می خوره ! خودم خیلی سی شارپ کار کرده بودم !
    شما تا حالا برنامه دات نتی خوب دیدی تو دنیا ؟ نت پد ویندوز هم با سی پلاسه برادر !
    QT هم زبان نیست ! به طور خیلی ساده رابط کاربری برنامه رو باهاش می نویسن ! و خیلی قابلیت ها داره !
    دیگه پردازش تصویر که خودش نداره ! باید از کتاب خونه های دیگه استفاده کنید !



    جان ! دیگه این حرفو نزنی ها ! مردیم از خنده !

    البته در مواقعی برنامه ای که با سی پلاس نوشته شده باشه از نمونه دات نتی کند تره
    و دلیلش چیزی نیست جز این که شما برنامه رو بد نوشتی !
    چون توی دات نت مدیریت حافظه و .. اتوماتیک انجام میشه مشکلی نیست
    اما تو سی پلاس اگه شما اشتباه کنی برنامت واقعا افتضاه میشه !
    اتفاقا یکی از دوستای من یه برنامه نوشته بود new تو سی پلاس رو new تو سی شارپ فرض کرده بود !
    delete هم یادش رفته بود بکنه !


    برای کارایی مثل پردازش تصاویر و برنامه رباط دیگه حتما باید سی / سی پلاس کار کنید !
    دلیل اینکه مایکروسافت هم اینهمه هوای سی شارپو داره طبیعیه می خواد برنامه نویس ها فقط برا ویندوز برنامه بزنن ! از محصولات خودش استفاده کنن و ...

    سی شارپ در برابر سی پلاس هیچه !

    ++C

    ++C
    شما جای اینکه اینقدر از شکلک خنده استفاده کنید یکمی با دقت پست هارو میخوندین
    هیچکس نگفته Qt زبان هست یا باید پردازش تصویر هم بکنه!

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

    پیشرفته ترین ربات های انسان نمای فوتبالیست موجود در کشور متعلق به تیم AUT-Man دانشگاه امیرکبیر هست که کل برنامه ربات با C#‎ نوشته شده و منم توی اون تیم بودم.
    در کنارش ربات استاندارد nao رو هم با پلتفرم کامل لینوکس و برنامه نویسی C++‎ داریم که هیچ برتری نسبت به ربات های دست ساز خودمون نداره!(تست شده در عمل)

    بحث سرعت هم کاملا منسوخ شده و شما اگر انگلیسی سرچ کنید میبینید دیگه هیچکس ادعای سرعت برای C++‎ نمیکنه!
    بالاتر هم گفتم ، اینکه اکثر برنامه های تجاری با سی++ یا سی یا جاوا نوشته شدند دلیل بر برتری اونها نیست! دلیلش اینه که اونها open-source هستند اکثرا و C#‎ انحصاری مایکروسافت هست ! و همه جای دنیا مثل ایران نیست که قانون کپی رایت نداشته باشند!!!

    شما اگر در مورد زبان برنامه نویسی ای تجربه یا اطلاعاتی ندارید دلیل نمیشه بیاید و هرچی دلتون خواست بنویسید!

  25. #25
    کاربر دائمی آواتار returnx
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    ?
    پست
    1,190

    نقل قول: آیا Qt بهترین انتخاب است؟

    پیشرفته ترین ربات های انسان نمای فوتبالیست موجود در کشور متعلق به تیم AUT-Man دانشگاه امیرکبیر هست که کل برنامه ربات با C#‎‎‎‎‎‎ نوشته شده و منم توی اون تیم بودم.
    خوب این یکی از او اشتباهایی بوده که خوب جواب داده!!
    در کنارش ربات استاندارد nao رو هم با پلتفرم کامل لینوکس و برنامه نویسی C++‎‎‎‎‎‎ داریم که هیچ برتری نسبت به ربات های دست ساز خودمون نداره!(تست شده در عمل)
    این یکی از کار های خوبی بوده که بد جواب داده!!
    نه حالا بدون شوخی ، زمانی این حرف قابل استناد هست که ، الگوریتم های بکار رفته در هر دو روبات دقیقا مثل هم و با سخت افزار های یکسانی پیاده شده باشد ولی یکی با C#‎‎‎‎‎ و دیگری با C++‎‎‎‎‎ ، در اون زمان کاملا مشخص میشه کدام زبان کارایی بهتری داره ، اصلا میتونید رو همین روبات خودتون هم تست کنید ، عین همین کد ها و الگوریتم هارو این بار با C++‎‎‎‎‎ بنویسید (البته اگه اونقدر بیکار هستید) ، بعد بیاین نتایج رو هم مقایسه کنید....
    بالاتر هم گفتم ، اینکه اکثر برنامه های تجاری با سی++ یا سی یا جاوا نوشته شدند دلیل بر برتری اونها نیست! دلیلش اینه که اونها open-source هستند اکثرا و C#‎‎‎‎‎‎ انحصاری مایکروسافت هست ! و همه جای دنیا مثل ایران نیست که قانون کپی رایت نداشته باشند!!!
    نه اینطوری هام نیست ، من لیست یکسری از برنامه های معروف که همین الان هم احتمالا رو سیستمتون نصب هست رو براتون میزارم میبینید که همه با C++‎‎‎‎‎ توسعه داده شدند ، حالا تحت FrameWork های مختلف:
    Microsoft office
    Internet Explorer
    Adobe Photoshop
    Adobe Acrobat
    Firefox
    Nero Multimedia Suite
    Safari (web browser)
    Google Chrome
    VLC media player
    Adobe Dreamweaver
    و خیلی های دیگه ف که اگر من الان بخوام اینجا براتون نام ببرم ، تا صبح فردا باید Copy/paste کنم....
    من بهتون توصیه می کنم حتما تجربه ای حتی کوچک با Visual C++‎‎‎‎‎/MFC داشته باشید ، من خیلی با MFC تجربه ندارم ، اما وقتی یک مدت روش کار می کردم دقیقا همون موقع بود که فهمیدم ، C#‎‎‎‎‎ اگر اسباب بازی نباشه ، خیلی شبیه اسباب بازی هست....
    شما هم میتونید زمان نصب برنامه ها ، دقت کنید که چه FrameWork هایی همراش نصب میشه Micrsoft Visual C++‎‎‎‎‎ Redistributable پای ثابت نرم افزار های بزرگ ، معروفه ، نه .net frameWrok ...
    البته این موضوع رو هم اضافه کنم که یک برنامه بزرگ صرفا با یک زبان نوشته نمیشه ، و با چندین تکنولوژی مختلف توسعه داده میشه ، اما اون چیزی که برای ما مهم هست ، هسته ی برنامه هست...
    و همچنین شما میتونید به صفحه ی jobs شرکت های بزرگ مثل مایکروسافت و Google و... نگاه کنید ، کسی نمیگه برنامه نویس C#‎‎‎‎ میخوایم!! همش نوشته C/C++‎‎‎‎ ,Pythone,ruby البته java هم کم و بیش دیده میشه ...
    آخرین ویرایش به وسیله returnx : چهارشنبه 18 بهمن 1391 در 11:48 صبح

  26. #26

    نقل قول: آیا Qt بهترین انتخاب است؟

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

    موفق باشید

  27. #27
    کاربر جدید آواتار bethoveen
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    کنار کامپیوترم
    پست
    29

    نقل قول: آیا Qt بهترین انتخاب است؟

    متاسفانه اون طور که تو کشور ما باب شده و قانون کپی رایت رعایت نمیشه اکثر کسایی که میان به سمت برنامه نویسی C#‎ رو انتخاب میکنن چون نسبت به بقیه کامپوننت ها و امکانات بیشتری داره که برای یه برنامه نویس تازه کار به نظر من خوبه اما به شرطی که باعث درجازدن نشه ...من خودم یه مدت پندتا پروژه با سی شارپ کار کردم و با توجه به اینکه مشتری اینترفیس زیبا و راحتی میخواست از کامپونتت های شرکت هایی مث RadControls ،krypton استفاده کردم اما اخرش به این نتیجه رسیدم که این کار باعث میشه من بد عادت بشم و حتی کدنویسیم افت کنه...
    مدتی قبل تصمیم گرفتم با ویندوز خداحافظی کنم و رو لینوکس با سی پلاس و کیو تی کار کنم اما خیلی سخته چون باید برای کوچیک ترین کار باید مهارت داشته باشی....
    اینو هم باید در نظر گرفت که تو ویندوز شما نمی تونی با توجه با رویه که ماکروسافت پیش گرفته با جاوا و سی زیاد موفق باشی...انگار که بهت میگن یا سی شارپ یا شکست...
    دوستان این رو در نظر داشته باشین تو شرکتهای بزرگ برای لایسنس فناوری های دات نت هزینه های زیادی میشه..نمونش همین ویژوال اسدیو که چند هزار دلار قیمتشه...
    اما کیو تی تا اونجایی که من میدونم نسخه های پایینش رایگانه و همچنین جاوا که تو اکثر موارد رایگانه...
    در حالت کلی واقعا سخته بگیم کدوم خوبه یا کدوم بد...
    دوست بالایی هم اشاره کرد به نرم افزارایی که رو سی پلاس کار شده ...خوب اکثرشون عمر تولیدشون از سی شارپ زیادتره...
    به نظر من باید الویت بندی بشه و باتوجه به هدف و انگیزه انتخاب بشه و پارامترهایی که مهمه برات رو در نظر بگیری:
    اگه میخوای مستقل از سیسیتم عامل کار کنی جاوا و برای پروژه های خاص سی پلاس...
    اگه سرعت و امنیت مد نظرت باشه سی پلاس و سی بهتره ...
    اگه عاشق دات نت هستی سی شارپ یا وی بی دات نت...
    البته من تازه به این نتیجه رسیدم که رو پلتفورم دات نت خیلی فرقی نداره که کدوم زبانو انتخاب کنی...البته از بین سی شارپ و وی بی و سی دات نت...

  28. #28
    کاربر جدید آواتار bethoveen
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    کنار کامپیوترم
    پست
    29

    نقل قول: آیا Qt بهترین انتخاب است؟

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

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

  29. #29

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط returnx مشاهده تاپیک
    نه حالا بدون شوخی ، زمانی این حرف قابل استناد هست که ، الگوریتم های بکار رفته در هر دو روبات دقیقا مثل هم و با سخت افزار های یکسانی پیاده شده باشد ولی یکی با C#‎‎‎‎‎‎‎‎ و دیگری با C++‎‎‎‎‎‎‎‎ ، در اون زمان کاملا مشخص میشه کدام زبان کارایی بهتری داره ، اصلا میتونید رو همین روبات خودتون هم تست کنید ، عین همین کد ها و الگوریتم هارو این بار با C++‎‎‎‎‎‎‎‎ بنویسید (البته اگه اونقدر بیکار هستید) ، بعد بیاین نتایج رو هم مقایسه کنید....


    من فکر کنم اشتباه شما همینجاست . اگر قرار بود ما دقیقا یک الگوریتم رو به یک زبان دیگه ترجمه کنیم پس دیگه چه لزومی به ایجاد یک زیان جدید بود؟!!!
    زیان های جدید ایجاد میشند که یک طرز تفکر جدید نسبت به برنامه نویسی ایجاد کنند نه اینکه فقط اسم توابع رو عوض کنند!!

  30. #30
    کاربر دائمی آواتار aidinMC
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    یه گوشه دنج از هارد!
    پست
    129

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط prince0fpersia مشاهده تاپیک
    پیشرفته ترین ربات های انسان نمای فوتبالیست موجود در کشور متعلق به تیم AUT-Man دانشگاه امیرکبیر هست که کل برنامه ربات با C#‎‎ نوشته شده و منم توی اون تیم بودم.
    دوست من خب این انتخاب شما و تیم شما بوده...
    آیا شما وقتی طراحی این رباتها رو تو ذهن داشتین و داشتین آنالیز میکردین جایی به مشکل خوردین که آقا بله این قسمت رو نمیشه با سی پلاس ساخت، بریم به سمت سی شاپ؟!؟
    شما مطمن باش (اصلا شک نکن) اگه تونستی با سی شارپ این کارو بکنی، با سی پلاس به بهترین نحو خواهی انجام داد.

    توجه : تعصب نیست واقعیته....

  31. #31

    نقل قول: آیا Qt بهترین انتخاب است؟

    چه جالب نکنه شما چون دیدی با سی شارپ روباته بهتر کار می کنه می گی سی شارپ قوی تره !

    اصلا Native رو با managed مقایسه کردن اشتباست !

    دلیل جا افتادن سی شارپ تو ایران یکی نبود کپی رایته و یکی دیگه اسون بودنشه
    چون الان دیگه اکثرا از راه وب و برنامه های حساب داری پول در میارن که همه با دات نت هستن !
    ولی شما اگه بخوای یه چی مثل فتوشاپ بنویسی با دات نت نمیشه ! اونوقت دیگه می ری سی پلاس !
    برنامه peid که حجمشم کمه رو دان کن با اون می شه فهمید که برنامه ها با چی نوشته شدن !
    هرچی برنامه هست امتحان کن ! عمرا اگه یکی با سی شارپ بود !

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

    شما اگر انگلیسی سرچ کنید میبینید دیگه هیچکس ادعای سرعت برای C++‎‎ نمیکنه!
    :شکلک قهقه فجیح :
    شما فرض کن ما سرچ بلد نیستیم !


    دیگه داریم از مبحث اصلی خارج می شیم ! عنوان اینه >> آیا Qt بهترین انتخاب است؟

    نظر شخصی من ! بله چون سی پلاس بهترینه !

  32. #32
    کاربر جدید آواتار bethoveen
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    کنار کامپیوترم
    پست
    29

    نقل قول: آیا Qt بهترین انتخاب است؟

    من کاملا با شما مخالفم...
    تمام نرم افزارهای بزرگی که رو سیستم های صنعتی و حساس کار میکنن با سی پلاس نوشته شدن...
    کی گفته این بحث سرعت ادعاییه و واقعیت علمی نداره؟؟؟
    بابا از من و شما بعیده...
    سرعت و پارامترهای مربوط به اون جدای از بحث کامپایلر به الگوریتم بستگی داره...
    شما که رباتیک کار میکنی نشنیدی که مثلا avr با C خیلی بهتر از basic جواب میده؟؟؟اینا رو الکی همین واسه دل خوشی گفتن؟؟؟

  33. #33

    نقل قول: آیا Qt بهترین انتخاب است؟

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

    مثال خیلی ساده اش این میشه که تا حالا فکر کردین چرا هواپیماها رو با بال ثابت میسازند و هواپیما مثل پرنده بال نمیزنه؟!! یا اینکه چرا هرچقدر سایز و وزن یک پرنده بزرگتر میشه تعداد بال زدن هاش کمتر میشه ؟ جوابش خیلی ساده است ، چون بال متحرک به درد سیستم های سبک وزن میخوره ، هرچند خیلی قدرت و قابلیات بیشتری به پرنده میده (قدرت مانور یک مگس رو در مقابل یک عقاب در نظر بگیرید!) اما وقتی وزن سیستم از یک حدی رفت بالاتر دیگه به هیچ وجه به صرفه نیست !

    در مورد برنامه های خیلی بزرگ هم به نظر من همین امر صادقه و انسان به تنهایی نمیتونه کل برنامه رو مدیریت کنه!!!

    ضمنا به قول دوستمون اکثر قریب به اتفاق اون برنامه های معروف عمرشون بیشتر از C#‎ هستش و ما باید در این دهه و دهه های آینده منتظر برنامه هایی که با C#‎ نوشته میشند باشیم نه برنامه هایی که با زبان و معماری 40 سال پیش نوشته شدند!

  34. #34

    نقل قول: آیا Qt بهترین انتخاب است؟

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

    مثال خیلی ساده اش این میشه که تا حالا فکر کردین چرا هواپیماها رو با بال ثابت میسازند و هواپیما مثل پرنده بال نمیزنه؟!! یا اینکه چرا هرچقدر سایز و وزن یک پرنده بزرگتر میشه تعداد بال زدن هاش کمتر میشه ؟ جوابش خیلی ساده است ، چون بال متحرک به درد سیستم های سبک وزن میخوره ، هرچند خیلی قدرت و قابلیات بیشتری به پرنده میده (قدرت مانور یک مگس رو در مقابل یک عقاب در نظر بگیرید!) اما وقتی وزن سیستم از یک حدی رفت بالاتر دیگه به هیچ وجه به صرفه نیست !

    در مورد برنامه های خیلی بزرگ هم به نظر من همین امر صادقه و انسان به تنهایی نمیتونه کل برنامه رو مدیریت کنه!!!

    ضمنا به قول دوستمون اکثر قریب به اتفاق اون برنامه های معروف عمرشون بیشتر از C#‎ هستش و ما باید در این دهه و دهه های آینده منتظر برنامه هایی که با C#‎ نوشته میشند باشیم نه برنامه هایی که با زبان و معماری 40 سال پیش نوشته شدند!
    ببخشیدا ولی کلا اشتباه می کنی !
    یادمه یکی از دوستام سی شارپ می خوندن تو دانشگاه کفتم چرا سی شارپ
    گفت اول زبان سی امد بعد سی پلاس بعد سی شارپ الان سی شارپ هم جدید تره و راحته دیگه باید بریم سراغ سی شارپ
    :خنده:

    بهتره قبل از برنامه نویسی بدونید که هر گردی گردو نیست !
    -
    در ضمن درسته سی پلاس / سی خیلی قدیمی هستن ولی این ضعف نیست ! قوته !
    الانم که سی پلاس 11 کلی قواعد بهش اضاقه شده !
    من دیگه بحث نمی کنم شما خودت هر کاری خواستی بکن !
    اون مثالتم خیلی مسخره بود ! کاملا بی ربط بود !

  35. #35

    نقل قول: آیا Qt بهترین انتخاب است؟

    شما هم وقتی سی شارپ رو از نزدیک دیدی بعد بیا در موردش نظر بده!
    ضمنا من فکر میکنم حتی سی رو هم جز همون 4 تا درس ابتدایی دانشگاهی نمیشناسی چه برسه سی + و جاوا

    خوشحالم دیگه پست نمیدی ... امیدوارم همیشه بخندی ولی به جاش!

  36. #36
    کاربر دائمی آواتار aidinMC
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    یه گوشه دنج از هارد!
    پست
    129

    نقل قول: آیا Qt بهترین انتخاب است؟

    لطفا ایــــــن صفحه رو چک کنید و لذت ببرید.
    و اینکه سایت مثل این برای سی شارپ معرفی کنید ببینیم قدرتشو..

  37. #37

    نقل قول: آیا Qt بهترین انتخاب است؟

    سلام
    خیلی عذر می خواهم از اینکه مجبورم کمی تند بنویسم. البته باید بگویم که منظور من با برنامه نویسان حرفه ای و صاحب نظر نیست. من شخصاً چند سالی است که در حوزه برنامه نویسی به صورت حرفه ای فعالیت می کنم. افراد زیادی را دیده ام که مدت ها به دنبال یک زبان برنامه نویسی قدرتمند بوده اند و بعد از مثلاً (!) چند سال کار کردن با آن زبان خاص بزرگترین برنامه ای که نوشته اند از دیدگاه بنده یک برنامه بسیار ضعیف و مسخره بوده است. من تعجب می کنم که این بحث چرا تا به اینجا کش پیدا کرده است. اینکه C++‎‎‎ یک زبان قدرتمند است شکی در آن نیست. انکه Qt یک فریم ورک قدرتمند است هم شکی در آن نیست. برنامه های بسیار معروفی را می توانیم ببینیم که با Qt نوشته شده اند و همین موارد نشان می دهد که Qt یک گزینه بسیار عالی برای برنامه نویسی به شمار می رود. حال من مانده ام که این همه کل کل سر چیه؟ یعنی دوستانی که در اینجا اینقدر با هم بحث می کنند قصد ساخت برنامه ای بزرگتر و حرفه ای تر از مثلاً VirtualBox را دارند؟ در حالت کلی هر زبانی جایگاه و امتیازات خاص خودش را دارد و بنابرین نباید زیاد تعصبات بی مورد را در این شرایط دخیل کنیم. یک برنامه نویس حرفه ای بسته به شرایط باید بتواند بهترین گزینه (زبان برنامه سازی و فریم ورک) را انتخاب کرده و از آن استفاده کند. گفتن حرف هایی نظیر فقط X یا فقط Y مخصوص برنامه نویسان مبتدی است و نه برنامه نویسان حرفه ای!!!
    موفق باشید...

  38. #38

    نقل قول: آیا Qt بهترین انتخاب است؟

    دوباره از این بحثای مسخره سر چی قویه چی نیست.
    آقا این چیز خیلی مشخصیه با کمی تجربه بهش میشه فهمید چی به چیه . C#‎‎ برای پروژه های معمولی و متوسط بد نیست. چون راحت میشه مدیریتش کرد و پیچیده گی هایی هم مثل مدیریت حافظه و ... کمتر دارید. اما چون .Net هست به معنای واقعی کلمه نه امنیت نه سرعت. یعنی برنامه ای که با .Net نوشته شده باشه ماکروسافت هم بنویسه در چند ثانیه میشه کداش رو دیدید . سرعتش هم که قطعا کمه چون manage هست.
    فعلا برای پروژه های بزرگ و یا حتی کوچیک چیزی به خوبی C++‎‎ بنده ندیدم . مدریت و پیچیدگیش بیشتره اما خوب باهاش کاری نیست که نشه کرد (‌برعکس C#‎‎ ) . مثلا این که بگید فلان سیستم عامل رو با C#‎‎ نوشتند واقعا خنده دار و مضحکه . چون اصلا C#‎‎‌ به تنهایی نمیتونه اجرا بشه و ... اما در هر حال شما باید ببینید چه کاری میخاید بکنید و چی بدردتون میخوره
    QT هم که زبان نیست سرش بحث میکنید. Qt بهتون تو خیلی ضمینه ها ( گرافیک ، شبکه و ... ) کمک میکنه و تاحالا هم خوب جای خودش رو باز کرده و میشه روش حساب باز کرد ( اما چون انحصار داره ممکنه شب بخابی صبح پاشی بگند دیگه نیست. ) و اسلام
    آخرین ویرایش به وسیله mohammadali1375 : پنج شنبه 19 بهمن 1391 در 10:10 صبح

  39. #39

    نقل قول: آیا Qt بهترین انتخاب است؟

    ظاهرا بحث داره به بیراهه کشیده میشه. از دوستان ارجمند تقاضا دارم کل‌کل و تعصب بی مورد رو کنار بذارن.

    اما چون انحسار داره ممکنه شب بخابی صبح پاشی بگند دیگه نیست.
    نه دوست عزیزم. تیم kde قراردادی با شرکت نوکیا بسته که طبق اون اگر صاحب وقت کیوت اونو از حالت اوپن‌سورس خارج کنه kde می‌تونه همزمان کیوت رو به صورت اوپن‌سورس عرضه کنه (از این بابت واضعا تیم kde رو تحسین می‌کنم) و اعتبار این قرار‌داد همیشه باقیست، یعنی حتی اگر همین الان digia کیوت رو فقط تجاری اعلام کنه تیم kde یک نسخه از اون رو میخره و به صورت اوپن سورس عرضه می‌کنه.
    برای توضیحات بیشتر اینجا رو ببینید

  40. #40

    نقل قول: آیا Qt بهترین انتخاب است؟

    نقل قول نوشته شده توسط حامد مصافی مشاهده تاپیک
    ظاهرا بحث داره به بیراهه کشیده میشه. از دوستان ارجمند تقاضا دارم کل‌کل و تعصب بی مورد رو کنار بذارن.


    نه دوست عزیزم. تیم kde قراردادی با شرکت نوکیا بسته که طبق اون اگر صاحب وقت کیوت اونو از حالت اوپن‌سورس خارج کنه kde می‌تونه همزمان کیوت رو به صورت اوپن‌سورس عرضه کنه (از این بابت واضعا تیم kde رو تحسین می‌کنم) و اعتبار این قرار‌داد همیشه باقیست، یعنی حتی اگر همین الان digia کیوت رو فقط تجاری اعلام کنه تیم kde یک نسخه از اون رو میخره و به صورت اوپن سورس عرضه می‌کنه.
    برای توضیحات بیشتر اینجا رو ببینید
    خوب اینطوری یکم بهتره . راستش این رو گفتم چون همین دو سه روز پیش شب خوابیدم و صبح پاشدم گفتند XNA تموم شد . اما خوب اون ماکروسافته از این کارا زیاد میکنه. به نظر من هم QT گزینه ی خوبیه

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

تاپیک های مشابه

  1. آیا فلان سرویس نصب است؟
    نوشته شده توسط dkhatibi در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 9
    آخرین پست: سه شنبه 24 بهمن 1385, 12:11 عصر
  2. آیا این یک باگ است؟
    نوشته شده توسط asilverisis در بخش VB.NET
    پاسخ: 4
    آخرین پست: سه شنبه 22 فروردین 1385, 23:58 عصر
  3. آیا این کد درست است؟
    نوشته شده توسط coral در بخش Classic ASP
    پاسخ: 10
    آخرین پست: پنج شنبه 22 بهمن 1383, 22:30 عصر
  4. آیا این connection درست است؟
    نوشته شده توسط Asad.Safari در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: سه شنبه 09 تیر 1383, 21:56 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •