چارچوب کیوت (Qt) یک چارچوب چند سکویی است به این معنا که در سیستمعاملهای مختلفی چون ویندوز، لینوکس و مک قابل اجراست همچنین بر روی سختافزارهای x86 معمولی تا سیستمهای نهفته و موبایل قابل اجراست.این چارچوب با زبان cpp طراحی شده ولی با زبانهایی مانند جاوا، پایتون، perl و غیره نیز میتواند ارتباط برقرار کند. چارچوب کیوت برای پیشپردازش یا خواندن سر فایلهای cpp از کامپایلر فرا شی (moc) استفاده میکند. کامپایلر فرا شی سرفایلهای cpp را میخواند اگر یک یا چند کلاس را پیدا کند که دارای ماکروی Q_Object هستند، فایلهای cpp را تولید میکند که حاوی کد فرا شی برای کلاس یا کلاسهای ذکر شده است. به عبارتی همین کامپایلر فرا شی سبب میشود در هر سکو مطابق با همان سکو کد cpp تولید شود تا بتواند بر روی آن پردازنده اجرا شود.
کامپایلر فرا شی علاوه بر عملیات ذکر شده باعث ایجاد یکی از مکانیزمهای اصلی کیوت که به سیگنال و اسلات معروف است نیز میشود. مکانیزم سیگنال و اسلات در کیوت برای ارتباط بین اشیاء استفاده میشود و با مکانیزمی که در سی شارپ و جاوا که به عنوان ارسال پیام (message passing) معروف است متفاوت بوده و از سرعت پردازش بالاتری برخوردار است. علاوه بر آن برنامهای که به وسیله کیوت نوشته میشود پس از کامپایل به کد ماشین تبدیل شده و به صورت مستقیم بر روی سیستمعامل قابل اجراست (در صورتی که برنامههای نوشته شده با سی شارپ و جاوا باید بر روی ماشین مجازی مخصوص خود اجرا شوند). اجرای مستقیم یکی از عوامل دیگر برای سریعتر بودن زمان اجرای برنامههای نوشته شده با کیوت نسبت به سی شارپ و جاواست.
چارچوب کیوت علاوه بر اینکه یک چارچوب بسیار قوی برای طراحی واسط کاربر است، برای کدنویسی تحت شبکه، اتصال به پایگاه داده، اتصال به دستگاههای سریال و غیره نیز بسیار مناسب است و کار را برای برنامهنویس cpp ساده میکند. طراحی و پیادهسازی این چارچوب از سال ۱۹۹۰ میلادی شروع شده و تا کنون بصورت کاملاً حرفهای و با حمایت از سمت شرکتهای بزرگی چون نوکیا، اینتل، زیمنس، بلک بری، بنیاد ناسودبر KDE و بسیاری از شرکتهای دیگر در سراسر دنیا در حال توسعه است. همین امر موجب میشود که از پشتیبانی خوبی برخوردار باشد و همچنین باگهای کمتری داشته و به روز باشد. نکاتی که ذکر شد همه سبب میشوند که پروژههای متنباز و تجاری بزرگی چون KDE (میزکار محبوب لینوکس)، اسکایپ، دراپ باکس و نسخه کامپیوتر رومیزی تلگرام و بسیاری از پروژههای معروف دیگر این چارچوب را برای توسعه محصولات خود انتخاب کنند.
اجازهنامه
چارچوب کیوت با اجازهنامههای متعددی ارائه میشود یکی از این اجازهنامهها مجوز تجاری است که در صورتی که بخواهید محصول خود را تجاری کنید و کد آن را منتشر نکنید باید هزینه این اجازهنامه را به شرکت کیوت پرداخت کنید. در صورتی که استفاده شخصی دارید یا میخواهید کد برنامه خود را به همراه نرمافزارتان منتشر کنید از اجازهنامههای GPL و LGPL باید پیروی کنید که در این صورت نیازی به پرداخت هزینه نخواهید داشت. انتخاب این اجازهنامهها با شماست و وقتی میخواهید از سایت رسمی آن اقدام به نصب آن کنید از شما میخواهد اجازهنامه مورد نیاز خود را انتخاب کنید.
نصب
برای دانلود نسخه متن باز آن میتوانید به این لینک مراجعه کنید و سپس سیستمعامل خود را انتخاب کنید.
برای نصب آن میتوانید نصاب اینترنتی آن را برای سیستمعامل خود انتخاب کنید و یا اینکه نصاب غیراینترنتی آن را انتخاب کنید. حتی برای برنامهنویسانی که سیستمعامل ویندوز دارند و به IDE ویژوال استودیو عادت دارند نسخهای مخصوص آنها آماده شده است که پلاگینهای مورد نیاز را بر روی ویژوال استودیو نصب میکند که پس از آن میتوان در ویژوال استودیو کدنویسی کیوت را تجربه کرد. کاربران لینوکس پس از دانلود باید عملیاتی را برای آماده سازی آن انجام دهند.
کاربران لینوکس توزیع اوبونتو میتوانند به صورت زیر نیز نصب خود را انجام دهند.
sudo apt-get install build-essential mesa-common-dev
در نسخههای اخیر توزیع اوبونتو باید دستور زیر را نیز اجرا کرد.
sudo apt-get install libglu1-mesa-dev -y
پس از دانلود نسخه آنلاین آن، ترمینال را باز کنید و به دایرکتوری که فایل دانلود شده در آن قرار دارد بروید و سپس دسترسی اجرایی به آن بدهید.
sudo chmod a+x qt-opensource-linux-x64-.run
پس از آن در همان دایرکتوری در ترمینال به روش زیر اجرای نصاب آغاز کنید.
./qt-opensource-linux-x64--online.run
توجه : به نقطه ابتدای دستور بالا دقت کنید.
بقیه عملیات نصب توسط نصاب گرافیکی صورت میگیرد. برای ویندوز، لینوکس و مک تقریباً یکسان است.
با انتخاب tools طبق تصویر بالا میتوان qtcreator که IDE پیشفرض کیوت هست را نیز نصب کرد.
کاربران توزیع آرچ میتوانند همه مراحل نصب را توسط دستورات زیر انجام دهند.
sudo pacman -Syu base-devel qt5-base qtcreator
محیط توسعه یکپارچه (IDE)
IDE پیشفرض کیوت qtcreator است. این IDE علاوه بر اینکه دارای خاصیت کامل کردن هوشمند کد، برجسته سازی نحو (syntax highlighting) و همچنین ابزار رفع باگ است، محیطی کامل برای طراحی رابط کاربری نیز دارد که کار را برای طراحی فرمها و ویجتها آسان میکند. البته میتوان ویجتها و فرمها را توسط کدنویسی ایجاد کرد اما طراحی کردن با ابزار طراحی رابط کاربر qtcreator کار را بسیار ساده و سریع میکند.
QtQuick
علاوه بر اینکه توسط IDE میتوان رابط کاربری را طراحی کرد، توسط ماژول QtQuick که با زبان Qml نوشته شده است نیز میتوان رابط کاربری را به صورتی مدرن طراحی کرد و از امکانات جالب آن بهره برد. Qml یک زبان توصیفی است که توسط کیوت پیادهسازی شده است و از ورژن 4.7 تا کنون در چارچوب کیوت وجود دارد. این زبان شبیه css بوده و برای انجام عملیات خاص میتواند به زبان cpp و یا جاوااسکریپت متصل شود. برای استفاده راحت از امکانات Qml از qtcreator استفاده کنید.
در این سری از آموزش قصد داریم در مورد ایجاد برنامه گرافیکی توسط QtQuick صحبت کنیم، در قسمتهای پیش رو با ما همراه باشید
ثبت نظر