C++ GUI Programming και με Widget για το KDE

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό M.Jackson » 30 Ιουν 2012, 18:00

Μέχρι σήμερα, έγραφα απλά προγράμματα σε C++ σε Comand Line Interface. Θέλω να πάω ένα βήμα παραπέρα να γράψω το πρώτο μου C++ πρόγραμμα με GUI, open source αλλά και με υποστήριξη για widget στο KDE.

Οι απορίες μου είναι
    Θα χρησιμοποιήσω το Qt για να φτιάξω το πρόγραμμα (έτσι ώστε να έχω και GUI) σωστά δεν υπάρχει άλλη λύση; (να μάθω να γράφω σε κώδικα και GUI, πράγμα δύσκολο, αφιέρωσα πολλή χρόνο για την Java σε αυτό τον τομέα και δεν μπορώ να πω πως είναι και πολλή ευχάριστη υπόθεση.
    Ποιο database θα συνδέσω το πρόγραμμα μου; δεν θέλω flat files.
    Επίσης, πως μπορώ να φτίαξω widget το οποίο να συνδέεται με το πρόγραμμα μου;
    Τέλος όταν γράψω το πρόγραμμα, για να το κάνω ΕΛΛΑΚ αρκεί να το ανεβάσω απλά σε κάποιο site που φιλοξενεί open source προγράμματα;

Ευχαριστώ.
Άβαταρ μέλους
M.Jackson
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 1053
Εγγραφή: 28 Μάιος 2010, 19:06
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό migf1 » 01 Ιούλ 2012, 00:22

M.Jackson έγραψε:Μέχρι σήμερα, έγραφα απλά προγράμματα σε C++ σε Comand Line Interface. Θέλω να πάω ένα βήμα παραπέρα να γράψω το πρώτο μου C++ πρόγραμμα με GUI, open source αλλά και με υποστήριξη για widget στο KDE.

Οι απορίες μου είναι
    Θα χρησιμοποιήσω το Qt για να φτιάξω το πρόγραμμα (έτσι ώστε να έχω και GUI) σωστά δεν υπάρχει άλλη λύση; (να μάθω να γράφω σε κώδικα και GUI, πράγμα δύσκολο, αφιέρωσα πολλή χρόνο για την Java σε αυτό τον τομέα και δεν μπορώ να πω πως είναι και πολλή ευχάριστη υπόθεση.
...
Ευχαριστώ.

Τα πιο συχνά cross-platform GUI APIs για C++ είναι το QT, το wxWidgets και το FLTK. Το καθένα έχει τις ιδιαιτερότητές του και θέλει διάβασμα. Το QT είναι το πιο ισχυρό από τα 3 και ταυτόχρονα το πιο πολύπλοκο. Στον αντίποδα είναι το FLTK.
Go under the hood with C: Pointers, Strings, Linked Lists
Άβαταρ μέλους
migf1
powerTUX
powerTUX
 
Δημοσιεύσεις: 2082
Εγγραφή: 03 Ιουν 2011, 16:32
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό pmav99 » 01 Ιούλ 2012, 02:11

O σχεδιασμός GUI, όσον αφορα τη λογική τουλάχιστον, δε διαφέρει μεταξύ wx και qt. Containers έχεις και βάζεις μέσα widgets. Java δεν ξέρω, αλλά φαντάζομαι ότι οι βιβλιοθήκες εκεί θα είναι και αυτές αντίστοιχης λογικής. Το θέμα είναι ο σχεδιασμός του GUI νομίζω και όχι η βιβλιοθήκη αυτή καθ' αυτή. Qt, την οποία την ξέρω μέσα από το PyQt νομίζω ότι έχει καλύτερο API.

Για να κάνεις το λογισμικό ΕΛΛΑΚ θα πρέπει να του δώσεις την κατάλληλη άδεια χρήσης. Με τον αυστηρό (stallman-ικό) ορισμό του Ελεύθερου Λογισμικού η άδεια που πρέπει να δώσεις είναι GPL3.

Για database, η Qt έχει υποστήριξη για SQL αλλά δεν ξέρω λεπτομέρειες http://qt-project.org/doc/qt-4.8/sql-driver.html
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό medigeek » 01 Ιούλ 2012, 08:06

M.Jackson έγραψε:Ποιο database θα συνδέσω το πρόγραμμα μου; δεν θέλω flat files.

sqlite;
http://www.developer.nokia.com/Communit ... base_in_Qt
http://stackoverflow.com/questions/2319 ... te-with-qt
http://doc.qt.nokia.com/4.7/qt-sql.html
http://doc.qt.nokia.com/4.7/qtsql.html

Και πριν πει κάποιος πως είναι απλό αρχείο, ας διαβάσει εδώ: https://www.sqlite.org/about.html
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό M.Jackson » 01 Ιούλ 2012, 18:04

Ευχαριστώ παιδιά, αλλά αν το sqllite αν δεν υπάρχει γραφικό περιβάλλον για την δημιουργία/σχεδίαση της βάσης δεδομένων και την προβολή της όπως είναι το phpmyadmin panel δεν την θέλω.
Ποια database υποστηρίζει αυτή την λογική, να είναι και native πρόγραμμα δηλαδή να τρέχει στο pc και όχι στον browser, και να υποστηρίζεται από την C++.
Άβαταρ μέλους
M.Jackson
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 1053
Εγγραφή: 28 Μάιος 2010, 19:06
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό pmav99 » 01 Ιούλ 2012, 18:34

Υπάρχουν gui για sqlite. sqliteman και sqlitebrowser αν θυμάμαι καλά. Υπάρχει και ένα που τρέχει σαν πρόσθετο στο firefox. Google it!
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό M.Jackson » 03 Ιούλ 2012, 18:18

Θα το ψάξω το θέμα, προς το παρών, αντιμετωπίζω πρόβλημα με το QT είναι εξαιρετικά δύσκολο να το μάθεις είναι διαφορετική η λογική από κάθε άλλο IDE. Δεν ξέρω τι γίνεται, αλλά η έκδοση του QT στα Windows είναι κάπως διαφορετική με αυτή του Linux.
Βασικά στα tutorials του youtube είναι διαφορετικό το Enviroment, στο Λινουξ εγώ χρησιμοποιώ το QT Designer.
Άβαταρ μέλους
M.Jackson
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 1053
Εγγραφή: 28 Μάιος 2010, 19:06
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό pmav99 » 03 Ιούλ 2012, 19:46

Προσωπικά θα σου πρότεινα, ιδίως στην αρχή, να μη χρησιμοποιείς QtDesigner, Glade (είναι του GTK) και αντίστοιχα προγράμματα. Αυτά είναι και λίγο προσωπικά βέβαια, αλλά πιο πολύ με ζόριζαν παρά με βοηθούσαν. Το δύσκολο είναι να ξέρεις τι θέλεις να φτιάξεις, όχι το να γράψεις τον κώδικα.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό M.Jackson » 03 Ιούλ 2012, 20:38

Ναι, καταλαβαίνω τι λες, αλλά τι προτείνεις; Βασικά το παράδειγμα που θα σας πω είναι πολλή ειδικό και δεν ξέρω αν θα γίνω κατανοητός.
Βασικά, όταν 'σχεδίαζα' ένα κουμπί, με δεξί κλικ και με κάποιες επιλογές 'on click' κάπως έτσι (αυτό ήταν το νόημα του τουλάχιστον), με έβαζε μέσα στο class και έγραφα κώδικα για το κουμπί, κάπως σαν Visual Studio ή NetBeans, τώρα δεν υπάρχει κάτι παρόμοιο.

Τώρα που έγραψα Netbeans νομίζω υποστηρίζει και C++ με κάποιο addon, και μιας και είμαι συνηθισμένος από την Java για το Netbeans ίσως ξεκινήσω από εκεί.
Άβαταρ μέλους
M.Jackson
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 1053
Εγγραφή: 28 Μάιος 2010, 19:06
Εκτύπωση

Re: C++ GUI Programming και με Widget για το KDE

Δημοσίευσηαπό pmav99 » 03 Ιούλ 2012, 21:04

Αν κατάλαβα τι λες, η λογική του QtDesigner δεν είναι αυτή. Σε βοηθάει να σχεδιάσεις το GUI, όχι τη λογική του. Υπάρχουν αρκετά tutorials. Δες τη σελίδα του Qt. Το Documentation όλου του framework είναι πολύ καλό. Υπάρχει και το QtQuick αλλά δεν το έχω χρησιμοποιήσει.

Προσωπικά, όταν (σπάνια πια) χρειάζομαι GUI προτιμώ να γράφω τον κώδικα με το χέρι. Η αίσθηση που έχω είναι ότι η διαφορά στο χρόνο δεν είναι ουσιαστική.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Επόμενο

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι