إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

مناقشة مفتوحة عن مكتبتي QT and GTK

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • مناقشة مفتوحة عن مكتبتي QT and GTK

    السلام عليكم و رحمة الله و بركاته ،،
    أنوي البدأ في تعلم البرمجة تحت اللينكس طبعا أريد أن تكون برامجي تعمل تحت اللينكس و الويندوز و لذلك أضن بأنه بامكاني تعلم QT أو GTK للبرمجة بالسي بلس بلس
    طبعا هناك حلول أخري إذا بحثنا خارج نطاق السي بلس بلس ،، فـالجافا مثلا مستقلة عن نظام التشغيل ،،،،، و لكني أود تخصيص النقاش حول حلول البرمجة الخاصة بالسي بلس بلس في بداية النقاش ثم الإنتقال إلى اللغات الأخرى ،، فأنا أرى بأن أفضل طريقة للتعرف على عالمي GTK و QT هو المشاركة في نقاشات حية...

    -------------------------------------------------
    حسب معلوماتي البسيطة فإن الـ QT تتيح برمجة واجهات رسومية ذات شكل KDE أما الـ GTK فموجه للـ GNOME ،، فهل هذا صحيح ،،،،

    أرجو من من لديه أية فكرة حول هذا الموضوع و لو بسيطة المشاركة في المناقشة ،،،، والإعتماد على أهل الإختصاص في إثراء المناقشة طبعا
    سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك؟
    Working on Google soc 2010 - Auto parallelization in GCC

  • #2
    واحد من أهم الفروق هو الترخيص، Qt مرخصة تحت Gpl وهو مايعني أنها تسمح بكتابة برامج تخضع ل Gpl أيضا (برامح حرة ومفتوحة المصدر فقط) ولن تستطيع كتابة برامج غير حرة بها، بينما Gtk مرخصة تحت Lgpl وهو ما يسمح لك بكتابة برامج حرة أو غير حرة كما تشاء على حد علمي.

    تعليق


    • #3
      السلام عليكم ورحمة الله وبركاته

      ال QT هي مكتبة لتطوير البرامج ذات الواجهة الرسومية ،،
      تعمل هذه البرامج على اجهزة :
      Linux,Unix,Windows,apple Mac and Embedded linux

      ولكن من الاصدار الرابع QT4 اصبحت تستخدم ايضا لتطوير برامج ال console

      تقوم الشركة Trolltech (المالكة ) باصدار ال QT تحت عدة نسخ:

      1- نسخة لانظمة X11 (مثل لينكس,يونكس,سولاري....الخ). Qt/X11
      2- نسخة لانظمة ويندوز Qt/Windows
      3- لانظمة ماك Qt/Mac
      4- للانظمة المضمنة (مثل الهاتف الذكي) Qt/Embedded


      وايضا يوجد الترخيص المفتوح والتجاري
      اي تستطيع كتابة برامجك تحت الترخيص المفتوح (وذلك باستخدام النسخة open source)
      وتوزيعها مع الكود.

      اما في حالة استخدامك للرخصة commercial( والتي يجب عليك شراؤها )
      فتستطيع كتابة برامجك وتوزيعها بدون الكود .

      ========================

      ما يميز ال Qt كما ذكرت انها تعمل على عدة اجهزة..
      ولكن يجب عليك اعادة ترجمة البرنامج من جديد.
      write one's complie any where



      اي ليست كجافا التي يعمل برامجها (القبيحة المنظر)من دون اعادة ترجمة.

      لا اريد المقارنة بين جافا و ال QT ولكن رايي الشخصي
      "ال QT " هي الافضل ،، بدون ذكر اسباب

      دعك من انها تكتب بلغة C++ الغنية عن التعريف.
      QT vs Java

      =======================

      قد تتسائل اخي القارئ ؟؟ ما هي البرامج التي كتبت بال QT ?
      طبعا كثيرة جدا...
      ولكن اشهرها سطح المكتب KDE :thumpsup_green:
      وكذلك المتصفح opera
      وبرنامج google earth
      للمزيد
      انظر هنا

      ======================

      واخيرا..

      للبدء بال QT..
      اولا تعلم ال C++

      ثم قم بتنزيل المكتبة من الوقع
      http://www.trolltech.com/products/qt/downloads

      وقم بقراءة الكتاب:
      C++ GUI with QT4
      وله رابط موجود في المنتدى

      وكذلك لا تنسى الاستعانة ب Qt Assistant

      ملخص رائع تجده هنا


      واي مشكلة تواجدك..
      ان شاء الله ما راح نقصر معكم
      وقبل ما انسى:
      تم كتابة ال Qt في عام 1991 بواسطة
      Haavard Nord and Eirik Chambe-Eng

      :002:
      التعديل الأخير تم بواسطة SudaNix; الساعة 08-12-2006, 09:12 PM.

      تعليق


      • #4
        المشاركة الأصلية بواسطة baghdadi13 مشاهدة المشاركة
        حسب معلوماتي البسيطة فإن الـ QT تتيح برمجة واجهات رسومية ذات شكل KDE أما الـ GTK فموجه للـ GNOME ،، فهل هذا صحيح ،،،،
        عند كتابة برنامج بال QT فانه ياخذ شكل النظام الذي تعمل عليه..
        وطبعا تستطيع تغيير هذا ال Style

        واحب اذكر ان البرامج المكتوبة بال QT تعمل على اي توزيعة وعلى اي سطح مكتب
        ولكن يجب ان تتوفر ال Qt في الجهاز .
        او قم بربط المكتباب الاساسية مع برنامجك static linking
        وسوف تعمل بدون توفر ال Qt.
        طبعا سوف يزيد الحجم الى 5 ميجا فقط .

        تلفظ ال Qt بالشكل : cute

        وشكرا

        تعليق


        • #5
          السلام عليكم ورحمة الله وبركاته،،،

          لقد تفضل أخي سعودينكس بشرح وافي لأهم مميزات مكتبة QT ،، من رأيي الشخصي أنه غفل عن نقطة مهة جدا ،، وهي سعر مكتبة QT التجاري ، حيث يصل الترخيص لكل مطور أكثر من 3000 دولار !!!
          http://www.trolltech.com/products/qt/licenses/pricing
          طبعا هذا إذا فكرت يوما ما في أن تكتب برنامج تجاري ، أما إن كنت لا تريد ذلك فيمكنك استعمالها فقط للبرمجة البرامج الحرة فقط .

          نأتي لمكتبة GTK ، هذه المكتبة تتيح لك برمجة برامج تجارية بدون أن تدفع أي حاجة، ولكن ليكن في ذهنك ، هذه المكتبة مفتوحة المصدر بمعنى أن تطويرها يختلف عن تطوير الشركات مثل مكتبة QT و JAVA و MFC .. ماذا اقصد ، اقصد ستواجهك صعوبة في التوثيق و البحث ولكن تقدر ان تتغلب على هذه الوثيقة بالاستفادة من الكم الصخم من البرامج مفتوحة المصدر بحيث تقدر أن تقرأ و تتعلم مباشرة،،
          مكتبة GTK للعلم ليست لمبرمجي السي بلاس بلاس ، بل هي مكتبة برمجت على لغة السي، مما يعني مميزات السي بلاس بلاس لا تتوفر في مكتبة GTK ،
          ولكن يوجد مكتبة مبنية على GTK تسمى GTKmm
          http://www.gtkmm.org/

          والذي ألاحظه أن الشركات تتجه نحو استخدام مكتبة GTK لاحظ شركة ردهات و شركة اودبي و شركة نوفل و غيرها من الشركات،،

          وفي النهاية الأمر يرجع إليك ،،
          تحياتي
          تفضل بزيارة: وادي التقنية

          تعليق


          • #6
            بارك الله فيكم ،،،،
            أخي dr_tux

            واحد من أهم الفروق هو الترخيص
            هذه نقطة مهمة كنت مهملا لها تمام

            أخي SudaNix ،،، :clap2: بارك الله فيك
            على كل المعلومات المهمة ،،، أنا فعلا متعود على البرمجة بالسي بلس سلس على الويندوز و ما عنديش فيه أي مشكلة و كذلك على اللينكس ،،،و لكن الجديد بالنسبة لي هو إستعمال المكتبات ،،،

            واحب اذكر ان البرامج المكتوبة بال QT تعمل على اي توزيعة وعلى اي سطح مكتب
            ولكن يجب ان تتوفر ال Qt في الجهاز .
            او قم بربط المكتباب الاساسية مع برنامجك static linking
            وسوف تعمل بدون توفر ال Qt.
            طبعا سوف يزيد الحجم الى 5 ميجا فقط .
            هذا أمر مهم جدا ،، بحثت عنه منذ مدة ،،، سأبحث في الأمر في الأنترنت و إذا واجهت مشاكل فإني أعتمد عليك ،، و على الإخوة الكرام

            أخي OMLX ،، بارك الله فيك :clap2: أشرت إلى نقطة مهمة و هي السعر ;)
            و لكن في نفس الوقت هناك أمر آخر يقف في صالح الـ GTK و هو أنني من مبرمجي السي شارب و هذا يعني أنه إذا أردت العمل في اللينكس فإنه علي الإعتماد على الـ MONO و الذي يعتمد بدوره على الـ GTK فقد يكون علي تعلم الGTK لهذا السبب ،،،،،
            إلا إذا وجدت c#+QT ،،،،

            و لكن تبقى مشكلة الGTK هي قلة المصلدر و الدعم

            أرجو أن يبقى الحوار مفتوحا ،،، و لكن من لديه ميزة للمكتبتين فليضعها ،،، و بارك الله فيكم:clap2:
            سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك؟
            Working on Google soc 2010 - Auto parallelization in GCC

            تعليق


            • #7
              بارك الله فيكم يا فرسان
              بما انه تم فتح الموضوع فأقترح على الشباب سواء كانوا مبتدئين ام محترفين التعاون للقيام بدروس او دورات صغيرة او شيئ احسن اي الورشات مثل ما يقوم به الاخوة في التشبيك.
              و الخطة يا شباب هي تجهيز درس مع تطبيقاته - تمارين - كل 3 او 4 ايام او حتى كل اسبوع ، ثم بعد التطبيق يقوم الشباب بوضع روابط لاعمالهم لمناقشتها و الاستفادة اكثر، ثم اذا نجحت الفكرة فيمكن بعدها الدخول في مشاريع اكبر كالقيام بانشاء برامج خاصة بمنتدانا مثلا ما تم طرحه من قبل احد الاعضاء الذي اراد القيام ببرنامج يقوم بتصفح مجموعة من الكتب مثل برنامج المكتبة الشاملة.... على كل يوجد الكثير من الرؤى و التصورات و المهم في كل هذا هو قراركم انتم يا فرسان اللينوكس . فما قولكم؟؟؟؟؟؟؟؟؟؟؟
              اخوكم بالانتظار على احر من الجمر.
              السلام عليكم.

              تعليق


              • #8
                سي شارب متوفر لمكتبة QT
                http://qtcsharp.sourceforge.net/

                ولكن الظاهر ان المشروع ليس بقوة مكتبة GTK#
                تفضل بزيارة: وادي التقنية

                تعليق


                • #9
                  نعم ،،، يبدو لي بأن آخر تحديث للموقع كان قبل سنوات .....

                  فالأخبار فيه توقفت في سنة 2002

                  http://qtcsharp.sourceforge.net/news.php

                  أخ fakir ،،، فكرتك رائعة جدا ،،،،،،، و كنت أتمنى أن تتحقق ،،،،
                  و بما أنك قد بدأت ،،،، فلننطلق جميعا ،،،،

                  بالنسبة إلى الدروس : إذا كان كان الأعضاء مستعدين لوضع دروس فهذا أمر رائع و في النهاية هذه الدروس يمكن أن تجمع في كتاب صغير يكون مرجعا لكل متعلم جديد ،،،،،
                  و إذا كان ضيق الوقت عائقا أمام كتابة الدروس فقد يكون الحل الآخر هو جمع كل مصادر المعلومات من مواقع مميزة و كتب بالعربية - قليلة أو لا توجد - و الإنجليزية و أدوات التطوير ،،، والباقي علينا ،، فقط واحد مسؤول يوجه ،،، مثلا ندرس جميعا خلال هذا الأسبوع موضوعا معينا و نطبق مجموعة من التمارين و نطرحها لنتناقش فيها على مدى الأسبوع التالي ،،، مثلا

                  فقط شيئ صغير ،،، لو تفتح أخي fakir موضوع قائم بحد ذاته لهذا الموضوع لمدى أهميته و كذلك لكي لا نبتعد كثيرا عن موضوع هاه المناقشة ،،،،،
                  شكرا
                  سبب ضياع العباد أنهم مسلمون بالوراثة ــ هل فكرت في علة خلقك؟
                  Working on Google soc 2010 - Auto parallelization in GCC

                  تعليق


                  • #10
                    السلام عليكم
                    وماذا عن لغه سي.. من المناسب منها .. ولماذا..
                    قرات ان مكتبه gtk الافضل لهذا المجال..
                    لكن نريد ان نسمع رايكم .. اذا جربتم او تعرفون بعض المعلومات المفيده.. ..

                    تحياتي
                    GCS

                    تعليق


                    • #11
                      للعلم هناك مكتبات أخرى لمن آراد الاطلاع أكثر
                      http://www.free-soft.org/guitool/
                      تفضل بزيارة: وادي التقنية

                      تعليق


                      • #12
                        السلام عليكم و رحمة الله
                        اهلا فرسان .. ان شاء الله تكونوا بخير ^_^ و شكرا على التفاعل.
                        اذا تم الاتفاق يا شباب ارجو ابداء الرأي للتنسيق بين الاعضاء و التحضير لخطة العمل، ثم دعوة باقي اعضاء المنتدى للمشاركة- طبعا بعد اخذ رأي الاخوة المشرفين-
                        بمعنى آخر ، ان نجاح الورشة يتوقف على نقطة البداية هنا ، اي في توفير المصادر - اقصد الافراد و ليس الكتب - بتصور ان الورشة لا يقودها فرد واحد بل هذه الافراد حسب امكانية توفير الدروس ، و هذا لكي لا يتوقف المشروع بغياب فرد معين ، فكل من يوفر درسا يقود الورشة الى غاية الانتهاء من مناقشة هذا الدرس ثم يأتي الذي يليه، و هكذا.
                        من جهة اخرى سيتم دعوة اكبر عدد ممكن من الاعضاء قبل الانطلاق - بالترغيب او التهديد ههههههه -
                        على كل هذا تصوري ، و لكل تصوره ، لذا ارجو التشاور و الرد .
                        فقط ملاحظة : ليس شرطا ان يكون الاعضاء محترفي برمجة الـ Qt لتوفير الدروس بل يمكن ترجمة ما هو جاهز في النت او الكتب و مناقشته هنا ، فاذكر انها ورشة .
                        نقطة اخرى شباب ، اخوكم الفقير الى الله ليست له اي خلفية في البرمجة تحت لينوكس ، لا Qt و لا غيرها اي ما قبل مبتدىء و هذا لا يمنعني ان آخذ الملعقة بنفسي و لا انتظرها من غيري.
                        بانتظاركم يا شباب.
                        ..
                        .

                        تعليق


                        • #13
                          اهلا بالجميع :khaleje_happy:
                          اعتذر عن التاخيـــــــــــــر... :onfire:

                          واشكر الاخ omlx على النتبيه والاضافة..:khaleje_happy:

                          المشاركة الأصلية بواسطة OMLX مشاهدة المشاركة
                          السلام عليكم ورحمة الله وبركاته،،،

                          لقد تفضل أخي سعودينكس بشرح وافي لأهم مميزات مكتبة QT ،، من رأيي الشخصي أنه غفل عن نقطة مهة جدا ،، وهي سعر مكتبة QT التجاري ، حيث يصل الترخيص لكل مطور أكثر من 3000 دولار !!!
                          http://www.trolltech.com/products/qt/licenses/pricing
                          طبعا هذا إذا فكرت يوما ما في أن تكتب برنامج تجاري ، أما إن كنت لا تريد ذلك فيمكنك استعمالها فقط للبرمجة البرامج الحرة فقط .

                          نأتي لمكتبة GTK ، هذه المكتبة تتيح لك برمجة برامج تجارية بدون أن تدفع أي حاجة، ولكن ليكن في ذهنك ، هذه المكتبة مفتوحة المصدر بمعنى أن تطويرها يختلف عن تطوير الشركات مثل مكتبة QT و JAVA و MFC .. ماذا اقصد ، اقصد ستواجهك صعوبة في التوثيق و البحث ولكن تقدر ان تتغلب على هذه الوثيقة بالاستفادة من الكم الصخم من البرامج مفتوحة المصدر بحيث تقدر أن تقرأ و تتعلم مباشرة،،
                          مكتبة GTK للعلم ليست لمبرمجي السي بلاس بلاس ، بل هي مكتبة برمجت على لغة السي، مما يعني مميزات السي بلاس بلاس لا تتوفر في مكتبة GTK ،
                          ولكن يوجد مكتبة مبنية على GTK تسمى GTKmm
                          http://www.gtkmm.org/

                          والذي ألاحظه أن الشركات تتجه نحو استخدام مكتبة GTK لاحظ شركة ردهات و شركة اودبي و شركة نوفل و غيرها من الشركات،،

                          وفي النهاية الأمر يرجع إليك ،،
                          تحياتي
                          بالنسبة لسعر الرخصة فـ ;) ;)
                          نعم هي مرتفعة الثمن
                          ولكننا لسنا بحاجة اليها (ربما حاليا) كمبرمجين
                          فالنسخة المفتوحة تفي بالغرض


                          +++++++++++++++++++++



                          وبالنسبة لل( GTK (GIMP Toolkit فهي طورت اصلا لبرمجة برنامج ال GIMP

                          وكما ذكر اخي OMLX فميزتها في انها لا تحتاج الي اي رخصة لكي تعمل بها برامجك سواء كانت مفتوحة المصدر او مغلقة. :thumbups:


                          امثلة عل برامج كتبت بها:
                          GIMP

                          AbiWord

                          GnuCash

                          Glade

                          Anjuta


                          وتستطيع استخدام لغات برمجة كثير معها
                          http://www.gtk.org/bindings.html

                          ولتحميل اخر اصدار
                          http://www.gtk.org/download/


                          وشكرا...

                          تعليق


                          • #14
                            الاخ fakir
                            اشكرك على همتك ونشاطك :002:
                            وبالنسبة لوضع دروس ،، فلا مانع لدي
                            ولكنني لست خبيرا او حتى متوسطا فانا على قد حالي مبتدىء

                            ولكن ايضا نريد اعضاء ليساعدوني (فوقتي ضيق جدا، ولا استطيع التواجد يوميا)
                            وايضا نريد اعضاء مستمعين ، ليحضروا هذه الدروة -->مسوي مدرس:p

                            واتمنى ان ترسم الخطة وتضعها ،،وتحدد من المستعد لوضع دروس اخرى ،، لكي نستفيد ونفيد


                            تحياتي.

                            تعليق


                            • #15
                              المشاركة الأصلية بواسطة CPU مشاهدة المشاركة
                              السلام عليكم
                              وماذا عن لغه سي.. من المناسب منها .. ولماذا..
                              قرات ان مكتبه gtk الافضل لهذا المجال..
                              لكن نريد ان نسمع رايكم .. اذا جربتم او تعرفون بعض المعلومات المفيده.. ..

                              تحياتي
                              اهلا يا CPU

                              لغة السي مناسبة لكل شيء ..
                              لغة السي تتربع على عرش لغات البرمجة (اللغة الام)
                              اغلب الادوات الموجوده (برامج,نظم تشغيل،درايفرات،مترجمات...الخ) مبنيه بالسي او بنيت على السي.
                              وهناك لغات برمجة كتبت بالسي:flabbergasted:

                              +++++++++++++++++

                              وبالنسبة لتطوير برامج بواجهة رسومية فبامكانك استخدام مكتبة GTK
                              لانها تستخدم السي ولانها كتبت بالسي :onfire:

                              مقولة اعجبتني:
                              "السي ليست لغة برمجة بقدر ما هي مصنع لانتاج البرامج"

                              وبالنسبة لاستخدامها مع الQT فلا تستطيع ،، لان ال QT تستخدم مبدأ OOP
                              وهو غير موجود في السي .

                              ++++++++++++++++++++++++

                              الشيء الذي اعجبني بال QT هي انها تستخدم ال OOD ، والذي يعني سهولة التطوير بها
                              وكذلك السرعة ، والتقليل من الاخطاء.
                              ال QT احترافية ،، وبرامجها متحرمة جدا ومستقرة وكافية لكي تجلب لك العديد من الزبائن.:onfire:

                              اما ال GTK تستخدم الدوال والمؤشرات للدوال (عملية متعبة بعض الشيء)
                              وايضا لو احضرنا برنامجين يؤديان نفس الغرض احدهما بال QT والاخر GTK
                              لوجدنا ان البرنامج المكتوب بال QT اقل من ناحية الاسطر ،، واسهل للاسيتعاب والتتبع
                              والاضافة ،، بينما البرنامج الاخر تجده ممل بعض الشيء

                              وايضا وجود الدعم الفني لل QT ،، كتب ،، doucmentation ،، وتوضيحات شاملة لكل الكلاسات والدوال المستخدمة Qt Assistant ،، وايضا ال Qt Designer الذي يساعدك لبناء النوافذ بسهولة ،، وايضا ال Qt Linguist الذي يساعدك لترجمة البرامج ،،

                              كل هذه الاشياء قد تفتقد اليها ال GTK والتي جعلها تاتي في المرتبة الثانية (راي شخصي)


                              http://www.staikos.net/~staikos/whyqt/


                              واخيرا
                              كما ذكر OMLX ،، هذا يرجع اليك ،، سواء استخدمت ال QT او GTK
                              فما دام انك تكتب كل ما تتمنى فما تستخدمه هو الافضل :002:

                              تحياتي لك CPU ،، ولمبرمجي C/C++

                              تعليق

                              يعمل...
                              X