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

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

Δημοσ. (επεξεργασμένο)

Εργάζομαι επαγγελματικά εδώ και κάποια χρόνια αναπτύσσοντας εφαρμογές κυρίως σε Windows χρησιμοποιώντας το συνδυασμό Winforms με C# .NET. Προφανώς είναι τελείως outdated, πια, η χρήση των Winforms και καθώς γενικά υπάρχει μία τάση αρκετών εταιρειών προς τις cross-platform desktop εφαρμογές, θα ήθελα να ακούσω απόψεις από άλλους συναδέλφους ή χομπίστες για εμπειρίες με τέτοιου είδους προσεγγίσεις.

 

Από τη δική μου οπτική, καθώς ακόμα "ψάχνομαι" μέχρι να βρω κάτι να εμβαθύνω, μελετώ τα εξής:

  • GTK#/Mono: Θεωρητικά ένας ώριμος συνδυασμός, αλλά επίσης ξεπερασμένος όπως τα Winforms, καθώς το GTK# ακόμα δεν έχει μεταβεί "σοβαρά" στην 3η γενιά του GTK+ και γενικά μοιάζει παραγκωνισμένο.
  • GTK+/Vala: Πάλι GTK, αλλά αυτή τη φορά πιο native σε συνδυασμό με μία γλώσσα προγραμματισμού που μοιάζει με C# αλλά έχει το προσόν ότι γίνεται compile από C και άρα έχει native executables και άμεση πρόσβαση σε άπειρες βιβλιοθήκες C. Τα IDE που την υποστηρίζουν είναι περιορισμένα και το μέλλον της σίγουρα είναι αμφιλεγόμενο, όσο δεν τυγχάνει μεγάλης αποδοχής.
  • Qt/C++: Κλασσικός συνδυασμός, αλλά το αποτέλεσμα φαίνεται επίσης αρκετά ξεπερασμένο. Η Qt σίγουρα έχει τρομερές δυνατότητες και εύρος εφαρμογών, αλλά η ταχύτητα με την οποία μπορεί κανείς να αναπτύξει μικρές εφαρμογές με το συνδυασμό αυτό είναι μία μεγάλη ιστορία.
  • wxWidgets/C++: Άλλος ένας (ακόμα πιο) κλασσικός συνδυασμός που πιθανόν να θεωρείται, πια, τελείως ξεπερασμένος.
  • ElectronJS/NodeJS: Για εφαρμογές γραμμένες σε HTML/CSS/JS, άρα θεωρητικά ότι καλύτερο από αισθητικής άποψης (στην ουσία, GUI χωρίς περιορισμούς). Φυσικά, μεγάλο ζήτημα το θέμα της απόδοσης και το κατά πόσο συνεργάζεται εύκολα με άλλες βιβλιοθήκες, ιδίως σε ζητήματα υψηλών απαιτήσεων.

Θα ήθελα τη γνώμη σας για το ζήτημα. Προσωπικά, μ'αρέσει πολύ η προσέγγιση της ομάδας του Gnome και θεωρώ ότι το GTK+ είναι πλέον ένα πολύ σωστά δομημένο και σύγχρονο (από αισθητικής άποψης) γραφικό περιβάλλον που ίσως αξίζει προσοχής. Δυστυχώς, δε βλέπω να έχει μεγάλη αποδοχή από τους προγραμματιστές.

Επεξ/σία από liberostelios
Δημοσ.

Καλησπέρα !

 

Οφείλω κατ' αρχήν να ξεκαθαρίσω τη θέση μου ως προς το ότι δεν ασχολούμαι επαγγελματικά με τον προγραμματισμό, παρόλο που έχω τελειώσει ΑΕΙ πληροφορικής. Ήμουν όμως και είμαι φανατικός χομπίστας του προγραμματισμού από την εποχή που μεσουρανούσε η Locomotive BASIC στους υπολογιστές Amstrad CPC.

Δεν ξέρω βέβαια τι είδους εφαρμογές είν’ αυτές που θες να φτιάξεις, αλλά φαντάζομαι ότι θα είναι κάτι στο οποίο σ’ ενδιαφέρει πάρα πολύ η απόδοση και η ταχεία εκτέλεση. Αλλιώς δεν εξηγείται το γεγονός ότι δεν αναφέρεις καθόλου τη Java (καθαρή Java, όχι Javascript) και ιδιαίτερα το πακέτο Swing.

Προσωπικά, τη Java τη θεωρώ βασίλισσα στις cross platform λύσεις μιας και το αρχείο .class με τους bytecodes δεν απαιτεί ούτε καν επαναμεταγλώττιση για να τρέξει σε μια “ξένη” πλατφόρμα. Ο συχνότερος αντίλογος σ’ αυτό είναι ότι στη Java δεν είναι εύκολο να παράγεις native executable για μια συγκεκριμένη πλατφόρμα.

Αυτό φυσικά και το δέχομαι, αλλά εδώ που τα λέμε υπάρχουν και οι μεταγλωττιστές JIT τους οποίους έχω δοκιμάσει τόσο σε Windows, όσο και σε Linux και μου τρέξανε μια χαρά.

Συγκεκριμένα έχω μεταγλωττίσει δικές μου μικρές εφαρμογές με τον gcj στα Windows και βγήκε ένα εκτελέσιμο αρχείο που ήταν χάρμα οφθαλμών.

Άσε που επειδή εμένα μου αρέσει να κάνω κάτι περίεργα κόλπα με τον ήχο, έχω αγαπήσει πολύ τη Java λόγω του ότι ενσωματώνει βιβλιοθήκες όπως την java.sound.sampled.*

Άμα παρ’ όλ’ αυτά η Java δεν σου κάνει και θα ‘θελες κάτι με πιο γρήγορη απόκριση, προτείνω τη Free Pascal και το Lazarus IDE (www.freepascal.org)

Το έχω αγαπήσει κι αυτό πολύ γιατί εκτός του ότι μου θυμίζει τα νιάτα μου αφού είναι Delphi Compatible μέχρι το μεδούλι, ο μεταγλωτιστής της Free Pascal παρέχει εγγενώς τη δυνατότητα μεταγλώττισης για “ξένες” πλατφόρμες.

Αυτή τη στιγμή που γράφω, ο υπολογιστής τρέχει Slackware Linux 14.1 και έστω ότι γράφω ένα πρόγραμμα σε Free Pascal. Έστω ότι το λένε myprog.pas. Δίνω στο command prompt του Linux την παρακάτω εντολή και βγαίνει το myprog.exe που εκτελείται χωρίς προβλήματα στα Windows.

 

fpc -TWin32 myprog.pas και ιδού !

 

Η βιβλιοθήκη γραφικών συστατικών της Free Pascal και του Lazarus λέγεται LCL. Λόγω του ότι έχω αρχίσει σχετικά πρόσφατα ν’ ασχολούμαι μ’ αυτήν, δεν την έχω ψάξει μέχρι κόκαλο, αλλά με την πρώτη ματιά δεν είδα βασικές ελλείψεις.

 

Αυτά τα λίγα για την ώρα,

Ελπίζω να βοήθησα λίγο,

Φιλικά,

 

Ο Άσπρος Γάτος

Δημοσ.

Η απόδοση δεν είναι κάτι τόσο σημαντικό, αλλά οπωσδήποτε είναι χρήσιμο να μην "μπλέξει" κανείς με κάτι που να θεωρείται "βαρύ" και δύσκολο στη χρήση. Η Java είναι πράγματι παράλειψη, αλλά προσσωπικά δε με κέντρισε ποτέ και τη θεωρώ, πλέον, "ξεπερασμένη". Ξέρω ότι θα θεωρηθεί ιεροσυλία από κάποιους αυτό που λέω, αλλά πιστεύω ότι αν δεν υπήρχε η τεράστια πελατειακή βάση των 90s θα είχε ήδη σχεδόν εξαφανιστεί. Φαντάζομαι το ίδιο ισχύει και για τη Free Pascal.

 

Το θέμα είναι ότι οδεύουμε για τα καλά στην εποχή της πολυ-επεξεργασίας οπότε οι περισσότερες παλιές γλώσσες (ακόμα και η .NET) αρχίζουν να δείχνουν την ηλικία τους και, μαζί, και όλο το προγραμματιστικό πλαίσιο που χτίστηκε γύρω τους. Σίγουρα για τις πιο επιτυχημένες (Java, C/C++, .NET) υπήρχε, υπάρχει και θα υπάρχει δουλειά τα επόμενα χρόνια, αλλά το ερώτημα είναι ποιός είναι ο βέλτιστος συνδυασμός ωριμότητας και μελλοντική προοπτικής για κάποια από τις διαθέσιμες λύσεις.

 

Να ξεκαθαρίσω ότι δεν ξεκίνησα το thread για να καταλήξω προσωπικά σε κάτι, απλά βλέποντας ότι είναι μία εποχή στην οποία το ζήτημα του UI είναι πολύ "ρευστό" θεωρώ ότι θα είχε ενδιαφέρον μία συζήτηση μεταξύ μας (επαγγελματιών και μη) για το τι μέλλει γενέσθαι και τι εμπειρίες έχει ο καθένας. Αυτό που παρατηρώ είναι ότι πλέον τα design patterns που δημιουργούθηκαν το 1980 και βασιλεύουν μέχρι σήμερα, έχουν αρχίσει να δίνουν τη θέση τους σε πιο όμορφα, πρακτικά και καθαρά UI libraries με τα δικά τους guidelines όπως το Cocoa, GTK+, Material Design κλπ., όπου πλέον η δημιουργία μία εφαρμογής δεν είναι απλώς "μια φόρμα με ένα main menu, μερικά κουμπιά και κανά data grid", αλλά μια πιο ολοκληρωμένη διεπαφή με διαφορετική προσέγγιση.

 

Οκ, σε επαγγελματικό περιβάλλον τα κλασικά "παράθυρα" έχουν ψωμί ακόμα, αλλά δεν είναι σίγουρο για πόσο θα ισχύει αυτό.

Δημοσ.

Χαιρετώ το Λευκό Γάτο! Είπε για 8Bit μηχάνημα και μου έφτιαξε..τη μέρα..(απόγευμα μάλλον).

Έχω δει εφαρμογές σε java για desktop και έχουν ζήτημα..π.χ. δεν έχουν σωστή επαναφορά του focus στο υποτιθέμενο επιλεγμένο παράθυρο (κάτι παίζει με τα modal παράθυρα..αν υπάρχουν τέτοια στο swing).

Το cross platform δεν μπορεί να σε απασχολεί πρωτίστως από θέμα ταχύτητας εκτός και κάνεις χωριστές διανομές. Με τη Java γλιτώνεις πολλά. Το πρόβλημα όμως είναι αλλού.  Π.χ μπορούν οι φόρμες να προσαρμόζονται βάσει αναλογίας πλάτους προς ύψος; Είναι αυτό που ψάχνει η Microsoft για τα 10, να παίζουν σε ό,τι οθόνη βρουν.

Εγώ ασχολήθηκα με το να φτιάξω δικό μου Gui, για να έχω φόρμες διαλόγων με δυνατότητα ζουμ! Αλλά το να το μεταφέρω σε μια εξωτερική βιβλιοθήκη θα το ήθελα μεν αλλά δεν έχω βρει το τρόπο να φτιάξω UserControl σε κάποιο framework..κάποια στιγμή θα το ψάξω! Αν έχει φτιάξει κάποιος UserControl θα μου ήταν ευχάριστω να μάθω γι΄αυτό!

Δημοσ.

Οκ, σε επαγγελματικό περιβάλλον τα κλασικά "παράθυρα" έχουν ψωμί ακόμα, αλλά δεν είναι σίγουρο για πόσο θα ισχύει αυτό.

 

Για πάντα as long as the job gets done. Και σε μη επαγγελματικό περιβάλλον οι desktop εφαρμογές είναι βασικά είδος προς εξαφάνιση because mobile (και σε μικρότερο βαθμό browser apps). 

Δημοσ.

Εχω την γνωμη πως ενα θεμα οπως το "Cross-Platform GUI" (ειδικα για καποιον με εμπειρια στην C#) ευκολα καταληγει στο "Java-Swing/(JavaFX)" - φοβαμαι μαλιστα και χωρις βραχυπροθεσμη προοπτικη για κατι αξιολογοτερο.

 

Υ.Γ.: Locomotive BASIC / Amstrad CPC - η ιστορια μου!

Δημοσ.

Εγώ ασχολήθηκα με το να φτιάξω δικό μου Gui, για να έχω φόρμες διαλόγων με δυνατότητα ζουμ! Αλλά το να το μεταφέρω σε μια εξωτερική βιβλιοθήκη θα το ήθελα μεν αλλά δεν έχω βρει το τρόπο να φτιάξω UserControl σε κάποιο framework..κάποια στιγμή θα το ψάξω! Αν έχει φτιάξει κάποιος UserControl θα μου ήταν ευχάριστω να μάθω γι΄αυτό!

Αν αναφέρεσαι σε .NET, εγώ είχα φτιάξει ένα UserControl για να έχω κάτι σαν τα TimeLine που βλέπουμε σε εφαρμογές επεξεργασίας βίντεο κλπ. Μπορείς να το δεις εδώ στο project TimeLineControl (δείξε λίγη επιείκεια, είναι από τα πρώτα σοβαρά projects που έκανα). Γενικά, δεν είναι κάτι φοβερό το να φτιάξεις δικό σου control ή να κάνεις override το draw event ενός υπάρχοντος.

Δημοσ.

Το είδα λίγο!

Στο       protected override void OnMouseClick(MouseEventArgs e)

Το      base.OnMouseClick(e);  γιατί χρειάζεται;

το δικό μου είναι εδώ https://github.com/M2000Interpreter/Version8/blob/master/glis4.ctl

Σε ένα αρχείο ο κώδικας!

Τρέχει σε ΜΟΝΟ ο κώδικάς σου?

Δημοσ.

Εργάζομαι επαγγελματικά εδώ και κάποια χρόνια αναπτύσσοντας εφαρμογές κυρίως σε Windows χρησιμοποιώντας το συνδυασμό Winforms με C# .NET. Προφανώς είναι τελείως outdated, πια, η χρήση των Winforms και καθώς γενικά υπάρχει μία τάση αρκετών εταιρειών προς τις cross-platform desktop εφαρμογές, θα ήθελα να ακούσω απόψεις από άλλους συναδέλφους ή χομπίστες για εμπειρίες με τέτοιου είδους προσεγγίσεις.

 

Από τη δική μου οπτική, καθώς ακόμα "ψάχνομαι" μέχρι να βρω κάτι να εμβαθύνω, μελετώ τα εξής:

  • GTK#/Mono: Θεωρητικά ένας ώριμος συνδυασμός, αλλά επίσης ξεπερασμένος όπως τα Winforms, καθώς το GTK# ακόμα δεν έχει μεταβεί "σοβαρά" στην 3η γενιά του GTK+ και γενικά μοιάζει παραγκωνισμένο.
  • GTK+/Vala: Πάλι GTK, αλλά αυτή τη φορά πιο native σε συνδυασμό με μία γλώσσα προγραμματισμού που μοιάζει με C# αλλά έχει το προσόν ότι γίνεται compile από C και άρα έχει native executables και άμεση πρόσβαση σε άπειρες βιβλιοθήκες C. Τα IDE που την υποστηρίζουν είναι περιορισμένα και το μέλλον της σίγουρα είναι αμφιλεγόμενο, όσο δεν τυγχάνει μεγάλης αποδοχής.
  • Qt/C++: Κλασσικός συνδυασμός, αλλά το αποτέλεσμα φαίνεται επίσης αρκετά ξεπερασμένο. Η Qt σίγουρα έχει τρομερές δυνατότητες και εύρος εφαρμογών, αλλά η ταχύτητα με την οποία μπορεί κανείς να αναπτύξει μικρές εφαρμογές με το συνδυασμό αυτό είναι μία μεγάλη ιστορία.
  • wxWidgets/C++: Άλλος ένας (ακόμα πιο) κλασσικός συνδυασμός που πιθανόν να θεωρείται, πια, τελείως ξεπερασμένος.
  • ElectronJS/NodeJS: Για εφαρμογές γραμμένες σε HTML/CSS/JS, άρα θεωρητικά ότι καλύτερο από αισθητικής άποψης (στην ουσία, GUI χωρίς περιορισμούς). Φυσικά, μεγάλο ζήτημα το θέμα της απόδοσης και το κατά πόσο συνεργάζεται εύκολα με άλλες βιβλιοθήκες, ιδίως σε ζητήματα υψηλών απαιτήσεων.

Θα ήθελα τη γνώμη σας για το ζήτημα. Προσωπικά, μ'αρέσει πολύ η προσέγγιση της ομάδας του Gnome και θεωρώ ότι το GTK+ είναι πλέον ένα πολύ σωστά δομημένο και σύγχρονο (από αισθητικής άποψης) γραφικό περιβάλλον που ίσως αξίζει προσοχής. Δυστυχώς, δε βλέπω να έχει μεγάλη αποδοχή από τους προγραμματιστές.

 

 

Θα μιλήσω εκ εμπειρία με το MacOS το οποίο χρησιμοποιώ σε καθημερινή βάση, απο ότι έχω δεί το Native GUI API , στην περιπτωση του MacOS είναι το Cocoa , είναι εκ μακράν η πιο δημοφιλής επιλογή. QT έρχεται δεύτερο αλλά σε πολυ μεγάλη απόσταση και τα υπόλοιπα που ανέφερες είναι επιεικώνς ανύπαρκτα , εκτός με κάποιες εξαιρέσεις open source πχ GIMP , MyPaint κτλ.

 

Αλλά και απο άποψη γλώσσας προγραμματισμού να το δούμε στο MacOS εκ μακράν η πιο δημοφιλής για εφαρμογές είναι η ObjC που όπως αντιλαμβάνεσαι μονο Cross Platform δεν είναι.

 

Υποθέτω ότι ο λόγος είναι οτι προγραμματιστές προτιμουν λύσεις που δουλεύουν ήδη πολυ καλά και είναι οι πιο ώριμες και με πάρα πολύ καλή υποστήριξη ακόμα και αν αυτό σημαίνει περισσότερος κώδικας απο την μερία τους.

 

Απο εκεί και πέρα η επιλογή είναι δικιά σου , σίγουρα όλα οσα ανάφερες δουλεύουν κουτσά στραβά στο macos aλλά σαφέστατο η επιλογή macos platform αντί cross platform είναι εκ μακράν η πιο δημοφιλής.

 

Σχετικά με το GTK+ είναι σχετικά ανύπαρκτο στο MacOS, και από όσο ξέρω έχει πολλά προβλήματα μιας και δεν έχει πολλους mac developers.

 

Αν όμως επιμένεις σε cross platform επιλογη και για macos , εκ μακράν θα έλεγα QT , δεν έχει ανταγωνισμό.

Δημοσ.

Το είδα λίγο!

Στο       protected override void OnMouseClick(MouseEventArgs e)

Το      base.OnMouseClick(e);  γιατί χρειάζεται;

το δικό μου είναι εδώ https://github.com/M2000Interpreter/Version8/blob/master/glis4.ctl

Σε ένα αρχείο ο κώδικας!

Τρέχει σε ΜΟΝΟ ο κώδικάς σου?

Το base.OnMouseClick(e) είναι για να τρέξει ότι τυχόν delegates υπάρχουν στο MouseClick event της base class. Τώρα αν είναι άχρηστο ή όχι δεν μπορώ να σου πω με σιγουριά, ούτε που θυμάμαι. Σε Mono δεν το είχα δοκιμάσει, αλλά αν δεν κάνω λάθος χρησιμοποιώ gdi σε κάποια σημεία οπότε ίσως παίζει μόνο μέσω wine. Αλλά ειλικρινά, θυμάμαι ελάχιστα.

 

Αν όμως επιμένεις σε cross platform επιλογη και για macos , εκ μακράν θα έλεγα QT , δεν έχει ανταγωνισμό.

Το MacOS δε με πολυενδιαφέρει, για να είμαι ειλικρινής, αλλά σίγουρα είναι χρήσιμο να μπορείς να κάνεις κάτι που να παίζει παντού. Σίγουρα GTK+ σε Windows και MacOS δεν έχουν μεγάλη χρήση. Αλλά αυτό δε σημαίνει ότι δεν μπορούν να αποκτήσουν στο μέλλον, όσο πχ. λύσεις σαν το wxWidgets κλπ. εξαφανίζονται.

Δημοσ.

Το MacOS δε με πολυενδιαφέρει, για να είμαι ειλικρινής, αλλά σίγουρα είναι χρήσιμο να μπορείς να κάνεις κάτι που να παίζει παντού. Σίγουρα GTK+ σε Windows και MacOS δεν έχουν μεγάλη χρήση. Αλλά αυτό δε σημαίνει ότι δεν μπορούν να αποκτήσουν στο μέλλον, όσο πχ. λύσεις σαν το wxWidgets κλπ. εξαφανίζονται.

 

Το προβλήμα γενικά με μας τους mac χρήστες είναι οτι δίνουμε περισσότερο αξία στο οπτικό κομάτι απο τα features. Γενικά η αγορά του Mac έχει ενα καταναλωτικό κοινό που ξωδεύει περισσότερο απο το μέσο windows και linux χρήστη αλλά είναι και κοινό που αρκετά απαιτητικό ως προς το θέμα design, usability , ease of use etc. Δυστυχώς σε αυτόν το τομέα το GTK πάσχει πάρα πολυ και σαν χρήστης του MacOS μπορώ να σου πω οτι δεν έχει μέλλον στο MacOS και δεν είμαι και σίγουρος κατα πόσο έχει μέλλον και στο Linux.

 

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

 

Απο ότι έχω ακούσει τα πράγματα είναι σκούρα για το GTK+ και στο windows.

 

Αλλά σε κάθε περίπτωση η επιλογή είναι δική σου.

Δημοσ.

Θα μιλήσω εκ εμπειρία με το MacOS το οποίο χρησιμοποιώ σε καθημερινή βάση, [...]

Αν όμως επιμένεις σε cross platform επιλογη και για macos , εκ μακράν θα έλεγα QT , δεν έχει ανταγωνισμό.

Μια ερωτηση, με δεδομενο την πληρη αγνοιας μου για το MacOS, και το οτι εγω θεωρω την Java-Swing ιδανικη cross platform επιλογη (με δευτερη την λυση του εξαιρετικου QT): σε τι κατασταση βρισκεται η Java στο MacOS (οχι μονο περι GUI θεματων);

Δημοσ.

Μια ερωτηση, με δεδομενο την πληρη αγνοιας μου για το MacOS, και το οτι εγω θεωρω την Java-Swing ιδανικη cross platform επιλογη (με δευτερη την λυση του εξαιρετικου QT): σε τι κατασταση βρισκεται η Java στο MacOS (οχι μονο περι GUI θεματων);

 

Ανυπαρκτη και αυτή , αλλά για να είμαστε και δικαιοι η Java έτσι και αλλιώς ποτέ δεν ήταν δημοφιλής επιλογή για dektop applications, είναιι καθαρά για enterprise applications.

 

To MacOS είναι κυρίως

 

1) Objective C

2) Swift

3) C/C++

4) Applescript

 

ορίστε και ενα forum για δείγμα

 

http://forums.macrumors.com/forums/mac-programming.73/

 

Υπόψην ότι η Java ήταν η μόνη γλώσσα third party που υποστήριξε η Apple γράφοντας τον κώδικα της για να τρέχει στο MacOS και μάλιστα την πρόβαλε και πολυ σαν ένα απο το ατού του MacOS αλλά οι προγραμματιστές και οι χρήστες ποτέ δεν τσίμπησαν και ήταν τόσο παταγώδη αποτυχία που Apple αναγκάστηκε να την εγκαταλείψει και πλεον δεν έρχεται με το macos πρέπει να εγκατασταθεί ξεχωρίστα αν την χρειαστείς που είναι εξαιρετικά σπάνιο , και φυσικά πλέον η Apple δεν ασχολείται μαζί της.

 

To macos περιλαμβάνει python, ruby και pearl.

Δημοσ.

Μακριά απο Swing... καλύτερα JavaFX αν χρειάζεσαι οπωσδήποτε Java. To GTK+ δεν έχει μέλλον σε Linux...? Μάλιστα.. το ακούσαμε και αυτό.


Από τη δική μου οπτική, καθώς ακόμα "ψάχνομαι" μέχρι να βρω κάτι να εμβαθύνω, μελετώ τα εξής:

  • GTK#/Mono: Θεωρητικά ένας ώριμος συνδυασμός, αλλά επίσης ξεπερασμένος όπως τα Winforms, καθώς το GTK# ακόμα δεν έχει μεταβεί "σοβαρά" στην 3η γενιά του GTK+ και γενικά μοιάζει παραγκωνισμένο.
  • GTK+/Vala: Πάλι GTK, αλλά αυτή τη φορά πιο native σε συνδυασμό με μία γλώσσα προγραμματισμού που μοιάζει με C# αλλά έχει το προσόν ότι γίνεται compile από C και άρα έχει native executables και άμεση πρόσβαση σε άπειρες βιβλιοθήκες C. Τα IDE που την υποστηρίζουν είναι περιορισμένα και το μέλλον της σίγουρα είναι αμφιλεγόμενο, όσο δεν τυγχάνει μεγάλης αποδοχής.

 

Το GTK πάντως έχει bindings για πολλές γλώσσες, ακόμα και για Java, δεν χρειάζεται να πας σε Vala. Επειδή και εγώ δεν έχω ασχοληθεί πολύ με GUI αλλά έχω προσπαθήσει να φτιάξω σε GTK/Javascript, δεν είναι και τραγικά τα πράγματα αλλά νομίζω το μεγαλύτερο μειονέκτημα του είναι η έλειψη καλού documentation / tutorials. Θέλει πολύ ψάξιμο. Μέχρι και στο IRC Channel του gnome που έχω μπεί, μπορεί να ρωτάς για ώρες και να μην σου απαντήσει κανείς.. Θα πρέπει να κατεβάσεις κώδικα και να διαβάσεις για να καταφέρεις να φτιάξεις κάτι καλό, ειδικά αν θέλεις να φτιάξεις extension για gnome. Επίσης παρακολουθώ και την πορεία του Gnome Builder, πιστεύω θα βοηθήσει αρκετά την κατάσταση

 

Μια άλλη εναλλακτική για να μην μπλέξεις με C++ (QT) είναι και PyQT αλλά μπορεί να μπλέξεις με τα .exe αρχεία για windows, όπως και στην Java.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...