1 00:00:00,000 --> 00:00:02,500 [Powered by Google Translate] [Σεμινάριο] [Web Development: Από την ιδέα στην Εφαρμογή] 2 00:00:02,500 --> 00:00:04,200 [Ben Kuhn] [Billy Janitsch] [Πανεπιστήμιο Χάρβαρντ] 3 00:00:04,200 --> 00:00:07,250 [Αυτό είναι CS50] [CS50.TV] 4 00:00:07,250 --> 00:00:10,840 [Billy] Γεια σας, είμαι ο Billy και αυτός είναι ο Μπεν. >> [Ben] Γεια σας. 5 00:00:10,840 --> 00:00:12,840 Εμείς πάμε να μιλάμε για την ανάπτυξη web σήμερα. 6 00:00:12,840 --> 00:00:14,840 [Webdev] [Billy Janitsch και Ben Kuhn] 7 00:00:14,840 --> 00:00:16,840 Ένα κομμάτι για μας πρώτα. 8 00:00:16,840 --> 00:00:19,590 Ο Ben είναι το είδος του back-end τύπος. Κάνει τα πράγματα λειτουργούν. 9 00:00:19,590 --> 00:00:21,870 Και στη συνέχεια να πάω μέσα και να τους αρκετά. 10 00:00:21,870 --> 00:00:26,610 Είμαι συμμετέχουν σε μεγάλο βαθμό με περισσότερα front-end είδος σχεδίου διάταξης πράγματα, 11 00:00:26,610 --> 00:00:31,260 και Ben, από την άλλη πλευρά, ξέρει τι κάνει έτσι λειτουργεί σε back-end πράγματα. 12 00:00:31,260 --> 00:00:34,050 Μαζί έχουμε κάνει μερικά πράγματα. 13 00:00:34,050 --> 00:00:38,710 Για παράδειγμα, πέρυσι εργάστηκαν για Gimblium το οποίο είναι ένα online στούντιο ανάπτυξης παιχνιδιών. 14 00:00:38,710 --> 00:00:40,400 Αυτό ήταν το τελευταίο έργο μας για την τάξη, 15 00:00:40,400 --> 00:00:42,780 και από τότε έχουμε κάνει Χάρβαρντ Class 16 00:00:42,780 --> 00:00:47,860 το οποίο είναι ένα online πλαίσιο για περιήγηση και ψώνια μαθήματα στο Χάρβαρντ. 17 00:00:47,860 --> 00:00:53,180 >> Εμείς πάμε για να αρχίσει με αυτή την ιδέα για την ιστοσελίδα μας. 18 00:00:53,180 --> 00:00:57,480 Εμείς πάμε για να κάνει το Facebook, αλλά και για τις γάτες. 19 00:00:57,480 --> 00:00:59,520 Πριν κάνετε πραγματικά αυτό το δικτυακό τόπο, 20 00:00:59,520 --> 00:01:02,520 δεν κάνουν αυτή την ιστοσελίδα επειδή δεν είναι καλό? αλλά θα το χρησιμοποιούν ως πλαίσιο 21 00:01:02,520 --> 00:01:05,349 και να περάσουν από τη διαδικασία για το πώς παίρνουμε την ιδέα 22 00:01:05,349 --> 00:01:07,450 και να το μετατρέψει σε ένα πραγματικό δικτυακό τόπο που μπορούμε να χρησιμοποιήσουμε. 23 00:01:07,450 --> 00:01:11,940 Θα ξεκινήσουμε με το σπάσιμο της ιστοσελίδας κάτω. 24 00:01:11,940 --> 00:01:13,190 Όπως έχετε κάνει σε CS50, 25 00:01:13,190 --> 00:01:17,360 θέλετε να σκεφτούμε ποια είναι τα πραγματικά στοιχεία που πηγαίνουν σε αυτό το δικτυακό τόπο. 26 00:01:17,360 --> 00:01:21,290 Βασικά στροφή από μια ιδέα που είναι ακριβώς το είδος της μια αφηρημένη έννοια 27 00:01:21,290 --> 00:01:23,590 σε ένα πραγματικό, απτό πράγμα που θα μπορούσατε να κάνετε. 28 00:01:23,590 --> 00:01:25,910 Ξεκινάμε με μερικές ερωτήσεις. 29 00:01:25,910 --> 00:01:28,070 Τι είναι αυτή η ιστοσελίδα; Γιατί το κάνει; 30 00:01:28,070 --> 00:01:30,670 Τι είναι αυτό πρόκειται να χρησιμοποιηθεί για; Αυτό το είδος του πράγματος. 31 00:01:30,670 --> 00:01:33,660 Στην περίπτωση του Facebook Cat, 32 00:01:33,660 --> 00:01:37,730 θέλουμε ουσιαστικά μια ιστοσελίδα που σας επιτρέπει γάτες κοινωνικό δίκτυο με το άλλο. 33 00:01:37,730 --> 00:01:41,260 Η ιδέα είναι ότι μπορείτε να προσθέσετε στους τοίχους του άλλου, 34 00:01:41,260 --> 00:01:43,510 μπορούν να κάνουν σχόλια, αυτό το είδος του πράγματος. 35 00:01:43,510 --> 00:01:46,720 Και εκεί είναι που έρχονται σε λειτουργικά συστατικά. 36 00:01:46,720 --> 00:01:51,270 Έχουμε τώρα αυτό το είδος του πλαισίου του - έχουμε τα προφίλ χρηστών, 37 00:01:51,270 --> 00:01:53,990 έχουμε τα σχόλια, και μπορούμε να δημοσιεύσετε. 38 00:01:53,990 --> 00:01:57,390 Ίσως κάποια μέρα θα με δυνατότητα επιρροής συμπαθεί και αυτό το είδος του πράγματος. 39 00:01:57,390 --> 00:02:00,410 Και εμείς σαν να θέλω να δοθεί προτεραιότητα αυτά τα χαρακτηριστικά θα in 40 00:02:00,410 --> 00:02:03,340 Θέλουμε να πω, όπως, εντάξει, είναι πολύ σημαντικό ότι ο καθένας έχει ένα προφίλ 41 00:02:03,340 --> 00:02:06,440 και ότι όλοι μπορούν να δημοσιεύουν στους τοίχους του άλλου. 42 00:02:06,440 --> 00:02:08,509 Δευτερευόντως ως προς αυτό, τα σχόλια θα ήταν ωραίο. 43 00:02:08,509 --> 00:02:10,180 Ίσως αργότερα θα με δυνατότητα επιρροής συμπαθεί. 44 00:02:10,180 --> 00:02:13,700 Έτσι, θέλετε να έχετε μια ιδέα του τι είναι θεμελιώδους σημασίας για το έργο σας 45 00:02:13,700 --> 00:02:17,260 και τι είναι ένα είδος πιο γενικό χαρακτηριστικό που θα μπορούσε να εφαρμοστεί αργότερα. 46 00:02:17,260 --> 00:02:20,870 Θέλετε να είδος έχει μια συγκεκριμένη λίστα στο μυαλό, 47 00:02:20,870 --> 00:02:24,090 αλλά το έργο που θα ξεκινήσετε με το να μην πρόκειται να είναι το έργο που θα τελειώσει με. 48 00:02:24,090 --> 00:02:27,100 Με άλλα λόγια, δεν πρόκειται να αλλάξει, ενώ εσείς την ανάπτυξη του τόπου, 49 00:02:27,100 --> 00:02:30,090 και θέλετε να αφήνουν περιθώρια για κάτι τέτοιο. 50 00:02:30,090 --> 00:02:34,470 Θα το παραδώσει στον Ben ο οποίος πρόκειται να μιλήσουμε λίγο για τη δομή. 51 00:02:34,470 --> 00:02:39,610 >> [Ben] Πάω να μιλάμε για την πιο τεχνική πλευρά της ανάπτυξης ιστοσελίδων. 52 00:02:39,610 --> 00:02:42,370 Ας πάμε πάνω από κάποια βασικά πρώτα. 53 00:02:42,370 --> 00:02:45,730 Όταν κάνεις ένα web app, 54 00:02:45,730 --> 00:02:50,470 το κύριο τμήμα που θα πάμε να πρέπει να έχετε είναι 55 00:02:50,470 --> 00:02:52,700 θα πάμε να έχουν κάποια πράγματα συμβαίνουν στην πλευρά του πελάτη - 56 00:02:52,700 --> 00:02:56,700 δηλαδή, ο κώδικας που είστε browser γίνεται από την ιστοσελίδα 57 00:02:56,700 --> 00:03:01,910 και η JavaScript, HTML, CSS πράγματα. 58 00:03:01,910 --> 00:03:04,490 Αυτό είναι το μόνο στην πλευρά του client. 59 00:03:04,490 --> 00:03:08,680 Θα πάμε να έχουν άλλο κώδικα που τρέχει στην πλευρά του διακομιστή 60 00:03:08,680 --> 00:03:10,770 η οποία παρακολουθεί όλα τα δεδομένα που οι άνθρωποι στέλνουν σε σας, 61 00:03:10,770 --> 00:03:15,060 αποφασίζει σε ποιον να δώσει ό, τι, τέτοια πράγματα. 62 00:03:15,060 --> 00:03:20,380 Αυτό είναι μόνο κάποια ορολογία, έτσι ώστε εσείς είστε όλοι εξοικειωμένοι με το τι μιλάμε. 63 00:03:20,380 --> 00:03:28,600 Πέρα από αυτό το τμήμα είναι καλό να σκεφτούμε web app σας από την άποψη της 64 00:03:28,600 --> 00:03:32,500 ένα ζευγάρι από διαφορετικές συνιστώσες. 65 00:03:32,500 --> 00:03:35,270 Όταν κάνετε ανάπτυξης ιστοσελίδων 66 00:03:35,270 --> 00:03:41,710 ένα από τα πράγματα που θα πρέπει πάντα να προσπαθούμε να κάνουμε είναι να μειώσει την πολυπλοκότητα. 67 00:03:41,710 --> 00:03:45,710 Το πιο πολύπλοκο κώδικα σας είναι η μεγαλύτερη πιθανότητα είναι εκεί για να κάνουν σφάλματα, 68 00:03:45,710 --> 00:03:47,710 τόσο πιο δύσκολο είναι να αλλάξει αργότερα. 69 00:03:47,710 --> 00:03:50,140 Έτσι, εάν μπορείτε να διαλύσει app σας σε κάποιες διακριτές λειτουργικές περιοχές 70 00:03:50,140 --> 00:03:57,640 ότι θα - και μπορείτε να μειώσετε το είδος του ποσού της επικοινωνίας cross-περιοχή - 71 00:03:57,640 --> 00:04:03,530 που θα σας βοηθήσει πολύ σε μακροπρόθεσμη βάση όσον αφορά τη μείωση των bugs. 72 00:04:03,530 --> 00:04:07,950 >> Για να είναι συγκεκριμένες, συνήθως οι άνθρωποι χωρίζουν ένα web app σε - 73 00:04:07,950 --> 00:04:13,190 αυτά είναι το είδος των τσιτάτο τώρα, αλλά είναι ακόμα χρήσιμο. 74 00:04:13,190 --> 00:04:17,940 Μπορεί να έχετε ακούσει ανθρώπους να μιλούν για τα μοντέλα, προβολές και ελεγκτές. 75 00:04:17,940 --> 00:04:23,210 Τα μοντέλα είναι τα πραγματικά δεδομένα που app σας πρόκειται να ασχοληθεί με. 76 00:04:23,210 --> 00:04:28,260 Για παράδειγμα, στη γάτα σας στο Facebook, τα μοντέλα σας θα είναι - 77 00:04:28,260 --> 00:04:35,340 θα ήθελα να έχουμε ένα πρότυπο, όπως θέσεις, και ένα μοντέλο για τα προφίλ χρηστών, τέτοια πράγματα. 78 00:04:35,340 --> 00:04:41,090 Οι απόψεις σας είναι το πώς θα παρουσιάσει αυτά τα δεδομένα για τους χρήστες σας. 79 00:04:41,090 --> 00:04:46,660 Μπορεί να έχετε 1 άποψη για την αναζήτηση σε μια ενιαία θέση και όλα τα σχόλια 80 00:04:46,660 --> 00:04:51,720 και μια διαφορετική άποψη για τον τοίχο σας που έχει μια λίστα με όλες τις δημοσιεύσεις 81 00:04:51,720 --> 00:04:57,170 που απευθύνονται σε εσάς, και μια διαφορετική άποψη για τις ζωοτροφές ειδήσεις σας - τέτοια πράγματα. 82 00:04:57,170 --> 00:05:00,610 Τέλος, έχετε τους ελεγκτές που είναι βασικά όταν οι άνθρωποι σας στείλει μηνύματα 83 00:05:00,610 --> 00:05:03,310 και να κάνετε ενημερώσεις για back-end σύστημα, 84 00:05:03,310 --> 00:05:06,400 που αυξάνεις μια δέσμη των μετρητών, και οτιδήποτε άλλο. 85 00:05:06,400 --> 00:05:07,860 Αυτοί είναι οι υπεύθυνοι για σας. 86 00:05:07,860 --> 00:05:11,030 >> Πάω να μιλάμε κυρίως για τα μοντέλα. 87 00:05:11,030 --> 00:05:14,030 Προβολές δεν είναι τεχνικά τόσο δύσκολο και το θέμα είναι περισσότερο με το σχεδιασμό τους 88 00:05:14,030 --> 00:05:22,040 Οι ελεγκτές θα είναι ειδικά για ό, τι σχεδιάζετε. 89 00:05:22,040 --> 00:05:25,220 Αλλά υπάρχουν μερικές πολύ γενικές τεχνικές που μπορείτε να χρησιμοποιήσετε 90 00:05:25,220 --> 00:05:30,220 να κάνουν τα μοντέλα σας καλύτερο και πιο εύκολο να εργαστεί με αυτό νομίζω ότι είναι πολύ χρήσιμη. 91 00:05:30,220 --> 00:05:35,860 Αυτό είναι ως επί το πλείστον πρόκειται να είναι για το πώς να ασχοληθεί με τα δεδομένα web εφαρμογές σας σε ένα ωραίο τρόπο. 92 00:05:35,860 --> 00:05:40,420 Τα κύρια θέματα με τα μοντέλα 93 00:05:40,420 --> 00:05:44,540 είναι ότι ζουν στον υπολογιστή-πελάτη και του διακομιστή και πρέπει να καταλάβω 94 00:05:44,540 --> 00:05:51,170 α) πώς να τους πάρει - όλες τις σχετικές αυτές - από το διακομιστή στον πελάτη, 95 00:05:51,170 --> 00:05:53,440 και β) πώς να τους κρατήσει σε συγχρονισμό. 96 00:05:53,440 --> 00:05:58,700 Οι χρήστες σας πρόκειται να θέλουν να κάνουν κάποιες ενημερώσεις. 97 00:05:58,700 --> 00:06:00,470 Θα πάμε να θέλουν να κάνουν νέες θέσεις. 98 00:06:00,470 --> 00:06:04,800 Θα πάμε να θέλουν να αρέσει τα πράγματα και τα πράγματα, αν έχετε συμπαθεί. 99 00:06:04,800 --> 00:06:11,490 Αυτές είναι οι κύριες τεχνικές προκλήσεις που ασχολούνται με τα μοντέλα. 100 00:06:11,490 --> 00:06:15,680 Το πρώτο πράγμα που πρόκειται να θέλετε να ρωτήσετε τον εαυτό σας είναι 101 00:06:15,680 --> 00:06:18,420 τι είδος των δεδομένων που πηγαίνει σε αυτό το μοντέλο και τι είδους ερωτήματα θα πάμε να θέλουν να κάνουν - 102 00:06:18,420 --> 00:06:24,290 Δηλαδή, πώς θα πάμε να δούμε τα μοντέλα; 103 00:06:24,290 --> 00:06:26,940 Για Cat Facebook παράδειγμά σας, 104 00:06:26,940 --> 00:06:31,520 θέση σας θα έχει έναν συγγραφέα που συνδέονται με αυτό, 105 00:06:31,520 --> 00:06:35,660 μερικές από τις μετά τοίχο κειμένου, και ο αποδέκτης της θέσης τοίχο. 106 00:06:35,660 --> 00:06:38,470 Και τότε ίσως να θέλετε να αναζητήσετε ότι σε ένα σωρό διαφορετικούς τρόπους. 107 00:06:38,470 --> 00:06:42,220 Θα θέλατε να το δει κανείς από που έγραψε η οποία μετά, 108 00:06:42,220 --> 00:06:46,620 από τα οποία έλαβαν οι οποίες μετά, ίσως από την ημερομηνία που καταχωρήθηκε. 109 00:06:46,620 --> 00:06:50,340 Αλλά αν πρόκειται να το κάνουμε από την ημερομηνία, τότε θα πρέπει να προσθέσετε ένα άλλο πεδίο στη θέση σας 110 00:06:50,340 --> 00:06:52,490 του όταν ήταν στην πραγματικότητα δημοσιεύτηκε. 111 00:06:52,490 --> 00:07:00,220 Αυτές οι 2 παράγοντες - ποια δεδομένα που θέλετε να χρησιμοποιήσετε και πώς θέλετε να το δείτε - 112 00:07:00,220 --> 00:07:04,200 θα πρέπει να σκεφτείτε για τους πρώτα, επειδή εξαρτώνται από κάθε άλλη, 113 00:07:04,200 --> 00:07:08,030 και πρόκειται να είναι πιο δύσκολο να τα προσθέσετε αργότερα. 114 00:07:08,030 --> 00:07:12,750 >> Υπάρχουν κάποιες άλλες σκέψεις. 115 00:07:12,750 --> 00:07:17,540 Όταν σκέφτεστε για το πώς θα ασχοληθεί με τα μοντέλα στο διακομιστή 116 00:07:17,540 --> 00:07:20,540 τι θέλετε να εξετάσουμε είναι - 117 00:07:20,540 --> 00:07:27,440 που ουσιαστικά θέλουν να κάνουν ο διακομιστής όσο το δυνατόν απλούστερη. 118 00:07:29,440 --> 00:07:35,500 Να κάνει τα πράγματα από την πλευρά του πελάτη είναι γενικά πολύ πιο γρήγορα εάν μπορείτε να το κάνετε αποκλειστικά για τον πελάτη 119 00:07:35,500 --> 00:07:38,230 χωρίς να κάνει οποιοδήποτε είδος της εντολής δικτύου. 120 00:07:38,230 --> 00:07:47,860 Η ιδέα είναι να κάνουμε όσες από τις ερωτήσεις όπως μπορείτε για τον πελάτη. 121 00:07:47,860 --> 00:07:51,560 Το μόνο πρόβλημα με αυτό 122 00:07:51,560 --> 00:07:54,160 είναι ότι εάν έχετε ζητήσει όλα τα δεδομένα σας από την αρχή 123 00:07:54,160 --> 00:07:57,160 τότε αυτό πρόκειται να πάρει πολύ χρόνο για να φορτώσει. 124 00:07:57,160 --> 00:08:02,290 Έτσι, η ιδέα είναι να βρεθεί μια χρυσή τομή μεταξύ του να έχει αρκετά στοιχεία για τον πελάτη 125 00:08:02,290 --> 00:08:07,640 ότι μπορείτε να κάνετε το μεγαλύτερο μέρος της δουλειάς σας, αλλά όχι μόνο κουβαλούν πάντα με τη μία 126 00:08:07,640 --> 00:08:09,710 έτσι ώστε να μπορείτε να πάρετε πολύ αργοί χρόνοι φόρτωσης στην αρχή. 127 00:08:09,710 --> 00:08:12,610 Για παράδειγμα, για τα δεδομένα της γάτας σας 128 00:08:12,610 --> 00:08:20,340 θα θέλατε πιθανότατα να φέρω ένα σωρό πρόσφατες θέσεις τοίχο. 129 00:08:20,340 --> 00:08:23,790 Δεν θα ήθελα να φέρω όλα αυτά, επειδή αυτό θα μπορούσε να πάει πίσω ένα-δύο χρόνια. 130 00:08:23,790 --> 00:08:25,470 Αλλά δεν θέλετε να τους φέρω ένα κάθε φορά 131 00:08:25,470 --> 00:08:28,740 επειδή αυτό θα εισήγαγε ένα πολύ εναέριο δίκτυο. 132 00:08:28,740 --> 00:08:33,620 >> Είναι συχνά πολύ δύσκολο - μόλις έχετε μια λειτουργία βάσης δεδομένων - 133 00:08:33,620 --> 00:08:37,210 είναι συχνά αρκετά δύσκολο να αλλάξει ό, τι στοιχεία έχετε σε αυτό - 134 00:08:37,210 --> 00:08:40,510 δηλαδή, να προσθέσετε μια νέα στήλη της βάσης δεδομένων ή κάτι τέτοιο - 135 00:08:40,510 --> 00:08:43,510 έτσι μια καλή στρατηγική είναι στην πραγματικότητα απλά να κρατήσει πολλά από τα δεδομένα σας σε μια άμορφη μάζα κείμενο - 136 00:08:43,510 --> 00:08:53,880 μια σταγόνα JSON - JSON είναι JavaScript Object Notation - 137 00:08:53,880 --> 00:08:58,330 Ο λόγος που είναι χρήσιμο είναι γιατί τότε μπορείτε να προσθέσετε νέες ιδιότητες 138 00:08:58,330 --> 00:09:01,920 σε όλες αυτές τις σταγόνες JSON χωρίς αλλαγή της βάσης δεδομένων σας. 139 00:09:01,920 --> 00:09:06,860 Το μόνο μειονέκτημα σε αυτό είναι ότι εάν έχετε μια δέσμη των πεδίων 140 00:09:06,860 --> 00:09:09,890 ότι θα προστεθούν αργότερα - όπως κρυμμένα σε αυτό το JSON άμορφη μάζα - 141 00:09:09,890 --> 00:09:12,850 τότε είναι δύσκολο να τους το ερώτημα στο εσωτερικό της βάσης δεδομένων. 142 00:09:12,850 --> 00:09:17,690 Για παράδειγμα, αν αργότερα - αν είχατε μετά το μοντέλο σας που συζητήσαμε νωρίτερα 143 00:09:17,690 --> 00:09:25,380 μόνο με τον συγγραφέα, τον παραλήπτη και το κείμενο - 144 00:09:25,380 --> 00:09:29,000 θα μπορούσε επίσης να έχει μια άμορφη μάζα JSON και στη συνέχεια, αν αργότερα ήθελε να προσθέσετε ένα πεδίο ημερομηνίας 145 00:09:29,000 --> 00:09:31,000 δεν θα πρέπει να αλλάξουν τη βάση δεδομένων σας. 146 00:09:31,000 --> 00:09:36,140 Θα μπορούσαν απλά να προσθέσουν ημερομηνίες σε όλα τα πεδία κειμένου. 147 00:09:36,140 --> 00:09:39,640 Και τότε θα είναι σε θέση να εξετάσουμε εκείνους στην πλευρά του client, 148 00:09:39,640 --> 00:09:42,430 αλλά δεν θα είναι σε θέση να τους ερώτημα στην πλευρά του διακομιστή 149 00:09:42,430 --> 00:09:44,430 διότι είναι κρυμμένο μέσα σε αυτό το κείμενο. 150 00:09:44,430 --> 00:09:49,920 >> Το άλλο θέμα που θέλετε να σκεφτείτε 151 00:09:49,920 --> 00:09:52,400 είναι το πώς ο πελάτης σας και ο διακομιστής σας πρόκειται να επικοινωνήσουν. 152 00:09:52,400 --> 00:09:56,040 Συνήθως θέλουν να το κρατήσουν όσο το δυνατόν απλούστερη. 153 00:09:56,040 --> 00:10:02,230 Μπορείτε να έχετε ακριβώς όπως ένα get-me-αυτό το αίτημα δεδομένων, 154 00:10:02,230 --> 00:10:09,140 α create-a-new-αντικείμενο πράγμα, και ένα αίτημα update-ένα-old-αντικείμενο. 155 00:10:09,140 --> 00:10:12,930 Και όλα αυτά θα είναι διαφορετικές διευθύνσεις URL σε ένα διακομιστή που σας - 156 00:10:12,930 --> 00:10:20,030 ότι ο browser θα - μπορείτε να χρησιμοποιήσετε τα αιτήματα AJAX για όλα αυτά 157 00:10:20,030 --> 00:10:24,000 και είτε να λαμβάνουν ή δεδομένων θέσης. 158 00:10:24,000 --> 00:10:26,600 Και πάλι, για μας Cat Facebook παράδειγμα, 159 00:10:26,600 --> 00:10:32,350 θα μπορούσατε να έχετε αυτό το URL για να πάρετε μια μεμονωμένη θέση, 160 00:10:32,350 --> 00:10:39,750 και θέλετε να έχετε μια διεύθυνση URL για τη δημιουργία μιας νέας θέσης τοίχο 161 00:10:39,750 --> 00:10:45,670 και ίσως μια διεύθυνση URL για το φόρτωμα φωτογραφία του προφίλ σας, τέτοια πράγματα. 162 00:10:45,670 --> 00:10:51,730 Αλλά και πάλι, αυτό είναι να προ-φέρω περισσότερα από τα δεδομένα σας, έτσι ώστε να μην χρειάζεται να κρατήσει 163 00:10:51,730 --> 00:10:53,360 κάνοντας αιτήσεις δικτύου. 164 00:10:53,360 --> 00:10:59,030 Για το λόγο αυτό, μπορεί να μην θέλετε να έχετε αυτό το επιμέρους αίτημα πάρει για μια ενιαία θέση, 165 00:10:59,030 --> 00:11:03,210 και αντ 'αυτού θα θέλουν μόνο 1 get αίτημα για ολόκληρο τοίχο. 166 00:11:03,210 --> 00:11:06,110 Και στη συνέχεια, αν είστε προσπαθεί να επιτύχει μια ισορροπία, διότι - 167 00:11:06,110 --> 00:11:10,970 Αυτό είναι, επίσης, πρόκειται να εξαρτηθεί από την εφαρμογή σας. 168 00:11:10,970 --> 00:11:13,430 Διότι, αν είστε αναμένει ότι οι άνθρωποι έχουν μόνο 10 ή 20 θέσεις τοίχο 169 00:11:13,430 --> 00:11:15,430 ότι θα είναι μια χαρά. 170 00:11:15,430 --> 00:11:17,390 Αλλά αν είστε αναμένει ότι θα έχουν χιλιάδες, τότε η αίτηση θα πάρει πάρα πολύ καιρό, 171 00:11:17,390 --> 00:11:23,580 και έτσι ίσως να θέλετε να προσθέσετε μια παράμετρο πάρει-όλα-θέσεις-από τότε. 172 00:11:23,580 --> 00:11:26,580 >> Για όλα αυτά πρόκειται πιθανώς να θέλετε να συγχρονίσετε τα δεδομένα σας σε JSON - 173 00:11:26,580 --> 00:11:29,260 JavaScript Object Notation. 174 00:11:29,260 --> 00:11:34,600 Λίγο πολύ κάθε γλώσσα ασχολείται με JSON πολύ καλά. 175 00:11:34,600 --> 00:11:40,880 JQuery έχει αυτό το ωραίο λειτουργία getJSON που θα κάνει όλη την δύσκολη δουλειά για εσάς. 176 00:11:40,880 --> 00:11:47,390 Και σε PHP υπάρχει επίσης πολύ ωραία λειτουργίες επικοινωνίας JSON. 177 00:11:47,390 --> 00:11:52,660 Έτσι, αυτό είναι ίσως η καλύτερη μορφή για την αποστολή των μοντέλων σας πέρα ​​δώθε. 178 00:11:52,660 --> 00:11:56,570 >> Ως ένα παράδειγμα του τι έχουμε μιλήσει μέχρι στιγμής, 179 00:11:56,570 --> 00:12:00,520 εδώ είναι ένα παράδειγμα της ροής για τη γάτα Facebook αίτησή σας. 180 00:12:00,520 --> 00:12:07,760 Θα ξεκινά με το πρόγραμμα περιήγησής σας ζητώντας τη βάση διεύθυνση της ιστοσελίδας. 181 00:12:07,760 --> 00:12:15,470 Ο διακομιστής θα μπορούσε πιθανότατα να στείλει πάνω από στατική HTML και κάποια JavaScript και CSS. 182 00:12:15,470 --> 00:12:19,170 Είναι συνήθως καλύτερο να μην κάνει οποιαδήποτε απόδοση στο διακομιστή. 183 00:12:19,170 --> 00:12:23,370 Πιθανώς δεν θέλετε να - 184 00:12:23,370 --> 00:12:28,360 ο διακομιστής δεν κάνει εκεί πηγαίνει κάτω από τον κατάλογο των μηνυμάτων τοίχο 185 00:12:28,360 --> 00:12:31,120 και παράγοντας κάποια HTML για κάθε ένα και την αποστολή ότι πάνω. 186 00:12:31,120 --> 00:12:34,960 Είναι συνήθως καλύτερο να το κάνουμε αυτό από την πλευρά του πελάτη, διότι διαφορετικά 187 00:12:34,960 --> 00:12:38,580 κάθε φορά που θέλετε να ξανά-ζωγραφίσω κάτι, θα πρέπει να κάνει μια αίτηση διακομιστή. 188 00:12:38,580 --> 00:12:42,450 Και αυτό σας δίνει πολύ γρήγορα μια πολύ γενικά. 189 00:12:42,450 --> 00:12:47,430 Είναι συνήθως καλύτερο απλά να πλοίο στέλνει κάτω στατική HTML 190 00:12:47,430 --> 00:12:50,660 και, στη συνέχεια, JavaScript και CSS που θα κάνει την απόδοση στην πλευρά του client. 191 00:12:50,660 --> 00:12:56,750 Μόλις αυτό το πράγμα έρχεται, 192 00:12:56,750 --> 00:13:03,500 τότε μπορείτε να έχετε - σε JavaScript - μπορείτε να κάνετε τις αιτήσεις για τα δεδομένα τοίχο 193 00:13:03,500 --> 00:13:08,740 και άλλα τέτοια, και μετά ότι ο διακομιστής είναι βασικά ακριβώς να κάνει τα ερωτήματα βάσης δεδομένων 194 00:13:08,740 --> 00:13:10,740 και τον έλεγχο των αδειών. 195 00:13:10,740 --> 00:13:16,690 Το μόνο σημαντικό πράγμα είναι ότι δεν μπορεί να στείλει πάνω από κάποιες άλλες θέσεις τοίχο χρήστες 196 00:13:16,690 --> 00:13:19,220 ότι δεν επιτρέπεται να δει. 197 00:13:19,220 --> 00:13:28,050 Μπορεί ουσιαστικά να είναι ένα πολύ λεπτό στρώμα πρόσβαση στη βάση δεδομένων σας, 198 00:13:28,050 --> 00:13:32,820 και στη συνέχεια όλα τα δείχνει τα δεδομένα - όλες τις προβολές και τα πράγματα - 199 00:13:32,820 --> 00:13:37,280 εκείνοι μπορεί να συμβεί στον browser σας, και στη συνέχεια, όταν θέλετε να κάνετε μια δημοσίευση ή κάτι 200 00:13:37,280 --> 00:13:40,000 μπορείτε απλά να στείλετε ένα άλλο αίτημα. 201 00:13:40,000 --> 00:13:45,350 >> Υπάρχει επίσης κάποια φανταχτερά πράγματα που μπορείτε να κάνετε πάνω από αυτό. 202 00:13:45,350 --> 00:13:49,550 Από την άποψη των πιο ειδικών τεχνικών πληροφοριών, 203 00:13:49,550 --> 00:13:53,360 ανάπτυξη στην πεδιάδα JavaScript μπορεί να είναι λίγο επώδυνη, 204 00:13:53,360 --> 00:13:56,220 έτσι υπάρχουν μερικές βιβλιοθήκες και τα εργαλεία που θα σας βοηθήσει πολύ με αυτό. 205 00:13:56,220 --> 00:14:03,690 Νομίζω ότι όλοι σας έχετε ίσως ακούσει για jQuery που καθιστά κάνει HTML rendering 206 00:14:03,690 --> 00:14:08,890 και τις πράξεις χειραγώγησης πολύ πιο εύκολο - έχουν πολλά φανταχτερά λειτουργίες για το ξεθώριασμα μέσα και έξω, 207 00:14:08,890 --> 00:14:12,020 και να κάνει εύθυμος κινούμενα σχέδια. 208 00:14:12,020 --> 00:14:13,720 Υπάρχει, επίσης, ότι αυτή η βιβλιοθήκη που ονομάζεται Underscore.js. 209 00:14:13,720 --> 00:14:20,760 Έχει πολλές χρήσιμες λειτουργίες χρησιμότητας, πράγματα που θα περιμένατε JavaScript για να έχουν 210 00:14:20,760 --> 00:14:24,740 ότι πραγματικά doesn't - τα πράγματα όπως ανακάτεμα μια σειρά, 211 00:14:24,740 --> 00:14:28,900 αφαίρεση αντιγράφων από ένα κατάλογο, ή επιπεδοποίηση μια λίστα καταλόγων. 212 00:14:28,900 --> 00:14:30,900 Αυτό είναι μόνο ένα μικρό δείγμα κώδικα. 213 00:14:30,900 --> 00:14:36,520 Υπογράμμισης έχει έναν τόνο από αυτά τα ωραία λειτουργίες που θέλετε θα έχετε όλη την ώρα. 214 00:14:36,520 --> 00:14:38,840 >> Και έπειτα υπάρχει 1 ακόμα βιβλιοθήκη που θα ήθελα να περάσετε λίγο χρόνο για 215 00:14:38,840 --> 00:14:44,800 ονομάζεται Backbone.js επειδή Backbone πραγματικά σας βοηθά να ασχοληθεί με τα μοντέλα από την πλευρά του πελάτη 216 00:14:44,800 --> 00:14:47,210 και ένα μεγάλο μέρος της σύγχυσης που μπορεί να προκαλέσει. 217 00:14:47,210 --> 00:14:53,550 Backbone σας δίνει αυτήν την έννοια των μοντέλων και συλλογών 218 00:14:53,550 --> 00:14:58,300 σε JavaScript που είναι βασικά ακριβώς όπως JavaScript αντικείμενα 219 00:14:58,300 --> 00:15:04,900 σε συστοιχίες JavaScript, αλλά θα έχουν τα γεγονότα, όταν αλλάζετε τις ιδιότητές τους. 220 00:15:04,900 --> 00:15:09,090 Ακριβώς όπως και στην JavaScript, μπορείτε να έχετε ένα συμβάν όταν ένα κουμπί γίνεται κλικ ή κάτι 221 00:15:09,090 --> 00:15:14,800 αυτά τα μοντέλα και τις συλλογές Backbone Backbone θα μεταδίδουν τα πράγματα όπως 222 00:15:14,800 --> 00:15:17,510 ότι όταν αλλάζουν. 223 00:15:17,510 --> 00:15:22,270 Αυτό σημαίνει ότι μπορείτε απλά να γράψετε κάτι σαν αυτό απόσπασμα του κώδικα εδώ - 224 00:15:22,270 --> 00:15:27,530 Αυτό λέει, κάθε φορά που προσθέτουν τίποτα στη σειρά των δημοσιεύσεων που ανασυντάξει το σύνολο του τοίχου. 225 00:15:27,530 --> 00:15:34,270 Και αυτό θα έλεγα κάθε φορά τον αριθμό ενός μετά του αρέσει αλλάζει, 226 00:15:34,270 --> 00:15:38,970 θα ειδοποιεί το χρήστη ότι κάποιος άρεσε θέσης τους. 227 00:15:38,970 --> 00:15:45,210 Ή κάθε φορά που κάποιο ακίνητο του μετά τις αλλαγές που επαναπροσδιορίσει τη θέση. 228 00:15:45,210 --> 00:15:51,050 Πράγματα, όπως ότι θα σας κερδίζει τόνους πολυπλοκότητας, διότι διαφορετικά 229 00:15:51,050 --> 00:15:55,440 αν δεν έχετε κάποια πλαίσιο όπως αυτό, τότε κάθε φορά στον κώδικά σας που αλλάζετε 230 00:15:55,440 --> 00:16:04,280 τίποτα για μια θέση, θα πρέπει να θυμηθείτε τον εαυτό σας να καλέσει όλες τις λειτουργίες καθιστούν 231 00:16:04,280 --> 00:16:07,680 και τέτοια πράγματα, και αν ήθελε να προσθέσει κάτι νέο που συνέβη 232 00:16:07,680 --> 00:16:10,680 κάθε φορά που τροποποιήσατε μια θέση που θα πρέπει να περάσει από κάθε χώρα σε σας 233 00:16:10,680 --> 00:16:14,610 κώδικα που τροποποιήσατε ένα μήνυμα και να προσθέσω ότι κάτι καινούργιο. 234 00:16:14,610 --> 00:16:21,450 Ένα πλαίσιο, όπως αυτό θα αφαιρέσει πολλά από εκείνη μεταξύ του στρώματος επικοινωνίας 235 00:16:21,450 --> 00:16:28,280 που κάνει τον κωδικό σας πολύπλοκο και δύσκολο να διατηρηθεί. 236 00:16:28,280 --> 00:16:31,170 >> Υπάρχει ένα μικρό κομμάτι για τις απόψεις επίσης. 237 00:16:31,170 --> 00:16:35,960 Πάω να αφήσει το μεγαλύτερο μέρος αυτής με τον Μπίλι επειδή δεν είναι τεχνικά πολύ δύσκολη. 238 00:16:35,960 --> 00:16:43,540 Χρησιμοποιήστε jQuery για τις απόψεις σας. Είναι σχεδόν σαν μια αναγκαιότητα σε αυτό το σημείο. 239 00:16:43,540 --> 00:16:46,290 Κάνει ακριβώς τα πάντα τόσο πολύ ευκολότερο. 240 00:16:46,290 --> 00:16:48,290 Υπάρχουν πολλές βιβλιοθήκες. 241 00:16:48,290 --> 00:16:49,970 Αν έχουν περιπλέξει τα στοιχεία διεπαφής χρήστη, 242 00:16:49,970 --> 00:16:57,250 αν θέλετε μια αυτόματη συμπλήρωση πράγμα ή σαν ένα από αυτά τα φανταχτερά πολλαπλών επιλογείς - 243 00:16:57,250 --> 00:17:04,790 αν θέλετε κάτι τέτοιο, θα πρέπει πιθανώς ακριβώς αναζήτηση γύρω 244 00:17:04,790 --> 00:17:08,130 και μπορείτε να βρείτε μια καλή βιβλιοθήκη που θα κάνει ό, τι θέλετε. 245 00:17:08,130 --> 00:17:11,579 Billy θα εξηγήσουμε περισσότερα για τα πραγματικά δύσκολα σημεία των απόψεων. 246 00:17:11,579 --> 00:17:17,530 Επίσης, όπως μια πλευρά σημείωση, Backbone έχει κάποια λειτουργικότητα για τις απόψεις επικοινωνούν 247 00:17:17,530 --> 00:17:22,800 όμορφα με τα μοντέλα - ματιά στην τεκμηρίωση για όλες αυτές τις βιβλιοθήκες, στην πραγματικότητα. 248 00:17:22,800 --> 00:17:28,270 Κοιτάξτε τα docs. Είναι πολύ καλογραμμένο και εύκολο να ακολουθήσει. 249 00:17:28,270 --> 00:17:33,890 Σε γενικές γραμμές, μπορείτε λίγο πολύ μόνο το Google, αν έχετε προβλήματα. 250 00:17:33,890 --> 00:17:36,370 Υπάρχουν πολλοί άνθρωποι που τις χρησιμοποιούν. 251 00:17:36,370 --> 00:17:42,020 Νομίζω ότι αυτό είναι σαν μια τελευταία σημείωση. 252 00:17:42,020 --> 00:17:48,770 >> Υπάρχουν επίσης και κάποιες πιο σύνθετες πράγματα που μπορείτε να κάνετε 253 00:17:48,770 --> 00:17:53,400 αν ψάχνετε να κάνει το web app σας επιπλέον φοβερό. 254 00:17:53,400 --> 00:17:59,760 Μπορείτε να το κάνετε - η νέα προδιαγραφή HTML5 έχει πολλά φανταχτερά πράγματα που μπορείτε να κάνετε. 255 00:17:59,760 --> 00:18:05,780 Τοπική αποθήκευση - η οποία είναι ότι μπορείτε να αποθηκεύσετε τα δεδομένα στο πρόγραμμα περιήγησης - 256 00:18:05,780 --> 00:18:09,470 αντί να χρειάζεται να πάει πίσω και να λάβουν γνώση του διακομιστή για τα πάντα, 257 00:18:09,470 --> 00:18:12,470 μπορείτε να κρατήσετε ορισμένα από αυτά στον πελάτη και που σας επιτρέπει ακόμα και οι άνθρωποι - 258 00:18:12,470 --> 00:18:20,850 σε ορισμένες περιπτώσεις μπορεί ακόμη και να σας αφήσει να χρησιμοποιήσετε τη σύνδεση ιστοσελίδα. 259 00:18:20,850 --> 00:18:26,980 Δεν υπάρχει αυτό το πράγμα που ονομάζεται WebSockets που είναι ένα διαφορετικό είδος της επικοινωνίας του δικτύου 260 00:18:26,980 --> 00:18:30,930 όπου αντί απλά να κάνετε μία αίτηση, θα έχετε απάντηση και είστε έτοιμοι, 261 00:18:30,930 --> 00:18:35,240 κρατάτε το άνοιγμα μιας σύνδεσης στο διακομιστή και έτσι μπορείτε να κάνετε πράγματα όπως 262 00:18:35,240 --> 00:18:37,240 ενημερώσεις σε πραγματικό χρόνο. 263 00:18:37,240 --> 00:18:42,020 Έτσι, εάν προσπαθείτε να κάνετε μια συνομιλία app, μπορείτε να χρησιμοποιήσετε WebSockets 264 00:18:42,020 --> 00:18:43,790 να επικοινωνούν και πίσω, έτσι ώστε δεν θα πρέπει να κρατήσει ζητώντας, 265 00:18:43,790 --> 00:18:48,410 "Ω, server, έκανε κάποιος να μου στείλει μια κουβέντα;" κάθε 10 δευτερόλεπτα ή κάτι τέτοιο. 266 00:18:48,410 --> 00:18:55,620 Υπάρχει επίσης ένα ενδιαφέρον χαρακτηριστικό HTML5, όπου μπορείτε να το κάνετε να μοιάζει 267 00:18:55,620 --> 00:18:58,340 η διεύθυνση URL της σελίδας αλλάζει χωρίς ποτέ να χρειάζεται να το φορτώσετε πραγματικά. 268 00:18:58,340 --> 00:19:03,230 Μπορείτε να χρησιμοποιήσετε μπρος και πίσω κουμπιά χωρίς να κάνει μια δέσμη των αιτημάτων του δικτύου. 269 00:19:03,230 --> 00:19:14,660 Πράγματα όπως αυτό είναι πραγματικά χρήσιμο από την άποψη να καταστεί ταχεία, αλλά επίσης να λειτουργήσει σαν ένα web app πρέπει. 270 00:19:14,660 --> 00:19:17,680 >> Υπάρχει, επίσης, αυτό το πράγμα που ονομάζεται CoffeeScript. 271 00:19:17,680 --> 00:19:24,450 CoffeeScript είναι μια διαφορετική γλώσσα, στην πραγματικότητα, που συγκεντρώνει, κάτω JavaScript. 272 00:19:24,450 --> 00:19:30,080 Θα γράψω όλα τον κωδικό σας σε CoffeeScript, και στη συνέχεια να εκτελέσετε αυτή την compiler, 273 00:19:30,080 --> 00:19:33,300 και φτύσει ένα αρχείο JavaScript που μπορείτε να συμπεριλάβετε στην ιστοσελίδα σας. 274 00:19:33,300 --> 00:19:38,860 Ο λόγος που CoffeeScript είναι ωραίο είναι επειδή ξεφορτώνεται πολλά από τα 275 00:19:38,860 --> 00:19:44,760 παράξενες περιπτώσεις που JavaScript έχει πού ισούται ίσων, 276 00:19:44,760 --> 00:19:51,130 και ισούται με ίσους κάνουν διαφορετικά πράγματα, ή θέλετε - 277 00:19:51,130 --> 00:19:55,740 έχει καλύτερο σύνταξη για την εξέταση των σειρών και λειτουργίες. 278 00:19:55,740 --> 00:20:00,460 Αυτό είναι ένα μικρό απόσπασμα από CoffeeScript που παράγει μια λίστα με όλες τις πλατείες 279 00:20:00,460 --> 00:20:04,900 από 10 ^ 2 προς 1 ^ 2 με αντίστροφη σειρά. 280 00:20:04,900 --> 00:20:08,410 Όπως μπορείτε να δείτε, CoffeeScript συχνά σας επιτρέπει να εκφράζουν σε 1 γραμμή 281 00:20:08,410 --> 00:20:10,890 τι θα πάρει 5 γραμμές JavaScript. 282 00:20:10,890 --> 00:20:13,230 Μπορεί να κάνει τα πράγματα πολύ πιο εύκολο. 283 00:20:13,230 --> 00:20:15,390 Είναι ένα μικρό κομμάτι των νέων σύνταξη για να μάθουν από την πρώτη, 284 00:20:15,390 --> 00:20:18,010 αλλά σίγουρα θα σας κάνουν πιο παραγωγικούς μακροπρόθεσμα. 285 00:20:18,010 --> 00:20:22,050 >> Μπορείτε επίσης να χρησιμοποιήσετε άλλες γλώσσες του διακομιστή από PHP - 286 00:20:22,050 --> 00:20:27,570 γλώσσες όπως η Ruby, Python, ή υπάρχει ακόμα ένα έργο που ονομάζεται Node.js 287 00:20:27,570 --> 00:20:31,450 που θα σας αφήσει να χρησιμοποιήσετε JavaScript στο διακομιστή. 288 00:20:31,450 --> 00:20:34,700 Προσωπικά, εγώ πραγματικά, πραγματικά μισούν PHP. 289 00:20:34,700 --> 00:20:38,310 Απλώς δεν μπορώ να απολαμβάνω να δουλεύω με αυτό. 290 00:20:38,310 --> 00:20:43,450 Αν, επίσης, πιστεύουν ότι είναι ένα φοβερό cluge της γλώσσας, 291 00:20:43,450 --> 00:20:46,160 τότε μπορείτε να χρησιμοποιήσετε ένα από αυτά αντ 'αυτού. 292 00:20:46,160 --> 00:20:54,780 Σε γενικές γραμμές, αν θέλετε να κάνετε κάτι και εσείς δεν ξέρει πραγματικά πώς θα το κάνουμε, 293 00:20:54,780 --> 00:20:56,780 Απλά αναζήτηση στο Internet. 294 00:20:56,780 --> 00:20:59,990 Υπάρχουν τόνοι και τόνοι των πόρων, ιδίως στις - 295 00:20:59,990 --> 00:21:03,260 StackOverflow είναι μεγάλη. 296 00:21:03,260 --> 00:21:06,400 Είναι αυτή η ιστοσελίδα όπου οι προγραμματιστές κάνουν ερωτήσεις μεταξύ τους. 297 00:21:06,400 --> 00:21:09,690 Μπορεί να έχετε τρέξει σε αυτό, αν είχατε πρόβλημα για το πρόβλημα CS50 σύνολα. 298 00:21:09,690 --> 00:21:16,820 Και υπάρχουν τόνοι των βιβλιοθηκών για να κάνει σχεδόν ό, τι θα θέλατε. 299 00:21:16,820 --> 00:21:21,710 Αν θέλετε να κάνετε κάτι και δεν ξέρετε πώς να το κάνουμε, 300 00:21:21,710 --> 00:21:23,710 μην υποθέσετε ότι αυτό είναι αδύνατο. 301 00:21:23,710 --> 00:21:26,160 Απλά κοιτάξτε γύρω και μπορείτε να βρείτε μερικές καλές πόρους. 302 00:21:26,160 --> 00:21:29,280 >> Ως γενική τυλίξτε επάνω, 303 00:21:29,280 --> 00:21:33,650 οι κύριες takeaways είναι να κρατήσει τα πράγματα απλά. 304 00:21:33,650 --> 00:21:36,010 Το πιο πολύπλοκο κώδικα σας είναι στην αρχή 305 00:21:36,010 --> 00:21:40,370 και τόσο περισσότερο θα προσπαθήσουμε και να κάνουμε φανταχτερά πράγματα, 306 00:21:40,370 --> 00:21:43,300 τόσο περισσότερος χρόνος θα χρειαστεί για να πάρει κάτι πραγματικά λειτουργική 307 00:21:43,300 --> 00:21:46,480 και τόσο πιο δύσκολο θα είναι να αλλάξει αργότερα. 308 00:21:46,480 --> 00:21:49,580 Έτσι, κάνουμε τα πράγματα με τον χαζό, εύκολο τρόπο για πρώτη φορά. 309 00:21:49,580 --> 00:21:51,720 Για να πάει μαζί με αυτό, 310 00:21:51,720 --> 00:21:59,070 δεν πρέπει να φοβάται να ρίχνουν μακριά παλιό κώδικα ή τον καθαρισμό μέχρι πολύ. 311 00:21:59,070 --> 00:22:05,320 Σε γενικές γραμμές, όταν έχετε πραγματικά κάτι εργασίας, 312 00:22:05,320 --> 00:22:09,640 Είναι πολύ πιο εύκολο να σκεφτούμε ό, τι όταν είστε ακόμα στα αρχικά στάδια 313 00:22:09,640 --> 00:22:12,610 πώς μπορώ να θέσει αυτό όλοι μαζί. 314 00:22:12,610 --> 00:22:17,500 Είναι καλύτερο να γίνει η πιο χαζό δυνατό σχεδιασμό που λειτουργεί 315 00:22:17,500 --> 00:22:22,270 και στη συνέχεια να βελτιώσει επαναληπτικά ό, τι προσπαθεί να πάρει τα πάντα σωστά την πρώτη φορά. 316 00:22:22,270 --> 00:22:28,330 Από την άποψη της διαίρεσης client-server, να προσπαθήσουμε και να κρατήσει το διακομιστή σας είναι πολύ απλό - 317 00:22:28,330 --> 00:22:33,030 απλά μια βάση δεδομένων και μερικά ταυτότητας και δεν κάνουν καμία σκληρή δουλειά εκεί. 318 00:22:33,030 --> 00:22:37,540 Μήπως όλα περίπλοκα πράγματα σας από την πλευρά του πελάτη στο πρόγραμμα περιήγησης 319 00:22:37,540 --> 00:22:40,650 σε JavaScript όσο μπορείτε. 320 00:22:40,650 --> 00:22:43,420 Κοιτάξτε γύρω για τις βιβλιοθήκες που κάνουν τη ζωή σας καλύτερη. 321 00:22:43,420 --> 00:22:46,850 Πάντα καλύτερο να χρησιμοποιήσετε κώδικα που κάποιος άλλος έγραψε 322 00:22:46,850 --> 00:22:49,850 αν - και να μην το γράψετε μόνοι σας. 323 00:22:49,850 --> 00:22:57,560 Υπάρχουν πολλά πράγματα στο διαδίκτυο. Το Google είναι ο καλύτερος φίλος σας. 324 00:22:57,560 --> 00:22:59,560 Το Google είναι ο καλύτερος φίλος του προγραμματιστή. 325 00:22:59,560 --> 00:23:07,620 Ναι, σίγουρα δεν πρέπει να φοβόμαστε να κοιτάξουμε γύρω μας για τα πράγματα. 326 00:23:07,620 --> 00:23:11,860 Εντάξει. Και πάνω στον Billy. 327 00:23:11,860 --> 00:23:14,600 >> [Billy] Στην πραγματικότητα, πριν αρχίσω με κάποια πράγματα το σχεδιασμό, 328 00:23:14,600 --> 00:23:17,250 Υπάρχει κάποιος που έχει απορίες για τον Ben για κάτι που μίλησε για? 329 00:23:17,250 --> 00:23:20,290 Εντάξει, καλά. 330 00:23:20,290 --> 00:23:22,220 Και πάλι, ενημερώστε μας αν κάτι δεν είναι σαφές 331 00:23:22,220 --> 00:23:25,420 ή αν θέλετε να πάμε για κάτι λίγο περισσότερο. 332 00:23:25,420 --> 00:23:30,330 Πάω να κάνουν ένα βήμα πίσω λίγο και να μιλήσουμε για τα πιο θεμελιώδη τμήματα του σχεδιασμού. 333 00:23:30,330 --> 00:23:34,840 Ben αναφέρουν το μοντέλο που ονομάζεται - συγνώμη, το μοντέλο του συστήματος θέα ελεγκτή 334 00:23:34,840 --> 00:23:38,520 η οποία είναι ένα είδος τεχνική πτυχή, έτσι είμαι πρόκειται να δούμε τη θέα συγκεκριμένα, 335 00:23:38,520 --> 00:23:42,930 και πάω να ξεκινήσω με το πώς θέλετε να σχεδιάσουν μια άποψη που φαίνεται ωραίο. 336 00:23:42,930 --> 00:23:50,540 Εδώ είναι το είδος της μια πραγματικά βασικό πρότυπο για τη γάτα μας στο Facebook. 337 00:23:50,540 --> 00:23:54,190 Νομίζω ότι υπάρχουν κάποιες βασικές αρχές σε μοντέρνο σχεδιασμό UI 338 00:23:54,190 --> 00:23:56,190 που αξίζει να πάρει. 339 00:23:56,190 --> 00:23:58,210 Μπορείτε να παρατηρήσετε ότι υπάρχει ένα πολύ λευκό χώρο σε όλη τη σελίδα, 340 00:23:58,210 --> 00:24:00,790 άφθονο χώρο για τα πράγματα. 341 00:24:00,790 --> 00:24:02,580 Να μην αισθάνονται σαν να πρέπει να σκουός τα πράγματα σε μια σελίδα. 342 00:24:02,580 --> 00:24:06,700 Θέλετε να αφήσετε πολλά περιθώρια ανοιχτό, και αν πάτε σε σχεδόν κάθε σύγχρονη ιστοσελίδα 343 00:24:06,700 --> 00:24:08,380 θα δείτε ότι υπάρχει λευκό παντού. 344 00:24:08,380 --> 00:24:10,380 Υπάρχει λευκούς σε μέρη που δεν θα περιμένατε. 345 00:24:10,380 --> 00:24:14,570 Έχετε αυτή τη χρωματική παλέτα, και είναι σοφό στην αρχή 346 00:24:14,570 --> 00:24:17,880 για να επιλέξετε μια παλέτα χρωμάτων που θα πάμε να εργαστεί με και να αναπτυχθούν. 347 00:24:17,880 --> 00:24:22,250 Μπορείτε, επίσης, - βοηθά να επιλέξετε μια οικογένεια, και με αυτόν τον τρόπο είστε το είδος της εργασίας με 348 00:24:22,250 --> 00:24:24,450 αυτές οι συγκεκριμένες βασικές αρχές του σχεδιασμού. 349 00:24:24,450 --> 00:24:26,910 Έχετε τύπο σας, έχετε τα χρώματά σας, και στη συνέχεια μπορείτε να το είδος της 350 00:24:26,910 --> 00:24:29,380 ταιριάζουν όλα τα άλλα στον ως αναγκαία. 351 00:24:29,380 --> 00:24:37,710 Έτσι, όπως είπα, με το χρώμα σχεδίου σας που θέλετε να χρησιμοποιήσετε τα πιο τολμηρά χρώματα των χρωμάτων σας 352 00:24:37,710 --> 00:24:40,320 φειδώ. Κεφαλιά είναι ωραία. Τα κουμπιά είναι ωραίο να έχουμε πραγματικά μεγάλα, φανταχτερά χρώματα. 353 00:24:40,320 --> 00:24:43,710 Αλλά σε γενικές γραμμές, αν έχετε μια ιστοσελίδα που έχει τα χρώματα παντού, 354 00:24:43,710 --> 00:24:47,250 το μόνο που κοιτάζει στο πρόσωπο, μοιάζει απλά γεμάτα, και δεν είναι καλό. 355 00:24:47,250 --> 00:24:50,430 Θέλετε να χρησιμοποιήσετε γενικά ανοιχτά χρώματα. 356 00:24:50,430 --> 00:24:52,890 Προσπαθήστε να, και πάλι, να πάρει ένα αρκετά συνεκτικό συνδυασμό χρωμάτων. 357 00:24:52,890 --> 00:24:56,640 Μπορείτε να έχετε αυτές τις μικρές πινελιές από πολλά χρώματα - 358 00:24:56,640 --> 00:25:00,240 που μπορεί να φαίνονται πολύ ωραία, αλλά θέλετε να τα χρησιμοποιήσετε πολύ φειδώ. 359 00:25:00,240 --> 00:25:04,270 >> Όπως είπα, θέλετε να είναι ελάχιστες. Λιγότερο είναι σχεδόν πάντα περισσότερο. 360 00:25:04,270 --> 00:25:07,430 Εάν μπορείτε να εμφανίσετε κάτι ή όχι εμφανίσει κάτι, 361 00:25:07,430 --> 00:25:10,230 και είστε το είδος του βέβαιοι για το αν θα πρέπει να υπάρχει από προεπιλογή - 362 00:25:10,230 --> 00:25:13,400 ίσως είσαι καλύτερα μακριά αφήνοντας έξω. Μπορείτε πάντα να προσθέσετε αργότερα. 363 00:25:13,400 --> 00:25:16,620 Ναι, να κρατήσει τα πράγματα απλά. 364 00:25:16,620 --> 00:25:19,510 Αλλά το πιο σημαντικό, θέλετε να εξετάσει πολλαπλά σχέδια. 365 00:25:19,510 --> 00:25:23,520 Μην νομίζετε ότι όταν κάνετε μια ιστοσελίδα, μπορείτε να έχετε στο μυαλό σας ότι πρόκειται να 366 00:25:23,520 --> 00:25:26,310 κάνουν το site σε ένα συγκεκριμένο τρόπο, και πρόκειται να δούμε ακριβώς όπως αυτό. 367 00:25:26,310 --> 00:25:29,830 Είναι πρόκειται να έχουν την μπλε επικεφαλίδα στην κορυφή και το μπλε μπαρ δίπλα 368 00:25:29,830 --> 00:25:32,670 και στη συνέχεια το κίτρινο υπο-κεφαλίδα πράγμα. 369 00:25:32,670 --> 00:25:34,670 Θέλετε να κάνετε πολλαπλά πρότυπα. 370 00:25:34,670 --> 00:25:37,350 Μπορείτε είτε - αν είσαι καλός με το Photo Shop, μπορείτε να ανοίξετε ότι μέχρι και το είδος των 371 00:25:37,350 --> 00:25:39,600 σχεδιάσουμε ένα δικτυακό τόπο, όπως θα θέλατε να δούμε. 372 00:25:39,600 --> 00:25:41,680 Αν όχι, μπορείτε να χρησιμοποιήσετε μόνο το στυλό και το χαρτί, 373 00:25:41,680 --> 00:25:44,000 αλλά μηδέν μέχρι πολλαπλά σχέδια. 374 00:25:44,000 --> 00:25:47,000 Θέλετε να έχετε ουσιαστικά ένα που έχει συσταθεί όπου έχετε πολλά διαφορετικά σχέδια, 375 00:25:47,000 --> 00:25:50,810 και αν κάποιος καταλήγει εργασίας, τότε αυτό είναι σπουδαίο. 376 00:25:50,810 --> 00:25:53,370 Αν κάποιος καταλήγει να αποτυγχάνει, τότε θα πρέπει πάντα ο ένας τον άλλο να στραφώ. 377 00:25:53,370 --> 00:25:57,960 Σε γενικές γραμμές, δεν αισθάνονται σαν να πρέπει να περιορίζεται 378 00:25:57,960 --> 00:26:00,830 σε ό, τι σχέδιο που αρχικά αποφασίσει σχετικά. 379 00:26:00,830 --> 00:26:04,420 Τα σχέδια είναι πολύ μεταβλητά, και μέρος της σημασίας του μοντέλου 380 00:26:04,420 --> 00:26:09,480 άποψη ελεγκτή του συστήματος είναι ότι μπορείτε να ανταλλάξετε μέσα και έξω διαφορετικές απόψεις που θέλετε. 381 00:26:09,480 --> 00:26:13,510 Μπορείτε να επηρεάσει τα δεδομένα με έναν τρόπο, και στη συνέχεια να αποφασίσει, oh, στην πραγματικότητα, αυτό δεν λειτουργεί τόσο καλά. 382 00:26:13,510 --> 00:26:19,190 Νομίζω ότι είναι το είδος της πολύ περίπλοκο ή υπάρχει ένα μέρος που εδώ δεν είναι πραγματικά εργάζονται, 383 00:26:19,190 --> 00:26:22,150 έτσι είμαι πρόκειται να εγκαταλείψει εντελώς την άποψη αυτή και swap σε ένα εντελώς νέο. 384 00:26:22,150 --> 00:26:24,790 Μπορούμε ακόμα να χρησιμοποιήσουμε τα παλιά μοντέλα και τα παλιά ελεγκτές. 385 00:26:24,790 --> 00:26:27,490 Μπορούμε να κάνουμε τα πάντα για το διακομιστή και πελάτη, όπως θα πριν. 386 00:26:27,490 --> 00:26:32,850 Αλλά η πραγματική κύμα των δεδομένων όπως εμφανίζεται πρόκειται να είναι ελαφρώς διαφορετική. 387 00:26:32,850 --> 00:26:35,840 >> Όσον αφορά στην πραγματικότητα την εφαρμογή το σχέδιο που θέλετε, 388 00:26:35,840 --> 00:26:39,330 μόλις έχετε μερικά σχέδια σκιαγράφησε σε χαρτί ή σε Photo Shop ή οτιδήποτε άλλο, 389 00:26:39,330 --> 00:26:42,120 υπάρχουν μια σειρά από εργαλεία που είναι διαθέσιμα για εσάς. 390 00:26:42,120 --> 00:26:45,700 Το πρώτο είστε πολύ εξοικειωμένοι με το οποίο είναι HTML, PHP, ή οτιδήποτε άλλο 391 00:26:45,700 --> 00:26:48,990 γλώσσα που χρησιμοποιείτε μόνο για να κωδικοποιήσει τις στατικές σελίδες στην ιστοσελίδα σας. 392 00:26:48,990 --> 00:26:51,990 Έχετε δουλέψει πολύ με την HTML που ευγενικό εκ μέρους σας δίνει αυτές τις ετικέτες 393 00:26:51,990 --> 00:26:57,820 ότι μπορείτε να βάλετε τα πράγματα σε, και ουσιαστικά είναι ένας τρόπος οργάνωσης του περιεχομένου σας. 394 00:26:57,820 --> 00:27:00,990 Για παράδειγμα, έχετε την επικεφαλίδα εκεί, οπότε θα πάμε να έχουν μια ετικέτα επικεφαλίδας, 395 00:27:00,990 --> 00:27:05,770 και πρόκειται να έχουμε κάποιο κείμενο μέσα από το οποίο κατά πάσα πιθανότητα θα είναι σε μια άλλη ετικέτα. 396 00:27:05,770 --> 00:27:08,380 Στη συνέχεια, έχετε μια πλαϊνή μπάρα ίσως με κάποιες διαφορετικές συνδέσεις, 397 00:27:08,380 --> 00:27:10,160 και εκείνων που πρόκειται να είναι όλα σε ξεχωριστές ετικέτες. 398 00:27:10,160 --> 00:27:13,870 Έτσι, βασικά HTML στην καρδιά του είναι ένας τρόπος διαίρεσης της σελίδας πώς 399 00:27:13,870 --> 00:27:16,980 που τελικά θέλετε να το διαμορφώσετε. 400 00:27:16,980 --> 00:27:18,980 Έτσι και πάλι, έχετε δει ότι πριν. 401 00:27:18,980 --> 00:27:20,540 Είσαι αρκετά άνετα με την εργασία με το τώρα 402 00:27:20,540 --> 00:27:23,120 δεδομένου ότι έχετε κάνει το τελευταίο το chipset ελπίζουμε, 403 00:27:23,120 --> 00:27:26,150 έτσι ώστε πρέπει να υπάρχει πρόβλημα. 404 00:27:26,150 --> 00:27:31,280 >> Στη συνέχεια, έχετε CSS που χειρίζεται ουσιαστικά όλες τις πτυχές του σχεδιασμού στατικών. 405 00:27:31,280 --> 00:27:35,320 Θα χειριστεί όλα τα χρώματα, όλα της τοποθέτησης των διαφόρων στοιχείων, 406 00:27:35,320 --> 00:27:36,840 όπου πηγαίνουν το ένα ως προς το άλλο, 407 00:27:36,840 --> 00:27:41,530 πόσο μεγάλο είναι, τα διάφορα είδη τοποθετήσεις που θα έχουν - 408 00:27:41,530 --> 00:27:46,030 Με άλλα λόγια, μπορείτε να έχετε τα πράγματα σταθερά, έτσι ώστε όταν κάνετε κύλιση προς τα κάτω μένουν, 409 00:27:46,030 --> 00:27:48,700 ή μπορείτε να έχετε τα πράγματα σε σχέση με άλλα στοιχεία. 410 00:27:48,700 --> 00:27:50,730 Όλα αυτού του είδους τα πράγματα είναι σε CSS. 411 00:27:50,730 --> 00:27:54,630 Επιπλέον, μπορείτε να κάνετε διάφορες διακοσμήσεις, μπορείτε να έχετε τα χρώματα κειμένου, 412 00:27:54,630 --> 00:27:56,630 εφέ κειμένου, όλα αυτού του είδους τα πράγματα. 413 00:27:56,630 --> 00:28:00,360 Ben έδωσε ένα πολύ καλό σεμινάριο σχετικά με αυτό το περασμένο Σαββατοκύριακο, 414 00:28:00,360 --> 00:28:04,450 και έτσι θα ήθελα να ελέγξετε σίγουρα ότι αν σκοπεύετε να κάνει κάποια φανταχτερά πράγματα με CSS. 415 00:28:04,450 --> 00:28:09,850 CSS3 είναι στην πραγματικότητα η πιο πρόσφατη έκδοση του CSS, και μπορεί να κάνει όλα τα είδη των πραγματικά ωραία πράγματα. 416 00:28:09,850 --> 00:28:14,750 Μπορεί να κάνει κλίσεις? Μπορείτε να έχετε ωραία, στρογγυλεμένες γωνίες? Μπορείτε να κάνετε όλα τα είδη της ουσίας 417 00:28:14,750 --> 00:28:17,940 να κάνει τον ιστοχώρο σας να φανεί πιο σύγχρονο και φανταχτερό. 418 00:28:17,940 --> 00:28:22,150 >> Το επόμενο εργαλείο είναι JavaScript και jQuery που Ben μίλησε λίγο για, 419 00:28:22,150 --> 00:28:24,150 αλλά θα πάρει λίγο μακρύτερα σε. 420 00:28:24,150 --> 00:28:28,100 JavaScript, όπως έχετε δουλέψει με το λίγο, ή τουλάχιστον να δει σε διάλεξη, 421 00:28:28,100 --> 00:28:31,870 Είναι το είδος του ένας τρόπος δυναμικά να κάνει πράγματα σε HTML. 422 00:28:31,870 --> 00:28:35,950 HTML, όπως γνωρίζετε, είναι στατική, έτσι ώστε τη στιγμή που έχετε HTML δεν μπορείτε να το τροποποιήσετε. 423 00:28:35,950 --> 00:28:40,050 Αλλά JavaScript, κατά κάποιο τρόπο, είναι ένας τρόπος για να είναι σε θέση να τροποποιήσει HTML. 424 00:28:40,050 --> 00:28:44,520 Έτσι, μπορείτε να το κάνετε αυτό, και αυτό είναι σπουδαίο, αλλά JavaScript είναι πραγματικά ένας πόνος για να εργαστεί με. 425 00:28:44,520 --> 00:28:49,050 Είναι τόσο μεγάλη και αμβλεία και να κάνει ακόμη και τα απλούστερα πράγματα 426 00:28:49,050 --> 00:28:51,630 απαιτεί πολλές γραμμές του JavaScript. 427 00:28:51,630 --> 00:28:55,410 Έτσι, jQuery είναι βασικά μια βιβλιοθήκη για JavaScript, που απλοποιεί όλα αυτά. 428 00:28:55,410 --> 00:28:59,880 Λέει, εντάξει, αν θέλετε να έχετε ένα τετράγωνο κουτί προέρχονται από την αριστερά 429 00:28:59,880 --> 00:29:03,980 και σβήνουν μέσα στη σελίδα, έτσι ώστε να είναι στη μέση, σε JavaScript που θα πάρει - 430 00:29:03,980 --> 00:29:06,340 Δεν ξέρω, εκατό γραμμές για να κάνει, και θα είναι ένας πόνος, 431 00:29:06,340 --> 00:29:10,540 και θα βγει από αυτό μισεί τα πάντα για τον προγραμματισμό web. 432 00:29:10,540 --> 00:29:15,380 JQuery έχετε ουσιαστικά το στοιχείο-dot-fade-in, ή κάτι τέτοιο. 433 00:29:15,380 --> 00:29:18,580 Έτσι, πολύ, πολύ απλές λειτουργίες που θα σας επιτρέψει να κάνετε όλα τα είδη των δροσερό κινούμενα σχέδια 434 00:29:18,580 --> 00:29:20,580 και αυτό το είδος του πράγματος. 435 00:29:20,580 --> 00:29:23,300 Το άλλο πράγμα που αυτά τα 2 είναι πραγματικά καλό για μόλις κάνει πράγματα δυναμικά 436 00:29:23,300 --> 00:29:25,300 με την ιστοσελίδα. 437 00:29:25,300 --> 00:29:28,370 Έτσι, όχι μόνο έχοντας τη σελίδα HTML σας - η οποία εμφανίζει κάποια δεδομένα, αλλά στην πραγματικότητα δεν 438 00:29:28,370 --> 00:29:32,130 κάνει τίποτα - JavaScript και jQuery θα σας αφήσει να έχουν κουμπιά που μπορείτε να κάνετε κλικ, 439 00:29:32,130 --> 00:29:37,960 και μπορείτε να σύρετε τα στοιχεία και τους re-order και να τους ταξινομήσετε, και να έχουν νέα στοιχεία 440 00:29:37,960 --> 00:29:40,500 προστεθεί ή να αφαιρεθεί. Μπορείτε να προσθέσετε-διαγραφή, αυτό το είδος του πράγματος. 441 00:29:40,500 --> 00:29:44,570 Έτσι, jQuery κάνει τους τόνους των δροσερά πράγματα. 442 00:29:44,570 --> 00:29:48,840 Και Vipul δίνει πραγματικά ένα σεμινάριο για το σήμερα, πιστεύω, σε 5-ώρα, 443 00:29:48,840 --> 00:29:51,220 οπότε αν μπορείτε να μείνω για τόσο καιρό, ότι θα ήταν - 5 ή 4; 444 00:29:51,220 --> 00:29:54,930 Four. Λυπάμαι. Είναι πραγματικά σωστό, μετά από αυτό, οπότε θα ήθελα να συστήσω 445 00:29:54,930 --> 00:29:56,680 κολλήσει γύρω για αυτό, αν μπορείτε. 446 00:29:56,680 --> 00:30:00,180 JQuery είναι super, super χρήσιμο, και θα είστε σε θέση να κάνει πολλά πραγματικά ωραία πράγματα με αυτό 447 00:30:00,180 --> 00:30:03,460 για λίγο πολύ κάθε έργο ανάπτυξης ιστοσελίδων. 448 00:30:03,460 --> 00:30:06,200 >> Τώρα είμαι πρόκειται να πάρει σε ένα είδος διάκρισης. 449 00:30:06,200 --> 00:30:08,210 Έχω μιλήσει ουσιαστικά για διεπαφή χρήστη. 450 00:30:08,210 --> 00:30:11,510 Διεπαφή χρήστη είναι μόνο το σχεδιασμό του site. 451 00:30:11,510 --> 00:30:13,780 Αλλά υπάρχει ένα είδος άλλη έννοια, η οποία είναι η εμπειρία του χρήστη. 452 00:30:13,780 --> 00:30:15,900 Τα δύο είναι πολύ διαφορετικές. 453 00:30:15,900 --> 00:30:19,440 Η διεπαφή είναι σίγουρα μέρος της εμπειρίας. 454 00:30:19,440 --> 00:30:21,340 Με άλλα λόγια, όταν θα πάτε σε ένα site, κοιτάς το περιβάλλον. 455 00:30:21,340 --> 00:30:22,960 Αυτό είναι μέρος του πώς βιώνετε το χώρο. 456 00:30:22,960 --> 00:30:24,960 Αλλά η εμπειρία του χρήστη είναι περισσότερο από αυτό. 457 00:30:24,960 --> 00:30:29,910 Εμπειρία του χρήστη είναι σχετικά με το τι η εντύπωση που παίρνει ο χρήστης από το site σας. 458 00:30:29,910 --> 00:30:31,910 Έτσι, προφανώς, η διασύνδεση είναι ένα μέρος αυτής. 459 00:30:31,910 --> 00:30:35,340 Και αυτό είναι σίγουρα ένα απαραίτητο μέρος, αλλά δεν είναι επαρκής. 460 00:30:35,340 --> 00:30:38,790 Με άλλα λόγια, αν έχετε μια ωραία διεπαφή, και είναι όμορφο και πολύχρωμο και όλα αυτά, 461 00:30:38,790 --> 00:30:43,650 αυτό είναι μεγάλη? αλλά αν ο χρήστης πηγαίνει στην περιοχή σας, βλέπει μια όμορφη διάταξη και είναι συγχέεται με 462 00:30:43,650 --> 00:30:47,060 τα πάντα, δεν έχει καμία ιδέα για το πώς να κάνει τίποτα, τότε προφανώς έχετε κάνει ένα πραγματικά 463 00:30:47,060 --> 00:30:48,930 κακή ιστοσελίδα. 464 00:30:48,930 --> 00:30:50,930 Αυτό είναι το είδος της εμπειρίας του χρήστη, όπου μπαίνει 465 00:30:50,930 --> 00:30:54,570 Πάω να μιλήσω λίγο για UX design - UX είναι μικρή για την εμπειρία του χρήστη - 466 00:30:54,570 --> 00:30:58,050 και το είδος του πώς μπορείτε να βεβαιωθείτε ότι έχετε μια καλή εμπειρία για το χρήστη. 467 00:30:58,050 --> 00:31:04,330 Το πρώτο σημείο είναι ότι μπορείτε να σχεδιάσετε μια ιστοσελίδα όπου ο χρήστης μπορεί να κάνει τίποτα που 468 00:31:04,330 --> 00:31:06,820 ότι ο χρήστης θέλει ενδεχομένως. 469 00:31:06,820 --> 00:31:08,940 Αλλά αν ο χρήστης δεν μπορεί να καταλάβω πώς να κάνει αυτά τα πράγματα - 470 00:31:08,940 --> 00:31:12,850 Με άλλα λόγια, αν ο χρήστης δεν έχει μια καλή ιδέα όταν πηγαίνουν στο site σας, 471 00:31:12,850 --> 00:31:17,660 "Ω, αν θέλετε να ενημερώσετε το προφίλ μου, τότε κάντε κλικ σε αυτό το κουμπί, ή αν θέλετε να δημοσιεύσετε στην 472 00:31:17,660 --> 00:31:20,850 τοίχο κάποιου, τότε θα πάω στον τοίχο τους και κάντε κλικ σε ένα μικρό κουτί. " 473 00:31:20,850 --> 00:31:24,410 Εάν ο χρήστης δεν γνωρίζει ότι, στη συνέχεια, έχετε ουσιαστικά στην πραγματικότητα δεν 474 00:31:24,410 --> 00:31:27,080 εφαρμοστεί αυτή τη λειτουργία σωστά. 475 00:31:27,080 --> 00:31:30,900 Μέρος της εφαρμογής ενός λειτουργικότητα είναι ότι οι χρήστες είναι πράγματι σε θέση να το χρησιμοποιήσετε. 476 00:31:30,900 --> 00:31:34,810 Και ίσως να είναι απογοητευτικό - μπορείτε να κάνετε μια ιστοσελίδα, και μπορεί να κάνει όλα τα είδη της 477 00:31:34,810 --> 00:31:37,810 υπέροχα πράγματα, αλλά τότε θα έχετε τους ανθρώπους να δοκιμάσουν και να πει, «Δεν μπορεί να το κάνει αυτό. 478 00:31:37,810 --> 00:31:39,770 Γιατί δεν μπορεί να το κάνει αυτό; "και θα πείτε πίσω σε αυτούς, 479 00:31:39,770 --> 00:31:44,420 "Λοιπόν, αυτό μπορεί. Απλά πρέπει να πάτε στο μενού του 7ου drop-down σε αυτή τη σκοτεινή 480 00:31:44,420 --> 00:31:48,470 σελίδα που βρίσκεται μόνο από έναν σύνδεσμο στο κάτω δεξιά γωνία-χέρι »ή κάτι τέτοιο. 481 00:31:48,470 --> 00:31:50,430 Προφανώς, δεν θέλετε αυτό. 482 00:31:50,430 --> 00:31:53,420 Θέλετε να είναι σαφές στους χρήστες σας τι υποτίθεται ότι πρέπει να κάνουμε, 483 00:31:53,420 --> 00:31:56,240 και θα πρέπει να είναι απλή και διαισθητική για αυτούς. 484 00:31:56,240 --> 00:32:01,180 >> Ένα άλλο πράγμα που θέλετε να προσπαθήσουμε να κάνουμε είναι, αν κάποιος πρόκειται να πάει στο site σας 485 00:32:01,180 --> 00:32:05,520 και 9 στις 10 φορές κάνουμε ενέργειες Α, και 1 από 10 φορές κάνουν δράσης Β, 486 00:32:05,520 --> 00:32:08,950 ίσως θέλετε να εστιάσετε την εμπειρία τους σχετικά με τη δράση A. 487 00:32:08,950 --> 00:32:12,240 Με άλλα λόγια, θέλετε να κάνετε το πολύ, πολύ σαφές πώς να το κάνουμε A. 488 00:32:12,240 --> 00:32:15,980 Α θα πρέπει να είναι μπροστά και κέντρο - πάτε στο site, δείτε? Oh, είναι εκεί. 489 00:32:15,980 --> 00:32:20,850 Εκτιμώντας B προφανώς θέλετε να είναι σαφής, αλλά μπορείτε να το αφήσετε λίγο περισσότερο 490 00:32:20,850 --> 00:32:22,850 στο παρασκήνιο. 491 00:32:22,850 --> 00:32:24,640 David δίνει ένα καλό παράδειγμα αυτού στη διάλεξη, 492 00:32:24,640 --> 00:32:26,640 το οποίο είναι το σύστημα της Βοστώνης Τ. 493 00:32:26,640 --> 00:32:29,440 Όταν πάτε στο Boston T και θέλετε να αγοράσετε ένα εισιτήριο, 494 00:32:29,440 --> 00:32:32,700 θα πρέπει να μπει σε 5 μενού για να μπορέσετε να αγοράσετε πραγματικά ένα εισιτήριο 495 00:32:32,700 --> 00:32:37,130 για $ 2, $ 2.50 αξία, η οποία είναι το πόσο χρειάζεται για να οδηγήσετε το μετρό 496 00:32:37,130 --> 00:32:39,130 σε μία κατεύθυνση. 497 00:32:39,130 --> 00:32:41,600 Αυτό είναι ένα πρόβλημα, επειδή οι περισσότεροι άνθρωποι που είναι ιππασία το μετρό 498 00:32:41,600 --> 00:32:44,880 ίσως απλά θέλετε να πάτε σε ένα μέρος, να αγοράσει το εισιτήριό τους, να πάρει αμέσως. 499 00:32:44,880 --> 00:32:47,550 Δεν έχει νόημα ότι θα πρέπει να περάσουν από πολλά διαφορετικά μενού 500 00:32:47,550 --> 00:32:49,550 για να φτάσει εκεί. 501 00:32:49,550 --> 00:32:51,760 Μια καλύτερη εμπειρία του χρήστη θα ήταν μια γρήγορη κουμπί στην πρώτη σελίδα 502 00:32:51,760 --> 00:32:54,760 ότι ακριβώς λέει, «αγοράσει ένα εισιτήριο απλής διαδρομής, και ότι θα θέσει σε όλες του προτύπου 503 00:32:54,760 --> 00:32:58,550 προεπιλεγμένες τιμές? και στη συνέχεια, αν κάποιος θέλει να αγοράσει ένα εισιτήριο διαφορετικό από αυτό, 504 00:32:58,550 --> 00:33:01,690 εξακολουθούν, φυσικά, έχουν τη δυνατότητα, αλλά έχετε βελτιστοποιημένη για 505 00:33:01,690 --> 00:33:04,080 η περίπτωση κοινής χρήσης που είναι πραγματικά σημαντικό. 506 00:33:04,080 --> 00:33:06,830 Μπορείτε να δείτε παραδείγματα στο Facebook, έτσι δεν είναι; 507 00:33:06,830 --> 00:33:09,410 Αν πάτε στο Facebook και θέλετε να δημοσιεύσετε ένα καθεστώς, 508 00:33:09,410 --> 00:33:11,710 Είναι ακριβώς στην κορυφή η οποία είναι ό, τι συχνά θέλετε να κάνετε. 509 00:33:11,710 --> 00:33:14,730 Μόλις μπείτε στη σελίδα, μπορείτε να κάνετε τα πιο κοινά πράγματα που 510 00:33:14,730 --> 00:33:16,730 θέλετε να κάνετε. 511 00:33:16,730 --> 00:33:17,550 Αν θέλετε να κάνετε λίγο πιο περίπλοκα τα πράγματα όπως, 512 00:33:17,550 --> 00:33:21,070 να πω ότι θέλω να πάω στον τοίχο του φίλου μου και μετά μια εικόνα σχετικά με αυτό - 513 00:33:21,070 --> 00:33:24,810 το οποίο εγώ θα ήθελα να κάνω συχνά, αλλά όχι τόσο συχνά όσο απόσπαση ενημερώσεις κατάστασης - 514 00:33:24,810 --> 00:33:28,200 οπότε στην περίπτωση αυτή, θα πληκτρολογήσετε το όνομα τους στο κουτί στην κορυφή, κάντε κλικ στο προφίλ τους, 515 00:33:28,200 --> 00:33:31,680 και, στη συνέχεια, ακόμα, ότι είναι σωστό στην κορυφή εκεί μια φορά έχω πάρει στο προφίλ τους. 516 00:33:31,680 --> 00:33:38,240 Και πάλι, έχω βελτιστοποιημένη κατά προτεραιότητα για τις περιπτώσεις πιο κοινή χρήση. 517 00:33:38,240 --> 00:33:41,800 >> Ένα άλλο σημαντικό πράγμα είναι ότι συχνά οι άνθρωποι θα είδος προσπαθήσει να πάρει γύρω από αυτό 518 00:33:41,800 --> 00:33:44,890 λέγοντας, εντάξει, έχω κάνει την περιοχή και οι άνθρωποι το βρίσκουν σύγχυση, 519 00:33:44,890 --> 00:33:46,110 και αυτό είναι ένα πρόβλημα, σωστά; 520 00:33:46,110 --> 00:33:49,210 Προφανώς, δεν θέλω οι άνθρωποι να πρέπει να συγχέεται με το περιεχόμενο του site μου. 521 00:33:49,210 --> 00:33:53,210 Αλλά ο τρόπος για να λυθεί αυτό δεν είναι να έχουμε κάτι pop up λέγοντας, 522 00:33:53,210 --> 00:33:55,290 hey, είμαι πρόκειται να σας διδάξει πώς να χρησιμοποιήσετε αυτό το site. 523 00:33:55,290 --> 00:33:58,130 Βήμα 1 - πατήστε αυτό το κουμπί. Βήμα 2 - πηγαίνετε εδώ. 524 00:33:58,130 --> 00:34:03,080 Σίγουρα, αυτός είναι ένας τρόπος γύρω από αυτό - είναι ένας τρόπος που μπορείτε να πείτε στους ανθρώπους τι να κάνουν, αλλά είναι 525 00:34:03,080 --> 00:34:05,080 Πραγματικά δεν το βέλτιστο τρόπο. 526 00:34:05,080 --> 00:34:07,420 Αν πάω σε μια ιστοσελίδα και ξαφνικά είμαι βομβαρδίζονται με αυτό το σεμινάριο που μου λέει 527 00:34:07,420 --> 00:34:11,739 τι να κάνει και πού να πάτε και όλα αυτά, αυτό δεν είναι διασκεδαστικό για μένα. 528 00:34:11,739 --> 00:34:13,739 Δεν είναι μια καλή εμπειρία για μένα. 529 00:34:13,739 --> 00:34:17,130 Είναι το είδος του πόνου. Θέλω απλά να αρχίσει να κάνει πράγματα. 530 00:34:17,130 --> 00:34:19,449 Οι άνθρωποι πρόκειται να κλείσει έξω από το πλαίσιο διαλόγου τους, 531 00:34:19,449 --> 00:34:23,580 ή να βγει από το φροντιστήριο, δεν ξέρουν τι να κάνουν, και στη συνέχεια διαμαρτύρονται γιατί 532 00:34:23,580 --> 00:34:25,580 δεν έχετε να τους πει τι να κάνουν. 533 00:34:25,580 --> 00:34:29,530 Ο τρόπος για να λυθεί αυτό δεν είναι η χορήγηση κάθε είδους φροντιστήριο ή κατευθύνσεις - 534 00:34:29,530 --> 00:34:31,530 κάτι τέτοιο. 535 00:34:31,530 --> 00:34:33,719 Όσο μπορείτε να το αποφύγετε, αν πραγματικά θέλουμε να δείξουμε το χρήστη τι να κάνει 536 00:34:33,719 --> 00:34:36,429 μόνο από τη φύση του το πώς η ιστοσελίδα που είναι έξω. 537 00:34:36,429 --> 00:34:39,090 Με άλλα λόγια, αν πάω στο Facebook χωρίς να συνδεθείτε, 538 00:34:39,090 --> 00:34:40,920 το πρώτο πράγμα που βλέπω στην κεντρική σελίδα - 539 00:34:40,920 --> 00:34:44,480 Είναι ένα μικρό κουτί σύνδεσης. Έτσι, duh. Πρέπει να συνδεθείτε Είναι ακριβώς εκεί. 540 00:34:44,480 --> 00:34:48,030 Ότι, αν πήγα στο Facebook και εγώ έπρεπε να κάνετε κλικ σε ένα μικρό σύνδεσμο στο κάτω μέρος 541 00:34:48,030 --> 00:34:51,920 που αναφέρουν ότι «log in» και το υπόλοιπο της σελίδας ήταν μερικά μόνο είδος της εικόνας ή κάτι τέτοιο, 542 00:34:51,920 --> 00:34:54,820 Δεν ξέρω πραγματικά τι να κάνουμε, έτσι δεν είναι; Θα πρέπει να συγχέεται. 543 00:34:54,820 --> 00:34:58,590 Έτσι, θα μπορούσε να μου πει να πάω εκεί κάτω και κάντε κλικ στο κουμπί για να συνδεθείτε, 544 00:34:58,590 --> 00:35:01,080 ή το αρχείο καταγραφής στο κουμπί θα μπορούσε να είναι ακριβώς στην κορυφή, όπου θα πάω να το δω. 545 00:35:01,080 --> 00:35:04,780 Θέλετε να είναι πάντα δείχνει το χρήστη τι να κάνει, 546 00:35:04,780 --> 00:35:06,750 και ότι θα πρέπει να είναι συνυφασμένες με την ίδια τη σελίδα. 547 00:35:06,750 --> 00:35:09,880 >> Όταν σκέφτεστε για τα σχέδια και σκωπτική επάνω διαφορετικούς τρόπους 548 00:35:09,880 --> 00:35:13,810 εκφράζοντας το site σας, θέλετε πραγματικά να σκεφτείτε τι οι χρήστες πρόκειται να 549 00:35:13,810 --> 00:35:19,380 πρέπει να κάνει και πώς μπορείτε να τους δείξουμε τι πρέπει να κάνουμε. 550 00:35:19,380 --> 00:35:23,530 Ένα τελευταίο πράγμα είναι η δοκιμή είναι πραγματικά, πραγματικά σημαντικό. 551 00:35:23,530 --> 00:35:27,400 Είναι μεγάλη για να πάρει κάποιος - να πάρετε μια φίλη, να πάρει κάποιον που δεν γνωρίζουν καν - 552 00:35:27,400 --> 00:35:30,420 που ποτέ δεν έχει δει τον δικτυακό τόπο πριν να χρησιμοποιήσετε την ιστοσελίδα. 553 00:35:30,420 --> 00:35:33,650 Επειδή έχετε ήδη εργάζονται στην περιοχή για ώρες, έχετε κοιτάξει επίμονα σε αυτό, 554 00:35:33,650 --> 00:35:36,670 και ξέρετε ακριβώς τι πρέπει να κάνουμε, ώστε προφανώς θα πάμε να τη δοκιμή της 555 00:35:36,670 --> 00:35:39,520 πράγματα που έχετε εργαστεί για και ότι ξέρετε τη δουλειά. 556 00:35:39,520 --> 00:35:42,680 Αλλά αν κάποιος άλλος έρχεται και χρησιμοποιεί το χώρο που έχει ποτέ χρησιμοποιήσει πριν, 557 00:35:42,680 --> 00:35:46,880 αυτό είναι μια μοναδική εμπειρία, επειδή έχετε κάποιον που δεν έχει προηγούμενη γνώση 558 00:35:46,880 --> 00:35:51,530 από το χώρο να υπεισέλθω σε αυτό, έτσι ώστε να πάμε να έχουν πράγματι καμία ιδέα τι να κάνει 559 00:35:51,530 --> 00:35:54,890 ή τι είδους περιπτώσεις χρήσης είναι δώρο γι 'αυτούς. 560 00:35:54,890 --> 00:36:00,930 Αυτό είναι μεγάλη. Αυτό είναι μοναδικό επειδή είναι ουσιαστικά ένα άτομο με ένα κενό για ένα μυαλό. 561 00:36:00,930 --> 00:36:03,750 Μπορούν να σας πω αν κάτι είναι ασαφές ή σύγχυση. 562 00:36:03,750 --> 00:36:07,580 Μπορούν να σας δώσει μια ιδέα για το τι ακριβώς η εμπειρία του χρήστη από το site σας. 563 00:36:07,580 --> 00:36:10,630 Μπορεί να είναι πολύ δύσκολο να πει ότι τον εαυτό σας, έτσι σίγουρα θα ήθελα να σας ενθαρρύνω 564 00:36:10,630 --> 00:36:13,640 όπως εσείς την ανάπτυξη σχεδίων σας - αν κάνεις σχέδια web-based - 565 00:36:13,640 --> 00:36:18,290 για να πάρει τους ανθρώπους που χρησιμοποιούν την περιοχή το συντομότερο έχετε κάποιο είδος των λειτουργικών demo. 566 00:36:18,290 --> 00:36:25,330 >> Τώρα είμαι πρόκειται να μιλήσω λίγο για το πώς να διαχειριστεί ένα έργο ανάπτυξης ιστοσελίδων. 567 00:36:25,330 --> 00:36:28,900 Έχουμε πάει πέρα ​​από το πώς μπορείτε να κάνετε την τεχνική back-end πλευρά, 568 00:36:28,900 --> 00:36:31,050 πώς μπορείτε να σχεδιάσετε μια πραγματικά καλή θέση, 569 00:36:31,050 --> 00:36:34,150 και αυτό είναι μεγάλη, αν εργάζεστε από τον εαυτό σας, αλλά - 570 00:36:34,150 --> 00:36:37,300 ακόμα και αν εργάζεστε με τον εαυτό σας και ειδικά εάν εργάζεστε σε μια ομάδα, 571 00:36:37,300 --> 00:36:39,580 διαχείριση του έργου γίνεται ένα μεγάλο ζήτημα. 572 00:36:39,580 --> 00:36:42,340 Έχετε είδος ακούσει για τη διαχείριση του έργου σε διάφορες μορφές από 573 00:36:42,340 --> 00:36:45,410 δημοτικό σχολείο, όταν σας είπαν ομάδα εργασίας. 574 00:36:45,410 --> 00:36:46,820 Θα πρέπει να συνεργάζονται, να επικοινωνούν, όλα αυτά. 575 00:36:46,820 --> 00:36:49,620 Αυτό ισχύει ακόμα εδώ, αλλά υπάρχουν μερικές μοναδικές συνθήκες με 576 00:36:49,620 --> 00:36:54,910 επιστήμης των υπολογιστών που θέλετε να γνωρίζετε, και θέλετε να βεβαιωθείτε ότι έχετε χειριστεί καλά. 577 00:36:54,910 --> 00:36:58,050 Θα μιλήσω πρώτα λίγο για την ομάδα που θα είναι μέσα 578 00:36:58,050 --> 00:37:03,280 Είναι πολύ σημαντικό να επιλέξετε το σωστό μέγεθος μιας ομάδας να εργάζονται για, 579 00:37:03,280 --> 00:37:05,890 και στην τελική του έργου σας Νομίζω ότι έχετε τη δυνατότητα να επιλέξουν 580 00:37:05,890 --> 00:37:08,610 μεταξύ 1 και 4 άτομα, αν δεν κάνω λάθος. 581 00:37:08,610 --> 00:37:12,050 Θέλετε να βεβαιωθείτε ότι δεν είστε απλά επιλέγοντας τον αριθμό των ατόμων 582 00:37:12,050 --> 00:37:14,950 που θέλετε να εργαστείτε με, επειδή είναι φίλοι σας. 583 00:37:14,950 --> 00:37:18,170 Θέλετε να επιλέξετε μια ομάδα που είναι ένα καλό μέγεθος και ότι θα γίνει η δουλειά. 584 00:37:18,170 --> 00:37:22,700 Υπάρχει ένας συμβιβασμός στην κατοχή περισσότερους ανθρώπους σε σχέση με λιγότερα άτομα. 585 00:37:22,700 --> 00:37:25,320 Εάν έχετε περισσότερους ανθρώπους, προφανώς περισσότερη δουλειά μπορεί να γίνει 586 00:37:25,320 --> 00:37:28,450 επειδή έχετε τα μέρη των ανθρώπων, πολύ κώδικα, πολλές ιδέες, 587 00:37:28,450 --> 00:37:29,870 και αυτό είναι όλα τέλεια. 588 00:37:29,870 --> 00:37:32,590 Αλλά αυτό απαιτεί επίσης πολύ πιο διαχείριση και πολύ περισσότερο την επικοινωνία. 589 00:37:32,590 --> 00:37:34,720 Με άλλα λόγια, αν έχετε 4 άτομα που εργάζονται για το ίδιο έργο 590 00:37:34,720 --> 00:37:39,200 και είναι όλα επεξεργάζεστε τον ίδιο κωδικό, λιγότερο ή περισσότερο όλοι είδους ανάγκη να γνωρίζουν 591 00:37:39,200 --> 00:37:40,920 τι συμβαίνει γι 'αυτό απαιτεί από εσάς - 592 00:37:40,920 --> 00:37:44,580 αν προσθέσετε κάποια νέα λειτουργία που το είδος του πρέπει να πει στους ανθρώπους - Είμαι προσθέτοντας, 593 00:37:44,580 --> 00:37:48,510 Αλλάζω αυτό με τον τρόπο αυτό - ειδικά αν μπει στο πραγματικά βαθιά ουσία 594 00:37:48,510 --> 00:37:52,730 όπως τα μοντέλα και τους ελεγκτές που είναι πραγματικά πρόκειται να επηρεάσει το πώς λειτουργεί η ιστοσελίδα. 595 00:37:52,730 --> 00:37:54,500 Όλη η ομάδα πρέπει να το γνωρίζουν, 596 00:37:54,500 --> 00:37:58,140 έτσι πρέπει να βεβαιωθείτε ότι δεν είστε επιλέγοντας πολύ μεγάλη μια ομάδα που πρόκειται να είναι δύσκολο 597 00:37:58,140 --> 00:37:59,970 να κάνουμε αυτή την ανακοίνωση. 598 00:37:59,970 --> 00:38:02,930 Μπορείτε, επίσης, δεν θέλουν να επιλέξουν μια αρκετά μικρή ομάδα που δεν πρόκειται να 599 00:38:02,930 --> 00:38:06,250 να είναι σε θέση να επικοινωνούν επειδή είναι μόνο η δική σας. 600 00:38:06,250 --> 00:38:11,270 >> Ένα άλλο πράγμα που εξετάζει είναι η ισορροπία, όπου οι δεξιότητες των ανθρώπων. 601 00:38:11,270 --> 00:38:14,350 Είναι μεγάλη, αν είστε όλοι πολύ καλοί προγραμματιστές. 602 00:38:14,350 --> 00:38:17,050 Αλλά αν είστε όλα τα back-end οι άνθρωποι, τότε το site σας δεν πρόκειται να φαίνονται πολύ καλά 603 00:38:17,050 --> 00:38:20,860 επειδή έχετε αυτή τη μεγάλη βάση δεδομένων, και το κάνει πολύ γρήγορη ερωτήματα αναζήτησης - 604 00:38:20,860 --> 00:38:26,130 η οποία είναι μεγάλη - αλλά όταν θα πάτε για αυτό, είναι σαν ένα χώρο 1990 με κόκκινο και μπλε 605 00:38:26,130 --> 00:38:30,370 παντού, και αυτό δεν είναι καλό ούτε. 606 00:38:30,370 --> 00:38:34,210 Παρατηρήστε ότι ο Ben και εγώ που εργάζονται ως ομάδα είναι πολύ ωραία γιατί είμαι είδος περισσότερο 607 00:38:34,210 --> 00:38:38,030 στο εμπρόσθιο άκρο, και οι δύο αλληλεπιδρούν στη μέση-τέλος, και ο Ben είναι πολύ καλό με back-end πράγματα, 608 00:38:38,030 --> 00:38:43,550 έτσι ώστε να λειτουργεί πραγματικά καλά, επειδή μπορούμε να σχεδιάσουμε οποιοδήποτε χώρο και κυρίως οι οπές 609 00:38:43,550 --> 00:38:47,580 σε αυτό το site που πρέπει να καλυφθούν μπορούν να πληρωθούν είτε ένας από εμάς, ή ενδεχομένως δύο. 610 00:38:47,580 --> 00:38:50,210 Θέλετε να βεβαιωθείτε ότι δεν υπάρχουν τρύπες στην ομάδα σας. 611 00:38:50,210 --> 00:38:51,180 Είναι εντάξει, αν υπάρχει ένα κομμάτι της επικάλυψης. 612 00:38:51,180 --> 00:38:53,670 Με άλλα λόγια, αν έχετε 2 άτομα που είναι τόσο καλά με την πλάτη τέλος, 613 00:38:53,670 --> 00:38:57,250 ότι μπορεί να είναι καλό, καθώς και επειδή μπορεί να βοηθήσει ο ένας τον άλλο με τα προβλήματα 614 00:38:57,250 --> 00:38:58,820 ότι έχουν. 615 00:38:58,820 --> 00:39:02,590 Μπορεί να είναι ένα πρόβλημα, αν έχετε μόνο 1 άτομο που είναι υπεύθυνο για ένα συγκεκριμένο πράγμα 616 00:39:02,590 --> 00:39:06,650 και τρέχει σε ένα πρόβλημα, έτσι ώστε να θέλουν να έχουν ένα μικρό κομμάτι της επικάλυψης 617 00:39:06,650 --> 00:39:10,760 αλλά το πιο σημαντικό θέλετε να βεβαιωθείτε ότι όλες οι πιθανές τρύπες γεμίζουν. 618 00:39:10,760 --> 00:39:17,550 >> Το τελευταίο πράγμα - και αυτό πρέπει να είναι προφανές, αλλά δεν είναι συχνά. 619 00:39:17,550 --> 00:39:19,550 Θέλετε πραγματικά να διασκεδάζουν. 620 00:39:19,550 --> 00:39:23,360 Το σημείο αυτού του τελικού σχεδίου CS50 και συχνά το σημείο της ανάπτυξης ιστοσελίδων σε γενικές 621 00:39:23,360 --> 00:39:26,360 δεν είναι να κάνει απλά μια δουλειά, γιατί χρειάζεται να κάνει. 622 00:39:26,360 --> 00:39:29,140 Θέλετε πραγματικά να διασκεδάζουν, και θέλετε να κάνει κάτι 623 00:39:29,140 --> 00:39:31,180 αυτό είναι κίνητρο σας να εργάζονται σε αυτό. 624 00:39:31,180 --> 00:39:33,650 Αν τιδήποτε θέλετε να κάνετε είναι ένας πόνος για να καθίσετε και να εργαστεί, 625 00:39:33,650 --> 00:39:35,650 τότε δεν είστε η επιλογή του σωστού προγράμματος. 626 00:39:35,650 --> 00:39:37,730 Θέλετε να επιλέξετε κάτι που θα βρείτε ενδιαφέρουσες, 627 00:39:37,730 --> 00:39:41,150 θέλετε πραγματικά να δείτε το αποτέλεσμα, είστε ενθουσιασμένοι, όταν μπορείτε να πάρετε μια νέα ιδέα για 628 00:39:41,150 --> 00:39:44,700 κάτι που θα μπορούσε να κάνει - έτσι δεν υπάρχουν όλα τα είδη των σχεδίων εκεί που είμαι σίγουρος 629 00:39:44,700 --> 00:39:47,290 μπορείτε να βρείτε - ο καθένας έχει κάτι που θα ίντριγκα τους πραγματικά 630 00:39:47,290 --> 00:39:49,290 αν είναι να κάνει ένα έργο web-based. 631 00:39:49,290 --> 00:39:52,210 Θα το πω και πάλι τώρα. 632 00:39:52,210 --> 00:39:54,520 Εάν το σχέδιό σας φαίνεται σαν ένας πόνος και δεν θέλετε να εργάζονται σε αυτό, 633 00:39:54,520 --> 00:39:57,260 επιλέξετε ένα άλλο έργο. Επιλέξτε κάτι που σας εμπνέει πραγματικά. 634 00:39:57,260 --> 00:40:00,260 >> Ben αναφέρεται αυτή η έννοια της επανάληψης λίγο, και θέλω να πάω πάνω από το ένα κομμάτι. 635 00:40:00,260 --> 00:40:08,250 Είναι πραγματικά σημαντικό να εργαστούν σε εκτοξεύσεις όπου θα λάβουν κάτι λειτουργικό. 636 00:40:08,250 --> 00:40:13,420 Μπορεί να είναι μεγάλη, αν έχετε αυτό το σχέδιο για μια ιστοσελίδα που πρόκειται να κάνει Α, Β, και Γ, 637 00:40:13,420 --> 00:40:16,000 και τελικά θα φτάσουμε εκεί. 638 00:40:16,000 --> 00:40:18,600 Αλλά είστε κολλημένοι σε αυτή τη φάση, όπου εργάζεστε σε αυτό και εργάζονται σε αυτό, 639 00:40:18,600 --> 00:40:23,330 αλλά τίποτα δεν είναι να πάρει γίνει. Δεν έχετε τίποτα να δείτε και μια απτή, λειτουργικό πράγμα. 640 00:40:23,330 --> 00:40:27,940 Αυτό που πραγματικά θέλουμε να κάνουμε όσο φαίνεται το είδος του πόνου μερικές φορές 641 00:40:27,940 --> 00:40:32,300 εργαστούν σε κάτι και στη συνέχεια το είδος της το καπάκι από, έτσι ώστε να είναι τουλάχιστον σε ένα σταθερό, τρέχει 642 00:40:32,300 --> 00:40:34,910 έκδοση, ακόμη και αν δεν έχει όλα τα χαρακτηριστικά που θέλετε. 643 00:40:34,910 --> 00:40:37,690 Και ίσως υπάρχουν κάποια χαρακτηριστικά γνωρίσματα που πραγματικά θέλετε να προσθέσετε, αλλά δεν μπορείτε ακριβώς 644 00:40:37,690 --> 00:40:41,830 επειδή θέλετε να πάρετε αυτό το site σε ένα λειτουργικό σημείο. 645 00:40:41,830 --> 00:40:44,400 Και έτσι θέλετε να το είδος έχει η όλη διαδικασία ανάπτυξης μοιάζουν με αυτό. 646 00:40:44,400 --> 00:40:47,810 Θέλετε να ξεκινήσει από κάπου λειτουργικό - ή ουσιαστικά αρχίσω με το τίποτα - 647 00:40:47,810 --> 00:40:49,890 αλλά θέλετε να πάρετε κάπου πολύ βασικό και λειτουργικό. 648 00:40:49,890 --> 00:40:54,940 Και πάλι, κάνουν ένα είδος άλμα και να πάρει κάπου λειτουργική και πάλι. 649 00:40:54,940 --> 00:40:59,190 Σιγά-σιγά θα δημιουργήσουν, και θα μπορούσε να πάει λίγο πιο αργή από ό, τι θα ήταν διαφορετικά, 650 00:40:59,190 --> 00:41:03,000 αλλά μακροπρόθεσμα, εάν είστε συνεχώς κολλημένοι σε αυτό μεσαία φάση του εδάφους, όπου μπορείτε 651 00:41:03,000 --> 00:41:06,380 δεν έχουν πραγματικά τίποτα εργασίας, μπορεί να είναι μια πραγματικά μεγάλη απογοήτευση 652 00:41:06,380 --> 00:41:09,970 να εργαστούν για το έργο σας, γιατί είστε πάντα τόσο κοντά στο να πάρει αυτό που εργάζονται, 653 00:41:09,970 --> 00:41:12,130 και αυτό είναι που στην πραγματικότητα ποτέ δεν εργάζονται. 654 00:41:12,130 --> 00:41:14,810 Θέλετε να εργαστούν σε αυτές τις λειτουργικές εκτοξεύσεις, 655 00:41:14,810 --> 00:41:17,950 και μπορείτε επίσης να θελήσετε να κάνετε κάποια αντανάκλαση μετά από κάθε μία. 656 00:41:17,950 --> 00:41:21,260 Με άλλα λόγια, όταν είστε σε ένα σημείο όπου η περιοχή είναι τώρα εργάζεται - 657 00:41:21,260 --> 00:41:24,790 δεν έχουν όλα σας αρέσει, αλλά κάνει κάποια πράγματα - 658 00:41:24,790 --> 00:41:28,870 θέλετε να σκεφτείτε, εντάξει, είναι αυτό το site επίτευξη του στόχου που έθεσε ως στόχο να κάνει; 659 00:41:28,870 --> 00:41:33,410 Με άλλα λόγια, εάν ο χώρος που πρόκειται να κάνει το Χ, είναι ό, τι έχω εργάζονται προς την κατεύθυνση της X; 660 00:41:33,410 --> 00:41:36,450 Είναι όλες τις λειτουργίες που ήθελα εκεί; 661 00:41:36,450 --> 00:41:39,340 Και επιπλέον, να εξυπηρετούν το γενικό σκοπό που θέλω; 662 00:41:39,340 --> 00:41:43,200 Αν είστε διαπίστωση ότι το site σας έχει αρχίσει να γυρίζω σε μια διαφορετική κατεύθυνση 663 00:41:43,200 --> 00:41:47,330 ή ίσως τα πράγματα ακριβώς το είδος του δεν εργάζονται έξω, μπορεί να είναι χρόνος για να αλλάζετε ταχύτητες λίγο. 664 00:41:47,330 --> 00:41:51,700 Με άλλα λόγια, αξίζει να εξεταστεί - αξίζει να ρίχνουν τις ιδέες, αν είναι απαραίτητο 665 00:41:51,700 --> 00:41:57,950 και λαμβάνοντας υπόψη είμαι πραγματικά εργάζονται προς αυτό που θέλω να είμαι. 666 00:41:57,950 --> 00:42:00,760 >> Πιστεύω ότι είναι το επόμενο σημείο μου. Μην φοβάστε να εγκαταλείψουν τις ιδέες. 667 00:42:00,760 --> 00:42:03,750 Ακριβώς επειδή έχετε περάσει πολλές ώρες εργασίας σε ένα χαρακτηριστικό 668 00:42:03,750 --> 00:42:07,890 και τελικά πήρε αυτό που εργάζονται, αλλά πραγματικά δεν πηγαίνει τόσο καλά - 669 00:42:07,890 --> 00:42:12,690 σαν να μην είναι τόσο χρήσιμο ή οι χρήστες που έχουν προβλήματα με τη χρήση του - αυτό το είδος του πράγματος - 670 00:42:12,690 --> 00:42:15,300 Δεν πρέπει να φοβόμαστε να το πετάξετε. 671 00:42:15,300 --> 00:42:17,650 Είναι χάλια που έχετε περάσει πολύ χρόνο εργασίας σε αυτό, 672 00:42:17,650 --> 00:42:21,870 αλλά τελικά δεν θέλετε ένα site που είναι το είδος της μαζί με αυτά τα κομμάτια που 673 00:42:21,870 --> 00:42:25,380 είδος της εργασίας, αλλά δεν είναι τόσο καλά εξυπηρετούνται. 674 00:42:25,380 --> 00:42:27,990 Επίσης, δεν πρέπει να φοβόμαστε να αγκαλιάσει τις νέες ιδέες. 675 00:42:27,990 --> 00:42:30,050 Αν κάποιος έρχεται και λέει, hey, ότι η ιστοσελίδα φαίνεται πραγματικά δροσερό, αλλά 676 00:42:30,050 --> 00:42:32,290 Δεν θα ήταν ακόμη να είναι μεγάλη, αν το έκανε και αυτό; 677 00:42:32,290 --> 00:42:36,220 Ακριβώς επειδή αυτό είναι κάτι που δεν είχε την πρόθεση και κάτι που δεν βρίσκεται στη λίστα 678 00:42:36,220 --> 00:42:37,900 specs, κάτι που δεν έχετε ορίσει να κάνουμε, 679 00:42:37,900 --> 00:42:40,860 Δεν πρέπει να φοβόμαστε να το πάρει και στη συνέχεια να εργαστείτε με αυτό. 680 00:42:40,860 --> 00:42:43,680 Επειδή συχνά οι ιδέες που θα τρέξει με όλη την πορεία της ανάπτυξης 681 00:42:43,680 --> 00:42:47,630 καταλήγουν να είναι τα πραγματικά δροσερά χαρακτηριστικά του δικτυακού τόπου. 682 00:42:47,630 --> 00:42:49,630 >> Έχω ξαναπεί. Θα το πω και πάλι. 683 00:42:49,630 --> 00:42:51,630 Δοκιμαστές είναι super, super χρήσιμο. 684 00:42:51,630 --> 00:42:56,350 Προσπαθήστε να πάρετε τους ανθρώπους που δεν έχουν δει ποτέ τον δικτυακό τόπο πριν να συνδεθείτε και να δούμε τι συμβαίνει 685 00:42:56,350 --> 00:42:59,080 επειδή μπορούν να δοκιμάσουν όχι μόνο τη χρησιμότητα του χώρου και την εμπειρία του χρήστη, 686 00:42:59,080 --> 00:43:02,070 αλλά μπορούν επίσης να δοκιμάσουν τη λειτουργικότητα με τρόπους που δεν μπορείτε. 687 00:43:02,070 --> 00:43:06,430 Εάν κάνετε κάποιο χαρακτηριστικό που κάνει ένα συγκεκριμένο πράγμα 688 00:43:06,430 --> 00:43:11,620 και ξέρετε ότι πρόκειται να το κάνουμε αυτό σωστά ίδιο πράγμα κάθε φορά, αυτό είναι υπέροχο. 689 00:43:11,620 --> 00:43:16,610 Αλλά μπορεί συχνά να είναι δύσκολο να αντιπροσωπεύουν κόρνερ περιπτώσεις όπου ένας χρήστης θα μπορούσε 690 00:43:16,610 --> 00:43:19,500 πληκτρολογήστε κάτι που δεν περίμεναν - ακριβώς επειδή έχετε ορίσει 691 00:43:19,500 --> 00:43:21,500 τον εαυτό σας τα χαρακτηριστικά. 692 00:43:21,500 --> 00:43:23,730 Έτσι, για να έχουν έρθει κάποιος για το ποιος δεν έχει καμία ιδέα για το πώς να χρησιμοποιήσετε το site 693 00:43:23,730 --> 00:43:26,840 και να το σπάσει μόνο σε ό, τι τρόπους που μπορούν να κάνουν είναι πραγματικά χρήσιμο, επειδή μπορείτε 694 00:43:26,840 --> 00:43:30,340 πάρετε μια ιδέα από μια εντελώς διαφορετική οπτική γωνία του τι στο site σας λειτουργεί 695 00:43:30,340 --> 00:43:33,300 και τι χρειάζεται επισκευή. 696 00:43:33,300 --> 00:43:37,070 >> Τελευταία, Πάω να μιλήσω για κάποιες γενικές καλές πρακτικές, 697 00:43:37,070 --> 00:43:42,470 και έχετε δει πολλά από αυτά σε CS50, αλλά και πραγματικά, πραγματικά ισχύει σε ένα περιβάλλον έργου. 698 00:43:42,470 --> 00:43:47,600 Το ένα είναι τα σχόλια. Πάντα να σχολιάσει τον κωδικό σας, ειδικά εάν εργάζεστε σε μια μεγάλη ομάδα. 699 00:43:47,600 --> 00:43:51,230 Μπορεί να είναι τόσο ενοχλητικό να έχουν μόνο ένα τεράστιο μπλοκ του κώδικα ότι κάποιος έχει γράψει 700 00:43:51,230 --> 00:43:54,230 και ίσως λειτουργεί, ίσως να μην το κάνει, αλλά δεν έχετε ιδέα τι κάνει, 701 00:43:54,230 --> 00:43:58,010 έτσι δεν έχετε καμία ιδέα για το αν είναι χρήσιμο ή όχι ή αν πρέπει να υπάρχει ή όχι, 702 00:43:58,010 --> 00:44:00,200 και αν εργάζεστε σε κάτι άλλο είναι ακόμα πιθανό ότι εργάζεστε 703 00:44:00,200 --> 00:44:06,590 το ίδιο πράγμα, έτσι απλά να είμαστε πάρα πολύ προσεκτικοί να είστε διακριτικοί προς τους συμμαθητές σας 704 00:44:06,590 --> 00:44:09,710 και να γράφουν κώδικα που είναι καλά τεκμηριωμένη. 705 00:44:09,710 --> 00:44:13,580 Δεν χρειάζεται να πάει τόσο μακριά ώστε να κάνει το όλο πράγμα, όπου ήθελε, αν αυξήσετε 706 00:44:13,580 --> 00:44:16,620 ένας μετρητής έχει ένα σχόλιο που λέει, είμαι προσθέτοντας 1 σε αυτό το μετρητή. 707 00:44:16,620 --> 00:44:20,450 Δεν χρειάζεται να είναι τόσο λεπτομερείς, αλλά για κάθε λειτουργία που θα συναντήσετε ποτέ γραπτώς 708 00:44:20,450 --> 00:44:23,160 θα πρέπει να έχετε κάποια τεκμηρίωση για το τι ακριβώς κάνει αυτή η λειτουργία, 709 00:44:23,160 --> 00:44:25,140 τι εισόδους του είναι, και τι θα έπρεπε να επιστρέψει. 710 00:44:25,140 --> 00:44:27,800 Με αυτόν τον τρόπο μπορείτε να χρησιμοποιήσετε άλλες συνιστώσες των ανθρώπων του τόπου 711 00:44:27,800 --> 00:44:31,990 και μπορείτε να εργαστείτε για την οικοδόμηση κάτι μεγάλο. 712 00:44:31,990 --> 00:44:34,100 >> Ένα άλλο σημαντικό πράγμα είναι που θέλετε να κάνετε τακτικό καθαρισμό-ups. 713 00:44:34,100 --> 00:44:40,490 Κωδικός παίρνει βρώμικο. Να μην αισθάνονται άσχημα αν ο κώδικάς σας είναι μόνο εντελώς δυσανάγνωστο και ένα τεράστιο χάος. 714 00:44:40,490 --> 00:44:42,770 Αυτό συμβαίνει στην ανάπτυξη ιστοσελίδων πάντα. 715 00:44:42,770 --> 00:44:46,530 Είσαι προσθέτοντας νέα χαρακτηριστικά, αφαίρεση παλαιών. Stuff πρόκειται να είναι εκεί που δεν πρέπει να είναι. 716 00:44:46,530 --> 00:44:49,330 Αυτό είναι εντάξει, αλλά θέλετε να σιγουρευτείτε για να ασχοληθεί με αυτό σε τακτική βάση. 717 00:44:49,330 --> 00:44:53,430 Δεν θέλετε να το αφήσει να χτίσει μέχρι το σημείο όπου μπορείτε απλά δεν μπορεί να βρει τίποτα 718 00:44:53,430 --> 00:44:56,430 στον κώδικά σας, και δεν έχετε ιδέα τι κάνει τίποτα. 719 00:44:56,430 --> 00:44:58,430 Αυτή είναι η περίπτωση με την HTML. 720 00:44:58,430 --> 00:44:59,490 Μερικές φορές θα καταλήξετε με αντικείμενα που δεν περιέχουν τίποτα, 721 00:44:59,490 --> 00:45:01,320 και θα θέλετε να απαλλαγείτε από αυτά. 722 00:45:01,320 --> 00:45:04,610 Στην CSS, μπορείτε να παραπέμπει σε στοιχεία που δεν υπάρχουν πια, 723 00:45:04,610 --> 00:45:06,340 έτσι θέλετε να απαλλαγείτε από τον εν λόγω κώδικα. 724 00:45:06,340 --> 00:45:09,900 Στο JavaScript, μπορείτε να έχετε αφαιρέσει κάτι από την HTML. 725 00:45:09,900 --> 00:45:13,150 Έτσι, θέλετε να βεβαιωθείτε ότι είστε πάντα καθαρισμό, κάνοντας τα πράγματα αρκετά 726 00:45:13,150 --> 00:45:17,450 όσο μπορείτε σε τακτική βάση. 727 00:45:17,450 --> 00:45:21,060 >> Ένα άλλο πολύ χρήσιμο πράγμα που δεν νομίζω ότι περιγράφεται πολύ σε CS50 728 00:45:21,060 --> 00:45:23,430 αλλά αξίζει να μπουν είναι ο έλεγχος έκδοση. 729 00:45:23,430 --> 00:45:27,180 Η ιδέα του ελέγχου της έκδοσης είναι όταν είστε ουσιαστικά την παρακολούθηση όλων των πρόοδο 730 00:45:27,180 --> 00:45:30,820 έχετε κάνει προς το site σας και αν κάποια στιγμή έχετε συνειδητοποιήσει, OH, αυτό λειτουργεί 731 00:45:30,820 --> 00:45:35,220 πριν από λίγο καιρό, αλλά δεν λειτουργεί πια, μπορείτε να πάτε πίσω σε προηγούμενες εκδόσεις 732 00:45:35,220 --> 00:45:37,720 και να δούμε τι έχει αλλάξει από τότε και ότι το είδος του πράγματος. 733 00:45:37,720 --> 00:45:41,670 Ο κύριος τρόπος για να γίνει αυτό είναι με Git και Git είναι όλο αυτό το είδος του συστήματος που 734 00:45:41,670 --> 00:45:46,390 Πιστεύω Tommy MacWilliam έδωσε διάλεξη για το περασμένο έτος. 735 00:45:46,390 --> 00:45:51,520 Αν πάτε σε σεμινάρια CS50 για το 2011, μπορείτε να δείτε το σεμινάριο του σχετικά με αυτό. 736 00:45:51,520 --> 00:45:57,070 Η ιδέα του Git είναι βασικά ότι σε τακτά χρονικά διαστήματα μπορείτε να κάνετε αυτές τις δεσμεύσεις 737 00:45:57,070 --> 00:46:01,430 που είναι οι τρόποι λέγοντας ότι η περιοχή είναι σε μια αρκετά σταθερή έκδοση τώρα, ώστε 738 00:46:01,430 --> 00:46:05,910 Είμαι αυτό που πακετάρουμε και να το στείλει μακριά σε ένα διακομιστή, και στη συνέχεια μπορείτε να πάτε σε αυτόν το διακομιστή 739 00:46:05,910 --> 00:46:07,910 και να εξετάσουμε όλες τις προηγούμενες εκδόσεις του κωδικού σας και να δείτε πώς έχει προχωρήσει 740 00:46:07,910 --> 00:46:12,210 και όλα τα τέτοιου είδους καλά πράγματα. 741 00:46:12,210 --> 00:46:14,210 Έτσι, αυτό είναι βασικά αυτό. 742 00:46:14,210 --> 00:46:17,870 Όσον αφορά την ανάπτυξη ιστοσελίδων, είμαστε στην ευχάριστη θέση να μείνω και να απαντήσει σε οποιαδήποτε 743 00:46:17,870 --> 00:46:20,570 ερωτήματα όσον αφορά την παρουσίαση μας. 744 00:46:20,570 --> 00:46:22,900 Έτσι μπράβο. Ευχαριστώ. >> [Ben] Ευχαριστώ. 745 00:46:22,900 --> 00:46:28,480 [Χειροκροτήματα] 746 00:46:28,480 --> 00:46:30,950 >> [Billy] προσωπικό, Υπάρχει κάποιος που έχει οποιεσδήποτε ερωτήσεις σχετικά με τα πράγματα που έχουμε καλύπτονται 747 00:46:30,950 --> 00:46:33,950 ή πράγματα που δεν καλύψαμε ότι ήλπιζαν ότι θα καλύψει; 748 00:46:33,950 --> 00:46:35,950 Θα χαρούμε να απαντήσουμε εκείνους. Όποιος; 749 00:46:35,950 --> 00:46:50,360 [Μέλος του ακροατηρίου] Ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα από τη χρήση Ruby ή τη χρήση της Python; 750 00:46:50,360 --> 00:46:58,660 [Ben] Το ερώτημα ήταν, ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα από τη χρήση Ruby ή Python 751 00:46:58,660 --> 00:46:59,900 αντί όπως PHP. 752 00:46:59,900 --> 00:47:11,340 Τα πλεονεκτήματα είναι ότι η Ruby και Python είναι πολύ καλύτερη από ό, τι γλώσσες PHP. 753 00:47:11,340 --> 00:47:14,920 Τουλάχιστον κατά τη γνώμη μου, και νομίζω ότι σε πολλές απόψεις άλλων ανθρώπων, καθώς και. 754 00:47:14,920 --> 00:47:20,990 Είχαν σχεδιαστεί περισσότερο για να κάνει πολύπλοκες πράγματα, 755 00:47:20,990 --> 00:47:25,380 και λιγότερο για την τερατώδη μαζί ιστοσελίδες πολύ γρήγορα με 756 00:47:25,380 --> 00:47:28,400 ένα μικρό κομμάτι του δυναμικού περιεχομένου. 757 00:47:28,400 --> 00:47:35,180 Τα μειονεκτήματα είναι ότι υπάρχει μια λίγο - υπάρχει κάτι περισσότερο από μια καμπύλη μάθησης 758 00:47:35,180 --> 00:47:37,220 για να τα δημιουργήσουν. 759 00:47:37,220 --> 00:47:41,010 Δηλαδή, όπως και σε PHP, μπορείτε να έχετε μόνο ένα αρχείο HTML και να γράψετε λιγότερο από ό, τι, 760 00:47:41,010 --> 00:47:43,060 ερωτηματικό, και στη συνέχεια να γράψετε κάποιο κώδικα, και στη συνέχεια να γράψετε το ερωτηματικό, 761 00:47:43,060 --> 00:47:45,700 μεγαλύτερη-από ό, τι, και στη συνέχεια να είστε έτοιμοι. 762 00:47:45,700 --> 00:47:50,300 Σε άλλες γλώσσες, όπως η Ruby ή Python, 763 00:47:50,300 --> 00:47:56,810 θα πρέπει να περάσουν λίγο περισσότερη δουλειά για να πάρει την αρχική λειτουργία ιστοσελίδα. 764 00:47:56,810 --> 00:48:02,730 Υπάρχει επίσης - τουλάχιστον αυτό χρησιμοποιείται για να είναι η περίπτωση - ότι υπάρχει περισσότερη τεκμηρίωση 765 00:48:02,730 --> 00:48:05,480 διαθέσιμες για την PHP μόνο και μόνο επειδή υπάρχουν περισσότεροι άνθρωποι που χρησιμοποιούν. 766 00:48:05,480 --> 00:48:09,370 Νομίζω ότι δεν είναι τόσο πολύ από ένα θέμα πια. 767 00:48:09,370 --> 00:48:12,520 Υπάρχει σίγουρα πολύ καλή τεκμηρίωση για πράγματα όπως η Ruby on Rails 768 00:48:12,520 --> 00:48:16,080 ή Django για την Python είναι το ισοδύναμο. 769 00:48:16,080 --> 00:48:25,910 PHP είναι αυτό που ο καθένας έχει χρησιμοποιήσει για χρόνια, και γνωρίζετε πώς λειτουργεί. 770 00:48:25,910 --> 00:48:28,460 Ruby και Python είναι λίγο λιγότερο ώριμες. 771 00:48:28,460 --> 00:48:33,130 >> [Μέλος του ακροατηρίου] Αν ήταν να επιλέξετε ανάμεσα σε ένα από αυτά για να μάθουν ή να πάρει, 772 00:48:33,130 --> 00:48:36,130 ποια θα προτιμούσατε; 773 00:48:36,130 --> 00:48:38,870 Ειλικρινά, νομίζω ότι εξαρτάται από το άτομο. 774 00:48:38,870 --> 00:48:45,450 Λυπάμαι. Το ερώτημα ήταν ποια θα επιλέγατε για κάποιον να μάθει; 775 00:48:45,450 --> 00:48:50,230 Θεωρώ Python τα ωραιότερα προσωπικά. 776 00:48:50,230 --> 00:48:55,360 Υπάρχουν πολλοί άνθρωποι που - Έκανα το πρώτο μου έργο dev web σε Python και Django. 777 00:48:55,360 --> 00:49:00,300 Υπάρχουν πολλοί άνθρωποι που τους αρέσει Ruby on Rails επίσης. 778 00:49:00,300 --> 00:49:02,650 Πιθανώς περισσότεροι άνθρωποι που γνωρίζουν Ruby on Rails. 779 00:49:02,650 --> 00:49:05,270 Ειλικρινά, θα ήθελα απλώς να πάει με ό, τι οι άνθρωποι γύρω σας γνωρίζουμε 780 00:49:05,270 --> 00:49:09,680 έτσι ώστε να έχετε τους ανθρώπους να κάνουν ερωτήσεις. 781 00:49:19,640 --> 00:49:24,170 >> Το ερώτημα ήταν - σε κοινές servers είναι το είδος του σκληρά για να εργαστούν σε Python; 782 00:49:24,170 --> 00:49:26,170 Αυτό εξαρτάται από τη φιλοξενία σας. 783 00:49:26,170 --> 00:49:29,400 Υπάρχουν μια σειρά από οικοδεσπότες Ιστού που θα τοποθετήσουν τα πράγματα Python. 784 00:49:29,400 --> 00:49:31,400 WebFaction κάνει αυτό, έτσι δεν είναι; 785 00:49:31,400 --> 00:49:34,400 WebFaction είναι αυτή που Μπίλι και έχω χρησιμοποιήσει για ορισμένα έργα. 786 00:49:34,400 --> 00:49:37,750 Είναι πραγματικά μεγάλη. Υποστηρίζουν περισσότερες γλώσσες. 787 00:49:37,750 --> 00:49:40,020 Αλλά είναι αλήθεια ότι η PHP είναι πολύ πιο ευρεία υποστήριξη. 788 00:49:40,020 --> 00:49:45,210 Έτσι, εάν είστε κολλημένοι σε ένα web υποδοχής που κάνει μόνο PHP, αυτό είναι ένας καλός λόγος για να χρησιμοποιήσετε το PHP. 789 00:49:45,210 --> 00:49:56,010 >> [Μέλος του ακροατηρίου] Πήρα ακριβώς στην εκμάθηση πώς να αναζητούν κάποιες βάσεις δεδομένων, 790 00:49:56,010 --> 00:50:00,680 και ξέρω SQL μου είναι σε όλη τη χώρα, αλλά πρόσφατα πήρε εκτίθενται - 791 00:50:00,680 --> 00:50:04,470 και να το επισημάνει. Βλέπετε JSON και επεκτάσιμη βάση δεδομένων. 792 00:50:04,470 --> 00:50:14,580 SQL μου είναι ακόμα σε όλη τη χώρα. Πώς μπορείτε να δείτε ότι συμβαίνει; 793 00:50:14,580 --> 00:50:21,330 Υπάρχει μετάβαση να είναι μια αυξανόμενη τάση για πιο επεκτάσιμη (δεν ακούγεται); 794 00:50:21,330 --> 00:50:30,100 Το ερώτημα ήταν - δεν νομίζω ότι υπάρχει πρόκειται να είναι μια τάση προς τις βάσεις δεδομένων μη-SQL. 795 00:50:30,100 --> 00:50:33,850 Για παράδειγμα, όπως MongoDB. Νομίζω ότι αυτό είναι σίγουρα αλήθεια. 796 00:50:33,850 --> 00:50:38,730 Η συμβουλή μου ήταν ως επί το πλείστον σχετίζονται με mySQL εδώ μόνο και μόνο επειδή είναι mySQL 797 00:50:38,730 --> 00:50:40,950 πρότυπο της βιομηχανίας. 798 00:50:40,950 --> 00:50:45,950 Προσωπικά, προτιμώ πολύ βάσεις δεδομένων που δεν έχουν schemos όπως MongoDB 799 00:50:45,950 --> 00:50:49,520 όπου δεν έχετε το θέμα του, OH, πρέπει να προσθέσετε μια άλλη στήλη. 800 00:50:49,520 --> 00:50:51,600 Θλίψη είναι εγώ, όπως και ό, τι μπορώ να κάνω; 801 00:50:51,600 --> 00:50:55,840 Είναι πολύ δύσκολο να το κάνουμε αυτό σε mySQL, αλλά όταν έχεις κάτι σαν Mongo 802 00:50:55,840 --> 00:50:57,840 Είναι πολύ καλύτερο. 803 00:50:57,840 --> 00:51:03,780 Το άλλο ωραίο πράγμα για Mongo είναι ότι τα αρχεία σας είναι στην πραγματικότητα JavaScript αντικείμενα. 804 00:51:03,780 --> 00:51:10,110 Δεν υπάρχει το είδος του σταδίου μετατροπής κατά την οποία θα πρέπει να πάρετε αυτές τις γραμμές βάσης 805 00:51:10,110 --> 00:51:13,140 και να τους μετατρέψει σε ένα αντικείμενο JavaScript και στη συνέχεια να τα στείλει πάνω από το σύρμα. 806 00:51:13,140 --> 00:51:20,290 Νομίζω ότι τα πράγματα, όπως ότι πρόκειται να είναι πολύ, πολύ χρήσιμο για την ταχεία ανάπτυξη ιστοσελίδων στο μέλλον. 807 00:51:20,290 --> 00:51:23,060 >> [Billy] Κάτι θα ήθελα να προσθέσω το οποίο είναι απλά ένα γενικό σημείο είναι ότι 808 00:51:23,060 --> 00:51:26,580 δεν αισθάνονται σαν να πρέπει να έχουν μάθει όλες τις γλώσσες που έχουμε συζητήσει 809 00:51:26,580 --> 00:51:28,580 από το σεμινάριο μας. 810 00:51:28,580 --> 00:51:30,560 Προφανώς, το θέμα είναι να σας δώσει μια ιδέα για το τι υπάρχει εκεί έξω, 811 00:51:30,560 --> 00:51:33,450 και αν είστε intrigued από κάποια από τα πράγματα που έχουμε αναφέρει μπορείτε να το Google 812 00:51:33,450 --> 00:51:35,830 και να διαβάσετε επάνω σε αυτά. 813 00:51:35,830 --> 00:51:38,750 Και όπως ανέφερα, υπάρχουν μερικά σεμινάρια που ασχολούνται με αυτά ακριβώς τα πράγματα. 814 00:51:38,750 --> 00:51:41,660 Υπάρχουν ακόμα περισσότερα σεμινάρια που δεν ανέφερα τα οποία πιθανώς να μπει 815 00:51:41,660 --> 00:51:43,660 αυτά τα πράγματα, όπως καλά. 816 00:51:43,660 --> 00:51:46,610 Η ιδέα είναι ότι αν θέλετε να εργαστείτε σε κάτι, εδώ είναι τα εργαλεία στη διάθεσή σας. 817 00:51:46,610 --> 00:51:51,630 Να μην αισθάνονται συγκλονισμένοι, εάν δεν είστε πραγματικά βέβαιοι για το τι αυτά τα εργαλεία κάνουν ακριβώς, 818 00:51:51,630 --> 00:51:54,830 αλλά ξέρουν ότι είναι εκεί έξω και ότι μπορείτε να κάνετε ευρεία χρήση τους 819 00:51:54,830 --> 00:51:56,830 από την Google. 820 00:51:56,830 --> 00:51:59,960 >> [Μέλος του ακροατηρίου] Τι είδους πράγματα εσείς πρέπει να κάνετε για να βεβαιωθείτε ότι η ιστοσελίδα σας 821 00:51:59,960 --> 00:52:02,530 φαίνεται καλό για κινητές συσκευές; 822 00:52:02,530 --> 00:52:05,590 [Billy] Κινητές συσκευές είναι λίγο δύσκολο. 823 00:52:05,590 --> 00:52:07,590 Υπάρχουν 2 τρόποι που μπορείτε να την προσεγγίσετε. 824 00:52:07,590 --> 00:52:11,500 Ο πρώτος τρόπος είναι ότι έχετε πραγματικά ένα κινητό ιστοσελίδα. 825 00:52:11,500 --> 00:52:14,660 Με άλλα λόγια, θα εκτελέσει κάποια ανίχνευσης στην αρχή 826 00:52:14,660 --> 00:52:18,830 όταν το πρόγραμμα περιήγησης που υποβάλλει την αίτηση στην ιστοσελίδα σας, η οποία είτε λέει 827 00:52:18,830 --> 00:52:25,240 επιστρέφει αυτή την άποψη - η οποία θα είναι και η άποψη για desktop ή laptop browsers - 828 00:52:25,240 --> 00:52:27,710 και αυτή η άλλη άποψη για κινητές συσκευές. 829 00:52:27,710 --> 00:52:33,090 Αυτό είναι ένα μέρος όπου οι απόψεις είναι πραγματικά ωραίο ότι μπορείτε λίγο πολύ η ανταλλαγή 830 00:52:33,090 --> 00:52:37,580 δύο έξω και να έχουν μια διασύνδεση που λειτουργεί πραγματικά καλά σε κινητές συσκευές 831 00:52:37,580 --> 00:52:40,770 και έχουν ένα εντελώς διαφορετικό που λειτουργεί πολύ καλά σε συσκευές του προγράμματος περιήγησης. 832 00:52:40,770 --> 00:52:43,770 Το πρόβλημα με αυτό είναι ότι χρειάζεται πολύ χρόνο, διότι αυτό σημαίνει κωδικοποίηση 833 00:52:43,770 --> 00:52:47,060 ένα εντελώς διαφορετικό περιβάλλον. 834 00:52:47,060 --> 00:52:49,720 Ο άλλος τρόπος που μπορείτε να κάνετε είναι - 835 00:52:49,720 --> 00:52:55,250 πολλά σύγχρονα κινητά τηλέφωνα θα εμφανίσει ιστοσελίδες και να προσπαθήσουμε να τους καθιστούν ως ένα πρόγραμμα περιήγησης θα ήταν, 836 00:52:55,250 --> 00:52:57,680 και κάνουν το καλύτερό τους. 837 00:52:57,680 --> 00:53:04,340 Μπορείτε να το είδος προσπαθήστε να μείνετε φως σχετικά με το ποσό της jQuery JavaScript είστε με τη χρήση 838 00:53:04,340 --> 00:53:07,360 η οποία τείνει να είναι όπου τα πράγματα μπορούν να πάνε στραβά λίγο. 839 00:53:07,360 --> 00:53:13,430 Αυτό είναι το είδος του τρόπου που πρέπει να χρησιμοποιήσετε αν δεν έχετε τόσο πολύ χρόνο. 840 00:53:13,430 --> 00:53:18,540 Αν έχετε το χρόνο να εργαστούν σε ένα κινητό περιβάλλον, που είναι προφανώς η καλύτερη επιλογή σας. 841 00:53:18,540 --> 00:53:23,320 >> Νομίζω ότι γενικά για τα έργα CS50, θα πάμε να θέλουν να επιλέξουν το ένα ή το άλλο. 842 00:53:23,320 --> 00:53:27,990 Με άλλα λόγια, θέλετε να κάνετε ένα κινητό app ή θέλετε να κάνετε μια ιστοσελίδα στην επιφάνεια εργασίας. 843 00:53:27,990 --> 00:53:32,200 Και αυτό το είδος καθορίζει πού θα πάει με αυτό. 844 00:53:32,200 --> 00:53:35,360 Αλλά αν θέλετε να επεκτείνετε αργότερα, πιθανώς το καλύτερο στοίχημά σας είναι 845 00:53:35,360 --> 00:53:37,360 να κάνει άλλο ένα interface για την άλλη. 846 00:53:51,650 --> 00:53:56,340 Έχω λίγη εμπειρία στην ανάπτυξη sites WordPress που βασίζεται. 847 00:53:56,340 --> 00:53:58,670 Δέχθηκα μια προσωπική ιστοσελίδα στο WordPress για λίγο. 848 00:53:58,670 --> 00:54:02,310 Αυτά τα είδη των πλαισίων μπορεί να είναι καλό μόνο ως πολύ βασικά πράγματα. 849 00:54:02,310 --> 00:54:07,050 Πολλάκις θα τρέξει μόνο σε πολλά θέματα προσαρμογής του όμως. 850 00:54:07,050 --> 00:54:10,940 Θα θέλουν να έχουν κάτι να εξετάσουμε ένα συγκεκριμένο τρόπο ή να είναι ένα συγκεκριμένο τρόπο 851 00:54:10,940 --> 00:54:14,510 και δεν μπορείτε ακριβώς επειδή είναι βαθιά χαραγμένα μέσα στο σύστημα που 852 00:54:14,510 --> 00:54:17,480 Αυτό είναι το πώς θα πρέπει να κάνουμε τα πράγματα που μπορεί να είναι ένα κομμάτι από ένα πρόβλημα. 853 00:54:17,480 --> 00:54:22,020 Από τότε έχω το είδος της ήταν περισσότερο διατεθειμένοι να εργαστούν με δικτυακούς τόπους από το μηδέν. 854 00:54:22,020 --> 00:54:26,840 Για τα πράγματα όπως βάσεις δεδομένων blog και αυτό το είδος του πράγματος δεν είναι πραγματικά ότι σκληρά για να οικοδομήσουμε ένα πλαίσιο. 855 00:54:26,840 --> 00:54:29,970 Εάν είστε πραγματικά τεντωμένο για το χρόνο, μπορείτε φυσικά να χρησιμοποιήσετε κάτι σαν WordPress 856 00:54:29,970 --> 00:54:33,120 ή ότι το είδος του πράγματος για ένα blog. 857 00:54:33,120 --> 00:54:38,790 Τα είδη των πραγμάτων ότι τα blogs κατάστημα και να κάνουν δεν είναι πραγματικά δύσκολο αρκεί το γεγονός ότι 858 00:54:38,790 --> 00:54:41,500 αν τρέχετε σε οποιοδήποτε από αυτά τα πράγματα, είστε πιθανώς καλύτερο απλά να 859 00:54:41,500 --> 00:54:43,500 κάνει μια έκδοση του in-house. 860 00:54:43,500 --> 00:54:48,350 >> Νομίζω ότι είναι γι 'αυτό, έτσι ευχαριστώ και πάλι για τα επόμενα. 861 00:54:48,350 --> 00:54:51,960 Απολαύσαμε πραγματικά να μιλάμε για τα παιδιά σας και ελπίζω ότι έχετε μάθει κάποια πράγματα. 862 00:54:51,960 --> 00:54:55,350 [Ben] Είμαστε στην ευχάριστη θέση να μιλήσει - πρέπει να πάμε, αλλά είμαστε ευτυχείς να μιλήσουμε περισσότερο έξω 863 00:54:55,350 --> 00:55:01,650 αν έχετε άλλη ερώτηση. Ευχαριστώ και πάλι. [Χειροκροτήματα] 864 00:55:03,750 --> 00:55:06,000 [CS50.TV]