Java5 vs Java6
Η Java είναι μία από τις πιο ευρέως χρησιμοποιούμενες αντικειμενοστρεφείς γλώσσες προγραμματισμού, η οποία χρησιμοποιείται από την ανάπτυξη λογισμικού έως την ανάπτυξη ιστού σήμερα. Είναι μια γλώσσα προγραμματισμού γενικής χρήσης και ταυτόχρονης χρήσης. Αναπτύχθηκε αρχικά από τη Sun Microsystems το 1995. Ο James Gosling είναι ο πατέρας της γλώσσας προγραμματισμού Java. Η Oracle Corporation κατέχει πλέον την Java (μετά την αγορά της Sun Microsystems πρόσφατα). Η Java είναι μια ισχυρά πληκτρολογημένη γλώσσα που υποστηρίζει μια σειρά από πλατφόρμες από Windows έως UNIX. Η Java είναι αδειοδοτημένη από GNU General Public License. Από την αρχική του κυκλοφορία το 1995 (Java 1.0), έχει αναπτυχθεί και έχει γίνει η κυρίαρχη γλώσσα ανάπτυξης για την ανάπτυξη εφαρμογών που βασίζονται στο διαδίκτυο. Η Java 6 είναι η τρέχουσα σταθερή έκδοση, ενώ η Java 5 είναι η προηγούμενη έκδοση.
Java5
Java 5 (επίσης γνωστή ως Java Standard Edition 5.0 ή J2SE 5 ή J2SE 1.5), με την κωδική ονομασία Tiger, κυκλοφόρησε τον Σεπτέμβριο του 2004. Η Java 5 έχει περάσει τη διάρκεια ζωής της και η υποστήριξη της Sun για αυτήν έληξε τον Νοέμβριο, 2009. Είχε 3200+ κλάσεις και διεπαφές. Η Java 5 εισήγαγε πολλές σημαντικές ενημερώσεις, όπως βελτιώσεις γλώσσας (δηλαδή Σχολιασμοί, Γενικά, Autoboxing και βελτιωμένη σύνταξη για βρόχο) μεταξύ πολλών άλλων. Ο σχολιασμός είναι ένας μηχανισμός για την προσθήκη ετικετών σε τάξεις με μεταδεδομένα, έτσι ώστε να μπορούν να χρησιμοποιηθούν από προγράμματα με επίγνωση μεταδεδομένων. Τα Generics είναι ένας μηχανισμός καθορισμού τύπων για αντικείμενα που ανήκουν σε συλλογές, όπως Arraylists, έτσι ώστε η ασφάλεια τύπων να είναι εγγυημένη κατά το χρόνο μεταγλώττισης. Το Autoboxing επιτρέπει τις αυτόματες μετατροπές μεταξύ πρωτόγονων τύπων (π.χ. int) και τύπων περιτυλίγματος (π.χ. Ακέραιος). Η βελτιωμένη σύνταξη για τον βρόχο περιλαμβάνει τις βελτιώσεις για κάθε βρόχο για τη συγκριτικά εύκολη διέλευση των στοιχείων του πίνακα ή των συλλογών.
Java6
Java 6 (επίσης γνωστή ως Java Standard Edition 6.0 ή Java SE 6 ή Java 1.6), με την κωδική ονομασία Mustang, κυκλοφόρησε τον Δεκέμβριο του 2006. Η τρέχουσα αναθεώρηση είναι η Ενημέρωση 26, η οποία κυκλοφόρησε τον Ιούνιο του 2011. έχει 3700+ κλάσεις και διεπαφές. Επικεντρώνεται σε νέες προδιαγραφές και API, όπως XML, Υπηρεσίες Web, JDBC έκδοση 4.0, προγραμματισμό βασισμένο σε σχολιασμούς, API για μεταγλωττιστή Java και GUI πελάτη εφαρμογών. Επίσης, η υποστήριξη για παλαιότερη έκδοση των Windows (σειρά Win9x) θα καταργηθεί ξεκινώντας από την Ενημέρωση 7.
Ποια είναι η διαφορά μεταξύ Java5 και Java6;
Η Java 6 είναι η τρέχουσα σταθερή έκδοση της γλώσσας προγραμματισμού Java, ενώ η Java 5 είναι η προηγούμενη έκδοση. Το Java 5 έχει περάσει επίσημα ο χρόνος ζωής του και δεν υποστηρίζεται πλέον από τη Sun. Παρόλο που η Java 5 πρόσθεσε πολλές σημαντικές αλλαγές (όπως το Autobxing) στη γλώσσα, η Java 6 προσθέτει επιπλέον πιο χρήσιμες λειτουργίες. Συγκεκριμένα, σε αντίθεση με την Java 5, η οποία επικεντρώθηκε στην προσθήκη/βελτίωση χαρακτηριστικών γλώσσας (σύνταξης), η Java 6 πρόσθεσε ένα ευρύ φάσμα βελτιώσεων στην υποδομή της γλώσσας Java. Παρόλο που η Java 5 εισήγαγε τους σχολιασμούς, η Java 6 παρουσίασε πρόσθετους τύπους σχολιασμών και API για την επεξεργασία σχολιασμών (π.χ. μεταδεδομένα υπηρεσιών Ιστού για την πλατφόρμα Java, Κοινοί σχολιασμοί για την πλατφόρμα Java και Pluggable Annotation Processing API).
Χάρη στο νέο API μεταγλωττιστή που προστέθηκε με την Java 6, ο μεταγλωττιστής java μπορεί πλέον να λαμβάνει ή/και να στέλνει έξοδο σε μια αφαίρεση του συστήματος αρχείων (τα προγράμματα μπορούν να καθορίσουν/επεξεργάζονται την έξοδο του μεταγλωττιστή). Επιπλέον, η Java 6 πρόσθεσε βελτιώσεις στις δυνατότητες GUI των εφαρμογών σε AWT (ταχύτερες οθόνες εκτόξευσης και υποστήριξη για δίσκο συστήματος) και SWING (καλύτερο drag-and-drop, υποστήριξη προσαρμογής διατάξεων, βελτιώσεις πολλαπλών νημάτων και δυνατότητα εγγραφής εικόνων GIF). Επιπλέον, έχουν προστεθεί αλλαγές στις προδιαγραφές του αρχείου κλάσης, συμπεριλαμβανομένου ενός πλαισίου που επιτρέπει στα προγράμματα να συνδέονται με διερμηνείς δέσμης ενεργειών και πλοήγηση προς τα πίσω σε κλάσεις συλλογής.