إطار عمل كيو تي

(تم التحويل من كيوت)

QT تلفظ بشكل رسمي كيوت cute (/kyut/) على الرغم ان اللفظ الشائع هو Q.T (/ˈkyu ti/) ان QT هي منصة عمل لتطوير البرمجيات التاي تعمل على عدة انظمة تشغيل تستعمل غالباً من اجل تطوير برامج ذات واجهة بيانيةGUI وغير البيانية كconsole و مخدم . QT تستعمل بشركة ملحوظ في برامج autodisk,google earth ,KDE ,Adobe Photoshop album , وكالة الفضاء الاوروبيةOPIE, Skype, VLC media player, Samsung , Philips , Panasonic ,VirtualBox

شعار QT

تم انتاج هذه المكتبة من شركة نوكيا Nokia من بعد هيمنتها على شركة Trolltech النروجية المنتج الفعلي لمكتبة QT في العام 2008 .

QT تستعمل لغة c++ القياسية لكنها تستعمل بعض التوسعات الإضافية على pre-processor هذه توسعات تدعى Meta Object Compiler, او اختصاراً moc وتم العمل عليها لإغناء اللغة .QT يمكنها ايضاً ان تستعمل في لغات برمجة اخرى بواسطة language bindings .تعمل المنصة على جميع منصات العمل الرئيسية وتملك دعم دولي واسع . ان ميزات البرمجة التي لا تملك واجهة بيانية تتضمن SQL database access, XML parsing, thread management, network support, ومنصة عمل موحدة للتعامل مع الملفات

QT هي مكتبة برمجية مجانية ومفتوحة المصدر تحت رخصة GPL .جميع الاصدارات تدعم العديد من المترجمات compilers بما فيها GCC c++ وحزمة visual studio .


. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

تاريخ المنصة

المطوران الرئيسيان لمنصة QT هما Haavard Nord و Eirik Chambe-Eng والذين يعملان حالياً كمدراء تنفيذيين CEO في شركة Trolltech بدءا العمل بتطوير المنصة في العام 1991 , قبل ثلاث سنوات قبل ان ان يتم دمج الشركة مع Quasar Technologies ليصبح اسم الشركة Troll Tech فيما بعد .

الادوات البرمجية toolkit سميت QT بسبب ان الحرف Q بدا جذاباً في خط Haavard's Emacs والحرف t تم استيحاءه من قبل ادوات Xt .

اول اصدارين من المنصة كانت تملك توزيعتين Qt/X11 المخصصة لنظام Unix و Qt/Windows لنظام تشغيل Windows .ان منصة تشغيل ويندوز كانت تدعم الرخصة المملوكة لا الحرة ,الامر الذي ادى الى ان جميع التطبيقات مفتوحة المصدر المكتوبة بمكتبة QT من اجل X11 لا يمكن توزيعها الى نظام ويندوز بدون شراء النسخة المملوكة .في نهاية العام 2001 اصدرت شركة Trolltech النسخة الثالثة من QT , التي قامت باضافة الدعم لنظام تشغيل Mac Os X . ان دعم نظام تشغيل Mac كان متوافراً فقط في النسخة المملوكة حتى العام 2003 عندما اصدرت الشركةTrolltech الاصدار 3.2 مع دعم نظام Mac تحت رخصة GPL .

نوكيا قام بالاستحواذ على شركة Trolltech في العام 2008 وقام بتغير اسم المنصة الى Qt Software ثم Qt Development Frameworks منذ ذلك الحين وعملت شركة نوكيا على تطوير QT لتعمل على اجهزتها , بالإضافة الى تطوير العمل على نظام تشغيل Symbian S60 . الإصدار رقم 1 من شركة نوكيا Nokia Qt SDK تم اصداره في 23 -6- 2010


المنصات Platforms

تم اصدار منصات QT من قبل نوكيا التالية :

  • Linux/X11 – Qt for X Window System (Unix / Linux)
  • Mac OS X – Qt for Apple Mac OS X. Support for applications on top of Cocoa APIs
  • Windows – Qt for Microsoft Windows
  • Embedded Linux – Qt for embedded platforms (PDA, Smartphone, etc.)
  • Windows CE – Qt for Windows CE
  • Symbian – Qt for the Symbian platform.Qt is to replace Nokia's Avkon as the supported UI SDK for the development of Symbian applications.
  • Maemo – Qt for Maemo, merged with Moblin to MeeGo

توزيعات

ان مكتبة QT تملك العديد من التوزيعات المختلفة والجدول التالي يوضح اهم التوزيعات ولغات البرمجة المتوافقة معها .

توزيعات مكتبة QT
لغة اسم - موزع النسخة QtCore QtDesigner QtGui QtNetwork QtOpenGL QtSql QtScript QtSvg QtTest QtUiTools QtWebKit QtXml رخصة برمجيات للتطبيقات مفتوحة المصدر رخصة برمجيات للتطبيقات المملوكة
Ada QtAda نعم نعم نعم لا ,تدعم Qt modules في QtAda نعم نعم لا لا لا نعم لا نعم GPL-رخصة GMGPL + اجرة بسيطة
C++ Qt – native C++ نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم LGPL LGPL او مملوكة + اجرة بسيطة
C# & .NET Qyoto – شاهد ايضاً Kimoلا KDE نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم
C# & .NET qt4dotnet LGPL LGPL
D QtD
Haskell Qt Haskell
Harbour hbqt نعم لا نعم لا لا لا لا لا لا لا لا رخصة GPL LGPL مثل
Java Qt Jambi نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم LGPL LGPL
Lisp CommonQt – نسخة مخصصة ل Common Lisp نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم BSD License BSD License
Lua lqt - Bindings نعم لا,تدعم Qt modules في QtAda نعم نعم نعم لا نعم نعم لا لا نعم لا MIT MIT
Lua QtLua - script engine LGPL LGPL
Pascal FreePascal Qt4
Perl PerlQt4 نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم رخصة GPL لا
PHP PHP-Qt نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم LGPL LGPL
Python PyQt – تملك نص مرافق (ISBN 0132354187). نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم رخصة GPL خاص + اجرة بسيطة
Python PySide – from OpenBossa (a subsidiary of لاkia). نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم LGPL LGPL
Python PythonQt LGPL LGPL
R qtbase نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم GPL لا
Ruby QtRuby نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم نعم LGPL LGPL
Tcl qtcl رخصة GPL لا


Qt hello world

#include <QtGui>

int main(int argc, char *argv[])
{
   QApplication app(argc, argv);
   QLabel label("Hello, world!");
   label.show();
   return app.exec();
}


ترجمة وتنفيذ برنامج Qt hello world

  • يتم انشاء مجلد باسم hello
  • نسخ ولصق البرنامج السابق ذو اللاحقة cpp في مجلد hello
  • في مجلد hello يتم تنفيذ التعليمات التالية
    • qmake -project
    • qmake
    • make/gmake/nmake
  • Execute ./release/Hello او release\Hello.exe في نظام ويندوز


روابط خارجية

الكلمات الدالة: