# Native Code > برنامه نویسی با C > برنامه نویسی در محیط QT و هم خانواده هایش > سوال: C++‎ با lazarus

## pars1376

سلام
هر دوتای این زبان ها cross-platform هستن و به صورت native.
اما سرعت و کارایی کدوم بیشتره؟
منظورم از C++‎ صرفا Qt بود!
آیا همه کتابخانه های اصلی C++‎ کارایی مشابه دارن؟

----------


## کامبیز اسدزاده

> سلام
> هر دوتای این زبان ها cross-platform هستن و به صورت native.
> اما سرعت و کارایی کدوم بیشتره؟
> منظورم از C++‎‎ صرفا Qt بود!
> آیا همه کتابخانه های اصلی C++‎‎ کارایی مشابه دارن؟


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

----------


## pars1376

خب اگه lazarus و C++‎ رو مقایسه کنیم کدوم امتیاز بیشتر میگیره؟
مخصوصا از نظز سرعت اجرا

----------


## parvizwpf

دوستان میتونن بگن این lazarus چیست؟

----------


## کامبیز اسدزاده

> خب اگه lazarus و C++‎‎‎‎‎‎‎‎‎‎‎ رو مقایسه کنیم کدوم امتیاز بیشتر میگیره؟
> مخصوصا از نظز سرعت اجرا


من خودم شخصا اسم lazarus رو تازه شنیدم و با تحقیقاتی که انجام دادم فکر نمیکنم موردی باشه که با Qt مقایسش کرد...
نظرم منفیه ... خیر در حد Qt نیست و ظاهرا کتابخانه هم نیست فقط یک محیط IDE هستش که امکان هماهنگ سازی چند سکویی رو میدهد.

و درضمن ظاهرا ربطی هم به C++‎‎‎‎‎ نداره مربوط به Pacal و Delphi هستش.

از لحاظ سرعت و اجراهم اصلا شک نکنید چیزی بهتر از C/C++‎‎ وجود ندارد.




> دوستان میتونن بگن این lazarus چیست؟


http://wiki.freepascal.org/Lazarus
http://wiki.freepascal.org/Overview_...al_and_Lazarus

_ Lazarus is a cross-platform integrated development environment (IDE) that lets you create visual (GUI) and non-visual Object Pascal programs, and uses the Free Pascal compiler to generate your executable. Its aim is write once, compile anywhere:   you should be able to just recompile your program source code with   Lazarus running on another operating system (or a cross compiler) and   get a program that runs on that operating system._

----------


## pars1376

آقا این qt هزار تا نسخه داره!
من رو سیستمم vs 2013 express نصبه


                                              کدومو نصب کنم؟

اصلا مگه فرقی میکنه من از کدوم  نسخه vs استفاده میکنم؟؟
اینم چند تا از نسخه هاش که تو سافت گذر بود:



(Qt 5.3.0 for Windows 32-bit (MinGW 4.8.2, OpenGL, 727 MB                                 



                                      (Qt 5.3.0 for Windows 32-bit (VS 2010, OpenGL, 586 MB



                                      (Qt 5.3.0 for Windows 32-bit (VS 2012, OpenGL, 609 MB



                                      (Qt 5.3.0 for Windows 32-bit (VS 2013, OpenGL, 614 MB



                                      (Qt 5.3.0 for Windows 64-bit (VS 2013, OpenGL, 628 MB



                                      (Qt 5.3.0 for Windows 32-bit (VS 2013, 618 MB                                 



                                      (Qt 5.3.0 for Windows 64-bit (VS 2013, 635 MB

----------


## motherboard

> آقا این qt هزار تا نسخه داره!
> من رو سیستمم vs 2013 express نصبه
> 
> 
>                                               کدومو نصب کنم؟
> 
> اصلا مگه فرقی میکنه من از کدوم  نسخه vs استفاده میکنم؟؟
> اینم چند تا از نسخه هاش که تو سافت گذر بود:


از من به شما نصیحت تحت هیچ شرایطی کیوت رو از سافت گذر دانلود نکن.اقا من به خیال اینکه سرور سافت گذر قوی هستش و سریع تر دانلود میشه اومدم 750 مگابایت ناقابلم رو خرج دانلود این کیوت کردم.فکر می کنی اخرش چی شد؟؟؟؟اومدم با شور و ذوق اکسترکتش کنم اما در کمال ناباوری و ضد حال اومد خطای CRC رو داد.حتی براش ریکاوری هم نگذاشته بودند تا بالاخره یک جوری بشه  repair کرد.هرکاری کردم نشد که نشد.اقا یک حالی از من گرفته شد که نپرس  :خیلی عصبانی:  :خیلی عصبانی:  :خیلی عصبانی: 
اقا برو  از همین سایتی که تو بخش اموزش Qt گذاشته شده دانلود کن.مال من هفت الی هشت ساعت طول کشید دانلود بشه ولی در عوض برام برنامه دانلود شد و نه ارور.

----------


## کامبیز اسدزاده

> آقا این qt هزار تا نسخه داره!
> من رو سیستمم vs 2013 express نصبه
> 
> 
>                                               کدومو نصب کنم؟
> 
> اصلا مگه فرقی میکنه من از کدوم  نسخه vs استفاده میکنم؟؟
> اینم چند تا از نسخه هاش که تو سافت گذر بود:
> 
> ...


خب Qt با نسخه Express ویژوال استودیو سازگار نیست و باهاش کار نخواهد کرد.
سعی کنید نسخه اصلی Visual Studio Ultimate 2013 رو نصب کنید و سپس از (Qt 5.3.0 for Windows 32-bit (VS 2013, OpenGL, 614 MB استفاده کنید.
به این اینک ها نیز مراجعه کننید مفید خواهد بود : https://barnamenevis.org/showthread.p...=1#post1952439

و https://barnamenevis.org/showthread.p...s-%D9%88-Linux

----------


## pars1376

> سعی کنید نسخه اصلی Visual Studio Ultimate 2013 رو نصب کنید و سپس از (Qt 5.3.0 for Windows 32-bit (VS 2013, OpenGL, 614 MB استفاده کنید.
> Qt-%D8%AF%D8%B1-Windows-%D9%88-Linux



ممنون از راهنمایی هاتون

من بنا به دلایلی ترجیح میدم از نسخه ultimate استفاده نکنم 
البته نمیدونم از اصل منظورتون اصل اصله یعنی چند هزار دلار؟!! یا کرک شده

به هرحال من qt creator رو دانلود کردم البته زیاد باهاش آشنایی ندارم اما میخوام بدونم چجوری برای کد نویسی آمادش کنم؟

 حتمتا باید Qt 5.3.0 for Windows 32-bit - MinGW 4.8.2, OpenGL رو دانلود کنم؟

اگه Qt 5.3.0 for Windows 32-bit - VS 2013, OpenGL رو دانلود کنم حتما باید تو vs برنامه نویسی کنم؟

openGL خیلی مهمه؟ یعنی نباشه نمیشه کارهای گرافیکی انجام داد؟

راستی آون آموزش هایی که داده بودین رو خوندم,
 نمیشد همه ابزار های مورد نیاز رو یه جا آماده میکردن که انقدر مزاحم شما نشیم؟!! :لبخند گشاده!: 

بازم متشکرم

----------


## کامبیز اسدزاده

> ممنون از راهنمایی هاتون


خواهش میکنم




> البته نمیدونم از اصل منظورتون اصل اصله یعنی چند هزار دلار؟!! یا کرک شده


منظورم نسخه تکمیل و غیر Express هستشیا نسخه TeamSuite یا Ultimate بهترین انتخاب هستش.





> به هرحال من qt creator رو دانلود کردم البته زیاد باهاش آشنایی ندارم اما میخوام بدونم چجوری برای کد نویسی آمادش کنم؟


بعد از نصب نیازی برای آماده سازی ندارد فقط کافیه اجرا و طبق آموزش ها شروع به برنامه نویس یکنید...راحته !!!





> حتمتا باید Qt 5.3.0 for Windows 32-bit - MinGW 4.8.2, OpenGL رو دانلود کنم؟


خیر اجباری برای این کار نیست.





> اگه Qt 5.3.0 for Windows 32-bit - VS 2013, OpenGL رو دانلود کنم حتما باید تو vs برنامه نویسی کنم؟


منظور از این که VS2013 توی Qt آوردن این نیستش که حتما باید VS نصب باشه برای این منظور این گزینه رو میتونید دانلود کنید که قصد داشته باشید کد نویسی رو در داخل VS انجام دهید و از Qt Creator صرفا جهت طراحی UI استفاده کنید که برای این کار هم باید از VS Addin for Qt استفاده کنید که طبق لینک هایی که دادم آموزش هماهنگ سازی رو با VS دادم میتونید در صورت نیاز به اون مراجعه کنید.





> openGL خیلی مهمه؟ یعنی نباشه نمیشه کارهای گرافیکی انجام داد؟


شما اگه از نسخه OpenGL استفاده کنید نوع موتور رندربر اساس OpenGL خواهد بود در طراحی گرافیک با QML مهم خواهد بود و حتما باید کارت گرافیکی شما OpenGL 2.0 به بالا رو پشتیبانی کنه....زیاد مهم نیست در صورتی که برنامه نویسی ۲ یا ۳ بعدی انجام نخواهید داد.






> راستی آون آموزش هایی که داده بودین رو خوندم,
>  نمیشد همه ابزار های مورد نیاز رو یه جا آماده میکردن که انقدر مزاحم شما نشیم؟!!


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

----------


## حامد مصافی

بعد از اینکه نیکلاس ورٍ زبان پاسکال رو طراحی کرد استقبال زیادی ازش شد (نه به اندازه سی دنیس ریچی یا سی‌پلاس‌پلاس استراس‌تروپ) نتیج این استقبال این بود که در ادامه‌ کار و ورود به سیستم‌عامل‌های مدرن کامپایلر‌های جدیدی برای این زبان نوشته شد. مثل اتفاقی که برای سی یا سی‌پلاس‌پلاس افتاد) از جمله‌ این کامپایلر‌ها Free Pascal که یک نسخه استاندارده و بیشتر روی سیستم‌های یونیکس‌بیس طرفدار داشت (و داره) و Object Pascal که توسط بورلند توسعه یافت و به همراه محیط توسعه به دلفی مشهوره. لازاروس یک محیط توسعه برای Free Pascal و بالطبع Object Pascal هست. کامپایلر Free Pascal‌علاوه بر اینکه Cross Platform‌ هست (یعنی شما می‌تونید در محیط‌های مختلف برای اون محیط کامپایل کنید) Cross Compile‌هم هست (یعنی می‌تونید در یک محیط برای محیط دیگری کامپایل کنید)

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

پی‌نوشت:‌ دوستان عزیزم، اگر می‌خواهید در مورد مسئله‌ای به جز عنوان تاپیک بحث کنید یک تاپیک دیگه ایجاد کنید. همواره به این فکر کنید در آینده کسی که داره دنبال مطلبی میگرده بیاد و تعداد محدودی پست اما در ارتباط مستقیم با موضوع تاپیک ببینه.

----------


## pars1376

> منظور از این که VS2013 توی Qt آوردن این نیستش که حتما باید VS نصب باشه  برای این منظور این گزینه رو میتونید دانلود کنید که قصد داشته باشید کد  نویسی رو در داخل VS انجام دهید و از Qt Creator صرفا جهت طراحی UI استفاده  کنید که برای این کار هم باید از VS Addin for Qt استفاده کنید که طبق  لینک هایی که دادم آموزش هماهنگ سازی رو با VS دادم میتونید در صورت نیاز  به اون مراجعه کنید.


یعنی من میتونم مثلا Qt 5.3.0 for Windows 32-bit - VS 2013, OpenGL رو دانلود کنم و برنامم رو با Qt creator بنویسم بدون این که نیاز به vs باشه؟

MinGW و vs تو qt کارشون فقط کامپایله؟

----------


## alireza es

من کیوت کار کردم.اما لازاروس یه چیز دیگست خیلی باحاله.ببین هیچ وقت دقت کن هیچ وقت به گمنام بود چیزی توجه نکن من یه سایت ترکیبی با node js و جنگو نوشتم(فقط برای یاد گیری بعدشم پاک کردم)لازاروس خیلی باحاله تقریبا هرکاری که بشه با دلفی کرد با لازاروس هم میشه کرد سینتکس پاسکال هم محشره خیلی سینتکس خوبی داره.
در ضمن با لازاروس هم میتونی از فریم ورک کیوت استفاده کنی(در زبان پاسکال) و هم gtk و در ضمن ide ویژوال داره کامپوننت به اندازه دلفی و دات نت نداره ولی همیشه یه چیزی برای یه کاری داره
پس چی میخوای؟به طور کامل cross platform هست و از لحاظ پرفومنس هم کامپایلر قدرتمندی مثل free pascal پشتشه پس نه نگران راخpتی باش نه قدرت نه پرفومنس در ضمن ویکی کاملی داره که منبع آموزشی خوبی هست

یه چیز دیگه این که لایبرری های زیادی داره مثلا رادوس که برای دلفی و لازاروس هست یک فریم ورک وب هست

----------


## کامبیز اسدزاده

> یعنی من میتونم مثلا Qt 5.3.0 for Windows 32-bit - VS 2013, OpenGL رو دانلود کنم و برنامم رو با Qt creator بنویسم بدون این که نیاز به vs باشه؟
> 
> MinGW و vs تو qt کارشون فقط کامپایله؟


بله فقط در صورتی نیاز به نصب VS هستش که شما ترجیح میدین کد نویسیرو در محیط VS انجام بدین که در این حالت حتما باید افزونه Qt رو هم برای VS نصب کنید.
منظور از MainGW کامپالر نیست ! این گزینه یک محیط توسعه برای برنامه ها به صورت Native در محیط ویندوز هستش که بر پایه کامپالیر GCC کار میکنه که به صورت پیشفرض MSVC بهترین گزینه و سازگارترین مورد در ویندوز محسوب میشود.

در رابطه با کامپایلر ها نیز تحقیق کنید که بهترین آن ها در محیط ویندوز MSVC و سپس GCC و G++ در محیط های دیگه مانند لینوکس و Clang در مک هستند.

----------


## pars1376

> در رابطه با کامپایلر ها نیز تحقیق کنید که بهترین آن ها در محیط ویندوز MSVC و سپس GCC و G++ در محیط های دیگه مانند لینوکس و Clang در مک هستند.


MSVC همون VC++‎ هست؟

این که میگین بهترین ها اینا هستن از چه نظر؟
خب اینم کامپایل میکنه اونم کامپایل دیگه!

----------


## محمد فدوی

هرکدوم از کامپایلرها استانداردهای خاص خودشون رو دارن.
من پیشنهادم به همه GCC هستش و IDE مناسب ++C رو  Code::Blocks میدونم. هردوشونم برای همه ی سیستم عاملا موجودن، در ضمن مجانی و Open Source هم هستن.

----------


## حامد مصافی

gcc یا همون Gnu Compiler Collection کامپایلر‌هایی برای زبان‌های مختلف داره که یکی از اونها زبان ++C هست که کامپایلرش میشه ++g.
mingw یا Minimal Gnu For Windows یک کامپایلر (در واقع پورت ++g روی ویندوز) است.





> این که میگین بهترین ها اینا هستن از چه نظر؟


هم بله هم نه.
کامپایلر‌ها از نظر بهینه‌سازی با هم تفاوت بسیار دارند. افتضاح‌ترین اونها C++‎ Builder هست. اما از بین msvc و ++g نمی‌تونم یکی رو انتخاب کنم.
ضمن اینکه گاهی اوقات ممکنه از کتابخانه‌هایی استفاده کنید که فقط با یکی از این کامپایلر‌ها کامپایل میشه.

----------

