[Παίζει μουσική]
ROGER ZURAWICKI: Γεια σου, μου το όνομα είναι ο Roger Zurawicki,
και εγώ θα καλύπτουν Το σεμινάριο CS50 Meteor.
Meteor είναι ένα νέο πλαίσιο αφιερωμένο στο νέο είδος του ιστού,
δεν είναι η PHP υποβολής αιτήσεων εμπρός και πίσω είδος
του web είδαμε στο σύνολο ρΗΡΡ, αλλά η πιο δυναμική JavaScript
τμήματα του ιστού.
Πράγματα που μπορεί να κάνει Meteor περιλαμβάνει τη Ζωντανή Ενημέρωση
και αμέσως επικοινωνία μεταξύ των χρηστών του στην ίδια ιστοσελίδα.
>> Γι 'αυτό το σεμινάριο, έχουμε κώδικα που φιλοξενείται στο GitHub μου.
Μπορείτε να πάτε σε αυτό το URL και να το κατεβάσετε.
Εάν ξέρετε πώς να χρησιμοποιήσετε το Git, μπορείτε να κλωνοποιήσουν το αποθετήριο.
Αν δεν ξέρετε πώς να χρησιμοποιήσετε GIT ή δεν έχουν χρησιμοποιηθεί GitHub,
ότι είναι εντελώς καλά.
Θα σας δείξω πραγματικά γρήγορα πώς μπορούμε να πάμε στο GitHub,
και υπάρχει μια επιλογή για να κατεβάσετε ένα zip δικαίωμα εκεί.
Μόλις κατεβάσετε αυτού του καταλόγου, μπορείτε να ξεκινήσετε να παίζετε με τον κωδικό μας.
>> Περισσότερες πληροφορίες σχετικά με Meteor μπορούν να βρεθούν στο meteor.com.
Στο φάκελο Σεμινάριο, εγώ πραγματικά Ορισμένα σχέδια Meteor μπορούμε να χρησιμοποιήσουμε.
Έναν από τους φακέλους που έχουμε σε μας σχέδιο σεμιναρίου είναι η todos app.
Έτσι, αν πάω εγώ σε αυτό, έχουν εγκατασταθεί Meteor.
Έτσι, για να το τρέξει, απλά πρέπει να πληκτρολογήσετε Meteor, και μετεωριτών θα εγκαταστήσει.
Όπως μπορείτε να δείτε, θα πρέπει να βεβαιωθείτε ότι θα εγκαταστήσει Meteor.
Έτσι, είμαι απλώς πρόκειται να να τρέξει για μια ακόμη φορά
για να βεβαιωθείτε ότι Meteor έχει εγκατασταθεί σωστά.
>> Ενώ έχω Meteor εγκατάσταση, μπορώ να σας δείξω
μερικές ζωντανές επιδείξεις των τόπων Meteor θα ζουν αυτή τη στιγμή στο διαδίκτυο.
Έχω ένα demo του app μας.
Μπορείτε να έχετε πρόσβαση στην παρακάτω διεύθυνση URL.
Αυτό είναι το app για να το κάνουμε αυτό έχουν στον κατάλογο του σεμιναρίου μας.
Η διεύθυνση URL για αυτό είναι rozu-rabbit.meteor.com.
Θα δείτε ότι θα είναι πράγματι Meteor φιλοξενήσει έργα Meteor σας για δωρεάν.
Και στο τέλος του σεμιναρίου, θα είστε σε θέση να το κάνουμε αυτό, καθώς και.
>> Αυτή είναι μια να κάνει τον κατάλογο app.
Και μπορείτε να συνδεθείτε, να δημιουργήσουν λογαριασμούς, και προσθέτουν καθήκοντα.
Μπορείτε να δημιουργήσετε ένα λογαριασμό, όπως έτσι.
Και τώρα, από τη στιγμή έχετε ένα λογαριασμού, μπορείτε να προσθέσετε εργασίες.
Για παράδειγμα, ένα από τα καθήκοντα Ι μπορεί να χρειαστεί να πάτε να μαζέψετε ρούχα μου.
Και αν είστε σε αυτό σε απευθείας σύνδεση περιοχή, θα
πραγματικά να δείτε αυτό το καθήκον υπολογιστή σας σε πραγματικό χρόνο.
>> Μπορώ να σας δείξω ένα γρήγορο demo από αυτό με το άνοιγμα Rozu-κουνέλι
σε άλλη καρτέλα με την ίδια διεύθυνση URL.
Και βλέπουμε ότι τα ίδια δεδομένα έρχεται.
Μπορούμε επίσης να τρέξει σε ένα διαφορετικό πρόγραμμα περιήγησης.
Πες μου τρέχει στο Safari.
Με αυτόν τον τρόπο δεν είμαστε συνδεδεμένοι.
Έτσι έχουμε την ίδια Meteor app, και τη στιγμή που θα φορτώνει,
θα δούμε τα ίδια δεδομένα κάναμε και στο πρώτο.
Όπως μπορείτε να δείτε, δεν είμαι συνδεδεμένος εδώ.
Και όταν τα δεδομένα ελέγχους ακροατήριο, ενημερώνει σχετικά με όλα τα προγράμματα περιήγησης
ταυτόχρονα.
Αυτό είναι ένα από τα πραγματικά δροσερά χαρακτηριστικά γνωρίσματα για μετεωρίτη.
Με σχεδόν καμία εργασία, έχουν μια ζωντανή ενημέρωση app
ότι οι αλλαγές σε όλους συσκευές σας σε μία φορά.
>> Εάν ελέγξετε εγώ το πλαίσιο ελέγχου εδώ κατά τη γνώμη μου να κάνουμε λίστα, θα έχουμε,
σε άλλο πρόγραμμα περιήγησης Chrome μου, το στοιχείο ελέγχεται μακριά.
Και αυτό συμβαίνει ακαριαία.
Εντάξει.
Έτσι μοιάζει Meteor εγκατάσταση είναι έτοιμη τώρα.
Έτσι, τώρα ας πάμε πίσω στο Todos app και να τρέξει αυτό σε τοπικό επίπεδο.
>> Εάν έχετε ένα έργο Meteor, μπορείτε να απλά τρέξτε με το μετεωρίτη εντολή.
Μόλις το κάνετε αυτό, Meteor Θα κάνετε κάποια προετοιμασία
για να βεβαιωθείτε ότι όλα κωδικός σας είναι υπό έλεγχο.
Και τότε θα σας πω ότι η έργο είναι έτοιμο να σερβιριστεί.
Ίσως χρειαστεί να επιτρέψουν σας firewall, αν μπλοκ του υπολογιστή σας.
>> Έτσι, αυτό που Meteor μου λέει αυτή τη στιγμή είναι ότι σε αυτό το δικτυακό τόπο
τοπικών στον υπολογιστή μου, μπορώ να δω τι είναι αυτό το σχέδιο μετεωριτών.
Σημειώστε ότι αυτή τη στιγμή, το app μου είναι δεν έχει πρόσβαση στο διαδίκτυο.
Θα καλύψουμε το πώς να φέρει Μετέωρο σας app σε μια ζωντανή περιοχή λίγο αργότερα.
Έτσι, είμαι απλώς πρόκειται να το αντιγράψετε URL τώρα και πηγαίνετε στο Google Chrome.
>> Και αυτό είναι το να κάνουμε λίστα από το παράδειγμα.
Μπορείτε να δείτε αυτές σε εφαρμογή λίγες περισσότερες δυνατότητες εδώ.
Έχουμε διαφορετικές καρτέλες, εμείς έχουν τα ίδια χαρακτηριστικά του λογαριασμού,
και μπορούμε να προσθέσουμε νέες λίστες.
Τώρα, ένα από τα πραγματικά δροσερό χαρακτηριστικό γνώρισμα για Meteor
είναι ότι όχι μόνο μπορεί αυτό εργάζονται στον web browser σας,
αλλά μπορείτε επίσης να δημιουργήσετε μητρική iPhone και Android
εφαρμογές μέσω ενός εργαλείου που ονομάζεται PhoneGap.
>> Έτσι, ορισμένα έργα θα έρθει προ-ρυθμισμένες για τρέξιμο
στο iOS, όπως αυτό todos app.
Έτσι, το μόνο που χρειάζεται να κάνετε για να τρέξει στο iOS είναι ο τύπος μετεωριτών, τρέχει, και στη συνέχεια το iOS.
Και όταν το κάνω αυτό, Meteor θα προετοιμάσει ξανά το πακέτο.
Και τότε, όταν θα είναι έτοιμη, αυτό θα φορτώσει το προσομοιωτή του iOS για τις διαταγές μου.
Σημείωση Μπορείτε να εκτελέσετε μόνο εφαρμογές iOS εάν έχετε έναν υπολογιστή Mac.
Μπορείτε να εκτελέσετε τις εφαρμογές σας Android σε όλες τις πλατφόρμες.
>> Έτσι, τώρα μπορείτε να δείτε ότι το iPhone μου προσομοιωτή ήρθε στην οθόνη μου.
Και ακριβώς σε μια στιγμή, αυτό θα φορτώσει με το app.
Αν κάνουμε απλά ένα κομμάτι μικρότερες για να χωρέσει στην οθόνη,
βλέπουμε έχουμε το iPhone app μας.
Και ακριβώς γι 'αυτό δεν κάνουμε μπερδεύονται, ας κάνουμε
βέβαιος ότι είμαστε στο ίδιο ιστοσελίδα, ο τοπικός κεντρικός 3000.
>> Έτσι, εδώ είναι ένα παράδειγμα του app Meteor έχω,
η εφαρμογή todos, τρέχει τόσο σε ένα τηλέφωνο και σε ένα πρόγραμμα περιήγησης στο web.
Και όταν μπορώ να αλλάξω τα πράγματα στο πρόγραμμα περιήγησης στο Web,
πηγαίνει αμέσως στο τηλέφωνο.
Και μπορώ να διαγράψει κάτι στο τηλέφωνο, και αλλάζει το πρόγραμμα περιήγησης στο web.
>> Τώρα, κανονικά να δημιουργηθούν μητρική τηλέφωνο app για iOS ή Android,
θα πρέπει να γνωρίζετε είτε Java ή Στόχος Γ Η τεχνολογία χρησιμοποιεί Meteor
να επιτρέψει JavaScript για να λειτουργήσει ως app σας ονομάζεται PhoneGap.
Τι app σας, κατ 'ουσίαν είναι είναι ένας web browser.
Και Meteor χειρίζεται όλα τα μέρη που εμπλέκονται δύσκολο
για την άσκηση ότι το πρόγραμμα περιήγησης στο Web για να iPhone ή Android συσκευή σας.
Μπορείτε να δείτε ότι η διεπαφή χρήστη είναι ομαλή,
και αυτό φαίνεται και αισθάνεται πολύ πολύ σαν μια μητρική app.
Παρατηρήστε ότι αν πάω στο σπίτι οθόνη τώρα, θα ήθελα επίσης να πάρετε μια εικόνα.
Αυτό δεν είναι ένα δικτυακό τόπο, όπως θα βρίσκατε στο Safari.
Αυτό είναι το δικό του app.
Μπορείτε να εγκαταστήσετε και διαγράψετε αν θέλετε.
>> Μπορούμε να σας δείξουμε σύντομα ποιος είναι ο κωδικός για αυτό το είδος της todos app μοιάζει.
Αν κοιτάξετε στο φάκελο todos, θα δείτε ότι υπάρχουν πολλοί φάκελοι.
Αλλά κατά τη διάρκεια του σεμιναρίου, θα
καταλαβαίνουν τι κάθε φάκελο χρησιμοποιείται για.
Ας πάμε στο τερματικό έτσι μπορεί να δει τα αρχεία λίγο καλύτερα.
>> Πάω να πατήσετε Control C για να σταματήσετε τον εξυπηρετητή,
και τώρα είμαι πίσω στο Todos app.
Έχω διαφορετικούς φακέλους εδώ, όπως το φάκελο του πελάτη, ο φάκελος του διακομιστή.
Και αυτοί οι φάκελοι απλά σημαίνει ότι τα πάντα στο φάκελο του πελάτη
εκτελείται στον web browser σας.
Τα πάντα σε ένα φάκελο στο διακομιστή παίρνει εκτελείται σε ένα διακομιστή.
>> Αυτό που θέλω να επισημάνω έξω είναι ότι αυτό που είχαμε
όταν είχαμε το τηλέφωνό μας λειτουργία και φυλλομετρητή μας, αυτά ήταν πελάτες.
Αλλά τι τρέχει σε ένα τερματικό, αυτός είναι ο διακομιστής.
Έχουμε άλλους φακέλους, όπως lib, η οποία είναι ο κωδικός της βιβλιοθήκης,
σαν βοηθός σας λειτουργίες, το οποίο μπορείτε να
χρησιμοποιούν τόσο τον πελάτη και του διακομιστή.
Και τότε έχετε ένα κοινό φάκελο και τους πόρους
φάκελο που απαιτούνται για να πάρει τις εικόνες σας και άλλα CSS φορτωθεί.
>> Εάν έχετε εγκαταστήσει Meteor, εμείς θα συνεχίστε με το φροντιστήριο για μετεωρίτη.
Μπορείτε να πάτε σε αυτό το URL, meteor.com/install,
για να πάρει τη γραμμή εντολών που θα που έδειξε ότι εγκαθιστά Meteor.
Θα περάσει από την πρώτη Λίγα βήματα για να πάρετε μια καλύτερη
αισθάνονται για το πώς να εγκαταστήσετε το μετεωρίτη.
>> Αλλά πρώτα, νομίζω ότι είναι σημαντικό το γεγονός ότι εξετάζουμε λίγο το JavaScript.
Για να σας δείξω μερικά παραδείγματα για το πώς γνώσεις μας C μπορεί να μεταφραστεί
προς το JavaScript, έχω δημιούργησε μερικά παραδείγματα.
Είναι στον κατάλογο JS.
Έτσι, αν τα σεμινάρια σε φάκελο που Κοιτάξτε, υπάρχει ένα φάκελο που ονομάζεται JS.
Και εδώ, έχουμε μερικά παραδείγματα.
>> Ας ανοίξει το πρώτο παράδειγμα και να δείτε πολύ γρήγορα.
Αυτό που βλέπουμε είναι στάνταρ σας Hello World εντολή.
Θα παρατηρήσετε σε C που εσείς έχουν αρκετές γραμμές.
Και όπως γνωρίζετε CS50 φοιτητές, χρειαζόμαστε μια κύρια λειτουργία,
και πρέπει να περιλαμβάνει το πρότυπο Βιβλιοθήκη I / O, για να καλέσετε printf.
>> Ας δούμε πώς συγκρίνει το JavaScript.
Πάω να ανοίξει ex1.js.
Σχολίασε έξω είναι αυτό το Ο κώδικας θα μοιάζουν,
και η κάτω γραμμή είναι όλα θα πρέπει να εκτελέσετε στον κόμβο.
Δεν χρειάζεστε μια κύρια λειτουργία, θα Δεν χρειάζεται να συμπεριλάβετε όλα τα αρχεία,
και δεν χρειάζεται να επιστρέψουν.
Απλά καλέστε console.log.
Αυτό είναι το ισοδύναμο της printf σας.
>> Και παίρνει το ίδιο επιχειρήματα printf θα.
Και για να το τρέξει, αντί να τρέχει να EX1,
θα καλέσει μόνο ex1.js. Κόμβος
Μπορείτε να γράψετε Κόμβος και, στη συνέχεια, το αρχείο, και θα εκκινήσει από αυτό.
Δεν έχει πάρει καταρτίζονται.
Η JavaScript είναι μια ερμηνευμένη γλώσσα.
Έτσι δεν χρειάζεται να είναι καταρτίζονται προτού να τρέξει.
Αν ήθελα να τρέξει ex1.c, Πρέπει να το κάνει την πρώτη,
και στη συνέχεια να εκτελέσετε το εκτελέσιμο για να πάρει το ίδιο αποτέλεσμα.
>> Ας καλύψει γρήγορα κάποια άλλες έννοιες JavaScript.
Ας δούμε το παράδειγμα δύο.
Σε ex2.js, σε ex2.c, μπορούμε βλέπουμε ότι έχουμε κάποιο κώδικα.
Επιτρέψτε μου να πάω γρήγορα να ένα καλύτερο επεξεργαστή κειμένου
ότι θα δείξει αυτά νέες γραμμές είναι λίγο καλύτερα.
Εντάξει.
Εδώ έχουμε το παράδειγμα 2.c.
Εδώ έχουμε διαφορετικούς τύπους ότι είμαστε η εκτύπωση.
Και όπως γνωρίζουμε, printf παίρνει διαφορετικό ποσοστό επιχειρήματα
να έχουν πρόσβαση σε διαφορετικά κομμάτια των δεδομένων.
Αν θέλετε να εκτυπώσετε ένα string, καλούμε% s.
Αν θέλουμε να καλέσουμε ένα πλωτό αριθμός σημείο, καλέσαμε% f.
Και δεν υπάρχει εύκολος τρόπος για να καλέσετε ένα Λογικό με αληθινή ή ψεύτικη αξία του.
Αλλά αν χρησιμοποιείτε% d, μπορείτε να πάρετε 0 ή το 1 για ψευδή και αληθινή.
>> JavaScript είναι λίγο καλύτερο για εμάς.
Στο JavaScript, ας ρίξουμε μια ματιά σε λίγους διαφορές που έχουμε σε αυτό το αρχείο.
Κατ 'αρχάς, θα παρατηρήσετε ότι σε C θα πρέπει να προετοιμάσει κάθε μεταβλητή με έναν τύπο.
S είναι ένα αστέρι ΧΑΡ.
Είναι μια σειρά, και δεν μπορεί να είναι οποιουδήποτε άλλου τύπου.
N είναι ένα πλωτήρα.
Β είναι μια Bool.
>> Αλλά σε JavaScript, υπάρχουν δυναμικοί τύποι.
Αυτό σημαίνει ότι δεν το κάνετε Πρέπει να πω το JavaScript
ποιοι τύποι μεταβλητών σας θα είναι.
Μπορείτε απλώς να πω για τη μεταβλητή var, το όνομα της μεταβλητής, και τότε η αξία του.
Έτσι, ένα var μπορεί να είναι οτιδήποτε πραγματικά.
Μπορεί να είναι ένα string.
Μπορεί να είναι ένας αριθμός κινητής υποδιαστολής.
Μπορεί να είναι ένας χαρακτήρας.
Μπορεί να είναι μια Boolean.
Και κονσόλα καταγραφής λειτουργεί λίγο διαφορετικά.
Αν θέλετε να εκτυπώσετε ένας αριθμός, σας καλούν% d.
Αλλά οι περισσότεροι τιμές μπορεί να είναι τυπωμένο ως χορδές μια χαρά.
>> Ας τρέχει αυτό σε Κόμβος για να δούμε τι θα συμβεί.
Μπορώ να καλέσω ex2.js Κόμβος, και παίρνουμε printf
με τον CS50 αξίες, Ν ως ο αριθμός κινητής υποδιαστολής,
και, στη συνέχεια, Β, ως Boolean μετατρέπεται σε μια σειρά αλήθεια.
Τι γίνεται αν κάναμε παράδειγμα 2.γ;
Λοιπόν, έχουμε ακόμα μερικά περισσότερες ενοχλήσεις με printf.
Παρατηρήστε ότι η πλωτή σημείο αριθμός πρέπει να διαμορφωθεί σωστά,
και ότι η Boolean δεν μπορεί απλά να να εμφανίζεται ως αληθείς ή ψευδείς.
Εντάξει.
Τώρα ας δούμε το παράδειγμα των τριών.
Στο παράδειγμα τρία, εμείς δείχνουμε πώς θα χρησιμοποιήσετε ένα βρόχο for.
Στην πραγματικότητα, είναι πολύ απλό.
Ένα από τα ωραία πράγματα για JavaScript είναι ότι βασίζεται Γ.
Αυτό σημαίνει ότι πολλοί από σας κώδικας θα μοιάζουν πολύ
και αισθάνομαι πάρα πολύ η ίδια.
Σε ένα για βρόχο, το μόνο πράγμα ότι έχει πραγματικά αλλάξει εδώ
είναι αντί int i, έχουμε var i.
Μπορούμε ακόμα να εκχωρήσετε σε αξία μηδέν, ελέγξτε ότι είναι μικρότερο από πέντε,
και Αυξάνονται κατά ένα με τον φορέα εκμετάλλευσης ++.
Καλούμε console.log στο i, και ότι θα μας εκτυπώσετε έναν αριθμό με κάθε γραμμή.
Ας τρέχουν πολύ γρήγορα για να δούμε τι εξόδους.
Έχουμε πάρει ένα νέο αριθμό σε κάθε γραμμή.
Ένα άλλο πράγμα που θέλετε να παρατηρήσετε με console.log
είναι εσείς δεν έχετε να γράψετε ανάστροφη ν για τη νέα γραμμή.
Console.log θα εκτυπώσει ό, τι στη δική του γραμμή.
Αυτό είναι ένα καλό χαρακτηριστικό γνώρισμα ότι το JavaScript μας δίνει.
>> Τώρα ας ανοίξει παράδειγμα τέσσερα.
Στο παράδειγμα τέσσερα, πρώτα στο Ο, ζητούμε μερικές λειτουργίες.
Σημειώστε ότι θα πρέπει να δηλώσει το λειτουργίες πριν τα χρησιμοποιήσετε σε κύρια.
Αν είχαμε κύρια πρώτη και στη συνέχεια, προσθέστε και, στη συνέχεια, υψηλή, κάνουν,
κλαγγή, ή ΣΣΚ θα να μας δώσει ένα λάθος λέγοντας
ότι δεν γνωρίζει τι είναι υψηλή.
Δεν ξέρω τι είναι πρόσθετο.
Έτσι, στη C, θα πρέπει να είναι επιλεκτικοί σχετικά με το σειρά με την οποία θα καλούν τις λειτουργίες σας.
>> Ας δούμε πώς μπορείτε να το κάνετε αυτό σε JavaScript.
Έχουμε διαφορετικά αρχεία, επειδή εκεί είναι μερικοί διαφορετικοί τρόποι να γίνει αυτό.
Ένας τρόπος είναι λίγο πολύ μια άμεση μετάφραση.
Επειδή οι λειτουργίες σε C επιστρέψετε τα είδη, και JavaScript
πραγματικά δεν ξέρω ή φροντίδα σχετικά με το τι τύπο που επιστρέφουν,
δεν γράφετε έναν τύπο.
Αντ 'αυτού, το μόνο που χρειάζεται να γράψει λειτουργία,
και τα πάντα είναι αρκετά πολύ η ίδια όπως πριν.
>> Όταν έχετε μια μεταβλητή, όπως στο προσθέσετε, εμείς απλά πρέπει να γράψετε x και y.
Δεν χρειάζεται να πούμε το x είναι int.
Δεν χρειάζεται να πούμε y είναι ένας int.
Επιστρέφουμε με την ίδια σύνταξη.
Για υψηλή, εμείς να το δηλώσει με λειτουργεί αντί του κενού.
Σημειώστε ότι αν είναι άκυρη ή μη κενό,
Τα πάντα για την ίδια λειτουργία.
Και εμείς απλά δεν βάζουν οτιδήποτε σε παρενθέσεις,
και μοιάζει πολύ με τον κωδικό C.
Και παρακάτω, μπορούμε να το ονομάσουμε παρακάτω.
>> Αν κοιτάξουμε το παράδειγμα 4β, παρατηρούμε ότι έχω αλλάξει μερικά πράγματα.
Το μόνο πράγμα που έχω αλλάξει πραγματικά όμως είναι η σειρά.
Έχουμε το ίδιο λειτουργίες, αλλά τώρα είναι
δηλώνεται μετά από όπου και αν χρησιμοποιούνται σε console.log και υψηλός στις γραμμές 18, 19.
Αν το κάνατε αυτό σε C, κάνει θα ήταν να ρίξει ένα λάθος.
Εδώ, αυτό λειτουργεί μια χαρά.
Και μπορώ να το δείξω αυτό σε σας από καλώντας Κόμβος για παράδειγμα 4β.
>> Ένας άλλος τρόπος που μπορούμε να αποκαλέσουμε λειτουργίες είναι με την εξοικονόμηση λειτουργεί ως μεταβλητές.
Όπως είπα, μια μεταβλητή μπορεί να έχει οποιοδήποτε τύπο.
Ένας από τους τύπους μια μεταβλητή μπορεί να είναι μια λειτουργία.
Έτσι, αν κοιτάξουμε το παράδειγμα 4γ, τι έχω αλλάξει
εδώ είναι var προσθέσετε αντί του προσθέσετε λειτουργία.
Και τώρα να προσθέσετε ισούται με μια λειτουργία.
Η λειτουργία αυτή εδώ είναι ανώνυμο.
Δεν έχει όνομα, γι 'αυτό ακριβώς λειτουργία και, στη συνέχεια, οι παρενθέσεις.
Η σύνταξη μετά από αυτό δεν αλλάζει, αλλά σας
χρειάζεται να έχετε κατά νου ότι έχετε μια μεταβλητή που είστε
αποθήκευση της λειτουργίας σε πρόσθετο, και μεταβλητή που είστε αποθήκευση σε υψηλά επίπεδα.
>> Επειδή προσθέσετε και υψηλά είναι τώρα μεταβλητές και δεν λειτουργεί, κάτι αλλάζει.
Αυτό είναι ένα κοινό σφάλμα που βλέπω σε πολλοί JavaScripts των ανθρώπων,
και κάτι που πρέπει να θυμάστε.
Όταν τρέχω αυτό, ας δούμε τι θα συμβεί.
Παίρνω ένα λάθος.
Είναι λέγοντας απροσδιόριστο σε αυτό το σημείο.
Έτσι είναι το ρητό δεν ξέρω τι είναι να προσθέσετε.
>> Επειδή τώρα να προσθέσετε δεν είναι ένα λειτουργία, προσθέστε είναι μια μεταβλητή.
Και αν δεν έχουν όντως δοθεί προσθέστε μια τιμή ακόμα όταν το χρησιμοποιείται.
Αυτό μας φέρνει στο παράδειγμα 4δ, όπου και αν θέλετε να χρησιμοποιήσετε μεταβλητές ως συναρτήσεις,
απλά πρέπει να βεβαιωθείτε ότι πάρετε την τιμή πριν από όπου και αν χρησιμοποιείται.
>> Ας προχωρήσουμε στο παράδειγμα πέντε τότε.
Εδώ, μιλάμε για structs η C. Στην C, structs
έχουν αυτή την σταθερή δομή για τους γιατί θα πρέπει να τα δηλώσουν
πριν το χρησιμοποιήσετε, και λες έχω ένα μαθητή,
και κάθε μαθητής έχει ακριβώς ένα όνομα, ένα χρόνο, το ένα φύλο.
Θα πρέπει να διαθέτει όλα αυτά.
Αυτό δεν μπορεί να έχει άλλες αξίες, και θα πρέπει να είναι ειδικοί τύποι.
>> Τότε μπορούμε να προετοιμάσει το struct σε αυτό το ωραίο σύνταξη
διότι γνωρίζει τη σειρά.
Έτσι, γνωρίζει ότι ο Roger είναι ένα όνομα.
Γνωρίζει ότι το 2016 είναι μια χρόνος και το Μ είναι ένα φύλο
επειδή είπαμε ότι αυτό κατάλογος είναι φοιτητής struct.
Και στη συνέχεια, μπορείτε να εκτυπώσετε αυτό, η πρόσβαση s.name.
Ας δούμε πώς θα μετατρέψει αυτό σε JavaScript.
Παρατηρήστε ότι το s είναι πλέον μια μεταβλητή, και δεν υπάρχει κανένας τύπος.
Είναι και πάλι μόνο ένα var.
Επειδή δεν έχει σημασία αν η τύπο της μεταβλητής αυτής είναι ένας δείκτης,
είναι ένα struct, ή οτιδήποτε άλλο.
Έχουμε μια ελαφρώς διαφορετική σύνταξη.
Αυτή η σύνταξη είναι η σύνταξη αντικείμενο.
>> Μπορεί να έχετε δει σε JSON.
JSON σημαίνει στην πραγματικότητα για το JavaScript Object Notation.
Αυτό είναι το πώς μπορείτε να ορίσετε αντικείμενα σε JavaScript.
Έχουμε ένα κλειδί, το οποίο είναι η αξία, όπως το όνομα.
Και έχουμε δώσει τιμές για η άλλη πλευρά του παχέος εντέρου.
Και ένα πράγμα που πρέπει να θυμάστε είναι να σας Δεν χρειάζεται να έχει ένα όνομα και ένα χρόνο
και των δύο φύλων για ένα αντικείμενο.
Ένα αντικείμενο μπορεί να έχει καμία τιμή.
Μπορεί να έχετε όσες θέλετε.
>> Μπορούμε να χρησιμοποιήσουμε αυτά τα αντικείμενα ακριβώς το ίδιο τρόπο που θα χρησιμοποιήσετε ένα struct, s.name.
Μπορούμε να τρέχουν πολύ γρήγορα κάνοντας κόμβο παράδειγμα 5.c.
Δεν μπορούμε πραγματικά να τρέξει ένα αρχείο C στον κόμβο.
Δεν ξέρω τι είναι C.
Ξέρει μόνο το JavaScript.
Όταν τρέχουμε τα ex5.js, παίρνουμε η τιμή, η οποία περιμέναμε.
>> Ας περάσουμε σε έξι παράδειγμα.
Εδώ θέλω μόνο να μιλήσουμε λίγο λίγο περισσότερο σχετικά με συστοιχίες JavaScript
επειδή είναι λίγο διαφορετικά από ό, τι είστε
που χρησιμοποιείται στο Γ συστοιχίες notated, όχι με τα στηρίγματα, όπως στη C,
με τα άγκιστρα, αλλά παρένθεση.
Μπορείτε να έχετε έναν άδειο πίνακα, όπως ARR στη γραμμή τέσσερα.
Μπορείτε να έχετε συστοιχίες με πολλαπλές τιμές.
Και θα έχουν πρόσβαση σε αυτά ακριβώς με τον ίδιο τρόπο σε C.
>> Μέχρι να παρατάξει επτά, τα πάντα φαίνεται αρκετά απλή.
Μια μικρή διαφορά είναι εδώ στη γραμμή 10.
Ο τρόπος που μπορείτε να πάρετε ένα μήκος ενός πίνακας είναι απλά καλώντας .length.
Μια σειρά μπορεί πραγματικά να είναι αντιμετωπίζεται σαν ένα αντικείμενο,
και το αντικείμενο αυτό έχει μια ιδιότητα μήκος ότι σας καλούν να πάρετε το μήκος του.
Σημειώστε ότι αυτό είναι διαφορετικό σε C γιατί σε C σας
Πρέπει να γνωρίζουμε το μήκος της το αντικείμενό σας μπροστά από το χρόνο.
>> Έτσι, ένα άλλο ωραίο πράγμα σχετικά με συστοιχίες είναι ότι μπορείτε να έχετε διαφορετικούς τύπους.
Αν έχετε μια σειρά σε C, υπάρχει είναι συστοιχίες από μια συγκεκριμένη τιμή,
είτε ένα δείκτη struct ή πλωτήρες ή [δεν ακούγεται].
Εδώ, μπορείτε να έχετε διαφορετικές τιμές.
Είχα πρώτα έναν αριθμό κινητής υποδιαστολής, τότε μια Boolean, τότε ένα άλλο ακέραιο.
Και στην πραγματικότητα, μπορούν να αλλάξουν τύπους πάρα πολύ.
Κοιτάξτε γραμμή 16.
Array δύο αλλάζει από το να είναι ένας αριθμός, ένας ακέραιος, σε μια σειρά.
>> Ένα άλλο καλό πράγμα για τους πίνακες είναι εδώ στη γραμμή 19, που έχουν άπειρο μέγεθος.
Μπορείτε απλά να πω ότι θέλω το εκατοστό στοιχείο που πρέπει να το string legit.
Και αυτό δεν φαίνεται να κάνει νόημα, διότι η συστοιχία μόνο
έχει χώρο για τρία στοιχεία, έτσι ώστε στο τέλος θα πρέπει να είναι δύο.
Αλλά όταν το κάνετε αυτό, ας να δούμε τι διάταξη των τριών γίνεται.
Θα τρέξει τόσο γρήγορα με κόμβο παράδειγμα six.js.
Παίρνουμε αυτό το πραγματικά μεγάλο συστοιχία, και τι συμβαίνει
είναι ότι έχουμε τα πρώτα στοιχεία και, στη συνέχεια, μια δέσμη των κενών
μέχρι να φτάσουμε εγχόρδων μας.
JavaScript συμπληρώνει το array όπως είναι απαραίτητο.
>> Ας πάμε τελικά στο τελευταίο παράδειγμα μας.
Εδώ έχουμε μια λίστα από διαφορετικούς μαθητές.
Θέλω να μιλήσω λίγο κομμάτι για μερικά ωραία πτυχές
της για βρόχους σε JavaScript.
Στην C, για βρόχους είναι το είδος του περιορίζονται.
Έχουν μια σταθερή δομή, όπου μπορείτε έχουν μια μεταβλητή, έχετε μια κατάσταση,
και, στη συνέχεια, να κάνετε κάτι στο τέλος του βρόχου.
Και φυσικά αυτό λειτουργεί σε JavaScript, όπως είδαμε στα προηγούμενα παραδείγματα.
Αλλά έχουμε επίσης καλύτερο τρόπο για να γίνει αυτό σε JavaScript.
Αυτό ονομάζεται βρόχος foreach.
>> Λυπούμαστε, ας πάμε πίσω για παράδειγμα επτά εδώ.
Μπορούμε επίσης να πούμε ενότητα είναι μια λίστα.
Έτσι, δώστε μου κάθε i ή κάθε δείκτη στον εν λόγω κατάλογο.
Στη συνέχεια, μπορούμε να πάρουμε το μαθητή με ένα απλό τηλεφώνημα στο τμήμα του i.
Έτσι, το σύνολο του κώδικα ρύθμιση Ι ίσο με το μηδέν και να διασφαλίσουμε i
είναι μικρότερο από το μήκος και προσθέτοντας μία μονάδα στο i κάθε φορά, ότι είναι
σας φροντίζει μάλλον όμορφα με αυτό το βρόχο foreach.
>> Όχι μόνο δεν βρόχους foreach εργάζονται σε λίστες ή πίνακες,
Μπορούν επίσης να εργαστούν σε αντικείμενα, η οποία είναι επίσης ωραίο.
Μπορείτε να πάρετε το όνομα του κάθε ακίνητο με ακριβώς λαμβάνοντας
ένα λεξικό ή ένα αντικείμενο, όπως το μαθητή, και, στη συνέχεια, απλά λέει να μου δώσει σε κάθε πλήκτρο.
Ένα βασικό θα είναι αυτοί ιδιότητες, το όνομα ή το σπίτι.
Έτσι τι πρόκειται να συμβεί εδώ είναι ότι θα εκτυπώσετε πρώτα το όνομα και, στη συνέχεια,
το σπίτι του κάθε μαθητή.
>> Μπορώ να τρέξω αυτό στον κόμβο πραγματικά γρήγορα για να σας δείξω.
Παίρνουμε πρώτα το στυλ C για βρόχο, όπου παίρνουμε κάθε αντικείμενο που τυπώνεται έξω.
Και στη συνέχεια, έχουμε το JavaScript στυλ, όπου μπορείτε απλά
εκτυπώσετε κάθε κλειδί και την αξία ξεχωριστά.
>> Εντάξει.
Τώρα που έχουμε καλύψει Node.js, νομίζω είμαστε έτοιμοι να ξεκινήσετε με Meteor.
Όπως είπα, Meteor έκανε σπουδαία δουλειά της γραφής κάποια έτοιμα παραδείγματα
για σας ότι μπορείτε να εξερευνήσετε μέσω του Αυτό το φροντιστήριο ή στο φάκελο του σεμιναρίου.
Αλλά εδώ θέλω να ξεκινήσουν περισσότερες από το μηδέν.
>> Ας δημιουργήσουμε ένα απλό να κάνει αίτηση.
Αυτό είναι το είδος της βάσης του τι να κάνουν αίτηση που σας έδειξα νωρίτερα είναι.
Σε αυτό το σεμινάριο, θα Θα δείτε ότι δεν υπάρχει
ένας μετεωρίτης εντολή να δημιουργήσουν δημιουργήσετε ένα νέο έργο Μετέωρο.
Θα πρέπει να καλέσετε αυτό προκειμένου για την εκτέλεση έργων Meteor, διότι
θα εκτελέσετε τις εντολές για να δημιουργήσετε το Meteor
αρχεία που είναι απαραίτητα για το έργο σας.
>> Αν πάτε στο τερματικό, μπορούμε πηγαίνετε στο φάκελο που ονομάζεται το πρώτο βήμα.
Και σε ένα στάδιο θα αντιστοιχεί με το πρώτο βήμα στο φροντιστήριο.
Ανακοίνωση υπάρχουν φάκελοι, βήμα ένα, το δεύτερο βήμα, σε όλη τη διαδρομή προς πέντε.
Και κάθε μία αντιστοιχεί σε ένα βήμα σε αυτό το σεμινάριο.
Πάω να το ανοίξετε στο πρόγραμμα επεξεργασίας κειμένου μου εδώ
έτσι μπορούμε να δούμε ένα κομμάτι από αυτό που δημιουργήθηκε.
Θα παρατηρήσετε ότι υπάρχουν είναι τέσσερα κύρια μέρη.
Υπάρχει ένας κατάλογος Meteor, .meteor.
Και ότι συνήθως Δεν χρειάζεται να αγγίξει.
Μετέωρο φροντίζει ο φάκελος, και αυτό ακριβώς
σιγουρεύεται ότι σας έργο θα λειτουργήσει σωστά.
>> Έχουμε επίσης τρία αρχεία, ένα αρχείο HTML, ένα αρχείο JavaScript, και ένα αρχείο CSS.
Ας ξεκινήσουμε με το πρώτο αρχείο HTML.
Με την πρώτη ματιά, αυτό φαίνεται σαν ένα κανονικό HTML έγγραφο.
Να σημειωθεί όμως ότι εκεί είναι μερικές διαφορές.
Ένα, αυτό δεν είναι πραγματικά ένα πλήρες έγγραφο HTML.
Είμαστε λείπουν οι ετικέτες HTML.
Αυτό είναι φυσιολογικό.
Στην Meteor, δεν είστε αναμένεται να δημιουργήσει αυτές τις ετικέτες HTML.
Αυτό κάνει για σας.
Θέλετε να begin-- αν θέλετε να δημιουργήσετε ένα δικτυακό τόπο,
το μόνο που χρειάζεστε για να ξεκινήσετε με την ετικέτα της κεφαλής,
ορίζουν ότι, και στη συνέχεια, καθορίζουν την ετικέτα του σώματος.
>> Αλλά αν παρατηρήσετε σε αυτό HTML αρχείο, έχουμε μια νέα ετικέτα.
Έχουμε την ετικέτα πρότυπο.
Αυτό δεν είναι φυσιολογικό HTML.
Αυτή είναι μια ειδική έκδοση της HTML ότι Meteor θέτει στη διάθεσή σας.
Ονομάζεται χώρο μπαρ.
Μπορείτε να ορίσετε πρότυπα τόσο λίγα ενότητες, κάτι σαν βοηθητικές λειτουργίες,
σε C ή κώδικα JavaScript.
Αυτό το πρότυπο θα έχουν ένα όνομα που ονομάζεται εργασία.
Και μπορείτε να δείτε εδώ στη γραμμή 13 που μπορείτε να καλέσετε αυτά τα πρότυπα.
Και τι Meteor θα κάνουμε είναι απλά συμπληρώστε τα καθήκοντα αυτά για εσάς.
>> Ένα άλλο πράγμα που μπορείτε να παρατηρήσετε είναι ένα λίγο διαφορετική είναι αυτή κάθε λειτουργία.
Θα πάρει ο καθένας τη μεταβλητή τα καθήκοντα και το είδος του περάσει μέσα από αυτό
σε αυτό το έχουμε βρόχο foreach είδε στο παράδειγμα επτά.
Αυτό το καθένα μπορεί να πάρει ένα λεξικό ή μια λίστα, ένα αντικείμενο ή μια λίστα,
και αυτό ακριβώς θα περάσουν από όλα τα αξίες όπως ένα βρόχο foreach θα.
Έτσι, αν έχουμε μια δέσμη των καθηκόντων, αυτό θα καλέσει το πρότυπο για κάθε εργασία.
>> Ας την εκτέλεση του έργου Meteor απλά για να δούμε ότι αυτό θα συμβεί.
Τρέχω το έργο Meteor με μόλις Meteor Meteor ή να τρέξει.
Και τώρα Meteor απλά θα χρειαστεί να προετοιμαστούν γρήγορα το έργο,
ξεκινήσει η βάση δεδομένων όπως είναι απαραίτητο, και στη συνέχεια, μετά την εφαρμογή σε τοπικό επίπεδο.
Μπορούμε να πάμε στον browser μας τώρα.
Και θα δούμε ότι έχουμε έχουν ένα πολύ απλό app.
Έτσι, αυτό που είδαμε εμφανίστηκε ήταν πραγματικά το πρώτο βήμα, το βήμα ένα αρχείο.
>> Ας προχωρήσουμε στο βήμα δύο μόνο επειδή Νομίζω ότι θα εξυπηρετούν τον ίδιο σκοπό.
Είμαι ακριβώς πρόκειται να αλλάξει στο δεύτερο στάδιο κατάλογο
και εκτελέστε ξανά Meteor έτσι μπορούμε να δούμε το πρότυπο απλά δουλεύαμε μαζί.
Ναι, μια ερώτηση;
>> ΚΟΙΝΟ: Αν παίρνουμε άδεια αρνήθηκε, είναι that-- τι είναι
κάλεσε για αυτό;
ROGER ZURAWICKI: Εάν τρέχετε Meteor τρέξιμο,
και έχετε την άδεια αρνήθηκε, κάποια από τα αρχεία σας
μπορεί να μην έχουν το δικαίωμα σύνολο άδεια.
Έτσι θα πρέπει να ελέγξετε εάν τα δικαιώματα είναι μακριά.
Θα μπορούσαν να είναι ανοικτά σε έργο Meteor σας,
ή θα μπορούσαν να είναι ανοικτά στην Meteor αρχεία τους.
>> ΚΟΙΝΟ: Αν μου το κατέβασα μόλις τώρα από GitHub σας, τότε τι πρέπει να κάνω
[Δεν ακούγεται];
>> ROGER ZURAWICKI: Εάν θέλετε για να βεβαιωθείτε ότι μπορείτε να έχετε πρόσβαση,
υπάρχει μια εντολή που μπορείτε να εκτελέσετε.
Επιτρέψτε μου να γράψω γρήγορα έξω έτσι ώστε οι άλλοι άνθρωποι μπορούν να το δουν.
Πάω να ανοίξει μια νέα καρτέλα εδώ και να πάει σε φάκελο σεμινάριο μου.
Chmod είναι η εντολή να αλλάξετε τα δικαιώματα,
και μπορείτε να πείτε r για να το κάνει αναδρομικά για κάθε αρχείο.
Και τα δικαιώματα, μπορείτε να δοκιμάσετε 0755 για να βεβαιωθείτε ότι έχετε πλήρη πρόσβαση,
και όλοι οι άλλοι μπορούν να διαβάσουν.
Και αν απλά τρέχει Αυτή η εντολή, αυτό θα κάνει
ότι οι άδειες είναι σε ελέγξτε για ολόκληρο τον κατάλογο.
Τρέξιμο ls-l μπορεί να σας δείξει το δικαιώματα σε περισσότερες λεπτομέρειες.
Αυτό φαίνεται ΟΚ.
>> Τι είναι πιο σημαντικό είναι ότι έχετε όλες τις τρεις
rwx για όλα τα αρχεία ο κατάλογος σεμινάριο.
Μήπως ότι λύσει το πρόβλημα;
>> ΚΟΙΝΟ: Λέει λείπει τηλεφωνητών [δεν ακούγεται].
[Δεν ακούγεται]
ROGER ZURAWICKI: Μπορείτε πρέπει να βεβαιωθείτε ότι έχετε
έχουν μια τελεία στο τέλος της εντολής σας.
ΚΟΙΝΟ: [δεν ακούγεται].
ROGER ZURAWICKI: Εντάξει.
Ας γρήγορα να επιστρέψετε το τοπικό κεντρικό υπολογιστή, η εφαρμογή που έχουμε.
Και θα δείτε ότι έχουμε ένα λίγες εργασίες εδώ, όπως αναμενόταν.
Έχουμε ένα σωρό CSS, η οποία δεν χρειάζεται να ανησυχούν.
Το φροντιστήριο Meteor απλά δίνει αυτό σε σας
να κάνει σας για να κάνουμε λίστα κοιτάξουμε λίγο καλύτερο από το απλό HTML.
Και έχουμε το αρχείο JavaScript, το οποίο Θα υπεισέλθω σε περισσότερες λεπτομέρειες λίγο αργότερα,
αλλά παρέχει μόνο αυτά τα καθήκοντα.
Αυτό είναι το καθήκον ενός.
Αυτό είναι το καθήκον των δύο.
Αυτό είναι το καθήκον των τριών.
Έτσι, αυτό είναι τα δεδομένα μετεωρίτη πάρει.
>> Ένα από τα όμορφα πράγματα σχετικά με μετεωριτών ότι οι αλλαγές μπορεί να συμβεί αυτόματα.
Αν ήθελα να αλλάξει η όνομα του πρώτου έργου,
γι 'αυτό θα πω αυτό δεν είναι έργο ενός, και εγώ να το αποθηκεύσετε,
στη συνέχεια, όταν θα πάω στο διαδίκτυο πρόγραμμα περιήγησης, μπορείτε να ανανεώσετε,
και λέει αυτόματα Αυτό δεν είναι καθήκον ενός.
Μπορείτε να κάνετε το ίδιο πράγμα σε οποιοδήποτε από αυτά τα αρχεία.
Κάντε μια αλλαγή, αντί να κάνουμε λίστα, θα πρέπει να μου για να κάνουμε λίστα.
>> Και ένα πράγμα που μόλις παρατηρήσει, ότι δεν είχα καν να ανανεώσετε.
Η ιδέα της δροσιστικό είναι το είδος των λυθεί για εσάς με Meteor.
Κάθε φορά που ανιχνεύει τις αλλαγές στο αρχείο, θα φορτώσει τις αλλαγές για εσάς.
Αυτό λειτουργεί σε όλα τα αρχεία, αν είναι HTML, CSS, JavaScript ή.
Για να σας δείξω τι αυτό το app θα δούμε όπως χωρίς CSS, μπορώ να αφαιρέσετε όλα.
Και όταν είναι αναγομωμένα, έχετε τώρα α δεν είναι τόσο ωραία εμφάνιση για να κάνουμε λίστα.
Ας το περιεχόμενο πίσω.
Και σίγουρα αρκετά, αυτό Ανανεώνει, και CSS μας είναι πίσω.
Μεγάλη.
>> Μπορούμε τώρα να προχωρήσουμε με το φροντιστήριο.
Ας μιλήσουμε για το δεύτερο στάδιο, τα πρότυπα.
Αυτό είναι αυτό που μόλις είδα με τις διάφορες εργασίες.
Meteor θα σας εξηγήσει τι πρότυπα και πώς αυτή η λογική λειτουργεί.
Αλλά ας δούμε τον κώδικα για να να δούμε αν μπορούμε να βγάλουμε νόημα από αυτό.
>> Σε πολύ απλές εφαρμογές, όπως αυτό που έχουμε στην απλή
να κάνουμε, το πρώτο βήμα, βήμα δύο, βήμα τρία, τέσσερα βήμα, βήμα πέντε,
δεν έχουμε κανένα φάκελο.
Δεν έχουμε το διακομιστή φάκελο ανέφερα.
Δεν έχουμε τον πελάτη φάκελο που αναφέρθηκε.
Έτσι Meteor θα τρέξει όλα τα αρχεία.
Θα είναι τόσο τρέχει από την πελάτη, τόσο στο διακομιστή.
>> Και αν θέλετε μέρη JavaScript σας κώδικα για να τρέξει μόνο για τον πελάτη,
θα πρέπει να βεβαιωθείτε ότι έχετε μια εντολή if, κάτι σαν αυτό
έχουμε στο αρχείο μας την Javascript εδώ.
Έτσι Meteor, μόνο αν είναι ο πελάτης, τότε
θέλετε να ορίσετε ένα πρότυπο βοηθός ονομάζεται καθήκοντα.
Αυτό που πραγματικά κωδικός που κάνει είναι να λέει ότι δεν υπάρχει
ένα αντικείμενο που ονομάζεται πρότυπο αυτός ο μετεωρίτης που παρέχει.
Και θα πάμε να προσθέσετε ένα βοηθό.
Βοηθοί είναι αυτά τα καθήκοντα, Αυτά τα πράγματα όπως τα καθήκοντα.
>> Θα δείτε ότι αν πάμε πίσω στο HTML αρχείο, καλέσαμε το καθένα σε εργασίες.
Καθήκοντα δεν ορίζεται στην HTML.
Είναι ορίζεται στο JavaScript.
Και Meteor πρέπει να γνωρίζει ποια καθήκοντα όταν πάμε στο JavaScript εδώ.
Καθήκοντα είναι αυτή η βοηθός.
Helper, μπορείτε να σκεφτείτε ως μια μεταβλητή εκμαγείο.
Και τι εργασίες κάνουν;
Λοιπόν, αυτή επιστρέφει τη λίστα των τιμών.
Επειδή είναι μια λίστα, μπορούμε να ονομάσουμε το καθένα σε αυτό.
Έτσι, γι 'αυτό καλούμε το καθένα σε εργασίες.
Και τώρα έχουμε καθήκον.
>> Τι κάνει το έργο να κάνω;
Λοιπόν, έχει αυτό το βέλος εδώ μετά τις αγκύλες.
Αυτό σημαίνει ότι το έργο είναι ένα πρότυπο.
Δεν είναι ένας βοηθός, όπως αυτό που μόλις είδαμε.
Είναι ένα πρότυπο που έχουμε καθορίσει.
Και όπου ορίσαμε;
Έχουμε αυτό ορίζεται κατωτέρω εδώ.
>> Όλο αυτό το πρότυπο δεν είναι να καταστήσει ένα στοιχείο της λίστας, και καλεί το κείμενο.
Τώρα, το κείμενο φαίνεται να είναι ένα βοηθός, αλλά εγώ θα σας δείξω
ότι αυτό είναι πραγματικά ακόμα ένα μέλος δεδομένων των καθηκόντων.
Όταν καλείτε το καθένα, πηγαίνει σε η δομή δεδομένων λίγο.
Όπως και τον βρόχο foreach, τώρα φαίνεται μόνο κατά το πρώτο στοιχείο στο αντικείμενο μας.
Βλέπουμε ότι το κείμενο είναι ορίζεται εδώ στο αντικείμενο μας.
Έτσι Meteor είναι έξυπνος για να ξέρω ότι μιλάμε για αυτό το κείμενο,
όχι ο βοηθός καλείται κείμενο.
Παίρνει μόνο την αξία του αυτό κειμένου εδώ και το εμφανίζει ως HTML,
και αυτό είναι το πώς τα δεδομένα πηγαίνει από τη Javascript για να το HTML.
>> Προχωρώντας όμως, σε αυτό το παράδειγμα εμείς σκληρά κωδικοποιημένες αυτές τις αξίες.
Meteor κάνει δύο πραγματικά ωραία πράγματα για εμάς.
Εκτός από τη ζωντανή ανανέωσης που έχουμε έδειξε, ότι διαχειρίζεται τη βάση δεδομένων μας.
Αν έπρεπε να συνεργαστεί με την PHP, θα έπρεπε να διαμορφώσετε το phpMyAdmin.
Θα έπρεπε να βεβαιωθείτε ότι σας τραπέζια ήταν όλα υπό έλεγχο.
Θα έπρεπε να κάνουμε πολλή δουλειά να κάνει ότι τα δεδομένα σας έχει μορφοποιηθεί σωστά,
και PHP θα μπορούσε να επικοινωνεί με αυτό.
>> Τώρα, Meteor χρησιμοποιεί ένα νέο πρότυπο.
Αυτό είναι ένα πιο σύγχρονο τρόπο του χειρισμού μιας βάσης δεδομένων.
Είναι μια τεχνολογία που ονομάζεται MongoDB.
Ακριβώς όπως σε JavaScript, είδαμε ότι δεν έχει σημασία ποιοι τύποι είχαν τα δεδομένα.
Όλα ήταν μια var.
Δεν ήταν μια charstar.
Δεν ήταν μια int.
Δεν ήταν ένα struct.
Ήταν ακριβώς αυτό var, var αυτό.
>> MongoDB εργοστασίου είδος του με τον ίδιο τρόπο.
Δεν χρειάζεται να ορίσετε τραπέζια σας.
Δεν χρειάζεται να πω ένα τραπέζι έχει ένα όνομα, το οποίο έχει ένα ενδ.
Έχει, δεν ξέρω, ένα δολάριο, το οποίο είναι ένα δεκαδικό ψηφίο.
Είναι ακριβώς αυτές οι javascript αντικείμενα, Όλες αυτές οι ποικιλίες που, κατ 'ουσίαν.
Και αυτό είναι ένα πραγματικά ισχυρό τρόπος για να πρωτότυπο app σας.
Και γι 'αυτό Meteor εκμεταλλεύεται αυτό.
>> Αν πάμε στο βήμα τρία, ας δούμε τι έχει αλλάξει.
Αν κοιτάξουμε την todos HTML, όχι πολύ.
CSS δεν έχει αλλάξει καθόλου.
Αλλά η μικρή αλλαγή που βλέπουμε σε HTML είναι αλλάξαμε τον τρόπο τα καθήκοντα ορίζεται.
Καθήκοντα είναι τώρα μια λειτουργία.
Αυτό σημαίνει ότι κάθε τη φορά θέλουμε να πάρει τις εργασίες,
θα πάμε να εκτελέσετε αυτή τη λειτουργία.
Δεν επιστρέψει το λειτουργία ως μια τιμή.
>> Meteor είναι έξυπνος για να τρέξει πραγματικά η λειτουργία για να δούμε τι μπορούμε να βγούμε.
Και επιστρέφει αυτό το πράγμα που ονομάζεται καθήκοντα.
Έχουμε καθορισμένα καθήκοντα σε μία γραμμή, και αυτό είναι μια συλλογή Mongo.
Mongo αναφέρεται σε η βάση δεδομένων Meteor χρησιμοποιεί,
και το νέο αυτό σημαίνει απλά ας κάνουμε μια νέα συλλογή, την αποκαλούν καθήκοντα.
Στην MySQL, αυτό θα ισοδυναμούσε με ψάχνει για τα πίνακα που ονομάζεται καθήκοντα.
Mongo έχει συλλογές, όχι σε πίνακες.
Έτσι, αυτό φαίνεται μόνο για εργασίες.
>> Τώρα, το πρότυπο σε μας βοηθός στο πρότυπο, όλα
πρέπει να κάνετε για να πάρετε όλα τα καθήκοντα είναι αυτή η λειτουργία, να βρουν
και αυτό το κενό τιράντες.
Αυτό είναι πιο συγκεκριμένα για σύνταξη Mongo.
Υπάρχει αφθονία των τεκμηρίωση σε απευθείας σύνδεση για το πώς
μπορείτε να καταστήσετε την αποδοτική και πραγματικά χρήσιμο Mongo ερωτήματα.
Αλλά κάτι τέτοιο είναι καλό αρκεί μόνο για την εύρεση όλων των δεδομένων.
>> Τώρα, ένα από τα ζητήματα που ενδέχεται να δείτε είναι ότι ποτέ δεν προσθέτουμε πραγματικά δεδομένα.
Έτσι τι συμβαίνει όταν εμείς λειτουργεί πραγματικά το βήμα τρία;
Ας πάμε γρήγορα σε τρίτο βήμα και να εκτελέσετε Meteor.
Παρατηρήστε ότι είχα ένα άλλο Meteor έργο τρέχει κάπου αλλού,
έτσι Meteor δεν αρέσει αυτό.
Είμαι ακριβώς πρόκειται να γρήγορα κοντά το άλλο με Meteor Ελέγχου C,
πάει σε τρίτο βήμα, και εκτελέστε ξανά Meteor.
Ανακοίνωση αυτό είναι που αρχίζει MongoDB επειδή MongoDB
είναι ένα μέρος του κάθε έργου Meteor.
>> Έτσι λέει η αίτησή μου έχει λάθη.
Αυτό είναι ένα καλό χαρακτηριστικό γνώρισμα Meteor έχει.
Κάνει βέβαιος σας HTML είναι καλά επικυρωμένες.
Ας δούμε γρήγορα γιατί αυτό θα μπορούσε να είναι.
Φαίνεται ότι έχω λάθος αντιγράψει το λάθος κώδικα HTML.
Αν μπορώ να το αποθηκεύσετε τώρα, Meteor αυτόματη επανεκκίνηση του διακομιστή,
και τώρα δεν εκτελείται η εφαρμογή, όπως αναμενόταν.
Ανακοίνωση προς το διορθώσετε αυτό, μπορείτε να εκτελέσετε μόνο το ίδιο αρχείο HTML από το βήμα δύο,
αντιγράψεις στο βήμα τρία.
>> Μπορούμε να πάμε πίσω στο τοπικό κεντρικό υπολογιστή μας.
Και τώρα βλέπουμε έχουμε μας για να κάνουμε λίστα.
Μεγάλη, αλλά είναι άδειο.
Δεν έχουμε πραγματικά οποιαδήποτε εργασίες στη βάση δεδομένων μας Mongo.
Ας μιλήσουμε για ένα μερικοί τρόποι που μπορούμε να το κάνουμε αυτό.
Αν πάμε πίσω στον τερματικό σταθμό, εμείς μπορεί να κλείσει και να τρέξει Meteor Mongo.
>> Αν είστε εξοικειωμένοι με το πώς λειτουργεί Meteor,
Αυτό δίνει πραγματικά την πρόσβαση σας για την πλήρη MongoDB για μετεωρίτη.
Σημειώστε ότι θα πρέπει να είναι σε λειτουργία Meteor πρώτα για να δουλέψει αυτό.
Έτσι, αν μπορώ να εκτελέσω αυτό σε μια νέα καρτέλα, εγώ μπορεί να πάει πίσω στον ίδιο κατάλογο.
Και τώρα Meteor δουλεύει μια χαρά.
Αυτό είναι ένα μήνυμα.
Επιτρέψτε μου να κάνω λίγο μεγαλύτερο ώστε να μπορούμε να δούμε.
Αυτό μοιάζει λίγο διαφορετικό από ό, τι ό, τι θα μπορούσε να χρησιμοποιηθεί για να σας
Δεν χρειάζεται πραγματικά να χρησιμοποιήσετε Mongo.
Το όλο θέμα μου εδώ είναι έτσι ώστε να μπορείτε να χρησιμοποιήσετε το JavaScript.
Αλλά αν είστε περίεργοι, το Mongo API δεν
χρησιμοποιήσετε τον SQL, η δομημένη γλώσσα ερωτημάτων.
Χρησιμοποιεί τη γλώσσα του ότι μοιάζει πολύ με JavaScript.
Πολύ γρήγορα, μπορούμε να βρούμε Ο πίνακας μέσω db.tasks.
Και μου λέει Αποδεικνύεται αν τρέξουμε να βρει,
είδος παρόμοιο με αυτό που είχαμε με Meteor, μπορούμε να φορτώσει όλα τα στοιχεία.
Το πρόβλημα είναι, εμείς δεν κάνουμε έχουν στην πραγματικότητα κανένα από τα καθήκοντα που ορίζονται.
Γι 'αυτό δεν μπορεί να τους πάρει.
>> Μπορούμε να τοποθετήσετε, όμως.
Έτσι, μπορούμε να τρέξουμε ένθετο με ένθετο εντολή.
Και εμείς απλά δώστε ένα αντικείμενο, και εμείς απλά
βεβαιωθείτε ότι η μορφή είναι αυτό που περιμένουμε.
Αν κοιτάξαμε βήμα δύο, είδαμε ότι κάθε εργασία
ήταν ένα αντικείμενο με ένα κείμενο ως το κλειδί και ό, τι
να κάνει το στοιχείο σας ήταν ως μεταβλητή.
Έτσι, μπορούμε να κάνουμε κάτι εδώ.
>> Μπορούμε να έχουμε να εισάγετε ένα έργο ονομάζεται Κατάγομαι από Mongo.
Και πατάμε Enter, και να τρέχει.
Μπορούμε να τρέχει να βρει και πάλι, και εμείς βλέπουμε ότι υπάρχει ένα αντικείμενο εδώ.
Mongo εκχωρεί ένα αναγνωριστικό, το οποίο σας Δεν χρειάζεται πραγματικά να ανησυχούν.
Αυτό που είναι σημαντικό για εσάς είναι τα δεδομένα βάλετε, είναι τα στοιχεία που μπορείτε να πάρετε έξω.
>> Ας πάμε πίσω στην ιστοσελίδα μας, και hey, το καθήκον μας φορτωθεί.
Και μπορείτε να δείτε ότι επειδή Meteor είναι πολύ έξυπνος
και πάντα ανανεώνει για εσάς, εγώ δεν πρέπει να αγγίξει την σελίδα.
Είναι φορτώνεται αυτόματα.
>> Ας τρέξει κάποιο κώδικα σε JavaScript όμως για να γίνει αυτό.
Όπως έχουμε Κόμβος στο πίσω μέρος καταλήγουν να εκτελέσει έξω JavaScript,
μπορούμε επίσης να τρέξει το JavaScript απευθείας σε προγράμματα περιήγησης μας.
Μπορείτε να το κάνετε αυτό με ένα χαρακτηριστικό Επιθεωρήστε ονομάζεται Στοιχείο.
Αν μου δεξί κλικ σε μια τμήμα της σελίδας,
υπάρχει μια επιλογή Επιθεωρήστε ονομάζεται Στοιχείο.
Αν τρέχετε ένα πρόγραμμα περιήγησης όπως το Safari, εσείς
μπορεί να χρειαστεί να ενεργοποιήσετε προγραμματιστή σας εργαλεία, πριν να πάρετε αυτό το χαρακτηριστικό.
>> Τι μας νοιάζει είναι η κονσόλα.
Γι 'αυτό ακριβώς θα πάει στο κονσόλα στο κάτω μέρος.
Τώρα μπορούμε να τρέξουμε οποιαδήποτε JavaScript εδώ, όπως το JavaScript
αρχεία που έδειξε στην js παράδειγμα.
Αλλά τώρα ας δούμε τα καθήκοντα.
Μπορούμε να εκτελέσετε την εντολή μας.
Και ελπίζω ότι θα είναι σε θέση να κάνει είναι λίγο μεγαλύτερο, ώστε να μπορούμε όλοι να δούμε.
>> Αν τρέξουμε tasks.find, και θα δείτε ότι αυτό είναι ακριβώς το ίδιο κωδικό
ότι οι χρήσεις αρχείο JavaScript Στο τρίτο βήμα, αυτό task.find.
Μπορούμε να τρέξει το ίδιο πράγμα, και τώρα έχουμε πάρει κάποια περίεργα πράγματα.
Πώς μπορούμε πραγματικά να πάρετε τα δεδομένα;
Λοιπόν, θα πρέπει να εκτελέσετε αυτό εντολή που ονομάζεται φέρω.
>> Αυτό είναι πολύ χρήσιμο για τον εντοπισμό σφαλμάτων.
Τι μπορείτε να πάρετε εδώ είναι ένα δρομέα, και αυτό είναι
ένα ωραίο τρόπο Meteor έχει βελτιστοποιημένη δεδομένα γοητευτικός.
Αυτό το δρομέα έχει όλα τα χαρακτηριστικά για ζωντανή ενημέρωση και να ανανεώσετε τη σελίδα
όταν κάτι έχει αλλάξει.
Αλλά δεν θα μας πάρει τα δεδομένα.
Μπορούμε να πάρουμε τα δεδομένα μέσω φέρω.
Και βλέπετε έχουμε ένα αντικείμενο, και Είναι ακριβώς όπως αυτό που είχαμε στο Mongo,
με ένα αναγνωριστικό και το κείμενο που βάζουμε μέσα.
>> Επομένως, πώς θα τοποθετήσετε ένα στοιχείο στο Meteor;
Λοιπόν, έχουμε ακριβώς τα καθήκοντα.
Και τότε μπορούμε να τρέξουμε το ίδια εντολή ένθετο,
δίνοντας ένα λεξικό ή ένα αντικείμενο με την ίδια μορφή, το κείμενο
και, στη συνέχεια, έρχομαι από την κονσόλα.
Ρίξτε μια ματιά παραπάνω, γιατί όταν εγώ το κάνετε αυτό, θα εμφανίζεται στην ιστοσελίδα
αυτόματα.
>> Σημειώστε ότι μπορείτε να βάλετε οτιδήποτε θέλετε σε αυτά τα στοιχεία.
Δεν πρέπει να έχουν σταθερή δομή.
Θα μπορούσα να έχω ένα ίσο με το νούμερο τρία και β ψευδής.
Και όλα τα έργα.
Μπορώ να επιλέξετε ακόμη και να μην περιλαμβάνει ένα κείμενο σε όλα.
Αυτό είναι απλά δεν συνιστάται όμως, γιατί τότε Meteor
δεν θα ξέρουν τι να εμφανιστεί.
Αλλά σε κάθε περίπτωση, πάρετε μια ταυτότητα, και αυτό είναι
το αναγνωριστικό του αντικειμένου που μπορείτε να χρησιμοποιήσετε.
>> Καθώς συνεχίζουμε με Βήμα τέταρτο και πέμπτο βήμα,
το σεμινάριο θα σας δείξει τρόπους με τους οποίους μπορείτε να δημιουργήσετε στοιχεία UI χρησιμοποιώντας
η HTML ξέρετε να δημιουργήσουν διάφορες εργασίες.
Ας δούμε βήμα τέσσερα πολύ γρήγορα.
Θα δείτε ότι προσθέσαμε ένα τμήμα σχετικά με τα γεγονότα.
Τα πρότυπα μπορούν να έχουν βοηθούς, που μας παίρνουν δεδομένα.
Αλλά μπορεί επίσης να καλέσει τα γεγονότα.
Και αυτό είναι όπου τα πράγματα γίνεται χρήσιμο, διότι τα γεγονότα
είναι αυτό να συμβεί όταν κάνετε κλικ στο διαφορετικά πράγματα στην ιστοσελίδα σας.
>> Εδώ, ο κωδικός μας είναι να λέει μας για να προσθέσετε αυτό το γεγονός.
Προσθέστε αυτό όταν έχετε υποβάλει κάτι με την κατηγορία των νέων καθηκόντων.
Αυτό που έχουμε εδώ είναι ένας επιλογέας CSS.
Έτσι, αυτό φαίνεται μόνο για HTML στοιχείο που ανήκει στην κατηγορία των νέων καθηκόντων.
Και φαίνεται για την εκδήλωση, όπως υποβάλετε.
Άλλες εκδηλώσεις περιλαμβάνουν κλικ, να αιωρείται, διπλό κλικ,
παρόμοιο με αυτό που έχετε στο κανονικό HTML.
>> Τι δίνετε εδώ είναι τώρα μια λειτουργία.
Και μπορείτε να έχετε σας κωδικός για τον ίδιο σκοπό.
Αυτή η λειτουργία είναι αυτό που καταλήγει να πάρει καλείται όταν υποβάλετε αυτήν τη νέα εργασία.
Ας δούμε την HTML μόνο έτσι θα καταλάβουμε τι είναι αυτό το νέο έργο είναι.
Προσθέσαμε μια μορφή εδώ με την κατηγορία των νέων καθηκόντων.
Και έχει μια είσοδο που θα λαμβάνει το κείμενο.
Και αυτό είναι που εμείς θα προσθέσει νέα μας καθήκοντα.
>> Ας τρέχει βήμα τέσσερα στην ιστοσελίδα για να δείτε τι μοιάζει.
Μπορούμε να σταματήσουν πρώτα έξω του MongoDB είχαμε
από το προηγούμενο μας παράδειγμα με τον έλεγχο C.
Και ας το αλλάξετε σε το βήμα τέσσερα κατάλογο.
Θα τρέξει Meteor ξανά την εκκίνηση του διακομιστή.
Και δυστυχώς, είχα Meteor τρέχει σε ένα άλλο τερματικό.
Έτσι, είμαι απλώς πρόκειται να βεβαιωθείτε ότι αυτό έκλεισε.
Ας σταματήσουν αυτό και η αλλαγή στο τέταρτο μέρος, το βήμα τέσσερα.
ΟΚ.
>> Τώρα κωδικός Meteor μας βρίσκεται σε λειτουργία.
Και μπορείτε να δείτε ότι η ενημέρωσή τους, χωρίς μας καν να χρειάζεται να ανανεώσετε τη σελίδα.
Τι έχει αλλάξει εδώ είναι τώρα ότι δεν έχουμε κανένα από τα καθήκοντα,
αλλά έχουμε μια μορφή εδώ, αυτό πλαίσιο κειμένου, να προσθέσετε νέες εργασίες μας.
Και μπορούμε να πληκτρολογήσετε το έργο μας εδώ.
Κατάγομαι από τη σελίδα HTML.
Όταν πατάω Enter, πήρε υποβληθεί.
>> Μπορούμε να δούμε τι συνέβη σαν ορίζεται από τον κώδικα JavaScript.
Αυτό που έκανε ήταν συνάρτηση να λάβει το κείμενο από τη μορφή,
και στη συνέχεια, μόλις ονομάζεται tasks.insert, όπως κάναμε στην κονσόλα.
Μπορούν επίσης να επιλέξουν να προσθέσετε μια ημερομηνία createdAt.
Αυτό είναι το πώς θα προσδιορίζει την τρέχουσα ώρα.
Μετά από αυτό, καθαρίζει το έντυπο κάνοντας βεβαιωθείτε ότι η τιμή είναι η κενή συμβολοσειρά.
>> Και στη συνέχεια καλεί να επιστρέψει false βεβαιωθείτε ότι δεν γίνεται τίποτα άλλο.
Όταν επιστρέφει false από ένα μορφής εκδήλωση, που σταματά την εκτέλεση.
Πείτε μια μορφή έχει μια δράση, όπως υποβάλει σε μια σελίδα PHP.
Αν δεν είχε επιστρέψει ψευδής, τότε θα επιστρέψει αλήθεια.
Θα καταλήγουν να κάνουν το αίτημα αυτό.
Λάθος παρακολουθήσεις αυτό και σταματά σωστό εκεί.
>> Έτσι, αυτό ήταν μια μικρή επίδειξη σχετικά με πώς λειτουργεί Meteor, και έχουμε
ήταν μετά το φροντιστήριο για λίγο.
Και μπορείτε να παρακαλώ ελεύθερο να συνεχίσει να κάνει αυτό.
Υπάρχει αφθονία των πόρων, και το φροντιστήριο είναι στην πραγματικότητα μόνο
πολύ καλό για την εξήγηση τι συμβαίνει.
Θέλω να σας δείξω τώρα, τα λίγα λεπτά που μας έχουν απομείνει,
τι είναι μερικά από τα δροσερές χαρακτηριστικά του Meteor,
και τι είναι μερικά από τα πιο χρήσιμα πακέτα.
Ένα από τα μεγάλα πράγματα για Meteor είναι ότι έχετε ένα σύστημα συσκευασίας.
Μπορείτε να ενσωματώσει εύκολα τον κωδικό ότι πολλές χιλιάδες προγραμματιστές
έχουν γράψει σε όλο τον κόσμο στο έργο Meteor σας.
Ένα παράδειγμα αυτού είναι το τι μπορεί να κάνει στο βήμα εννέα από το φροντιστήριο, όπου
προσπαθείτε να προσθέσετε λογαριασμούς στο έργο Μετέωρο σας.
Αν έχουμε μια CS50 PHP του έργου, θα έχουμε
να επικαλεστεί το πλαίσιο ή τον δικό μας κώδικα για να κάνει
βέβαιος ότι χειριζόμαστε με ασφάλεια κωδικούς πρόσβασης και ονόματα χρήστη
και την αποθήκευση της βάσης δεδομένων και όλα αυτά.
>> Αποδεικνύεται Meteor έχει μερικά πακέτα για να το κάνουμε αυτό για σας,
και να το κάνουμε πολύ εύκολα.
Αυτό που μπορούμε να κάνουμε είναι να προσθέσετε μερικά πακέτα.
Ας κάνουμε αυτό το δικαίωμα τώρα στην κονσόλα μας.
Πάω να εγκαταλείψει το έργο και τώρα πάμε σε απλό todos.
Τώρα, απλό Todos είναι το έργο που έχετε
θα πρέπει μετά να γίνει με το βήμα 11 ή το βήμα 12,
στο τέλος αυτού του εγχειριδίου.
Και ας δούμε γρήγορα να δείτε ποια είναι τα διαφορετικά χαρακτηριστικά που έχουμε.
Ας απλά βεβαιωθείτε ότι τρέχει.
Μερικές φορές χρειάζεται κάποιο χρονικό διάστημα για να ανανεώσετε, αλλά εδώ είναι.
>> Έχουμε δική μας επιλογή να κρύψει ολοκληρώνουν τις εργασίες τους, και μπορούμε να συνδεθείτε.
Και αυτό έγινε με το πακέτο Meteor.
Είναι μεγάλη.
Έχουμε τώρα το όνομα χρήστη και τον κωδικό πρόσβασης σύνδεση.
Τι γίνεται όμως αν θέλαμε να προσθέσουμε ένα άλλο είδος της σύνδεσης του μηχανισμού;
Ας πούμε ότι ήθελα να συνδεθείτε με το λογαριασμό Meteor μου.
Πάω να τρέξει μετεωρίτη add, και αυτό είναι η σύνταξη για την προσθήκη πακέτων.
Μπορώ να πω λογαριασμούς, και accounts.meteor.
Είναι πρόκειται να βρείτε τώρα το πακέτο και να το φορτώσετε.
Μπορείτε να δείτε ότι δεν έχω βρει το σωστό όνομα του πακέτου.
>> Τόσο πώς μπορείτε να μάθετε για τα πακέτα;
Λοιπόν υπάρχει μια μεγάλη ιστοσελίδα, γίνεται διατίθενται από τους ανθρώπους Meteor,
ονομάζεται atmospherejs.com.
Atmospherejs, μια λέξη, τελεία com, είναι μια μεγάλη αποθήκη
για την εύρεση όλων των μετεωριτών πακέτα στο αποθετήριο.
Μπορώ να αναζητήσω τους λογαριασμούς, και στη συνέχεια, αυτό θα μου δείξει όλες τις σχετικές πράγματα,
Όλα τα πακέτα με το όνομα του λογαριασμού.
>> Ενώ αυτό φορτώνει, μπορούμε να δοκιμάσουμε προσθέτοντας κάποια άλλα πακέτα.
Ίσως το πακέτο Meteor δεν λειτουργεί τώρα, αλλά μπορώ να προσθέσω στο Facebook.
Μπορώ να προσθέσω το λογαριασμό και, στη συνέχεια, εκτελέστε ξανά το πρόγραμμα Meteor.
Όταν αυτό αρχίζει, ας δούμε τι έχει αλλάξει στην ιστοσελίδα.
Μπορείτε να see-- θα μπορούσα πρέπει να το ανανεώσετε εδώ.
>> Έχω ένα κουμπί για να ρυθμίσετε Facebook Login.
Και εδώ, έχω όλα οι οδηγίες Meteor
έχει ετοιμάσει για εσάς για τη δημιουργία ενός app του Facebook.
Και μπορείτε να το χρησιμοποιήσετε πληροφορίες για να προσθέσετε αναγνωριστικά σας.
Μόλις γίνει αυτό, θα έχετε Facebook Login εργάζονται στην εφαρμογή σας.
>> Είμαι ακριβώς πρόκειται να πάρει ένα αναγνωριστικό app και ένα μυστικό,
απλά για να σας δείξει πώς αυτό θα μπορούσε να λειτουργήσει.
Θα χρειαστείτε ένα λογαριασμό στο Facebook να χρησιμοποιήσουν το Facebook τις επιλογές του έργου.
Επιτρέψτε μου μόνο να βρει γρήγορα το Πλήκτρα μετεωρίτη που είναι αναγκαίες.
Έχω ένα άλλο έργο Meteor ότι Πάω να χρησιμοποιήσει,
και είμαι απλώς πρόκειται να πάρει τα κλειδιά από το αρχείο.
>> Και αφού την έχω βρει, απλά θα είναι σε θέση να αντιγράψετε αυτά τα πλήκτρα στο Facebook μου.
Έτσι, εδώ είναι ένα κλειδί.
Και αυτό είναι το μυστικό.
Δεν θα πρέπει να είναι μοιράζονται αυτό με τους ανθρώπους.
Και τότε θα δώσει το app μυστικό σας.
Και αυτό είναι τόσο Facebook ξέρει είστε εσείς.
Και μπορείτε να αποθηκεύσετε τη ρύθμιση.
>> Νομίζω ότι στη διαδικασία Ι έχουν σταματήσει Meteor app μου.
Γι 'αυτό ακριβώς θέλουν να κάνουν βεβαιωθείτε ότι είναι ακόμα εκεί.
Εντάξει, ας βεβαιωθείτε ότι ο διακομιστής Meteor μας λειτουργεί έτσι ώστε η ιστοσελίδα λειτουργεί.
Παρατηρήστε αν σταματήσουμε το Meteor server, η σελίδα είναι ακόμα εκεί.
Απλώς δεν θα ενημερώσει πια.
Ο διακομιστής Meteor είναι απαραίτητο για την κατασκευή ότι η σελίδα είναι ζωντανή.
>> Εντάξει, έχω υποβληθεί, και τώρα Μπορώ να συνδεθείτε με το Facebook.
Τώρα είναι πλέον θέμα έχει ένα pop up στο Facebook
και βάζοντας στο λογαριασμό σας πληροφορίες και ξανασυνδεθείτε.
Μόλις το κάνετε αυτό, το Facebook θα μπορούσε Nag σας για κάποια περισσότερη ασφάλεια.
Γι 'αυτό και θα μείνουμε εκεί.
Το θέμα είναι ότι όταν τελειώσετε με αυτό, θα έχετε στο Facebook login.
>> Meteor έχει ένα σωρό άλλα πακέτα επίσης.
Μπορείτε να συνδεθείτε με το Google+.
Μπορείτε να συνδεθείτε με το GitHub.
Μπορείτε να συνδεθείτε με το Twitter.
Ή αν ψάξετε, θα βρείτε πολλά άλλα πράγματα
όπως Meetup, LinkedIn, και Meteor Developer.
Έτσι Meteor Προγραμματιστής ήταν η πακέτο που έψαχνα.
μετεωριτών προσθέσετε λογαριασμούς-μετεωριτών-developer.
Εν τω μεταξύ, εγώ Επίσης, θέλουμε να προτείνουμε
κάποια άλλα πακέτα για τα έργα σας.
Θα μπορούσε να αποδειχθεί χρήσιμη για περιλαμβάνει το πακέτο jQuery.
Αυτό σας επιτρέπει να χρησιμοποιήσετε jQuery στους πελάτες σας.
Θα μπορούσε να το κάνει μόνο με μία γραμμή, και Meteor θα βεβαιωθείτε ότι είστε ενημερωμένοι
για jQuery.
Θα ήθελα να συστήσω επίσης Χιούστον: admin.
>> Αυτό είναι σαν ένα είδος phpMyAdmin είδος εργαλείου για MongoDB σας.
Αυτό σας επιτρέπει να επεξεργαστείτε δεδομένα σας αρκετά εύκολα
χωρίς να χρειάζεται να πηγαίνετε στο κέλυφος Mongo, όπως είχα κάνει νωρίτερα στο σεμινάριο.
Έτσι τώρα ότι αυτό είναι το τρέξιμο, ας τρέξει Meteor πάλι και να δούμε τι μπορούμε να κάνουμε.
>> Θα παρατηρήσετε ότι η προσθήκη μερικά πακέτα μπορεί να έχουν αυτά παρουσιάζει ορισμένα προειδοποιήσεις.
Δεν θα χρειάζεται να ανησυχείτε γι 'αυτό με το Χιούστον.
Έτσι, μπορούμε τώρα να έχουν τη δυνατότητα για να ρυθμίσετε το admin Μετέωρο.
Και θα σας δώσει τις κατευθύνσεις αν θέλετε να ορίσετε ότι μέχρι.
>> Μπορούμε επίσης να πάτε τώρα να / admin.
Αυτό είναι έφερε σε σας από τους Χιούστον πακέτο.
Και αυτό είναι Meteor περιβάλλον του διαχειριστή.
Μπορείτε απλά να δημιουργήσετε ένα διαχειριστή του λογαριασμού, όπως έτσι.
Και αν ανανεώσετε τη σελίδα, ίσως έχουν κάποιες συλλογές εμφανίζονται.
>> Είναι ένα πολύ χρήσιμο εργαλείο, και συστήνω αυτό έντονα.
Μπορείτε να δείτε ότι επειδή Χιούστον έδινε κάποια λάθη,
δεν έχουμε κανένα συλλογές εμφανίζονται τώρα.
Ο τρόπος που θα χρησιμοποιήσετε το Χιούστον είναι φροντίζοντας η λειτουργία αυτή γίνεται
κάλεσε σε απλό Todos σας.
Έτσι Χιούστον δεν γνωρίζουν ποια είναι τα καθήκοντά μου.
>> Έχουμε δημιουργήσει ένα Mongo συλλογή ονομάζεται καθήκοντα.
Ας πάμε σε απλό todos και απλά βεβαιωθείτε ότι το JavaScript,
έχουμε προσθέσει καθήκοντα στις συλλογές μας.
Έχουμε αποθηκευτεί τώρα, και είναι στο χτίσιμο η εφαρμογή, δροσιστικό.
Και ας δούμε.
Τώρα έχουμε κάποιες εργασίες.
Και μπορούμε να προσθέσουμε κάποια νέα καθήκοντα.
Αλλά αν θέλουμε να προσθέσουμε τα καθήκοντα, ας το κάνει με την ίδια την εφαρμογή.
>> Τώρα μπορούμε να προσθέσουμε κάποια δεδομένα.
Γεια, αυτό είναι ένα καθήκον.
Φαίνεται περίεργο ότι εμείς δεν βλέπουμε κάποια καθήκοντα.
Μπορούμε ίσως να θέλετε να ελέγξετε αν έχουμε οποιαδήποτε σφάλματα εδώ, ή ίσως κάπου αλλού.
Αν πάμε σε διαχειριστή, αυτό φαίνεται παράξενο.
Εάν τραβήξετε το αποθετήριο μετά από αυτό το σεμινάριο,
Θα βεβαιωθείτε ότι απλό Todos λειτουργεί με το Χιούστον.
Δυστυχώς, αυτό δεν φαίνεται να να εργάζονται αυτή τη στιγμή.
>> Υπάρχουν και άλλα ζητήματα εκεί;
Χιούστον κανονικά είναι ένα εργαλείο που λειτουργεί πολύ καλά.
Χιούστον είναι ειδικά λίγο buggier από τις άλλες,
αλλά εγώ συνιστώ αυτό όταν λειτουργεί.
Ναι.
>> ΚΟΙΝΟ: Τι μπορείτε να κάνετε με το πακέτο Facebook
αφότου ο χρήστης είναι συνδεδεμένος με το Facebook τους;
>> ROGER ZURAWICKI: Μόλις ένας χρήστης είναι συνδεδεμένος,
μπορείτε να πραγματοποιείτε κλήσεις με το Facebook API.
Πολλοί που έγκειται περισσότερο στην πώς ανοίγει το Facebook API τους.
Meteor, βεβαιωθείτε ότι έχετε έχουν τη σύνδεση.
Αλλά τα πάντα μετά από αυτό είναι ένα θέμα της εκμάθησης πώς να χρησιμοποιούν το Facebook API.
ΚΟΙΝΟ: [δεν ακούγεται].
ROGER ZURAWICKI: Εντάξει.
Σας ευχαριστώ πολύ για Αυτό το σεμινάριο CS50 σε μετεωρίτη.
Εάν έχετε οποιεσδήποτε ερωτήσεις, μπορείτε να μου στείλετε email
στη διεύθυνση ηλεκτρονικού ταχυδρομείου μου που αναφέρονται κάτω από το σεμινάριο.
Και θα είμαι στην ευχάριστη θέση να απαντήσει στις ερωτήσεις σας.
Θα είναι επίσης σε το CS50 Hackathon θα πρέπει να
χρειάζεστε βοήθεια με έργα Meteor σας.
Σας ευχαριστώ για την προσοχή.