Google Chrome : Μια πιο τεχνολογική ματιά

Δοκίμασα και εγώ τον νέο open-source browser της Google, τον Chrome, και προσωπικά με εντυπωσίασε! Ακόμα και στην beta έκδοση, ο Chrome είναι πάρα πολύ γρήγορος, κάτι που έπρεπε να δω με τα ίδια μου τα μάτια, μιας και δεν πιστεύω ποτέ ούτε τα fanboys, ούτε τις υπερβολές των επίσημων κατασκευαστών. Δεν θα μπω στο τρυπάκι του να (αντι)γράψω για μια ακόμα φορά τα χαρακτηριστικά του, τα οποία είναι πραγματικά πολλά και αξιόλογα (δείτε και τα video που τα παρουσιάζουν, είναι πολύ μικρά και αξιόλογα), ωστόσο θα σταθώ σε μερικά σημεία που θα απασχολήσουν στο μέλλον τους πιο έμπειρους χρήστες και επαγγελματίες.

Το πρώτο και σημαντικότερο είναι πως ο Chrome χρησιμοποιεί το Webkit για μηχανή rendering. Προς το παρών η Google δηλώνει πως όποιο site εμφανίζεται σωστά σε Safari (ο οποίος στηρίζεται και αυτός στο Webkit) θα εμφανίζεται σωστά και στον Chrome. Με λίγα λόγια αυτήν την στιγμή οι δύο browsers έχουν κατά κάποιον τρόπο “συμβατή” version του Webkit, ωστόσο κανείς δεν ξέρει εάν η Google ή η Apple θα κρατήσουν αυτήν την συμβατότητα…

Το δεύτερο σημαντικό στοιχείο του browser είναι η ολοκαίνουργια Javascript engine που χρησιμοποιεί, η V8! Πραγματικά δείχνει πολύ γρήγορη, ενώ περνάει και με 100% επιτυχία το ACID2 test (στο 3 θέλει λίγο δουλειά ακόμα). Γενικά πιστεύω πως η αγορά χρειαζόταν μια καινούργια και γρήγορη Javascript engine, ενώ το γεγονός ότι και αυτή είναι open source την κάνει ακόμα πιο σημαντική.

Ένα άλλο σημείο που κάνει τον Chrome να ξεχωρίζει από τους άλλους browsers, είναι η ενσωμάτωση του Google Gears μέσα στον ίδιο τον browser (δεν χρειάζεται να εγκαταστήσετε κάποιο plug in). Αυτό αλλάζει πολλά δεδομένα για τους developers που θέλουν να αναπτύξουν εφαρμογές με επιπλέον δυνατότητες, πέρα από τις κλασικές τεχνολογίες. Μιλάμε για φοβερές δυνατότητες όπως local server μέσα στον browser (ο browser με λίγα λόγια θα είναι και client και server !!!), local database/SQLite και πολλά άλλα καλούδια!!! Σκεφτείτε πόσα επιπλέον features μπορεί να αποκτήσει οποιοδήποτε site/web application, γνωρίζοντας πως οι χρήστες του χρησιμοποιούν τον συγκεκριμένο browser!

Αν και δεν σχολιάστηκε όσο θα έπρεπε, ο Chrome χτυπάει, και μάλιστα πολύ δυνατά, άλλο ένα προϊόν της Mozilla – πέρα του Firefox – το Mozilla Prism (είχα γράψει και παλιότερα γι αυτό). Με μία κίνηση λοιπόν μπορείτε να δημιουργήσετε application shortcuts (έτσι τα ονομάζει τουλάχιστον), τα οποία με την βοήθεια του browser και των χαρακτηριστικών του (Gears, κτλ.) μπορούν να λειτουργήσουν σαν RIA εφαρμογές! Ακριβώς ότι κάνει το Prism με την Gecko rendering engine, μόνο που όλα γίνονται πιο εύκολα και γρήγορα!

Τέλος, για εμάς τους developers, ο Chrome διαθέτει 2 πολύ ενδιαφέροντα εγαλειάκια, το Web Inspector και το JavaScript Debugger (έχω την αίσθηση πως είναι τα κλασικά web tools έρχονται με το Webkit), αλλά τίποτα παραπάνω προς το παρόν (ξεχάστε το Firebug δηλαδή)… Είναι πολύ νωρίς ακόμα για να ζητάω add-ons, ιδιαίτερα τέτοιου επιπέδου, ωστόσο έχω την αίσθηση πως θα φτιαχτούν γρήγορα πολλά και ποιοτικά add-ons για τον browser. Μην ξεχνάτε πως τα πάντα είναι open source! Τα πιο ανήσυχα μυαλά μπορούν να ρίξουν και μια ματιά στο επίσημο FAQ των web developers το οποίο θα τους λύσει αρκετές απορίες για τον browser και τις παραξενιές του.

Μετά από μία ολόκληρη μέρα με τον Chrome λοιπόν, δηλώνω fan του στο κομμάτι του browsing, ωστόσο μερικά add-on του Firefox (Firebug, FireShot, Web Developer Bar, Delicious Bookmarks και διάφορα άλλα μικρότερης σημασίας), με αναγκάζουν να κρατάω τον Firefox ως default browser. Θα περιμένω λοιπόν ακόμα να δω τι add ons θα δημιουργηθούν για τον νέο browser, και θα ξανασκεφτώ σοβαρά το θέμα switching, ωστόσο εάν ψάχνεται έναν γρήγορο browser μόνο για surfing, κατεβάστε και χρησιμοποιήστε άφοβα τον Chrome!

Το WebKit είναι η πρώτη rendering engine που υποστιρίζει client-side database αποθήκευση!

Πραγματικά δεν μπορώ να καταλάβω γιατί αυτή η είδηση δεν πήρε τις διαστάσεις που θα έπρεπε, μιας και την θεωρώ εξαιρετικά σημαντική, τόσο για την εξέλιξη του internet όσο και των εφαρμογών του! Το WebKit λοιπόν, η μηχανή rendering που κρύβεται πίσω από πολλούς browsers, όπως Safari και Konqueror, είναι πρώτη μηχανή rendering που θα υποστηρίξει HTML5 client-side database αποθήκευση. Αυτό με πολύ απλά λόγια σημαίνει πως οι browsers που βασίζονται στο WebKit, θα έχουν την δυνατότητα database αποθήκευσης στην client-side (browser) μεριά! Το συγκεκριμένο feature θα δώσει άπειρες επιπλέον δυνατότητες και προοπτικές στους developers οι οποίοι θα έχουν στην διάθεση τους ένα ακόμη χαρακτηριστικό, που μέχρι τώρα δεν υπήρχε και φυσικά περιόριζε πολύ το web σαν πλατφόρμα εφαρμογών. Όπως όλα δείχνουν οι browser θα εξελιχθούν στην μία και μοναδική εφαρμογή που θα χρειάζεται ο μέσος χρήστης, μιας και σιγά-σιγά μετατρέπονται σε υπέρ-API για όλες τις κατηγορίες εφαρμογών.

Είμαι περίεργος να δω την απάντηση της Mozilla με την Gecko rendering engine, καθώς και της Opera στο εν λόγω θέμα (η Microsoft προβλέπω να αργεί πολύ ακόμα). Το μόνο που εύχομαι είναι να ακολουθήσουν όλοι τα επίσημα standards έτσι ώστε να μην έχουμε browser-wars 2!