Πτυχιακές για C++ scripting, για συνδυασμό C++ με Java και για OpenCL σε Java
<Πτυχιακή με θέμα: «Ανάπτυξη graphical front end user interface για την cling»
Η cling είναι ένας C++ interpreter για την LLVM clang++. Λειτουργεί όμως σε console mode και συνεπώς είναι δύσχρηστη η χρησιμοποίηση του interpreter ως ένσ application prototyping tool ή ως ένα educational tool για την εκμάθηση της C++. Στα πλαίσια της πτυχιακής θα χρησιμοποιηθεί το open source framework FLTK (για portable http://www.fltk.org/index.php) user interfaces σε C++, για να αναπτυχθεί ένα layer γραφικής διασύνδεσης της cling.
Η πτυχιακή αυτή είναι για όσους θέλουν να μάθουν πολύ καλά C++. Το συνιστώμενο περιβάλλον ανάπτυξης είναι Linux ή Mac OS X.
< Πτυχιακή με θέμα: «Συνδυασμός C++ με Java στο πλαίσιο της ανάπτυξης επιστημονικο-τεχνολογικών εφαρμογών»
Η Java με την C++ μπορούν να είναι γλώσσες που να συνυπάρχουν και να συνεργάζονται αποδοτικά σε μια σύνθετη εφαρμογή επιστημονικο-τεχνολογικού χαρακτήρα, δηλ. που να απαιτεί π.χ. χρησιμοποίηση αλγορίθμων επεξεργασίας εικόνας, αναγνώρισης προτύπων, δικτυακής υποστήριξης κ.λ.π.
Η Java γενικά είναι ευκολότερη, περισσότερο portable σε οποιαδήποτε μηχανή, και ασφαλέστερη, ενώ από την πλευρά της η C++ έχει τα δικά της πλεονεκτήματα, όπως δυνατότητα άμεσης προσπέλασης στο υλικό, περισσότερες δυνατότητες βελτιστοποίησης του κώδικα, άμεση διασύνδεση με παράλληλες αρχιτεκτονικές.
Στα πλαίσια της πτυχιακής θα μελετηθούν πρώτα θεωρητικά τα πλεονεκτήματα / μειονεκτήματα της κάθε γλώσσας. Στην συνέχεια θα μελετηθούν πλαίσια για συνδυασμό των δύο γλωσσών με προτίμηση στο JavaCPP σύστημα. Μετέπειτα θα αναπτυχθεί ο τρόπος με τον οποίο το JavaCPP πετυχαίνει να ενσωματώσει σε Java προγράμματα ισχυρές βιβλιοθήκες κώδικα C/C++ όπως η GNU Scientific Library. Τέλος, θα παρουσιαστεί η ολοκλήρωση βιβλιοθηκών C/C++ στο high level Java based scripting περιβάλλον της ScalaLab.
Πτυχιακή με θέμα: «Μελέτη του AparAPI της AMD για ανάπτυξη παράλληλων εφαρμογών σε Java»
Το πλαίσιο AparAPI της AMD επιτρέπει την μαζική παραλληλοποίηση εφαρμογών Java με υποστήριξη του compilation σε πλατφόρμα OpenCL. Στα πλαίσια της πτυχιακής θα γίνει θεωρητική παρουσίαση, αρχικά της OpenCL, στην συνέχεια περιγραφή του AparAPI framework με έμφαση στην περιγραφή τόσο των πλεονεκτημάτων όσο και των περιορισμών που παρέχει λόγω του higher-level programming σε σχέση με τον προγραμματισμό απευθείας σε OpenCL. Τέλος, θα αναπτυχθούν και μικρές εφαρμογές, παραδείγματα που θα συμπληρώνουν το θεωρητικό τμήμα.
Στέργιος Παπαδημητρίου
email: sterg@teiemt.gr