انجام پروژه کیو تی QT
انجام پروژه کیو تی – انجام پروژه QT – انجام مدل سازی با نرم افزار QT – انجام پروژه با نرم افزار کیو تی – انجام مدل سازی با نرم افزار کیو تی – انجام پروژه با نرم افزار QT
اگه دنبال جایی میگردین که پروژههای کاری و دانشجویی نرم افزار QT خودتون رو بدون دغدغه و با قیمتی مناسب بهش بسپارید، جای درستی اومدید!
در اینجا می توانید پروژه نرم افزار QT خود را به ما بسپارید و خیالتان از بابت همه چیز راحت باشد.
جهت مشاوره و انجام پروژههای شبیهسازی با نرم افزار QT میتوانید درخواست انجام پروژههای QT خود را به کمک آیکون سبز رنگ تماس واتساپ در کنار پایین صفحه ارسال نمایید تا پس از بررسیهای لازم، در زمان کوتاهی قیمت و زمان انجام پروژه به شما اطلاع داده شود.
چرا شبیه سازان امیرکبیر
این مجموعه به همکاری مرکز فناوری دانشگاه امیرکبیر در دانشگاه امیرکبیر مشغول به فعالیت می باشد. هسته فناوری این مجموعه به کمک تعدادی از دانشجویان دانشگاه امیرکبیر فعالیت می نماید. بهترین قیمت ها و متخصصان در زمینه شبیه سازی کیو تی QT را می توانید از این مجموعه درخواست نمایید. در صورت درخواست انجام پروژه و یا درخواست اجاره کامپیوتر سرور محاسباتی قدرتمند به آدرس ذیل واقع در دانشگاه با هماهنگی قبلی حضور بهم رسانید و یا اینکه با شماره ذیل تماس حاصل فرمایید
هشدار
تعدادی از سایت ها با نام جعلی دانشگاه های معتبر همانند دانشگاه شریف، اقدام به اخذ پروژه می نمایند و پروژه ای تحویل نمی دهند و پول افراد را به یغما می برند. جهت جلوگیری از این امر، بهتر است پول خود را تنها به سازمان ها و شرکت های معتبر که مکان مشخصی دارند، واگذار نمایید. در این راستا لازم به ذکر است که شبیه سازان امیرکبیر در دانشگاه امیرکبیر مستقر است و درخواست کنندگان می توانند با هماهنگی قبلی، به صورت حضوری جهت سفارش پروژه حضور بهم رسانند.
آدرس: تهران خیابان ولیعصر(ع)،دانشگاه صنعتی امیرکبیر، دانشکده مهندسی مکانیک، طبقه منفی یک، مرکز نوآوری، گروه شبیهسازان امیرکبیر
تلفن 02188769296
پیامک 09022113687
Shabihsazanak@gmail.com
QT چیست
Qt (تلفظ “Cute”) یک ابزارک ابزار ویجت آزاد و منبع باز برای ایجاد واسط های کاربر گرافیکی و همچنین برنامه های متقابل است که بر روی سیستم عامل های مختلف نرم افزاری و سخت افزاری مانند لینوکس ، ویندوز اجرا می شود. MacOS ، Android یا سیستم های جاسازی شده با تغییر کمی یا بدون تغییر در پایگاه داده های اساسی در حالی که هنوز یک برنامه بومی با قابلیت ها و سرعت بومی هستند.
Qt در حال حاضر توسط شرکت Qt ، یک شرکت با فهرست عمومی و پروژه Qt تحت مدیریت منبع باز توسعه داده شده است ، که شامل توسعه دهندگان و سازمان های فردی است که برای پیشبرد Qt فعالیت می کنند. Qt تحت مجوزهای تجاری و منبع باز GPL 2.0 ، GPL 3.0 و LGPL 3.0 مجوز در دسترس است.
اهداف و تواناییها
Qt برای توسعه واسط های کاربری گرافیکی (GUI) و برنامه های چند پلتفرمی که در تمام سیستم عامل های دسک تاپ اصلی و اکثر سیستم عامل های موبایل یا جاسازی شده اجرا می شوند ، استفاده می شود. بیشتر برنامه های GUI ایجاد شده با Qt دارای یک رابط بومی هستند که در این حالت Qt به عنوان ابزار ابزارک طبقه بندی می شود. همچنین می توان برنامه های غیر GUI مانند ابزار خط فرمان و کنسول برای سرورها توسعه داد. نمونه ای از چنین برنامه غیر GUI با استفاده از Qt چارچوب وب Cutelyst است.
Qt از کامپایلرهای مختلفی از جمله کامپایلر GCC C ++ و مجموعه ویژوال استودیو پشتیبانی می کند و از پشتیبانی بین المللی گسترده ای برخوردار است. Qt همچنین Qt Quick را ارائه می دهد ، که شامل یک زبان برنامه نویسی اعلانی به نام QML است که به استفاده از JavaScript اجازه می دهد منطق را ارائه دهد. با استفاده از Qt Quick ، توسعه سریع برنامه برای دستگاه های تلفن همراه امکان پذیر شد ، در حالی که منطق را می توان برای دستیابی به بهترین عملکرد ممکن ، با کد بومی نیز نوشت.
سایر ویژگی ها شامل دسترسی به پایگاه داده SQL ، تجزیه و تحلیل XML ، تجزیه JSON ، مدیریت موضوعات و پشتیبانی شبکه می باشد.
نسخه های Qt
آخرین نسخه Qt 5.15.0 است که در 26 مه 2020 منتشر شد.
نسخه LTS فعلی Qt 5.15 LTS است. به مدت 3 سال پشتیبانی خواهد شد.
همچنین Qt 5.12 نسخه LTS است نسخه واقعی 5.12.8 است.
نسخه اولیه نرم افزار Qt در تاریخ 20 مه 1995 بود.
استفاده های QT
در سال 2017 ، شرکت Qt جامعه ای در حدود 1 میلیون توسعه دهنده در سراسر جهان در بیش از 70 صنعت تخمین زده است.
رابط کاربر رابط کاربری
رابط های گرافیکی کاربر و محیطهای رومیزی که از Qt / QML به عنوان ابزار ابزارک استفاده می کنند:
KDE Plasma ، یک محیط دسک تاپ رایگان برای دستگاه های مختلف محاسباتی است
DDE (محیط دسکتاپ Deepin) از لینوکس دیپین
UKUI (رابط کاربری اوبونتو کیلین)
LXQt (محیط دسکتاپ X11 سبک وزن)
Lumina ، یک محیط دسکتاپ که برای TrueOS مبتنی بر BSD طراحی شده است
Lomiri (سابقاً وحدت 8) ، یک محیط دسکتاپ همگرا توسط Canonical آغاز شده و توسط Ubports نگهداری می شود
Unity 2D ، یک پوسته دسک تاپ نوشته شده در Qt و Qml
Trinity DE ، یک چنگال به طور مداوم توسعه یافته بر اساس KDE3
NX-Desktop ، پوسته رومیزی مبتنی بر پلاسما
Be-shell ، یک پوسته ساده مبتنی بر KDE Frameworks
Liquidshell ، پوسته ای مبتنی بر QtWidgets
LiriOS ، یک پوسته فضای کاری با Qt / QML ساخته شده است
SDDM ، مدیر نمایشگر X11 و Wayland سازگار با QML است
theShell ، یک پوسته دسک تاپ نوشته شده در Qt
UI های داخلی و جاسازی شده
فعالانه توسعه یافته یا نگهداری می شود
AsteroidOS ، یک سیستم عامل منبع باز است که برای ساعت های هوشمند طراحی شده است
Avionics ، سیستم سرگرمی در پرواز پاناسونیک
Blackberry 10 ، سیستم عامل تلفن همراه مبتنی بر صفحه لمسی توسط Blackberry Ltd.
Sailfish OS ، یک سیستم عامل موبایل که توسط Jolla ساخته شده است
GlacierUX ، جانشین MeeGo / Maemo 6 / Harmattan ، مبتنی بر Qt5 و Wayland
پلاسما موبایل ، رابط کاربری گرافیکی مبتنی بر لمسی که توسط KDE ساخته شده است
LuneOS ، جانشین جامعه محور برای palm / HP webOS
Nemo Mobile ، مبتنی بر Mer
Ubuntu Touch ، UI تلفنی که توسط Ubports ساخته شده است ، در اصل توسط Canonical
UI در اتومبیل تسلا مدل S
webOS ، یک سیستم عامل چند وظیفه از LG برای دستگاه های هوشمند مانند تلویزیون و ساعت های هوشمند
Sky Q ، سیستم سرگرمی خانگی Sky plc
موجود اما غیرفعال است
گوشی و تبلت MeeGo UX
OPIE ، رابط کاربری گرافیکی برای Sharp Zaurus
Qtopia ، سیستمی توسط نوکیا برای دستگاه های تعبیه شده و موبایل
Ultrahaptics ، توسعه دهنده رابط هتک برای طیف گسترده ای از برنامه های کاربردی
برنامه های کاربردی با استفاده از Qt
بسیاری از نرم افزارهای برجسته منبع باز یا اختصاصی متقابل پلت فرم از Qt یا QML استفاده می کنند:
آبلتون فشار
آلبوم Adobe Photoshop
عناصر Adobe Photoshop
برنامه ابزار درایور Radeon Software Crimson Edition AMD.
Autodesk Maya
رمزگذاری خودکار 3ds Max
بیت کوین هسته ، مشتری بیت کوین
Bitcoin ABC ، مشتری نقدی بیت کوین
ویرایشگر CryEngine V
DaVinci Resolve ، ویرایشگر فیلم
دلفین (شبیه ساز) ، شبیه ساز سیستم های Nintendo Wii و Nintendo GameCube.
نرم افزار نوت بوک Dorico
Dragonframe نرم افزار انیمیشن حرکت را متوقف کنید
EAGLE توسط CadSoft Computer / Autodesk ، یک برنامه EDA با ضبط شماتیک ، طرح PCB ، روتر خودکار و ویژگی های CAM
Electrum ، مشتری سبک بیت کوین
محیط محاسبات عددی منبع آزاد منبع آزاد
گامباس رایگان منبع باز محیط توسعه یکپارچه BASIC
Google Earth
Igor Pro ، یک نرم افزار تحلیل داده است
نرم افزار ویرایش گرافیک و نقاشی دیجیتال Krita
LMMS ، یک نرم افزار تولید موسیقی متقابل پلت فرم
Mathematica ، یک برنامه محاسبات نمادین ریاضی ، گاهی اوقات یک سیستم یا برنامه جبر رایانه نامیده می شد ، که در بسیاری از زمینه های علمی ، مهندسی ، ریاضیات و محاسبات مورد استفاده قرار می گرفت.
Moonlight Stream ، اجرای منبع باز Nvidia Shield
Musescore ، نرم افزاری با کد منبع باز و چندرسانه ای
OBS ، یک نرم افزار رایگان محافظ صفحه نمایش متقابل رایگان
مجموعه داده کاوی نارنجی
سرویس گیرنده BitTorrent با منبع آزاد و منبع باز qBittorrent
سیستم اطلاعات جغرافیایی QGIS
خواننده Feed QuiteRSS
Roblox Studio ابزاری برای ایجاد بازی است که در پلتفرم Roblox مورد استفاده قرار می گیرد.
نرم افزار نشر رومیزی Scribus
ترکیب موسیقی Sibelius و نرم افزار نمادین
منبع موتور 2 ابزار یک موتور بازی ویدیویی سه بعدی است که توسط Valve ساخته شده است
Stellarium ، یک برنامه planetarium
Suburface ، نرم افزاری برای ورود به سیستم و برنامه ریزی غواصان غواصی که ابتدا توسط Linus Torvalds طراحی و ساخته شده است
Teamviewer ، یک بسته نرم افزاری رایانه ای برای کنترل از راه دور ، به اشتراک گذاری دسک تاپ ، جلسات آنلاین ، کنفرانس وب و انتقال فایل بین رایانه ها
Telegram ، یک سرویس گیرنده پیام رسانی در دسترس برای ویندوز ، مک و لینوکس
نرم افزار مجازی سازی سیستم عامل VirtualBox
پخش کننده رسانه VLC
WPS Office
XaoS ، بزرگنمایی فرکتالی در زمان واقعی است
XnView MP
نرم افزاری که به Qt منتقل شده است
مواردی وجود دارد که برنامه های کاربردی کد رابط کاربری خود را از ابزار دیگر کراس پلت فرم دیگر به Qt منتقل کرده اند تا مشکلات پیش آمده را با آنها حل کنند:
مثال ها
جادوگر – نرم افزار پخش کننده صوتی رایگان و منبع باز
Wireshark – آنالایزر بسته شبکه
LXQt – محیط دسک تاپ
پخش کننده رسانه VLC
Rosegarden – ایستگاه کاری صدا دیجیتال
Dolphin – شبیه ساز کنسول بازی های ویدیویی برای GameCube و Wii
سازمان هایی که از Qt استفاده می کنند
Qt توسط طیف گسترده ای از شرکت ها و سازمان هایی مانند استفاده می شود
AMD
سرگرمی بلیزارد
BMW
کریتک
دایملر AG
هنرهای الکترونیکی
آژانس فضایی اروپا
DreamWorks
شرکت داناهر
GE Aviation
هواوی
جان دیر
LG
لوكاسفیلم
Luxoft
MathWorks (Simulink)
مایکروسافت
پاناسونیک
فیلیپس
رابرت بوش GmbH
سامسونگ
زیمنس
تسلا
Tomtom
انیمیشن Toon Boom
ولوو
کنترل ترافیک هوایی آلمان
HP
استودیوی انیمیشن والت دیزنی
شیر
معماری نرم افزار Qt
مفاهیم Qt
Qt بر اساس این مفاهیم کلیدی ساخته شده است:
انتزاع کامل رابط کاربری گرافیکی
Qt هنگامی که اولین بار منتشر شد ، از موتور نقاشی و کنترل های خاص خود استفاده کرد ، و از سیستم عامل های مختلفی که هنگام جادوی ویجت های خود استفاده می کرد ، شبیه سازی می کند. این امر کار حمل و نقل را آسانتر کرد زیرا کلاسهای معدودی از Qt واقعاً به بستر هدف بستگی داشتند. با این حال ، گاهی اوقات این اختلافات جزئی منجر می شود که در آن نقط نقص ناقص باشد. نسخه های اخیر Qt از API های سبک بومی سیستم عامل های مختلف ، روی سیستم عامل هایی که دارای یک ابزارک بومی هستند ، برای پرس و جو از معیارها و ترسیم بیشتر کنترل ها استفاده می کنند ، و مانند این موارد معمولاً رنج نمی برند. در برخی سیستم عامل ها (مانند MeeGo و KDE) Qt API بومی است. برخی از ابزارهای گرافیکی قابل حمل دیگر ، تصمیمات طراحی متفاوتی گرفته اند. به عنوان مثال ، wxWidgets برای پیاده سازی های خود از مجموعه ابزارهای برنامه هدف استفاده می کند.
سیگنالها و شیارها
ساختار زبانی در Qt برای ارتباط بین اشیاء معرفی شده است که در ضمن اجتناب از کد boilerplate ، اجرای الگوی ناظر را آسان می کند. مفهوم این است که ابزارکهای GUI می توانند سیگنالهایی را که حاوی اطلاعات رویداد است ارسال کنند که توسط سایر کنترلها با استفاده از توابع ویژه معروف به اسلاتها قابل دریافت است.
کامپایلر Metaobject
کامپایلر metaobject ، موسوم به moc ابزاری است که بر روی منابع یک برنامه Qt اجرا می شود. این ماکروهای خاص را از کد C ++ به عنوان حاشیه نویسی تفسیر می کند و از آنها برای تولید کد اضافه شده C ++ با اطلاعات متا در مورد کلاسهای مورد استفاده در برنامه استفاده می کند. این داده های متا توسط Qt برای ارائه ویژگی های برنامه نویسی که بصورت بومی در C ++ وجود ندارد استفاده می شود: سیگنال ها و شکافها ، درون نگاری و تماس های عملکردی ناهمزمان.
الزامات زبان
Qt را می توان در چندین زبان برنامه نویسی به غیر از C ++ ، مانند Python ، Javascript ، C # و Rust از طریق اتصال زبان استفاده کرد. بسیاری از زبان ها برای Qt 5 و صحافی برای Qt 4 دارند. زبان برنامه نویسی حلقه شامل Qt در كتابخانه استاندارد است.
ماژول های Qt
این فریم ورک با شروع Qt 4.0 به ماژول های جداگانه تقسیم می شود. با Qt 5.0 معماری حتی بیشتر مدولار شد. اکنون Qt به ماژول های ضروری و الحاقی تقسیم شده است.
ملزومات Qt
Qt Core تنها ماژول مورد نیاز Qt ، شامل کلاسهایی است که توسط ماژول های دیگر استفاده می شود ، از جمله سیستم meta-object ، همزمان بودن و رزوه سازی ، ظروف ، سیستم رویداد ، پلاگین ها و امکانات I / O.
Qt GUI ماژول رابط کاربری گرافیکی مرکزی. در Qt 5 این ماژول اکنون به OpenGL بستگی دارد ، اما دیگر حاوی هیچ کلاس ویجتی نیست.
ابزارهای Qt شامل کلاس هایی برای برنامه های GUI مبتنی بر ویجت کلاسیک و کلاس های QSceneGraph است. در Qt 5 از QtGui جدا شد.
ماژول Qt QML برای زبانهای QML و JavaScript.
Qt Quick ماژول برنامه GUI با استفاده از QML2 نوشته شده است.
کنترل ابزارهای Qt Quick Widget مانند کنترل های Qt Quick که عمدتا برای برنامه های دسک تاپ در نظر گرفته شده است.
چیدمان طرح بندی سریع Qt برای ترتیب موارد در Qt Quick.
لایه انتزاعی شبکه شبکه Qt. با TCP ، UDP ، HTTP ، SSL و از Qt 5.3 SPDY پشتیبانی کنید.
کلاس های چندرسانه ای Qt برای قابلیت های صوتی ، تصویری ، رادیو و دوربین.
ابزارکهای Qt Multimedia ابزارکهای Qt Multimedia.
Qt SQL شامل کلاس هایی برای ادغام بانک اطلاعاتی با استفاده از SQL است.
Qt WebEngine مجموعه جدیدی از برنامه های وب ویو Qt ویجت و QML مبتنی بر Chromium.
کلاسهای آزمون Qt برای آزمایش واحد و برنامه های Qt کتابخانه ها.
افزودنیهای Qt
کلاس های Qt Active برای برنامه هایی که از ActiveX استفاده می کنند.
کلاسهای بلوتوث Qt دسترسی به سخت افزار بلوتوث.
کلاسهای Qt D-Bus برای IPC با استفاده از پروتکل D-Bus.
کلاسهای Qt NFC دسترسی به سخت افزار NFC. تاکنون فقط از سخت افزار بلک بری به طور رسمی پشتیبانی می شود (یا N9 در بندر MeeGo).
ماژول Qt OpenGL Legacy شامل کلاسهای OpenGL از Qt 4. در Qt 5 عملکرد مشابه در Qt GUI توصیه می شود.
کلاسهای مکان Qt برای دسترسی به GPS و سایر خدمات موقعیت مکانی و نقشه برداری و پیمایش. از ماژول تحرک Qt 4 از Qt Location جدا شوید. در Android ، BlackBerry ، iOS ، Linux (با استفاده از GeoClue) ، Windows و Sailfish OS پشتیبانی می شود.
ماژول Qt Script Legacy برای برنامه نویسی Qt با استفاده از ECMAScript / JavaScript. در Qt 5 ، استفاده از کلاسهای مشابه در Qt QML توصیه می شود.
کلاسهای سنسور Qt برای دسترسی به سنسورهای مختلف سخت افزار موبایل. قبلاً در Qt 4. جزئی از Qt Mobile بود. در Android ، BlackBerry ، iOS ، WinRT ، Mer و Linux پشتیبانی می شود.
کلاس های پورت سریال Qt برای دسترسی به پورت های سخت افزاری و سریال مجازی. پشتیبانی از ویندوز ، لینوکس و macOS.
Qt WebChannel دسترسی به اشیاء Qt را به HTML / Js از طریق WebSockets فراهم می کند.
پیاده سازی و API WebKit Qt WebKit Qt.
ابزارک های Qt WebKit API ویجت برای Qt WebKit
Qt WebSockets اجرای WebSocket را فراهم می کند.
ماژول Qacy XML Qt XML شامل کلاس هایی برای برنامه های XML SAX و DOM به سبک DOM. با کلاسهای QXmlStreamReader و QXmlStreamWriter در Qt Core جایگزین شد.
الگوهای Qt XML از اعتبار XPath ، XQuery ، XSLT و XML Schema پشتیبانی می کند.
نسخه ها
چهار نسخه از Qt در دسترس است: جامعه ، ایندی موبایل ، حرفه ای و تصدی. نسخه Community تحت مجوزهای منبع باز است ، در حالی که نسخه های Indie Mobile ، Professional و Enterprise که شامل عملکرد و کتابخانه های اضافی هستند ، به عنوان مثال کنترل های تصدی توسط شرکت Qt به فروش می رسد.
سیستم عامل های پشتیبانی شده
Qt در سیستم عامل های مختلف کار می کند. موارد زیر به طور رسمی پشتیبانی می شوند:
X11 Qt برای X Window System (Linux) ؛ [99] FreeBSD ، NetBSD ، OpenBSD و DragonFly BSD از انجمن پشتیبانی می کنند.
Wayland Qt for Wayland (به عنوان مثال SailfishOS از آن استفاده می کند ، زیرا X11 ندارد). برنامه های Qt می توانند بین گزینه های خط فرمان -platform بین زمانهای بار گرافیکی مانند X و Wayland جابجا شوند. این اجازه می دهد تا یکپارچه سازی برنامه های Qt از X11 به Wayland انجام شود.
Android Qt برای Android (که قبلاً با نام Nohibitas شناخته می شد).
Linux Qt تعبیه شده برای سیستم عامل های تعبیه شده: دستیار دیجیتال شخصی ، تلفن هوشمند و غیره بسته به فناوری صفحه نمایش به عنوان چندین سیستم عامل وجود دارد. DirectFB ، LinuxFB و EGLFS (تمام صفحه EGL).
سیستم عامل های مایکروسافت
Windows Qt برای مایکروسافت ویندوز 7 ، 8 و 10
پشتیبانی Windows RT برای برنامه های Windows 10 Mobile مبتنی بر WinRT و Windows 10 IoT
سیستم عامل های اپل
macOS Qt برای اپل macOS؛ برنامه های کاربردی در مورد کاکائو را پشتیبانی می کند
iOS Qt برای سیستم عامل های iOS (iPhone ، iPad)
سایر سیستم عامل های تعبیه شده
یکپارچگی Qt برای یکپارچگی
QNX Qt برای QNX
VxWorks Qt برای VxWorks. فقط تحت مجوز اختصاصی (تجاری) موجود است. Qt 5.5.
بعد از اینکه نوکیا کد منبع Qt را در پورت های Gitorious به جامعه باز کرد ، ظاهر شد. همچنین برخی از درگاههای Qt وجود دارد که ممکن است در دسترس باشد ، اما دیگر پشتیبانی نمی شوند. این سیستم عامل ها در لیست سیستم عامل های پشتیبانی شده توسط Qt ذکر شده اند. همچنین برای پشتیبانی فعلی انجمن از سایر سیستم عامل های کمتر شناخته شده مانند SailfishOS به آنجا مراجعه کنید.
مجوز
Qt تحت مجوزهای نرم افزار رایگان زیر موجود است: GPL 2.0 ، GPL 3.0 ، LGPL 3.0 و LGPL 2.1 (با استثناء خاص Qt). توجه داشته باشید که برخی از ماژول ها فقط تحت مجوز GPL در دسترس هستند ، به این معنی که برنامه هایی که بطور ایستایی به این ماژول ها پیوند می خورند باید با آن مجوز مطابقت داشته باشند.
علاوه بر این ، Qt همواره تحت مجوز تجاری ، مانند مجوز تجاری Qt ، موجود است که امکان توسعه برنامه های اختصاصی بدون محدودیت در صدور مجوز را فراهم کرده است.
ابزارهای Qt
Qt با مجموعه ای از ابزارهای خاص خود برای سهولت در توسعه کراس پلتفرم همراه است ، که در غیر این صورت به دلیل مجموعه های مختلف ابزارهای توسعه می تواند دست و پا گیر باشد.
Qt Creator یک IDE متقاطع برای C ++ و QML است. قابلیت طراحی و طراحی طرح گرافیکی Qt Designer در IDE یکپارچه شده است ، اگرچه طراح Qt هنوز هم می تواند به عنوان یک ابزار مستقل شروع شود.
علاوه بر Qt Creator ، Qt qmake ، ابزاری برای ساخت اسکریپت ساخت متقابل پلتفرم را فراهم می کند که به طور خودکار تولید Makefiles را برای پروژه های توسعه در سیستم عامل های مختلف به صورت خودکار می کند. ابزارهای دیگری نیز در Qt وجود دارد ، از جمله سازنده رابط Qt Designer و مرورگر راهنما Qt Assistant (که هر دو در Qt Creator تعبیه شده اند) ، ابزار ترجمه Qt Linguist ، uic (کامپایلر رابط کاربری) و moc (کامپایلر Meta-Object )
تاریخچه Qt
تحولات اولیه
در تابستان سال 1990 ، Haavard Nord و Eirik Chambe-Eng (توسعه دهندگان اصلی Qt و مدیر عامل و رئیس جمهور به ترتیب Trolltech) در حال کار با یکدیگر در یک برنامه بانک اطلاعاتی برای تصاویر سونوگرافی نوشته شده در C ++ و در حال اجرا بر روی سیستم عامل Mac ، یونیکس و Microsoft Windows. آنها توسعه “Qt” را در سال 1991 آغاز كردند ، سه سال قبل از آنكه شركت به عنوان Quasar Technologies گنجانده شود ، سپس نام را به Troll Tech و سپس به Trolltech تغییر داد.
این ابزار به نام Qt خوانده می شد زیرا حرف Q در شکل ظاهری Emacs Haavard جذاب به نظر می رسید و “t” از Xt ، ابزار X الهام گرفته شده است.
دو نسخه اول Qt فقط دو طعم داشت: Qt / X11 برای یونیکس و Qt / Windows برای ویندوز.
در 20 مه 1995 Troll Tech به طور علنی Qt 0.90 را برای X11 / Linux با کد منبع تحت مجوز Qt Free Edition منتشر کرد. این مجوز از نظر نرم افزار رایگان توسط بنیاد نرم افزار آزاد مطابقت نداشت ، زیرا در حالی که منبع موجود بود ، اجازه توزیع مجدد نسخه های اصلاح شده را نمی داد. Trolltech تا نسخه 1.45 از این مجوز استفاده کرد. اختلاف نظرها در حدود سال 1998 فاش شد که مشخص شد محیط K دسکتاپ قرار است به یکی از محیطهای رومیزی پیشرو برای لینوکس تبدیل شود. همانطور که مبتنی بر Qt بود ، بسیاری از افراد در جنبش نرم افزار آزاد نگران این بودند که یک قطعه اساسی یکی از سیستم عاملهای اصلی آنها اختصاصی باشد.
پلتفرم ویندوز فقط تحت مجوز اختصاصی موجود بود ، به این معنی که برنامه های منبع آزاد / منبع باز نوشته شده در Qt برای X11 را نمی توان بدون خرید نسخه اختصاصی به ویندوز منتقل کرد.
تبدیل شدن به نرم افزارهای دوستانه رایگان
با انتشار نسخه 2.0 از ابزار ابزار ، مجوز به مجوز Q عمومی (QPL) ، یک مجوز نرم افزار رایگان تغییر یافت ، اما یکی از آنها توسط بنیاد نرم افزار آزاد با GPL ناسازگار تلقی می شود. به دنبال سازش بین KDE و Trolltech هستیم که به موجب آن Qt قادر نخواهد بود تحت مجوز محدودتر از QPL قرار بگیرد ، حتی اگر Trolltech خریداری شده یا ورشکسته شود. این منجر به ایجاد بنیاد KDE Free Qt شد ، که تضمین می کند که Qt تحت لیسانس سبک BSD قرار می گیرد ، هیچ نسخه رایگان / منبع باز Qt در طول 12 ماه منتشر نمی شود.
در سال 2000 ، Qt / X11 2.2 تحت GPL v2 منتشر شد ، که تمام اختلافات در مورد سازگاری GPL را پایان داد.
در پایان سال 2001 ، Trolltech Qt 3.0 را منتشر کرد ، که پشتیبانی از Mac OS X (که اکنون با عنوان macOS شناخته می شود) نیز اضافه شد. پشتیبانی Mac OS X تا ژوئن سال 2003 ، هنگامی که Trolltech Qt 3.2 را با پشتیبانی Mac OS X تحت پشتیبانی GPL منتشر کرد ، فقط در مجوز اختصاصی موجود بود.
در سال 2002 ، اعضای KDE در پروژه Cygwin شروع به انتقال پایگاه کد مجاز QPL / X11 با مجوز GPL به ویندوز نمودند. این در پاسخ به امتناع Trolltech از مجوز Qt / Windows تحت GPL به این دلیل است که ویندوز یک سیستم عامل نرم افزاری منبع آزاد یا منبع باز نیست. این پروژه موفقیت منطقی کسب کرد اگرچه هرگز به کیفیت تولید نرسید.
این حل شد وقتی Trolltech Qt 4.0 را نیز برای ویندوز تحت GPL در ژوئن 2005 منتشر کرد. Qt 4 از همان مجموعه سیستم عامل ها در نرم افزار رایگان / نسخه های منبع آزاد مانند نسخه اختصاصی پشتیبانی می کند ، بنابراین امکان دارد با Qt 4.0 و نسخه های بعدی بتوانید برنامه های منبع آزاد / منبع باز دارای مجوز GPL را با استفاده از Qt در تمام سیستم عامل های پشتیبانی شده ایجاد کنید. . GPL v3 با استثناء خاص بعدا بعنوان گزینه مجوز اضافی اضافه شد. استثناء GPL اجازه می دهد تا برنامه نهایی تحت مجوزهای مختلف نرم افزار رایگان / سازگار با GPL / مجوز منبع آزاد مانند مجوز عمومی Mozilla 1.1 مجاز باشد.
کسب نوکیا
نوکیا Trolltech ASA را در 17 ژوئن 2008 به دست آورد و ابتدا نام را به Qt Software و سپس به Qt Development Frameworks تغییر داد.
نوکیا روی تبدیل Qt به سکوی اصلی توسعه دستگاههای خود از جمله درگاه به سیستم عامل Symbian S60 متمرکز شده است. نسخه 1.0 نوکیا Qt SDK در 23 ژوئن 2010 منتشر شد. کد منبع از طریق Gitorious ، مخزن کد منبع git مبتنی بر جامعه ، با هدف ایجاد جامعه گسترده تر با استفاده و بهبود Qt در دسترس قرار گرفت.
در 14 ژانویه 2009 ، Qt نسخه 4.5 گزینه دیگری به نام LGPL ، اضافه کرد تا Qt را برای هر دو پروژه منبع باز غیر GPL و برنامه های بسته جذاب تر کند.
در فوریه 2011 ، نوکیا تصمیم خود را برای رها کردن فناوری های Symbian و قرار دادن تلفن های هوشمند آینده خود به جای آن روی پلتفرم ویندوز فون اعلام کرد (و از آن زمان پشتیبانی از این سیستم عامل نیز کاهش یافته است). یک ماه بعد ، نوکیا از فروش مجوزهای تجاری Qt و خدمات حرفه ای به Digia خبر داد ، با هدف فوری گرفتن پشتیبانی Qt از سیستم عامل های اندرویدی ، iOS و ویندوز 8 و ادامه تمرکز روی دسکتاپ و توسعه جاسازی شده ، اگرچه قرار بود نوکیا باقی بماند. نیروی اصلی توسعه در چارچوب در آن زمان.
ادغام و تخریب با Digia
در مارس 2011 ، نوکیا بخش مجوز تجاری Qt را به Digia ساخت Qt Commercial فروخت. در آگوست 2012 ، Digia اعلام کرد که Qt را از نوکیا به دست می آورد. تیم Qt در Digia کار خود را در سپتامبر 2012 آغاز کرد. آنها Qt 5.0 را ظرف مدت یک ماه و نسخه های جدیدتر هر 6 ماه با ویژگی های جدید و سیستم عامل های پشتیبانی شده اضافی منتشر کردند.
در سپتامبر سال 2014 ، Digia تجارت و کپی رایت Qt را به شرکت تابعه کاملاً متعلق به خود ، شرکت Qt ، که 25 مارک مربوط به Qt منتقل شده بود ، منتقل کرد. در ماه مه سال 2016 ، Digia و Qt کاملاً به دو شرکت مستقل تبدیل شدند.
پروژه Qt و حاکمیت باز
Qt 5 به طور رسمی در 19 دسامبر 2012 منتشر شد. این نسخه جدید یک تغییر اساسی در سیستم عامل را نشان می داد ، با گرافیک شتاب سخت افزاری ، QML و JavaScript نقش اصلی را بازی می کنند. QWidgets فقط از C ++ پشتیبانی می شود ، اما از پیشرفت های عملکرد موجود از طریق معماری جدید بهره نمی برد. Qt 5 پیشرفت قابل توجهی در سرعت و سهولت در ایجاد رابط های کاربر ایجاد می کند.
توسعه چارچوب Qt 5 به سمت حاکمیت آزاد در qt-project.org حرکت کرد ، و این امکان را برای توسعه دهندگان خارج از Digia فراهم کرد تا تکه هایی را برای بررسی ارسال کنند.
همکاران Qt
گذشته از شرکت Qt ، بسیاری از سازمان ها و اشخاصی که از Qt به عنوان سکوی توسعه خود استفاده می کنند ، از طریق پروژه Qt در توسعه باز Qt شرکت می کنند.
یکی از این مشارکت کنندگان Qt Klarälvdalens Datakonsult AB ، یک شرکت مشاوره سوئدی Qt است. KDAB در بسیاری از زمینه ها از جمله نگهداری چندین مؤلفه درگیر است.
همراه با RIM / BlackBerry ، KDAB درگاه QNX و BlackBerry 10 Qt را حفظ می کند.
یکی دیگر از شرکت کنندگان اینتل است که به عنوان مثال پشتیبانی ویندلند را مشارکت می کند. AudioCodes پشتیبانی IBM ClearCase را در Qt Creator حفظ می کند.
به عنوان یک کاربر سنگین از Qt ، پروژه KDE تکه ها و ویژگی های بسیاری را از کتابخانه توسعه دهنده آن KDE Frameworks به Qt ارسال می کند.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.