Προς το περιεχόμενο

Παραθυριακές εφαρμογές


Lomar

Προτεινόμενες αναρτήσεις

Χαίρεται, μετα απο περίπου 2 χρόνια ενασχόλησης μου με τη C, αποφάσισα πως θα ήθελα να δώσω ενα πιο φιλικό (και στο μάτι και στη χρήση) interface σε κάποιες εφαρμογές που έχω φτιάξει. Έτσι λοιπόν αποφάσισα να πειραματιστώ με τη δημιουργία παραθυρικών εφαρμογών.

 

Κατέβασα το Gtk+ / Glade αλλά το περιβάλλον του μου φαίνεται αρκετά περιορισμένο στις επιλογές του σε σχέση με αυτό που περίμενα (κάτι σαν το Dreamwaver περίμενα για τα οπτικά αντικείμενα). Ακόμη δεν έχω καταλάβει πως μπορώ να κάνω μια εφαρμογή πολύ απλή με 3 πλαίσια που να κάνει μια απλή πρόσθεση 2 αριθμών και να εμφανίζει το αποτέλεσμα τους.

 

Επίσης δεν έχω ακόμη καταλάβει τι είναι αυτά τα API τα οποία πετυχένω σε άλλα forum, και γενικότερα στις αναζητήσεις μου στο google...

 

Όποιος μπορεί να μου δώσει κάποιες πολύ βασικές πληροφορίες για τις παραθυρικές εφαρμογές, καθως και για το πως να κάνω compile ενα project (πχ 5-6 .c αρχεία και μερικά header files, τα οποία γίνονται include απο τα πρώτα) θα με βοηθήσει αρκετά!

 

thnks :-D

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Χαίρεται, μετα απο περίπου 2 χρόνια ενασχόλησης μου με τη C, αποφάσισα πως θα ήθελα να δώσω ενα πιο φιλικό (και στο μάτι και στη χρήση) interface σε κάποιες εφαρμογές που έχω φτιάξει. Έτσι λοιπόν αποφάσισα να πειραματιστώ με τη δημιουργία παραθυρικών εφαρμογών.

 

Κατέβασα το Gtk+ / Glade αλλά το περιβάλλον του μου φαίνεται αρκετά περιορισμένο στις επιλογές του σε σχέση με αυτό που περίμενα (κάτι σαν το Dreamwaver περίμενα για τα οπτικά αντικείμενα). Ακόμη δεν έχω καταλάβει πως μπορώ να κάνω μια εφαρμογή πολύ απλή με 3 πλαίσια που να κάνει μια απλή πρόσθεση 2 αριθμών και να εμφανίζει το αποτέλεσμα τους.

 

Επίσης δεν έχω ακόμη καταλάβει τι είναι αυτά τα API τα οποία πετυχένω σε άλλα forum, και γενικότερα στις αναζητήσεις μου στο google...

 

Όποιος μπορεί να μου δώσει κάποιες πολύ βασικές πληροφορίες για τις παραθυρικές εφαρμογές, καθως και για το πως να κάνω compile ενα project (πχ 5-6 .c αρχεία και μερικά header files, τα οποία γίνονται include απο τα πρώτα) θα με βοηθήσει αρκετά!

 

thnks :-D

Καλά ρε 2 χρόνια προγραμματίζεις και δεν ξέρεις τι είναι τα API????LOL

Λοιπόν έτσι λέγονται οι κλήσεις συστήματος ,συναρτήσεις που υπάρχουν σε DLL "win32" και modules στα *nix αντίστοιχα .

Δεν ξέρω την GTK αλλά αν θέλεις μπορώ να σου πω μερικά πράγματα για την QT .

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ναι :-D πιο πολύ επικεντρώνομαι στους αλγορίθμους... anyway έτσι οπως διάβαζα για αυτά σε διάφορα forum δε πήγαινε το μυαλό μου εκεί.

 

To QT είναι για C; αν είναι για C++ μην μου πεις είναι το ίδιο, θέλω αμιγώς υποστήριξη σε C.

 

Αν μπορείς εξήγησε μου τη λογική με την οποία λειτουργεί. Δηλαδή πως πρέπει αν σκέφτομαι όταν δημιουργώ τέτοιες εφαρμογές.

 

Αυτό το QT, μήπως χρειάζεται κάποιο runtime; Για να το κατεβάσω το κάνω search ώς QT απλώς;

 

thnks in advance!

 

EDIT:

 

Για αυτό μου μιλούσες;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ναι λόμαρ αυτό είναι το qt. Θέλει και runtime όπως λες. Έχει πολλα tutorials για να βρείς το δρόμο σου. Δεν ξέρω αν χρησιμοποιείς κάποιο ide, αν όχι, μπορείς να δοκιμάσεις το eclipse.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@m1cro: όχι ακριβώς... Είναι το interface που παρέχουν λειτουργικά συστήματα/βιβλιοθήκες για να μπορεί να εκμεταλευτεί ο προγραμματιστής τις δυνατότητές τους.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@dark_banishing

 

Δηλαδή πρέπει να κατεβάσω 3 πράγματα:

 

1. Το qt.

2. Το runtime του.

3. Το eclipse.

 

btw IDE είναι Interface Developer Enviroment; Έχει μήπως καμία σχέση με ποιο compiler χρησιμοποιώ; Αν ναι είναι ο Dev-C++.

 

Επίσης αν μπορεί κανείς να μου εξηγήσει γενικά τι γίνεται με τις παραθυρικές εφαρμογές, δηλαδή πως τις αντιμετωπίζουν οι προγραμματιστές, αν έχει νόημα να ασχοληθώ με αυτές σε C, ή αν τελικά αρχίσω σε λίγο καιρό να ασχολούμαι με C# αν είναι καλύτερο εκεί να ξεκινήσω την εξάσκηση με αυτές (παραθυρικές εφαρμογές).

 

Ευχαριστώ για τις μέχρι τωρα απαντήσεις, και συγνώμη για την ασχετοσύνη μου σε βασικά πράγματα. Πραγματικά ακόμη και εγώ εξοργίζομαι με αυτή, αφού στη σχολή, αν και έχουμε αρκετά καλούς καθηγητές στα σχετικά μαθήματα, το πρόγραμμα σπουδών δεν είναι σωστά οργανωμένο προκειμένου να αποκτήσουμε τις βάσεις και την λογική πάνω στην οποία πρέπει να αναπτύξουμε τις ιδέες μας.

 

Ελπίζω να μη γίνομαι κουραστικός, απλά θέλω να καταλάβω πως λειτουργεί αυτό το πράγμα (προγραμματισμός) στη βάση του, και να μη κάνω τυφλά και αψυχολόγητα βήματα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Έχει το νόημα του να δοκιμάσεις για να δεις πως είναι και να αποφασίσεις με καλύτερα κριτήρια με τι θες να ασχοληθείς.

 

Το ide είναι απλά ένα περιβάλλον που κάνει τη ζωή σου πιο εύκολη τόσο στο γράψιμο κώδικα όσο και στη σχεδίαση παραθυριών. Τόσο το devc++ που έχεις όσο και το eclipse είναι ide και χρησιμοποιούν κάποιο compiler για να δουλέψουν. Όμως το eclipse είναι φανερά ανώτερο κ cross platform και υποστηρίζει c/c++/java qt και ένα σωρό άλλα πράγματα..

 

Τώρα όσον αφορά το qt. Στη σελίδα του έχει οδηγίες πως θα κάνεις τον συνδυασμό c/eclipse/qt να δουλέψει.

 

Νομίζω όμως πως πας να βουτήξεις στα πολύ βαθιά.. Καλύτερα ξεκίνα java (C# δεν ξέρω για να σου προτείνω ή όχι..) που είναι απείρως πιο εύκολη για να κάνεις αυτό που θες και πολλά άλλα. Νομίζω κυκλοφορούν εξάλλου άπειρα τόπικ που απαντάνε στην ερώτηση ποια γλώσσα να μάθω κτλ...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

οι εφαρμογές σου θα τρέχουν σε windows ή τις θες και για *nix ?

 

γιατί δεν δοκιμάζεις τις EXPRESS Editions του Visual Studio?

οι περιορισμοί από το πλήρες πακέτο δεν νομίζω να σε ενοχλήσουν, και είναι πλήρες πακέτο (ide/compiller)

έχει C++ και C#

όχι C :(

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για αρχή σε windows που είναι πιο βατά τα πράγματα.

 

Σε Linux, ακόμα δεν έχω καταλάβει την αρχή που διέπει το filesystem του (αυτό με το slash "/" και usr,lib κτλ δεν το καταλαβαίνω) :-D

 

dark_banishing σε αυτό το site θα βρω τις οδηγίες για το συνδυασμό που μου προτείνεις;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Lomar -- >

Qt tutorial

Είναι για την QT 3 το tutorial :-P

 

http://doc.trolltech.com/4.3/index.html

 

 

a) win32 --> Βρες μια pirate version της commercial QT. Μπορεί να ενσωματωθεί και με το VS2005 (Γρήγορος,απλός και σίγουρος τροπος για τα Windows)

 

b)linux--> Βάλε Ubuntu και κατέβασε αυτόματα τα πακέτα qt4-devel κτλ...

Κατέβασε το Eclipse 3.2 καθώς και το integration της Qt για το eclipse

 

Eclipse Integration--> http://trolltech.com/company/newsroom/announcements/press.2007-05-24.8884335791

 

 

To σύστημα βοηθείας μέσω QtAssistant είναι κατα την γνώμη μου ότι καλύτερο μπορείς να βρεις.

Δεν χρειάζεται να ξέρεις και την τρελή C++ για να κάνεις τα απλά...

 

 

Και φυσικά ένα πολύ καλό forum για βοήθεια: http://www.qtcentre.org/

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για C# ποιά η γνώμη σου σε σχέση με τη C++;

 

Εννοώ οι διαφορές τους ποιές είναι; Αν είναι και μπορείς να κάνεις και ποιο εύκολες παραθυρικές εφαρμογές σε C#, τότε να μην ασχοληθώ με τη παραθυριακή "version" (τρόπος του λέγιν) της C...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για C# ποιά η γνώμη σου σε σχέση με τη C++;

 

Εννοώ οι διαφορές τους ποιές είναι; Αν είναι και μπορείς να κάνεις και ποιο εύκολες παραθυρικές εφαρμογές σε C#, τότε να μην ασχοληθώ με τη παραθυριακή "version" (τρόπος του λέγιν) της C...

 

H C++ είναι μια εκπληκτική γλώσσα με μεγάλες δυνατότητες.

α) Φυσικά υποστηρίζει object oriented programming

β) Υποστηρίζει generic programming ( Μιας και ασχολείσαι με αλγορίθμους μπορείς να απομονώσεις τα δεδομένα απο την λογικη )

γ) Υπερφόρτωση Τελεστών,Iterators και άλλες πατέντες της C++ μπορούν να προσαρμοστούν στο στυλ προγραμματισμού σου.

δ) Μπορείς να χρησιμοποιήσεις ένα υποσύνολο των δυνατοτήτων της και να το εμπλουτίζεις αν θέλεις συνεχεια.

 

Η C# είναι απλά μια object oriented εύκολη στην χρήση και στην κατανήση. Λίγο πολύ υποστηρίζει τα παραπάνω αλλα αν googlαρεις λίγο θα δεις πχ ότι τα generics της c# δεν είναι τόσο ισχυρά όσο της c++ <tempates>. και άλλα. Πάντως είναι μια καλή γλώσσα.

 

Βέβαια την μεγαλύτερη ισχύ της C++ την πληρώνεις γράφοντας περισσότερο κώδικα και είναι πιο πολύπλοκη στην κατανόηση και στην σύνταξη της. Πχ δεν έχει garbage collector και συνεπως θα αποδεσμεύεις μνήμη με το "χερι"

 

 

Είναι πολύ καλή περίπτωση και η C# με το .Νet 2.0.

Η λογική στην γενική περίπτωση είναι η ίδια (object oriented)

Μπορείς να φτιάξεις πολύ πιο εύκολα ένα απλό πρόγραμμα σε C# .Net.

Αν όμως θέλεις να κάνεις κάτι που ξεφεύγει απο τα πλαίσια του εύκολου θα δεις ότι με .Net 2 C# δεν είναι και πολύ εύκολα τα πράγματα. Βέβαια ίσως παγιδεύεσαι σε μια πλατφόρμα με αυτον τον τροπο.

 

Σε Qt μόλις μπεις στο κλίμα θα δεις ότι στο μοντέλο της όλα καθορίζονται απο την τετράγωνη λογική του object oriented programming. Δεν υπαρχουν μαγικά τρικ και πατέντες . Πχ. Θες ένα καινούριο κουμπί ?? Κάνεις subclass την QAbstactButton και φυσικά υλοποιείς τις virtual συναρτήσεις τις οποίες σου αναφέρει το έξοχο σύστημα documentation της QT.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

βασικά για τέτοιες εφαρμογές http://www.anappaday.com/ οι οποίες είναι γραμμένες σε C# μια χαρά μου φαίνεται σαν γλώσσα πολύ δυνατή και επαρκής και για χοντρές δουλειές.

 

Δηλαδή η C++ αν κατάλαβα καλά αυτό που έχει παραπάνω είναι οτι παντού όλα γίνονται απο τον προγραμματιστή, έτσι έχει μεγαλύτερες δυνατότητες παραμετροποίησης μιας εφαρμογής, ή ακόμη και μείωσης της πολυπλοκότητάς του τελικού προγράμματος (εννοώ μείωση κατανάλωσης πόρων απο την εφαρμογή), σε σχέση με ένα αντίστοιχο πρόγραμμα σε C#;

 

Άν είναι έτσι τότε ποιά η διαφορά στις δυνατότητες της C# σε σχέση με την Java; και φυσικά δεν μιλάω για dotnet framework vs multiplatform framework...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

βασικά για τέτοιες εφαρμογές http://www.anappaday.com/ οι οποίες είναι γραμμένες σε C# μια χαρά μου φαίνεται σαν γλώσσα πολύ δυνατή και επαρκής και για χοντρές δουλειές.

 

Δηλαδή η C++ αν κατάλαβα καλά αυτό που έχει παραπάνω είναι οτι παντού όλα γίνονται απο τον προγραμματιστή, έτσι έχει μεγαλύτερες δυνατότητες παραμετροποίησης μιας εφαρμογής, ή ακόμη και μείωσης της πολυπλοκότητάς του τελικού προγράμματος (εννοώ μείωση κατανάλωσης πόρων απο την εφαρμογή), σε σχέση με ένα αντίστοιχο πρόγραμμα σε C#;

 

Άν είναι έτσι τότε ποιά η διαφορά στις δυνατότητες της C# σε σχέση με την Java; και φυσικά δεν μιλάω για dotnet framework vs multiplatform framework...

 

Kοίταξε να δεις για να μάθεις Java,C++,C# πρέπει πρώτα να μάθεις τις αρχές του αντικειμενοστραφούς προγραμματισμού. Μετά απλά κοιτάς πως υλοποιούνται απο κάθε γλώσσα. Κατά την γνώμη μου C++ > C# > Java σαν γλώσσες. (Πχ τα templates στην Java μπήκαν στην 1.6 έκδοση πρόσφατα, στην C# τα generics δεν είναι τόσο ισχυρά όσο τα templates)

 

Στην C++ η πολυπλοκότητα κατα την γνώμη μου οφείλεται στην ελευθερία της γλώσσας. Μπορείς μέχρι και να την επεκτίνεις πχ (μηχανισμός SIGNALS-SLOTS στην QT), υποστηρίζει πολλαπλή κληρονομικότητα κα. Αλλά πχ για να δουλέψει η πολλαπλή κληρονομικότητα σωστά πρέπει να ριθμίσεις εσύ τις λεπτομέριες.

 

Άν ξέρεις ήδη C πήγαινε απευθείας C++ και μετά θα δείς ότι η Java - C# μπορούν να αντιμετωπιστουν σαν απλά υποσύνολα (με απλά λόγια τις μαθαίνεις πολύ εύκολα)

Αλλιώς ξεκίνα με Java - Swing (Και μετά αν θες QT κοίτα το Qt/Jambi)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...