1 00:00:00,000 --> 00:00:01,291 >> David J. MALAN: Więc jesteśmy z powrotem. 2 00:00:01,291 --> 00:00:03,050 Tak wysokiego poziomu wątek w tej chwili teraz 3 00:00:03,050 --> 00:00:06,440 Stosy jest technologia, która nie jest termin, w szczególności technicznych, 4 00:00:06,440 --> 00:00:09,960 to bardziej połów wszystkich dla każdego Liczba kombinacji technologii 5 00:00:09,960 --> 00:00:11,840 które można wykorzystać do rozwiązywania problemów. 6 00:00:11,840 --> 00:00:14,850 I chyba najbardziej Oprawa sposób na rozpoczęcie 7 00:00:14,850 --> 00:00:18,110 byłoby spojrzeć na językach od Ciągle wyliczać całą masę 8 00:00:18,110 --> 00:00:21,000 a przede wszystkim w pokoju ma Prawdopodobnie słyszałeś co najmniej jednego. 9 00:00:21,000 --> 00:00:25,730 >> A więc dlaczego nie staramy się wyróżnić what-- rozróżnienia tych języków 10 00:00:25,730 --> 00:00:28,932 i krótko mówić o tym, kiedy będzie wybrać jeden nad drugim, jak oni 11 00:00:28,932 --> 00:00:30,890 rodzaj gruntu inaczej, a zwłaszcza 12 00:00:30,890 --> 00:00:34,830 podczas rozmów z inżynierami, lub stara się zdecydować, kogo zatrudnić, 13 00:00:34,830 --> 00:00:37,652 albo co implementacja Propozycja Greenlight, 14 00:00:37,652 --> 00:00:39,860 jak można rzeczywiście zrobić te rodzaje decyzji. 15 00:00:39,860 --> 00:00:41,890 >> Więc po prostu grzechotka pewne rzeczy off. 16 00:00:41,890 --> 00:00:45,300 Z języków ludzie mają Słyszałem o to, co przychodzi do głowy? 17 00:00:45,300 --> 00:00:48,030 C. OK. 18 00:00:48,030 --> 00:00:48,757 OK, C ++. 19 00:00:48,757 --> 00:00:51,400 20 00:00:51,400 --> 00:00:51,990 Co to jest? 21 00:00:51,990 --> 00:00:52,390 >> PUBLICZNOŚCI: Python. 22 00:00:52,390 --> 00:00:53,348 >> David J. MALAN: Python. 23 00:00:53,348 --> 00:00:55,330 Doskonały. 24 00:00:55,330 --> 00:00:57,000 Co jeszcze? 25 00:00:57,000 --> 00:00:58,810 Visual Basic. 26 00:00:58,810 --> 00:01:01,100 Słyszałem Java. 27 00:01:01,100 --> 00:01:02,610 Wizualne Basic-- a.k.a. 28 00:01:02,610 --> 00:01:03,150 VB. 29 00:01:03,150 --> 00:01:03,650 Jawa. 30 00:01:03,650 --> 00:01:07,294 31 00:01:07,294 --> 00:01:12,810 NET, która jest bardziej połowu wszystkich za to, co zazwyczaj jest C # jako język 32 00:01:12,810 --> 00:01:13,770 w pytaniu. 33 00:01:13,770 --> 00:01:14,770 I pozwól mi wspomnieć, że. 34 00:01:14,770 --> 00:01:15,900 Więc wracamy do tego. 35 00:01:15,900 --> 00:01:17,560 Przepraszam? 36 00:01:17,560 --> 00:01:18,170 Przepraszam? 37 00:01:18,170 --> 00:01:19,877 >> PUBLICZNOŚCI: SQL. 38 00:01:19,877 --> 00:01:20,876 David J. MALAN: Scratch? 39 00:01:20,876 --> 00:01:21,610 PUBLICZNOŚCI: SQL. 40 00:01:21,610 --> 00:01:22,610 David J. MALAN: Oh, SQL. 41 00:01:22,610 --> 00:01:23,110 OK. 42 00:01:23,110 --> 00:01:23,750 SQL. 43 00:01:23,750 --> 00:01:29,510 Więc wracamy do that-- właściwie to jest dobre-po przerwie, jak również. 44 00:01:29,510 --> 00:01:30,572 Co jeszcze? 45 00:01:30,572 --> 00:01:32,530 >> PUBLICZNOŚCI: Oracle. 46 00:01:32,530 --> 00:01:34,670 >> David J. MALAN: Tak Oracle, a nie języka. 47 00:01:34,670 --> 00:01:36,560 Właściwie to oni użyć SQL, jak również. 48 00:01:36,560 --> 00:01:38,360 Więc postawmy że po przerwa, jak również. 49 00:01:38,360 --> 00:01:39,744 I przepraszam, coś tutaj? 50 00:01:39,744 --> 00:01:40,660 PUBLICZNOŚCI: Mathematica. 51 00:01:40,660 --> 00:01:41,390 David J. MALAN: Mathematica? 52 00:01:41,390 --> 00:01:42,303 Dobrze, jasne. 53 00:01:42,303 --> 00:01:46,150 54 00:01:46,150 --> 00:01:49,180 I MATLAB jest rodzajem tam czasem. 55 00:01:49,180 --> 00:01:50,060 >> PUBLICZNOŚCI: R. 56 00:01:50,060 --> 00:01:51,755 >> David J. MALAN: R. Chodźmy tutaj. 57 00:01:51,755 --> 00:01:54,710 58 00:01:54,710 --> 00:01:55,210 Fortran. 59 00:01:55,210 --> 00:01:55,880 Pewnie. 60 00:01:55,880 --> 00:01:57,910 Starsze szkoły. 61 00:01:57,910 --> 00:01:59,390 Fortran. 62 00:01:59,390 --> 00:02:01,550 COBOL. 63 00:02:01,550 --> 00:02:02,410 Będę rzucać się podstawowego. 64 00:02:02,410 --> 00:02:05,990 65 00:02:05,990 --> 00:02:08,539 PODSTAWOWY. 66 00:02:08,539 --> 00:02:09,390 Każdy-- 67 00:02:09,390 --> 00:02:10,352 >> PUBLICZNOŚCI: MATLAB? 68 00:02:10,352 --> 00:02:11,310 David J. MALAN: MATLAB. 69 00:02:11,310 --> 00:02:12,248 Och, beat do niego. 70 00:02:12,248 --> 00:02:15,370 71 00:02:15,370 --> 00:02:15,870 Byle co? 72 00:02:15,870 --> 00:02:18,700 Mogę myśleć o paru innych. 73 00:02:18,700 --> 00:02:21,876 Mogę myśleć o kilku innych. 74 00:02:21,876 --> 00:02:22,792 A jaki był ostatni? 75 00:02:22,792 --> 00:02:23,970 >> PUBLICZNOŚCI: ASP. 76 00:02:23,970 --> 00:02:25,030 >> David J. MALAN: ASP? 77 00:02:25,030 --> 00:02:26,100 Tak. 78 00:02:26,100 --> 00:02:27,100 Active Server Pages. 79 00:02:27,100 --> 00:02:30,270 To na ogół nie są objęte inne języki, czasem C #, 80 00:02:30,270 --> 00:02:32,040 więc zostawmy to wyłączyć. 81 00:02:32,040 --> 00:02:35,510 Ale wrócimy do tego szkieletowe i takie. 82 00:02:35,510 --> 00:02:36,290 Coś jeszcze? 83 00:02:36,290 --> 00:02:39,020 PHP jest popularne. 84 00:02:39,020 --> 00:02:41,710 Ruby jest inny. 85 00:02:41,710 --> 00:02:48,230 JavaScript, którego nie należy mylić Java, jest inny. 86 00:02:48,230 --> 00:02:49,570 To trochę dużo. 87 00:02:49,570 --> 00:02:53,590 >> Więc może to być z pewnością przytłaczająca, jakby lista nie jest już 88 00:02:53,590 --> 00:02:55,650 wystarczy, aby rozpocząć wiedzieć, gdzie zacząć. 89 00:02:55,650 --> 00:02:58,130 I tak szczęście, niech podejść do tego z kilku punktów widzenia. 90 00:02:58,130 --> 00:03:03,520 Najpierw spróbujmy kategoryzować co najmniej niektóre z tych języków 91 00:03:03,520 --> 00:03:06,790 na dwie wiader, przypominający rozmowa mieliśmy przed przerwą, 92 00:03:06,790 --> 00:03:09,630 gdzie rozmawialiśmy o kompilacji i kod źródłowy i kod maszynowy, 93 00:03:09,630 --> 00:03:11,440 bo to nie jest, jak Wszystkie języki działać. 94 00:03:11,440 --> 00:03:15,640 Więc będziemy zrywać się kilka przykładów of-- lub przeciwnie examples-- tego modelu. 95 00:03:15,640 --> 00:03:18,490 >> A potem, dlaczego nie mówić o zastosowaniach 96 00:03:18,490 --> 00:03:20,390 że tych językach na ogół stosuje. 97 00:03:20,390 --> 00:03:22,840 I szczerze mówiąc, choć Jest to dość długa lista, 98 00:03:22,840 --> 00:03:26,320 to tylko podzbiór tej listy byś zazwyczaj wyciągnąć z tych dni 99 00:03:26,320 --> 00:03:27,220 w celu rozwiązania problemów. 100 00:03:27,220 --> 00:03:29,150 Niektóre języki są nowsze niż inne. 101 00:03:29,150 --> 00:03:31,170 Niektóre języki bardziej popularne niż inne. 102 00:03:31,170 --> 00:03:34,370 Więc to nie jest tak, jak masz takie przytłaczające zadanie przed wami 103 00:03:34,370 --> 00:03:36,970 przy podejmowaniu decyzji pomiędzy Te różne języki. 104 00:03:36,970 --> 00:03:40,110 >> Więc zróbmy to. 105 00:03:40,110 --> 00:03:45,870 Mieliśmy wcześniej, kod źródłowy, a następnie mieliśmy kodu maszynowego. 106 00:03:45,870 --> 00:03:48,590 107 00:03:48,590 --> 00:03:49,400 Ups. 108 00:03:49,400 --> 00:03:50,910 Pisanie złego słowa. 109 00:03:50,910 --> 00:03:52,740 kod maszynowy. 110 00:03:52,740 --> 00:03:57,549 I mieliśmy trochę proces w średnim called-- tak, kompilator. 111 00:03:57,549 --> 00:03:58,215 Tak kompilator. 112 00:03:58,215 --> 00:04:00,760 113 00:04:00,760 --> 00:04:03,910 >> A co do kodu maszynowego uruchomiona na ostatecznie 114 00:04:03,910 --> 00:04:05,680 będzie rzeczywisty procesora. 115 00:04:05,680 --> 00:04:09,660 Innymi słowy, według kodu maszynowego i oznaczają instrukcje najniższym poziomie 116 00:04:09,660 --> 00:04:11,330 że CPU rzeczywiście rozumie. 117 00:04:11,330 --> 00:04:15,100 Dodawanie, odejmowanie, ruch, zapisywanie i operacje takie jak to. 118 00:04:15,100 --> 00:04:19,700 A więc to jest model, co jest ogólnie znane jako skompilowanych językach. 119 00:04:19,700 --> 00:04:21,000 Być może nie jest zaskoczeniem. 120 00:04:21,000 --> 00:04:23,550 >> Jest to więc model dla skompilowanych językach. 121 00:04:23,550 --> 00:04:25,970 Ale okazuje się, istnieje inna klasa języków 122 00:04:25,970 --> 00:04:32,650 nazywa interpretować languages-- interpretować languages-- 123 00:04:32,650 --> 00:04:34,030 które są nieco inne. 124 00:04:34,030 --> 00:04:41,660 Piszesz w kodzie źródłowym, uruchom je za pośrednictwem tłumacza, 125 00:04:41,660 --> 00:04:45,440 i że jest interpreter co działa na CPU. 126 00:04:45,440 --> 00:04:50,120 Innymi słowy, co nie Emit jest czym, najwyraźniej? 127 00:04:50,120 --> 00:04:50,980 kod maszynowy. 128 00:04:50,980 --> 00:04:54,290 W zer i jedynek, że procesor Sam ostatecznie rozumie. 129 00:04:54,290 --> 00:04:59,780 >> Więc w tej pierwszej wersji, a Języki takie jak C, jak widzieliśmy, 130 00:04:59,780 --> 00:05:02,040 piszesz w kodzie źródłowym to trochę Arcane, 131 00:05:02,040 --> 00:05:05,300 ale przynajmniej trochę podobny do angielskiego i to co najmniej czytelne 132 00:05:05,300 --> 00:05:06,780 Gdy już do niego przyzwyczaić. 133 00:05:06,780 --> 00:05:10,100 Uruchomić go przez kompilator i na zewnątrz masz ostatecznie zer i jedynek. 134 00:05:10,100 --> 00:05:11,340 >> To nadmierne uproszczenie. 135 00:05:11,340 --> 00:05:12,839 Istnieje kilka innych kroków tam. 136 00:05:12,839 --> 00:05:15,530 W rzeczywistości, jeśli kiedykolwiek słyszał określenie "język asemblera" 137 00:05:15,530 --> 00:05:17,990 to jest o jeden krok przed zera i jedynki. 138 00:05:17,990 --> 00:05:20,949 To trochę bardziej czytelne, ale nadal dość zaawansowanych. 139 00:05:20,949 --> 00:05:23,740 A więc nie ma etapów pośrednich które są w rzeczywistości dzieje. 140 00:05:23,740 --> 00:05:26,360 Ale wyjście ostatecznie właśnie te zer i jedynek. 141 00:05:26,360 --> 00:05:28,990 >> Ale w interpretować Świat, gdzie trzeba 142 00:05:28,990 --> 00:05:32,680 języków, które są interpretowane Języki, to faktycznie można pominąć ten krok. 143 00:05:32,680 --> 00:05:36,010 Innymi słowy, kiedy piszesz Program, po prostu od razu go uruchomić. 144 00:05:36,010 --> 00:05:38,960 Nie skompilować i Następnie uruchom go, jak już przedtem. 145 00:05:38,960 --> 00:05:41,132 Wystarczy napisać i uruchomić go. 146 00:05:41,132 --> 00:05:44,340 A jeśli chcesz zrobić szybkie zmiany, dokonać szybkiej zmiany i uruchom go. 147 00:05:44,340 --> 00:05:46,640 Więc nie ma tu średnim krokiem. 148 00:05:46,640 --> 00:05:50,840 >> Teraz w programie pisałem wcześniej, który był program "Hello World", 149 00:05:50,840 --> 00:05:53,660 to polubisz racjonalnie wonder-- albo realnie 150 00:05:53,660 --> 00:05:58,570 state--, że nie było czasu spożywanie skompilować mój program. 151 00:05:58,570 --> 00:06:00,337 Wydaje się to zrobić tak po prostu. 152 00:06:00,337 --> 00:06:02,170 I jest graficznym wersje kompilatorów. 153 00:06:02,170 --> 00:06:05,270 Używam bardzo tajemnej wersję, ale można trafić przycisk odtwarzania 154 00:06:05,270 --> 00:06:07,887 i że faktycznie kompilacja dla Ciebie. 155 00:06:07,887 --> 00:06:10,720 Mam skompilowany program, a następnie ponownie, aby go uruchomić, po prostu to zrobić. 156 00:06:10,720 --> 00:06:13,820 I wyjść z lewej strony tam, "Hello!" 157 00:06:13,820 --> 00:06:15,530 Nie wydaje się to wszystko, co uciążliwe. 158 00:06:15,530 --> 00:06:19,920 Ale gdy programy są więcej niż jeden, dwa, trzy, 159 00:06:19,920 --> 00:06:25,470 długie cztery, pięć linii, może podjąć znacznie więcej sekund, aby skompilować. 160 00:06:25,470 --> 00:06:28,310 Czasem nawet minut albo trochę czasu, aby skompilować. 161 00:06:28,310 --> 00:06:30,480 Po tym wszystkim, niektóre Największe produkty świecie 162 00:06:30,480 --> 00:06:35,040 Są rzeczy, takie jak systemy operacyjne, Microsoft Word, Microsoft Excel, 163 00:06:35,040 --> 00:06:39,070 które mogą mieć setki tysięcy lub nawet miliony linii kodu długich, 164 00:06:39,070 --> 00:06:41,300 a te nie tylko natychmiastowego wykonania. 165 00:06:41,300 --> 00:06:44,560 >> Ponadto na stronie internetowej, to stają się modne w użyciu 166 00:06:44,560 --> 00:06:47,600 tylko interpretować języki, po części dlatego, że ciebie 167 00:06:47,600 --> 00:06:50,570 Można dokonać zmian jako dewelopera a potem po prostu od razu przeładuj 168 00:06:50,570 --> 00:06:52,570 strona przeglądarki i natychmiast zobaczyć wynik. 169 00:06:52,570 --> 00:06:56,160 I tak, HTML, a nie język programowania, 170 00:06:56,160 --> 00:06:58,860 Jest to język, który jest interpretowany. 171 00:06:58,860 --> 00:07:00,770 I widzieliśmy, że ten sam efekt wczoraj. 172 00:07:00,770 --> 00:07:04,070 Wystarczy odświeżyć stronę po dokonaniu zmiana Cloud9 and-- voila-- 173 00:07:04,070 --> 00:07:05,560 pojawi się nowy wynik. 174 00:07:05,560 --> 00:07:07,090 >> Więc jaka jest różnica tutaj? 175 00:07:07,090 --> 00:07:13,190 W HTML, przypomnijmy, mieliśmy otwartą HTML, otwarta głowa, otwarta tytuł, blisko tytułu, 176 00:07:13,190 --> 00:07:15,250 blisko głowy, otwarte nadwozie, i tak dalej. 177 00:07:15,250 --> 00:07:19,149 Mieliśmy wszystkie te znaczniki, które dość dużo powiedziane, poinformować przeglądarkę, co robić. 178 00:07:19,149 --> 00:07:20,690 Hej przeglądarka, oto stronę HTML. 179 00:07:20,690 --> 00:07:22,170 Hej przeglądarka, oto tytuł. 180 00:07:22,170 --> 00:07:24,429 Hej przeglądarka, oto niektóre tekst, który powinien być pogrubione. 181 00:07:24,429 --> 00:07:25,720 I wtedy powiesz coś przeciwnego. 182 00:07:25,720 --> 00:07:27,330 Hej przeglądarka, to jest to dla pogrubioną czcionką twarzy. 183 00:07:27,330 --> 00:07:28,830 Hej przeglądarka, to jest to dla organizmu. 184 00:07:28,830 --> 00:07:29,740 I tak dalej. 185 00:07:29,740 --> 00:07:31,130 >> A więc co to jest przeglądarka? 186 00:07:31,130 --> 00:07:33,170 Przeglądarka jest tylko tłumaczem. 187 00:07:33,170 --> 00:07:36,090 Jest to program, że ktoś taki jak Microsoft i Google napisał, 188 00:07:36,090 --> 00:07:39,160 którego celem w życiu jest czytaj języka, znany jako HTML, 189 00:07:39,160 --> 00:07:39,890 i zinterpretować go. 190 00:07:39,890 --> 00:07:41,290 Od góry do dołu, od lewej do prawej. 191 00:07:41,290 --> 00:07:46,880 I za każdym razem przeglądarka widzi otwarte Uchwyt, tytuł, nawiasu zamykającego, 192 00:07:46,880 --> 00:07:48,960 należy interpretować, że w ten sposób, oh, które 193 00:07:48,960 --> 00:07:52,490 oznacza, że ​​należy umieścić te słowa sposobem tu w górnej części przeglądarki. 194 00:07:52,490 --> 00:07:55,700 >> Więc po prostu robi to, co kod HTML mówi. 195 00:07:55,700 --> 00:07:57,240 Ale nie ma zer i jedynek. 196 00:07:57,240 --> 00:07:58,250 Nie ma kompilacji. 197 00:07:58,250 --> 00:07:58,890 Nie zrobił tego. 198 00:07:58,890 --> 00:07:59,931 Przeglądarka nie zrobił. 199 00:07:59,931 --> 00:08:01,710 To nie tylko zaangażowana. 200 00:08:01,710 --> 00:08:05,890 >> Tak więc w duchu tych trwają tematy, dzisiaj i wczoraj, 201 00:08:05,890 --> 00:08:08,400 który wydaje się być wspaniałym elementem. 202 00:08:08,400 --> 00:08:11,410 Zaoszczędzisz swój kod, a następnie wystarczy go uruchomić i zinterpretować. 203 00:08:11,410 --> 00:08:13,790 Nie ma żadnych kroków pośrednich. 204 00:08:13,790 --> 00:08:15,690 Z pewnością nie jest to koszt? 205 00:08:15,690 --> 00:08:16,810 Nie może być w całości upsides. 206 00:08:16,810 --> 00:08:19,964 Co więc może to być koszt? 207 00:08:19,964 --> 00:08:20,940 >> PUBLICZNOŚCI: Kosmos. 208 00:08:20,940 --> 00:08:22,370 >> David J. MALAN: Kosmos. 209 00:08:22,370 --> 00:08:23,370 Tak pewny. 210 00:08:23,370 --> 00:08:26,920 W opracowanej świata, trzeba nie tylko oryginalny kod źródłowy, 211 00:08:26,920 --> 00:08:29,657 to są również tworzenie i wtedy zapewne oszczędności 212 00:08:29,657 --> 00:08:31,740 maszyna code-- Zera i ones-- i to 213 00:08:31,740 --> 00:08:33,870 mam podjąć jakąś ilość miejsca. 214 00:08:33,870 --> 00:08:34,429 Absolutnie. 215 00:08:34,429 --> 00:08:35,765 Więc to kosztowało więcej miejsca. 216 00:08:35,765 --> 00:08:39,289 217 00:08:39,289 --> 00:08:39,789 Tak? 218 00:08:39,789 --> 00:08:43,280 >> WIDOWNI: Przeglądarki może interpretować w różny sposób. 219 00:08:43,280 --> 00:08:46,770 >> David J. Malan: Przeglądarki mogłyby interpretuje to inaczej. 220 00:08:46,770 --> 00:08:48,622 To prawda. 221 00:08:48,622 --> 00:08:50,330 Ale nie jestem pewien, że jestem wygodne, twierdząc, 222 00:08:50,330 --> 00:08:51,840 to dlatego, że to interpretować. 223 00:08:51,840 --> 00:08:56,340 To więcej, tylko dlatego, że implementacja języku 224 00:08:56,340 --> 00:08:58,050 która sama ma wątpliwości. 225 00:08:58,050 --> 00:09:01,570 Więc nie do końca potwierdzają że jeden, ale dobre przeczucie. 226 00:09:01,570 --> 00:09:03,103 Co jeszcze może być zapłacona cena? 227 00:09:03,103 --> 00:09:03,602 Andrzej? 228 00:09:03,602 --> 00:09:05,912 >> PUBLICZNOŚCI: łączysz dwa kroki, więc w związku z tym 229 00:09:05,912 --> 00:09:08,300 mają coraz bardziej skomplikowane, jak również. 230 00:09:08,300 --> 00:09:11,040 >> David J. MALAN: the complex-- wzrost złożoności gdzie? 231 00:09:11,040 --> 00:09:12,270 Dla kogo? 232 00:09:12,270 --> 00:09:16,748 >> PUBLICZNOŚCI: Tak, w tłumacza krokiem, łączysz interpretera 233 00:09:16,748 --> 00:09:19,120 oraz kompilator po prostu prowadzące to-- 234 00:09:19,120 --> 00:09:21,100 >> David J. MALAN: Ach, OK. 235 00:09:21,100 --> 00:09:25,240 Jak na ironię, to chyba trochę prostsze do wdrożenia tłumacza 236 00:09:25,240 --> 00:09:29,530 choć wydaje się, aby Plusy wydajność w tym wygody. 237 00:09:29,530 --> 00:09:30,550 Więc może to prawda. 238 00:09:30,550 --> 00:09:32,716 Ale to rodzaj zależy mi powiedziałbym, na języku 239 00:09:32,716 --> 00:09:35,720 oraz o tym, jak weszli o jego realizacji. 240 00:09:35,720 --> 00:09:38,535 Nie może być o wiele bardziej złożony, Właściwie w kompilator, 241 00:09:38,535 --> 00:09:41,410 tylko dlatego, że trzeba iść z coś tak wysokim poziomie do czegoś 242 00:09:41,410 --> 00:09:42,560 tak niskiego poziomu. 243 00:09:42,560 --> 00:09:45,340 Ale to dobry pomysł. 244 00:09:45,340 --> 00:09:50,770 >> Więc innymi słowy, skompilowany program po włączeniu do tych zer i jedynek, 245 00:09:50,770 --> 00:09:54,470 kończy się w języku że procesor mówi, 246 00:09:54,470 --> 00:09:57,850 aw tej stronie Świat, program, który napisałem, 247 00:09:57,850 --> 00:10:02,527 kod masz napisane, nigdy nie zostaje przekształcony w rzeczywistej języku 248 00:10:02,527 --> 00:10:03,360 komputer mówi. 249 00:10:03,360 --> 00:10:04,190 Zer i jedynek. 250 00:10:04,190 --> 00:10:08,480 To pozostaje w oryginalnym, bardziej ludzki przyjazny, bardziej czytelnym językiem. 251 00:10:08,480 --> 00:10:11,720 Więc co może być implikacja nie, nie, jeśli nie w rzeczywistości 252 00:10:11,720 --> 00:10:15,020 przeszkadza konwersja Program do samego języka 253 00:10:15,020 --> 00:10:18,013 że komputer bazowy mówi? 254 00:10:18,013 --> 00:10:19,780 >> PUBLICZNOŚCI: może nie coś zrozumieć? 255 00:10:19,780 --> 00:10:21,170 >> David J. MALAN: Might Nie rozumiem czegoś. 256 00:10:21,170 --> 00:10:23,297 A to może claim-- jeśli nie rozumiesz 257 00:10:23,297 --> 00:10:25,880 coś, że to błąd lub brak wśród wyposażone w tłumacza. 258 00:10:25,880 --> 00:10:28,544 Tak, by być bardziej błędem niż kosztów. 259 00:10:28,544 --> 00:10:30,419 >> PUBLICZNOŚCI: Masz dostęp do kodu źródłowego? 260 00:10:30,419 --> 00:10:31,877 David J. MALAN: Jest dobry. 261 00:10:31,877 --> 00:10:34,140 Więc minusem tutaj jest to, wydaje się mieć dostęp. 262 00:10:34,140 --> 00:10:37,006 Ty, użytkownik końcowy może wydawać się mają dostęp do kodu źródłowego. 263 00:10:37,006 --> 00:10:38,130 I to nie zawsze prawda. 264 00:10:38,130 --> 00:10:39,660 Ale prawdą jest, w Przypadek JavaScript, 265 00:10:39,660 --> 00:10:41,660 którym przyjrzymy się po dzisiaj przerwa, która 266 00:10:41,660 --> 00:10:45,720 jest interpretowany język programowania że piszesz w kodzie źródłowym. 267 00:10:45,720 --> 00:10:48,890 >> Ale, że kod źródłowy zostanie przeniesiony z serwera do przeglądarki 268 00:10:48,890 --> 00:10:51,392 i działa w przeglądarce człowieka. 269 00:10:51,392 --> 00:10:54,350 Więc może po prostu otworzyć Okno, podobnie jak robiłem w Chrome 270 00:10:54,350 --> 00:10:57,740 i patrzeć na to, jak my sami Spojrzał na wczoraj z Google. 271 00:10:57,740 --> 00:11:00,420 To może wyglądać trochę niezrozumiałe, ale jest tam. 272 00:11:00,420 --> 00:11:03,482 Więc to jest absolutnie jeden cena zapłacona. 273 00:11:03,482 --> 00:11:04,565 PUBLICZNOŚCI: Wydajność hitem? 274 00:11:04,565 --> 00:11:05,020 David J. MALAN: Tak. 275 00:11:05,020 --> 00:11:06,260 I to jest druga wielkiego. 276 00:11:06,260 --> 00:11:07,380 Jest hitem wydajności. 277 00:11:07,380 --> 00:11:10,100 Ponieważ masz to środku człowieka, który sam 278 00:11:10,100 --> 00:11:13,740 Jest to program, między wami i procesor, w przeciwieństwie 279 00:11:13,740 --> 00:11:17,880 tylko karmienie nich surowe zer i jedynek do CPU, 280 00:11:17,880 --> 00:11:21,060 jest hitem wydajności, które Cię zabrać ze interpretowanym języku. 281 00:11:21,060 --> 00:11:24,240 Taki, że arbitralnie, program które mogą przyjmować jedną sekundę 282 00:11:24,240 --> 00:11:27,840 do uruchomienia na komputerze lub w jednym minut do uruchomienia na komputerze tutaj 283 00:11:27,840 --> 00:11:32,059 może trwać 10 sekund lub 10 minuty do uruchomienia na komputerze tutaj. 284 00:11:32,059 --> 00:11:35,100 To na ogół nie będzie, że dużo difference-- czynnik 10-- 285 00:11:35,100 --> 00:11:36,808 bo nie ma optymalizacje można zrobić. 286 00:11:36,808 --> 00:11:38,680 Ale to prawie zawsze jest wolniejsze. 287 00:11:38,680 --> 00:11:43,070 Teraz druga strona tej troski jest to, że także komputery, co 12 288 00:11:43,070 --> 00:11:45,970 do 18, w zależności od wielu miesięcy Prawo Moore'a, tak speak-- 289 00:11:45,970 --> 00:11:47,600 są po prostu coraz szybciej i szybciej. 290 00:11:47,600 --> 00:11:48,750 Mam coraz więcej miejsca na dysku. 291 00:11:48,750 --> 00:11:49,791 Mam coraz więcej pamięci RAM. 292 00:11:49,791 --> 00:11:50,620 Kogo to obchodzi? 293 00:11:50,620 --> 00:11:52,328 >> A to niby rozsądnym argumentem. 294 00:11:52,328 --> 00:11:55,740 Rzeczywiście, jeden z powodów Dlatego możemy tolerować wolniejsze 295 00:11:55,740 --> 00:11:58,480 Języki interpretowane, ponieważ jest my, ludzie naprawdę nie zauważy. 296 00:11:58,480 --> 00:12:00,690 Komputery mają zdobyć tak cholernie szybko. 297 00:12:00,690 --> 00:12:04,520 Zważywszy, że w tamtych czasach, zwłaszcza gdy sprzętowy został znacznie bardziej ograniczona, 298 00:12:04,520 --> 00:12:06,860 miałeś mniej wszystkiego, było o wiele droższe 299 00:12:06,860 --> 00:12:10,570 więc wszystko kosztuje więcej, a następnie naprawdę chciał wycisnąć 300 00:12:10,570 --> 00:12:12,590 tyle wydajność, jak mógł. 301 00:12:12,590 --> 00:12:16,400 Ale to wymaga piśmie niższego poziomu, jeśli będzie, 302 00:12:16,400 --> 00:12:18,090 z skompilowany języka. 303 00:12:18,090 --> 00:12:20,830 >> Więc weźcie to wydajność. 304 00:12:20,830 --> 00:12:24,780 Ale generalnie, upsides wydają się być warte te dni. 305 00:12:24,780 --> 00:12:26,850 No, chyba że dla Kwestia własności intelektualnej. 306 00:12:26,850 --> 00:12:28,641 Tego rodzaju czytelności kodu, będziemy 307 00:12:28,641 --> 00:12:30,640 wrócić do kiedy patrzymy na JavaScript. 308 00:12:30,640 --> 00:12:33,140 >> Więc spróbujmy kategoryzować co najmniej kilka z nich. 309 00:12:33,140 --> 00:12:41,650 Tak więc wśród zebranych języków, mamy musiałby C, C ++, trochę, jakoś, Java, 310 00:12:41,650 --> 00:12:48,120 Chociaż jest to trochę wyjątek dla Powody Pokażę ci za chwilę. 311 00:12:48,120 --> 00:12:51,540 C # będzie na liście. 312 00:12:51,540 --> 00:12:54,930 Przyjrzymy się więcej na tak bardziej współczesne języki. 313 00:12:54,930 --> 00:12:55,430 W porządku. 314 00:12:55,430 --> 00:12:56,804 I to wydaje się dużo tam. 315 00:12:56,804 --> 00:13:03,500 Zważywszy, że na tej stronie płotu, możemy mieć JavaScript i Python, 316 00:13:03,500 --> 00:13:08,040 i PHP i Ruby. 317 00:13:08,040 --> 00:13:13,640 I to, że wystarczy dla z nowszych? 318 00:13:13,640 --> 00:13:15,410 To czuje się jak dużo teraz. 319 00:13:15,410 --> 00:13:16,330 OK. 320 00:13:16,330 --> 00:13:18,760 A potem kropka kropka kropka, Ponieważ lista nie ma końca. 321 00:13:18,760 --> 00:13:22,300 >> I rzeczywiście, jeśli chcemy po prostu uzyskać poczucie this-- Wikipedii 322 00:13:22,300 --> 00:13:24,130 skompilowane języków. 323 00:13:24,130 --> 00:13:27,150 Zgaduję, możemy uzyskać znacznie bardziej wyczerpująca lista. 324 00:13:27,150 --> 00:13:27,910 Więc zaczynamy. 325 00:13:27,910 --> 00:13:30,620 Więc tutaj jest znacznie bardziej wyczerpująca lista. 326 00:13:30,620 --> 00:13:34,150 I miałem nadzieję, że ktoś odgadnąć D jako język, bo to też istnieje, 327 00:13:34,150 --> 00:13:37,747 ale zatrzymał się na D by się wydawać. 328 00:13:37,747 --> 00:13:39,330 Mimo że w rzeczywistości może być E. 329 00:13:39,330 --> 00:13:41,496 >> Och, faktycznie, powinno znajdować się na liście tych dniach. 330 00:13:41,496 --> 00:13:47,460 Swift jest rzeczywiście Język, że Apple wymyślił 331 00:13:47,460 --> 00:13:50,302 które są obecnie używane w coraz większym stopniu Tak więc w rozwoju iPhone. 332 00:13:50,302 --> 00:13:52,260 Ale wrócimy do że w naszej dyskusji 333 00:13:52,260 --> 00:13:54,090 z telefonu komórkowego w tylko trochę, jak również. 334 00:13:54,090 --> 00:13:55,260 Więc Swift, jak również. 335 00:13:55,260 --> 00:13:57,540 >> A potem, jeśli pójdziemy do interpretować language-- 336 00:13:57,540 --> 00:14:05,010 interpretować language-- to tu jest jeszcze dłuższa lista, jak również. 337 00:14:05,010 --> 00:14:07,260 Więc jeśli po prostu google i spojrzeć na Wikipedia dla tych, 338 00:14:07,260 --> 00:14:09,231 zobaczysz wszystkie rodzaje języków. 339 00:14:09,231 --> 00:14:10,980 Jednak celem jest Na dzisiaj tak naprawdę, po prostu 340 00:14:10,980 --> 00:14:13,680 sprowadza się do tego może to Kwestia własności intelektualnej 341 00:14:13,680 --> 00:14:18,200 i czytelność przez użytkownika końcowego oraz wydajność, jest kolejnym Biggie również. 342 00:14:18,200 --> 00:14:21,080 >> Tak więc wśród tych języków, pozwól mi zobaczyć, czy możemy ci dać 343 00:14:21,080 --> 00:14:24,487 tylko niektóre próbki języków. 344 00:14:24,487 --> 00:14:26,820 Nie chcemy, aby przejść wszystkie nieskończoność języków. 345 00:14:26,820 --> 00:14:29,720 Czy kiedykolwiek zastanawialiście się, co pewne język wygląda? 346 00:14:29,720 --> 00:14:31,562 My widzieliśmy przed chwilą. 347 00:14:31,562 --> 00:14:33,520 Dlaczego nie potrwać kilka od prośby. 348 00:14:33,520 --> 00:14:35,380 Kto chciałby zobaczyć co Inny język wygląda? 349 00:14:35,380 --> 00:14:35,620 Tak. 350 00:14:35,620 --> 00:14:36,150 >> PUBLICZNOŚCI: Java. 351 00:14:36,150 --> 00:14:36,540 >> David J. MALAN: Java. 352 00:14:36,540 --> 00:14:37,040 W porządku. 353 00:14:37,040 --> 00:14:38,504 Więc chodźmy do Javy. 354 00:14:38,504 --> 00:14:42,300 355 00:14:42,300 --> 00:14:44,900 I po prostu dać ci sample-- moglibyśmy napisać to wszystko na zewnątrz, 356 00:14:44,900 --> 00:14:47,670 ale byłoby szybciej tylko spojrzeć na przykładowy kod cudzego. 357 00:14:47,670 --> 00:14:48,170 W porządku. 358 00:14:48,170 --> 00:14:50,330 Więc jest to dobry przykład? 359 00:14:50,330 --> 00:14:52,040 Ups. 360 00:14:52,040 --> 00:14:52,540 OK. 361 00:14:52,540 --> 00:14:58,810 Więc tutaj jest wersja Java z Program napisałem wcześniej, "Hello World". 362 00:14:58,810 --> 00:15:01,900 >> Tak Java, będziesz często patrz "klasę". słowa kluczowego 363 00:15:01,900 --> 00:15:03,779 Wtedy zobaczysz jakąś nazwę po tym. 364 00:15:03,779 --> 00:15:05,570 Zobaczysz nawiasów klamrowych jak widzieliśmy wcześniej, 365 00:15:05,570 --> 00:15:08,153 a czasem idą na ta sama linia, czasem inne linie, 366 00:15:08,153 --> 00:15:09,734 to rodzaj osobistej decyzji. 367 00:15:09,734 --> 00:15:11,900 Zobaczysz, słowa kluczowe, takie jak "Publiczny", "statyczne", "nieważna". 368 00:15:11,900 --> 00:15:13,790 Ale widzieliśmy "main". "Główna" jest na ogół 369 00:15:13,790 --> 00:15:17,220 nazwa funkcji domyślnej lub domyślny fragment kodu, który 370 00:15:17,220 --> 00:15:18,760 zostanie uruchomiony w programie. 371 00:15:18,760 --> 00:15:19,330 >> "Strunowy." 372 00:15:19,330 --> 00:15:20,850 Co rozumiemy przez ciąg wcześniej? 373 00:15:20,850 --> 00:15:23,480 Używałem go niby od niechcenia. 374 00:15:23,480 --> 00:15:25,100 Łańcuch jest co? 375 00:15:25,100 --> 00:15:25,601 Słowo. 376 00:15:25,601 --> 00:15:27,058 To tak, jakby ciąg znaków. 377 00:15:27,058 --> 00:15:29,810 Poszczególne postacie, z powrotem do z powrotem do tyłu, zazwyczaj w tablicy, 378 00:15:29,810 --> 00:15:30,690 jak już omówione. 379 00:15:30,690 --> 00:15:34,700 I rzeczywiście, zobacz ten składni tu dwa nawiasy kwadratowe? 380 00:15:34,700 --> 00:15:39,210 To znaczy, hej komputer, tutaj pochodzi tablicę ciągów. 381 00:15:39,210 --> 00:15:42,636 Zapis nawias kwadratowy jest Powszechnie stosuje się do oznaczenia, że. 382 00:15:42,636 --> 00:15:44,510 I wtedy można pewnie co zrobić guess-- 383 00:15:44,510 --> 00:15:46,580 czy to podkreślone fragment kodu pewnie zrobić? 384 00:15:46,580 --> 00:15:49,737 385 00:15:49,737 --> 00:15:50,639 >> PUBLICZNOŚCI: wyjście? 386 00:15:50,639 --> 00:15:51,090 >> David J. MALAN: Tak. 387 00:15:51,090 --> 00:15:52,506 Wypisuje coś na ekranie. 388 00:15:52,506 --> 00:15:57,070 Więc "system" jest swego rodzaju Odniesienie do komputera. 389 00:15:57,070 --> 00:15:59,620 "Out" oznacza komputer użytkownika Wyjście lub ekranu. 390 00:15:59,620 --> 00:16:04,450 Więc "System.out.print ln" prawdopodobnie oznacza? 391 00:16:04,450 --> 00:16:05,570 "Ln". 392 00:16:05,570 --> 00:16:09,570 linia wydruku, który programiści lubią do podobno pisze kilka słów z 393 00:16:09,570 --> 00:16:11,820 w całości i podjąć Skróty z innymi słowami. 394 00:16:11,820 --> 00:16:13,260 Ale "ln" to linia, więc linia wydruku. 395 00:16:13,260 --> 00:16:17,370 Więc to wypisuje "Hello World! ", A następnie w nowym wierszu. 396 00:16:17,370 --> 00:16:18,300 >> Więc to jest to. 397 00:16:18,300 --> 00:16:21,150 Ale Java jest to, czego będziesz Wywołanie obiektowy. 398 00:16:21,150 --> 00:16:23,440 I rzeczywiście, po prostu dać Kilka innych definicji 399 00:16:23,440 --> 00:16:26,420 tam, że może patrz, ogólnie, 400 00:16:26,420 --> 00:16:30,600 Jest wiele różnych typów języków, ale najczęstszym 401 00:16:30,600 --> 00:16:37,830 to języki proceduralne lub koniecznością. 402 00:16:37,830 --> 00:16:41,600 Są funkcjonalne Języki, które nie 403 00:16:41,600 --> 00:16:43,790 oznacza to, że inni są niefunkcjonalne. 404 00:16:43,790 --> 00:16:47,740 A wtedy nie języków obiektowych. 405 00:16:47,740 --> 00:16:51,170 I to jest chyba najlepszy kategoryzacja większości języków 406 00:16:51,170 --> 00:16:56,445 że kiedykolwiek wybrać odpowiedni dla rodzaju typowym komercyjnym projekcie. 407 00:16:56,445 --> 00:16:58,910 >> To byłoby zbyt wiele, Myślę, otworu szczura 408 00:16:58,910 --> 00:17:01,620 zejść, aby spróbować wyjaśnić rozmaite różnice. 409 00:17:01,620 --> 00:17:04,599 Ale językach widzieliśmy więc far-- C 410 00:17:04,599 --> 00:17:07,680 Jest to proceduralne lub Język koniecznością. 411 00:17:07,680 --> 00:17:11,200 Ostatnio wynaleziono Języki wydają się być, przepraszam, 412 00:17:11,200 --> 00:17:14,430 obiektowe, co oznacza, mają inne funkcje do nich. 413 00:17:14,430 --> 00:17:18,130 414 00:17:18,130 --> 00:17:19,430 Mogę to wyjaśnić w ten sposób? 415 00:17:19,430 --> 00:17:20,950 Załóżmy nawet tam iść. 416 00:17:20,950 --> 00:17:25,200 >> Środki obiektowe można implement-- 417 00:17:25,200 --> 00:17:27,930 można modelować świat rzeczywisty trochę bardziej efektywnie. 418 00:17:27,930 --> 00:17:29,722 Ludzkość, z biegiem czasu, zorientowali się, wow, 419 00:17:29,722 --> 00:17:32,430 byłoby miło, gdyby moim języku miał tę funkcję lub tej funkcji. 420 00:17:32,430 --> 00:17:34,830 I dlatego mamy tak wiele języków świata. 421 00:17:34,830 --> 00:17:37,670 Rozsądni ludzie, inteligentne ludzie, zgodzić się lub nie 422 00:17:37,670 --> 00:17:41,000 i niezmiennie rodzaju spotykają się na rozwijanie nowych języków razem. 423 00:17:41,000 --> 00:17:41,660 >> Przykładem. 424 00:17:41,660 --> 00:17:45,260 Jabłko wynalazł Swift Nadzieje przypuszczalnie obniżenie 425 00:17:45,260 --> 00:17:47,950 pasek do rozwoju iPhone bo poprzedniego language-- 426 00:17:47,950 --> 00:17:51,080 Objective-C o nazwie, która mogłaby również na naszej liście here-- 427 00:17:51,080 --> 00:17:54,190 był znacznie bardziej ezoteryczne i wiele mocniej owinąć wokół swego umysłu. 428 00:17:54,190 --> 00:17:57,690 A jak programowanie staje się zapewne bardziej dostępne i szerzej 429 00:17:57,690 --> 00:18:00,580 przyjęta przez ludzi, nawet mniej techniczna, The goal-- 430 00:18:00,580 --> 00:18:04,160 jest to bardzo dzielna celem próbować obniżyć barierę wejścia na rynek poprzez 431 00:18:04,160 --> 00:18:07,400 same języki łatwiejsze do uruchomienia, 432 00:18:07,400 --> 00:18:09,430 ale nie mniej potężne niekoniecznie. 433 00:18:09,430 --> 00:18:10,560 >> I jeden inny język. 434 00:18:10,560 --> 00:18:14,110 Dlaczego nie spojrzeć na coś podobnego Pythonie 435 00:18:14,110 --> 00:18:18,090 która jest bardzo modna w te dni. 436 00:18:18,090 --> 00:18:19,570 Pyton. 437 00:18:19,570 --> 00:18:20,464 Przykładowy program. 438 00:18:20,464 --> 00:18:24,600 439 00:18:24,600 --> 00:18:26,700 Zobaczmy. 440 00:18:26,700 --> 00:18:28,790 "Hello World" języków. 441 00:18:28,790 --> 00:18:30,180 Zróbmy to. 442 00:18:30,180 --> 00:18:33,625 "Witaj świecie." 443 00:18:33,625 --> 00:18:35,375 Zobaczymy, czy to daje nam dobry przykład. 444 00:18:35,375 --> 00:18:39,450 445 00:18:39,450 --> 00:18:39,950 OK. 446 00:18:39,950 --> 00:18:41,283 Tak więc jest to rzeczywiście rodzaj zabawy. 447 00:18:41,283 --> 00:18:43,330 Więc jeśli kiedykolwiek google "Hello World", który 448 00:18:43,330 --> 00:18:47,000 stanie się jednym z pierwszych programów kiedykolwiek napisano w nowoczesnym języku, 449 00:18:47,000 --> 00:18:51,830 tylko jako dowód koncepcji, można zobaczyć wszelkiego rodzaju wdrożeniach tego. 450 00:18:51,830 --> 00:18:54,240 >> Niektóre z tych języków Nie byłem nawet nie słyszał. 451 00:18:54,240 --> 00:18:59,770 Ale można see-- chodźmy do Basic jeden dowiedziałem się rok temu, w części. 452 00:18:59,770 --> 00:19:02,720 To było zabawne, ponieważ język Ciebie musiał, jako programista, numer 453 00:19:02,720 --> 00:19:03,710 wszystkich liniach. 454 00:19:03,710 --> 00:19:05,626 Nie inaczej niż to, co miałem robi kiedy pisałem 455 00:19:05,626 --> 00:19:08,380 pseudokod na żółtym dokumentu wcześniej dla wyszukiwania binarnego 456 00:19:08,380 --> 00:19:09,580 do przeszukiwania książki telefonicznej. 457 00:19:09,580 --> 00:19:11,810 >> I tak, jeśli chcesz aby przejść do innej linii, 458 00:19:11,810 --> 00:19:15,780 byś dosłownie wpisywania przejdź do 10, lub udać się do 20. 459 00:19:15,780 --> 00:19:19,110 A jeśli piszesz wiersze, z Konwencja została do zrobienia, to jest linia 10, 460 00:19:19,110 --> 00:19:22,545 jest to linia 20, to jest linia 30, 40, nic pomiędzy, 461 00:19:22,545 --> 00:19:25,170 tym samym dając sobie trochę miejsca jeśli zdecydujesz, chwileczkę, 462 00:19:25,170 --> 00:19:27,230 Należy Dodałem niektóre więcej kodu gdzieś. 463 00:19:27,230 --> 00:19:30,960 Nadal miał rodzaj dziewięciu szans wycisnąć, że w między programem 464 00:19:30,960 --> 00:19:33,020 zanim musiał ręcznie przenumerować wszystko. 465 00:19:33,020 --> 00:19:35,470 >> Jest to więc rodzaj co mam na myśli kiedy mówię, że świat ma pochodzić 466 00:19:35,470 --> 00:19:36,303 z nowych funkcji. 467 00:19:36,303 --> 00:19:39,364 Gdzieś po drodze kogoś sobie sprawę, chłopak to jest głupie. 468 00:19:39,364 --> 00:19:41,280 To jest po prostu tworzenie praca dla programisty. 469 00:19:41,280 --> 00:19:44,200 Więc on lub ona po prostu rodzaj budowy nowa warstwa na górze, że 470 00:19:44,200 --> 00:19:46,910 tak, że nie trzeba się martwić o tym, co numery linii kodu 471 00:19:46,910 --> 00:19:48,570 faktycznie dalej. 472 00:19:48,570 --> 00:19:54,940 >> Więc kiedy można wybrać jeden język lub inny? 473 00:19:54,940 --> 00:19:56,690 Cóż, które z nich Języki prawda tendencję 474 00:19:56,690 --> 00:20:00,960 usłyszał o najbardziej swój własny świat w tych dniach? 475 00:20:00,960 --> 00:20:02,680 Załóżmy rozwijanej Objective-C też. 476 00:20:02,680 --> 00:20:06,416 477 00:20:06,416 --> 00:20:07,739 >> PUBLICZNOŚCI: C #. 478 00:20:07,739 --> 00:20:08,530 David J. MALAN: C #. 479 00:20:08,530 --> 00:20:10,310 Więc niech mi kolor. 480 00:20:10,310 --> 00:20:13,190 Czy mamy inny kolor gdzieś? 481 00:20:13,190 --> 00:20:14,550 Więc C #. 482 00:20:14,550 --> 00:20:16,390 A co ty wiesz o C #? 483 00:20:16,390 --> 00:20:18,940 Wszystko wiosny do głowy? 484 00:20:18,940 --> 00:20:20,707 >> PUBLICZNOŚCI: Jest to język programowania. 485 00:20:20,707 --> 00:20:22,540 David J. MALAN: To język programowania. 486 00:20:22,540 --> 00:20:23,200 OK. 487 00:20:23,200 --> 00:20:24,690 To prawda. 488 00:20:24,690 --> 00:20:26,440 Więc mówimy o C #. 489 00:20:26,440 --> 00:20:29,230 C # zwykle stosować w środowiskach Windows 490 00:20:29,230 --> 00:20:33,550 więc jeśli piszesz oprogramowanie firmy Microsoft dla Windows, C # jest bardzo często używane, 491 00:20:33,550 --> 00:20:38,560 czy to przez oprogramowanie komputerowe, lub Oprogramowanie telefonu nawet na telefonach z systemem Windows 492 00:20:38,560 --> 00:20:41,820 jeśli miałeś tych, lub w internecie nawet za. 493 00:20:41,820 --> 00:20:44,642 W rzeczywistości, może Kareem już wspomniano ASP? 494 00:20:44,642 --> 00:20:46,600 Nie ma więc również te rzeczy zwane ramy, 495 00:20:46,600 --> 00:20:51,040 które możemy przedstawić po rozszerzeniu. 496 00:20:51,040 --> 00:20:53,280 Konstrukcje takie jak ASP. 497 00:20:53,280 --> 00:20:55,740 Stojaki na Active Server Pages. 498 00:20:55,740 --> 00:20:59,880 I to jest kod i sposób programowania 499 00:20:59,880 --> 00:21:03,490 które zasadniczo ułatwia pisanie aplikacji internetowych. 500 00:21:03,490 --> 00:21:07,530 Innymi słowy, byłoby bardzo, bardzo irytujące napisać stronę internetową 501 00:21:07,530 --> 00:21:09,469 W języku C, które widzieliśmy już wcześniej, 502 00:21:09,469 --> 00:21:12,510 bo trzeba by użyć print + F, trzeba by użyć tego słowa kluczowego 503 00:21:12,510 --> 00:21:13,940 "Main" i nawiasy klamrowe. 504 00:21:13,940 --> 00:21:16,720 Wiele składni tajemnej i podejście do wdrożenia 505 00:21:16,720 --> 00:21:19,195 coś, co jest dość skomplikowana. 506 00:21:19,195 --> 00:21:20,240 Na stronie internetowej. 507 00:21:20,240 --> 00:21:23,800 >> I tak inne języki ewoluowały aby tego rodzaju rzeczy łatwiejsze. 508 00:21:23,800 --> 00:21:26,890 A z kolei, ludzie mają pochodzić z ramami, rodzaj narzędzi 509 00:21:26,890 --> 00:21:30,520 że można użyć, które czynią go jeszcze łatwiej napisać stron internetowych. 510 00:21:30,520 --> 00:21:33,070 Tak na przykład, aby to dużo bardziej konkretne, 511 00:21:33,070 --> 00:21:36,390 pozwól mi otworzyć tylko plik tekstowy na chwilę. 512 00:21:36,390 --> 00:21:39,380 >> A może pamiętacie wczoraj że powiedział coś 513 00:21:39,380 --> 00:21:41,210 jak to jest strona internetowa. 514 00:21:41,210 --> 00:21:42,300 HTML. 515 00:21:42,300 --> 00:21:45,340 Blisko HTML. 516 00:21:45,340 --> 00:21:48,500 Pozwól mi pominąć głowę i po prostu zrobić tutaj ciało. 517 00:21:48,500 --> 00:21:52,810 Załóżmy, że chcę Nie pisać "Hello World" 518 00:21:52,810 --> 00:21:57,020 ale "Witam David", gdzie David jest nazwa aktualnie zalogowanego użytkownika. 519 00:21:57,020 --> 00:22:00,270 Co czymś ASP zrobi lub JSP-- 520 00:22:00,270 --> 00:22:04,060 który jest serwer Java pages-- lub dowolna liczba innych ram 521 00:22:04,060 --> 00:22:05,435 to nie są one w językach, per se. 522 00:22:05,435 --> 00:22:07,351 Oni, podobnie jak dodatkowe oprogramowanie, które 523 00:22:07,351 --> 00:22:10,490 by zainstalować w swoim środowisku że po prostu łatwiej zaprogramować. 524 00:22:10,490 --> 00:22:15,670 >> Tak na przykład, zamiast zrobić coś takiego jak "Dzień dobry, printf (" Dawida ")" 525 00:22:15,670 --> 00:22:17,510 albo coś, co jest rodzaj współpracy mingling-- 526 00:22:17,510 --> 00:22:20,840 rodzaj kodu widzieliśmy before-- zrobiłbyś coś znacznie prostsze, 527 00:22:20,840 --> 00:22:26,190 jak "% name". 528 00:22:26,190 --> 00:22:28,660 A więc te ramy, jak ASP-- i I 529 00:22:28,660 --> 00:22:31,212 Nie pamiętam, czy Dostaję składnia właśnie dla ASP. 530 00:22:31,212 --> 00:22:33,100 JSP jest little-- czy to prawda? 531 00:22:33,100 --> 00:22:36,500 >> Tak ASP, to jest rodzaj specjalnej składni 532 00:22:36,500 --> 00:22:39,830 że niektórzy deweloperzy zdecydowali to może pomagać ludziom. 533 00:22:39,830 --> 00:22:43,000 I mogę wyrazić więcej zwięźle zastępcze, na przykład. 534 00:22:43,000 --> 00:22:47,187 Jak umieścić wartość tutaj, gdzie nazwa ta wartość nie jest N-A-M-E, 535 00:22:47,187 --> 00:22:48,520 to jest jakaś wartość w nim przechowywanych. 536 00:22:48,520 --> 00:22:50,728 Więc "nazwa", w tym kontekście, nazwalibyśmy zmienną. 537 00:22:50,728 --> 00:22:52,760 Algebra ma zmienne jak X i Y i Z. 538 00:22:52,760 --> 00:22:56,021 Programiści używać zmiennych, które są bardziej opisowe niż X, Y i Z 539 00:22:56,021 --> 00:22:56,520 zwykle. 540 00:22:56,520 --> 00:23:01,020 Więc "nazwa" dosłownie być jakiś pojemnika pamięci czegoś podobnego 541 00:23:01,020 --> 00:23:05,440 D-A-V-I-D, dla mojego imienia, czy ktokolwiek inny jest zalogowany do serwisu. 542 00:23:05,440 --> 00:23:09,300 >> A więc jest to rodzaj wygody Ci z niektórych środowiskach. 543 00:23:09,300 --> 00:23:14,220 Więc C # i coś takiego byłoby bardzo ASP być powszechnie stosowane w świecie Windows 544 00:23:14,220 --> 00:23:16,460 czy na jego pulpicie oprogramowanie lub serwer WWW, 545 00:23:16,460 --> 00:23:21,490 zwłaszcza jeśli serwery są z kolei z systemem Microsoft Windows i Microsoft 546 00:23:21,490 --> 00:23:25,810 IIS-- lub Internet Information Serwer, jeśli dostanę akronim prawy-- 547 00:23:25,810 --> 00:23:27,800 który jest serwer WWW Microsoftu. 548 00:23:27,800 --> 00:23:30,820 >> Więc jakie inne języki są ludzie znający, 549 00:23:30,820 --> 00:23:35,228 lub słyszałeś częściej niż nie? 550 00:23:35,228 --> 00:23:38,262 >> PUBLICZNOŚCI: Wiem, że Pythona rodzaj popularnym [INAUDIBLE]. 551 00:23:38,262 --> 00:23:39,470 David J. MALAN: Bardzo popularne. 552 00:23:39,470 --> 00:23:45,490 Więc tutaj Python jest używany bardzo często w zastosowaniach naukowych i danych 553 00:23:45,490 --> 00:23:48,330 nauki, gdzie trzeba dużo danych, które chcesz analizować 554 00:23:48,330 --> 00:23:50,413 i chcesz używać Język programowania dla niego. 555 00:23:50,413 --> 00:23:53,640 R może być powszechnie stosowane dla tego jak również, w kontekście statystycznym. 556 00:23:53,640 --> 00:23:56,400 Ale Python ma tak wielu Funkcje wbudowane w. 557 00:23:56,400 --> 00:23:58,850 Tak wiele dodatkowych biblioteki, jak ludzie mówią. 558 00:23:58,850 --> 00:24:01,260 >> Biblioteki są tylko zbiory kodu, który inni 559 00:24:01,260 --> 00:24:04,218 napisał, że można użyć, dzięki czemu nie trzeba odkrywać te koła. 560 00:24:04,218 --> 00:24:07,430 I tak Python jest bardzo często w zastosowaniach naukowych danych. 561 00:24:07,430 --> 00:24:09,930 Ale jest to również bardzo często stosowany w aplikacjach internetowych. 562 00:24:09,930 --> 00:24:12,780 Można zaimplementować dynamiczna Strona internetowa za pomocą Pythona. 563 00:24:12,780 --> 00:24:15,210 >> I dynamicznej strony internetowej, I średnia zawartość nie tylko statyczne 564 00:24:15,210 --> 00:24:19,530 jak stworzyliśmy wczoraj przez Tylko trudno kodowania w tekście łacińskim 565 00:24:19,530 --> 00:24:21,820 i inne takie rzeczy, lecz zdolność 566 00:24:21,820 --> 00:24:25,367 zalogować się, zdolność do zakupu coś, zdolność, aby sprawdzić 567 00:24:25,367 --> 00:24:26,950 ze swoimi koszykami, lub tym podobne. 568 00:24:26,950 --> 00:24:30,590 Wszystko to wymaga dynamizmu i ty Potrzebuję trochę język jak jedna z nich. 569 00:24:30,590 --> 00:24:35,060 >> PUBLICZNOŚCI: Więc czy Python posiadają własny rozszerzenie, podobnie jak [INAUDIBLE] 570 00:24:35,060 --> 00:24:36,060 David J. MALAN: Czyni. 571 00:24:36,060 --> 00:24:42,250 Tak więc w świecie Python, Django jest bardzo popularny framework dla Pythona. 572 00:24:42,250 --> 00:24:46,520 WSGI jest inny mechanizm, który jest rodzaj różni się od tego 573 00:24:46,520 --> 00:24:47,640 ale w duchu podobnym. 574 00:24:47,640 --> 00:24:52,200 Jest to dodatek, który pozwala uruchamianie kodu Pythona na serwerze. 575 00:24:52,200 --> 00:24:53,950 Jest other-- tak. 576 00:24:53,950 --> 00:24:57,250 Więc te nazywamy ram. 577 00:24:57,250 --> 00:24:58,870 I jest to trochę nadużycie. 578 00:24:58,870 --> 00:25:00,920 To jest bardziej technologii serwera WWW. 579 00:25:00,920 --> 00:25:04,610 Ale my keep it simple i umieścić że w tej kolumnie jednak. 580 00:25:04,610 --> 00:25:05,780 >> OK. 581 00:25:05,780 --> 00:25:07,850 WSGI. 582 00:25:07,850 --> 00:25:09,020 WSGI. 583 00:25:09,020 --> 00:25:12,100 Innym thing-- i rzeczywiście, niech mi, że aby przenieść własnej kolumnie 584 00:25:12,100 --> 00:25:17,000 bo będę krzyczeć na siebie za umieszczając je w tym samym segmencie. 585 00:25:17,000 --> 00:25:24,910 Postawmy to na serwerze Cechy, powiedzmy. 586 00:25:24,910 --> 00:25:26,710 To nie jest to termin techniczny. 587 00:25:26,710 --> 00:25:29,180 >> Więc możemy być WSGI. 588 00:25:29,180 --> 00:25:32,580 Jest CGI, który jest starszy technika obsługujących języki 589 00:25:32,580 --> 00:25:35,890 jak Perl lub PHP, lub innych. 590 00:25:35,890 --> 00:25:39,000 Znowu wspominałem te warunki nie tyle rodzaj ingrain je, 591 00:25:39,000 --> 00:25:40,749 ale tak, że jeśli widzisz im to coś 592 00:25:40,749 --> 00:25:42,130 po prostu google, aby dowiedzieć się więcej. 593 00:25:42,130 --> 00:25:46,110 Nie ma prawdziwego soku W niektórych z tych miejsc. 594 00:25:46,110 --> 00:25:47,850 >> Ale wróćmy do języków. 595 00:25:47,850 --> 00:25:50,499 Rozmawialiśmy o C #, Python. 596 00:25:50,499 --> 00:25:52,790 Co jeszcze można wykorzystać do Programowanie Web te dni? 597 00:25:52,790 --> 00:25:54,302 Skupmy się na tym miejscu. 598 00:25:54,302 --> 00:25:55,247 >> PUBLICZNOŚCI: PHP. 599 00:25:55,247 --> 00:25:56,080 David J. MALAN: PHP. 600 00:25:56,080 --> 00:25:57,413 I wróćmy do tego. 601 00:25:57,413 --> 00:25:59,310 Więc PHP jest bardzo często używane. 602 00:25:59,310 --> 00:26:01,560 PHP ma skłonność do złego rap. 603 00:26:01,560 --> 00:26:05,790 Zaczęło się, jak wdrożyć język przez ludzi, którzy być może nie były koniecznie 604 00:26:05,790 --> 00:26:06,960 najlepsi projektanci językowe. 605 00:26:06,960 --> 00:26:11,290 I tak można odczytać wszystkie rodzaje artykuły online o tym, jak źle jest PHP. 606 00:26:11,290 --> 00:26:13,660 I niestety, to jest przejawem częściowo 607 00:26:13,660 --> 00:26:18,727 Just debaty religijne które wybuchają wśród programistów. 608 00:26:18,727 --> 00:26:20,560 I to jest coś warto pamiętać, 609 00:26:20,560 --> 00:26:24,410 z perspektywy biznesu, które to jest bardzo łatwe dla ludzi technicznych 610 00:26:24,410 --> 00:26:26,900 aby wszystkie pracował z ich opinie na temat niektórych rzeczy. 611 00:26:26,900 --> 00:26:29,566 I to nie musi oznaczać, że jeden krzyczy najgłośniej 612 00:26:29,566 --> 00:26:31,870 lub najsilniejszy, rozgniewani opinia jest prawo. 613 00:26:31,870 --> 00:26:34,100 Wiele razy, to naprawdę Po prostu nie ma znaczenia. 614 00:26:34,100 --> 00:26:37,970 >> I tak ludzie są po prostu podnosząc cokolwiek własnych uprzedzeń lub stref komfortu są. 615 00:26:37,970 --> 00:26:40,760 I tak należy zachować to na uwadze przy dokonywaniu 616 00:26:40,760 --> 00:26:42,622 decyzję, że właśnie dlatego, że ktoś mówi 617 00:26:42,622 --> 00:26:45,080 to jest właściwy język zadania, które mogą być prawdziwe, 618 00:26:45,080 --> 00:26:48,350 ale również po prostu może być to właściwy język w obrębie własnej umiejętności 619 00:26:48,350 --> 00:26:49,267 ustawić lub strefy komfortu. 620 00:26:49,267 --> 00:26:52,600 Co nie jest złe, ale należy zdać sobie sprawę że może istnieć jakiś kontekst. 621 00:26:52,600 --> 00:26:54,440 Istnieją pewne obiektywnie nieprawidłowe oświadczenia, 622 00:26:54,440 --> 00:26:59,080 jak C jest niewłaściwy język używany w tych dniach na stronach internetowych wykonawczych 623 00:26:59,080 --> 00:27:00,520 prawie zawsze. 624 00:27:00,520 --> 00:27:03,370 Ale to nie jest nieuzasadnione powiedzieć, że każdy z nich 625 00:27:03,370 --> 00:27:05,700 są złe, że my krążyły do ​​tej pory. 626 00:27:05,700 --> 00:27:08,180 >> PHP przeszedł wielu wersjach. 627 00:27:08,180 --> 00:27:11,310 Więc języki mają tendencję do wersji Numery z nimi związane. 628 00:27:11,310 --> 00:27:15,390 PHP jest do, myślę, wersja 7 teraz więc to już od dłuższego czasu. 629 00:27:15,390 --> 00:27:18,270 I tak jak w językach uzyskać nowsze, często uzyskać nowe funkcje. 630 00:27:18,270 --> 00:27:22,510 Ale trzeba pamiętać o tym bo jeśli witryna została 631 00:27:22,510 --> 00:27:27,539 zaimplementowana w wersji 7, ale PHP próbujesz uruchomić stronę internetową, 632 00:27:27,539 --> 00:27:29,830 a może już zlecone rozwój kodzie 633 00:27:29,830 --> 00:27:31,960 do kogoś innego i poczty to do ciebie lub wysłać je do Ciebie 634 00:27:31,960 --> 00:27:33,960 a mówią tu umieścić tego na serwerze WWW, 635 00:27:33,960 --> 00:27:36,610 jeśli serwer WWW jest niewielu rok outdated-- czy to 636 00:27:36,610 --> 00:27:39,465 własny serwer www lub host-- może nie działać właściwie. 637 00:27:39,465 --> 00:27:41,340 Więc są to rodzaje rzeczy, że ktoś 638 00:27:41,340 --> 00:27:44,067 musi być świadoma podczas aktualizacji witryny 639 00:27:44,067 --> 00:27:45,650 lub wdrażając go po raz pierwszy. 640 00:27:45,650 --> 00:27:46,900 >> Słyszałem JavaScript wcześniej. 641 00:27:46,900 --> 00:27:50,570 Więc JavaScript jest ciekawa jeden, ponieważ jest ogólnie 642 00:27:50,570 --> 00:27:53,030 po stronie klienta, jak zobaczymy po przerwie, która 643 00:27:53,030 --> 00:27:55,000 Oznacza on uruchamiany w przeglądarce użytkownika. 644 00:27:55,000 --> 00:27:58,400 Ale można też uruchomić JavaScript w dzisiejszych czasach 645 00:27:58,400 --> 00:28:03,450 za pomocą czegoś, co nazywa Node.js, gdzie node.js 646 00:28:03,450 --> 00:28:08,000 Jest to mechanizm do biegania Kod JavaScript po stronie serwera, 647 00:28:08,000 --> 00:28:12,430 zamiast używać Python, lub PHP, lub inne takie języki. 648 00:28:12,430 --> 00:28:17,820 >> JavaScript jest szczególnie dobrze nadaje się dla aplikacji czatu i czasie rzeczywistym 649 00:28:17,820 --> 00:28:22,050 aplikacji, podczas gdy PHP nie jest wielki językiem do realizacji czegoś 650 00:28:22,050 --> 00:28:25,050 jak serwer czatu, gdzie użytkownicy pobyt połączony z nim stale. 651 00:28:25,050 --> 00:28:28,760 PHP jest bardziej mnie odwiedzić kiedyś wrócić wynik, 652 00:28:28,760 --> 00:28:31,790 a następnie kliknij odnośnik jakiś inny sekund lub minut od teraz. 653 00:28:31,790 --> 00:28:36,020 Zważywszy node.js i JavaScript mogą być wykorzystywane bardziej dla stałych połączeń. 654 00:28:36,020 --> 00:28:40,840 Inne języki, które podejrzewają, są powszechnie wykorzystywane do internetowej rzeczy? 655 00:28:40,840 --> 00:28:42,800 >> PUBLICZNOŚCI: Lepiej być jQuery framework? 656 00:28:42,800 --> 00:28:44,050 >> David J. MALAN: Dobre pytanie. 657 00:28:44,050 --> 00:28:44,700 Ani. 658 00:28:44,700 --> 00:28:51,210 Nazwałbym jQuery biblioteki, gdzie ponownie biblioteka jest tylko kilka kodu 659 00:28:51,210 --> 00:28:53,250 że ktoś inny ma napisane, że na ogół 660 00:28:53,250 --> 00:28:56,390 rozwiązuje niektóre problemy, które Dzięki temu, mam nadzieję, łatwiej 661 00:28:56,390 --> 00:28:57,760 aby wykonywać swoją pracę. 662 00:28:57,760 --> 00:29:00,820 I pozwól mi zrobić jeden przykład to w ramach sieci. 663 00:29:00,820 --> 00:29:03,910 >> W kontekście sieci jest Ten język, JavaScript 664 00:29:03,910 --> 00:29:06,690 które zobaczymy później, przy czym ci może powiedzieć coś takiego this-- 665 00:29:06,690 --> 00:29:10,060 "Document.getElementById". 666 00:29:10,060 --> 00:29:11,490 I co ja nazywam to wczoraj? 667 00:29:11,490 --> 00:29:16,800 Po pierwsze, myślę, że był unikatowy identyfikator Dałam do elementu, który wyglądał następująco. 668 00:29:16,800 --> 00:29:23,110 "P id =" pierwszy ">", a następnie mieliśmy jak "lorem ipsum", et cetera. 669 00:29:23,110 --> 00:29:28,210 Więc gdybym pisząc program w JavaScript, żeby w jakiś sposób manipulować, 670 00:29:28,210 --> 00:29:30,830 Zmiana stron internetowych, które mamy bawiły się wczoraj, 671 00:29:30,830 --> 00:29:33,010 Chciałbym skorzystać z tej Podświetlona linia kodu 672 00:29:33,010 --> 00:29:38,700 dostać ten konkretny fragment kodu HTML z mojej strony, że szczególną węzła 673 00:29:38,700 --> 00:29:39,680 jak będziemy nazywać. 674 00:29:39,680 --> 00:29:44,540 >> Jednak w jQuery, zamiast pisania Ten, który jest surowy code-- JavaScript 675 00:29:44,540 --> 00:29:48,870 tuż po wyjęciu z pudełka, to w jaki sposób Napisać it-- byś zamiast po prostu powiedzieć, 676 00:29:48,870 --> 00:29:50,260 "#pierwszy." 677 00:29:50,260 --> 00:29:52,330 Jest to równoważne. 678 00:29:52,330 --> 00:29:56,040 A więc opierać się tylko na tym bardzo Arcane przykład, co może 679 00:29:56,040 --> 00:29:57,870 jest argument za korzystanie z jQuery? 680 00:29:57,870 --> 00:30:01,390 681 00:30:01,390 --> 00:30:05,111 Dlaczego deweloper będzie korzystać z biblioteki jak jQuery, oparte na tym izolowanym przykład 682 00:30:05,111 --> 00:30:05,610 może? 683 00:30:05,610 --> 00:30:06,335 >> PUBLICZNOŚCI: Mniej kodu. 684 00:30:06,335 --> 00:30:06,780 >> David J. MALAN: Tak. 685 00:30:06,780 --> 00:30:07,530 Jest to mniej kodu. 686 00:30:07,530 --> 00:30:09,070 To jest po prostu szybciej pisać. 687 00:30:09,070 --> 00:30:11,690 Kontrapunkt jest że wygląda bardziej przerażające. 688 00:30:11,690 --> 00:30:13,540 Naprawdę nie można przeczytać, że od lewej do prawej. 689 00:30:13,540 --> 00:30:16,730 W rzeczywistości, ponieważ w większości interpunkcyjne teraz zamiast rzeczywiste słowa, 690 00:30:16,730 --> 00:30:20,950 mogę wywnioskować, że rodzaj "Document.getElementById" dostaje 691 00:30:20,950 --> 00:30:23,640 element z dokumentu przez jego ID. 692 00:30:23,640 --> 00:30:26,750 I naprawdę można używać nie ma takiego mnemoniki od tej rzeczy tutaj. 693 00:30:26,750 --> 00:30:27,680 >> Więc jest to kompromis. 694 00:30:27,680 --> 00:30:30,763 Jest wyrafinowania, który przychodzi często z użyciem bibliotek, zwłaszcza 695 00:30:30,763 --> 00:30:31,440 jak jQuery. 696 00:30:31,440 --> 00:30:34,700 Ale rzeczywistość jest jQuery ma niby z stają się de facto standardem, 697 00:30:34,700 --> 00:30:38,110 tak, że prawie każdy je dzień piszący kodu JavaScript 698 00:30:38,110 --> 00:30:41,520 wykorzystuje jQuery lub coś podoba, a nie pisze 699 00:30:41,520 --> 00:30:45,200 Takie wyrażenia jak verbose tym, bo znowu, ludzkość 700 00:30:45,200 --> 00:30:47,850 dowiedział się, wow, to było rodzaj straconą szansą 701 00:30:47,850 --> 00:30:49,030 aby uczynić nasze życie łatwiejszym. 702 00:30:49,030 --> 00:30:51,140 Więc ludzie uczynić ich życie łatwiejszym. 703 00:30:51,140 --> 00:30:53,310 Dobre pytanie. 704 00:30:53,310 --> 00:30:55,870 >> Inne języki do rozważenia. 705 00:30:55,870 --> 00:30:58,660 Powiedziałbym, że wśród tego Lista Ruby jest dość popularne. 706 00:30:58,660 --> 00:31:01,310 I tak w świecie Ruby, nie ma ramy 707 00:31:01,310 --> 00:31:03,590 zwane szyny, które są bardzo popularne. 708 00:31:03,590 --> 00:31:06,880 Więc Ruby on Rails jest powszechnie używane wyrażenia. 709 00:31:06,880 --> 00:31:10,330 Również w tym świecie, niech mnie Koło Java dla WWW rzeczy, 710 00:31:10,330 --> 00:31:14,160 gdzie na świecie Javy Może masz JSP lub Java 711 00:31:14,160 --> 00:31:18,450 Serwlety, która jest popularną technologią. 712 00:31:18,450 --> 00:31:22,560 I to wystarczy ponownie sposoby wykorzystania że język w środowisku serwera. 713 00:31:22,560 --> 00:31:23,520 >> Więc co to znaczy? 714 00:31:23,520 --> 00:31:25,770 Jeśli masz fizyczny Serwer, byś dosłownie 715 00:31:25,770 --> 00:31:30,510 pobrać oprogramowanie serwera WWW i zainstalować go w taki sposób, 716 00:31:30,510 --> 00:31:33,510 że masz poparcie dla jednego z ramy te, z którymi 717 00:31:33,510 --> 00:31:37,260 mogłyby z kolei skorzystać z jednej lub więcej z tych języków. 718 00:31:37,260 --> 00:31:40,260 A w rzeczywistości, jeśli założyć jak hostingowego lub niektóre z chmurą 719 00:31:40,260 --> 00:31:41,968 Usługi rozmawialiśmy o wczoraj, często 720 00:31:41,968 --> 00:31:44,885 rzeczy po prostu przychodzi z Konfiguracja urządzenia dla ciebie. 721 00:31:44,885 --> 00:31:46,510 Nie trzeba to ustawić ręcznie. 722 00:31:46,510 --> 00:31:51,040 Ale jeśli tak, to gdzie rola administratora systemu, by tak rzec, 723 00:31:51,040 --> 00:31:51,860 wchodzi w grę. 724 00:31:51,860 --> 00:31:54,151 On lub ona faktycznie tego rodzaju rzeczy dla ciebie, 725 00:31:54,151 --> 00:31:58,510 albo tak zwane wiadomości często to zrobić dla ciebie. 726 00:31:58,510 --> 00:31:59,010 W porządku. 727 00:31:59,010 --> 00:32:03,300 Wszelkie pytania na temat niektórych z nich tutaj? 728 00:32:03,300 --> 00:32:06,690 Lub jakiekolwiek szanse na wszystko, aby zapytać o językach? 729 00:32:06,690 --> 00:32:09,500 Ramki? 730 00:32:09,500 --> 00:32:11,530 Pozwól mi przedstawić tylko jedna biblioteka 731 00:32:11,530 --> 00:32:13,150 to również bardzo często w tych dniach. 732 00:32:13,150 --> 00:32:15,340 Ta lista mogłaby się ciągnąć w nieskończoność. 733 00:32:15,340 --> 00:32:19,140 >> I ta biblioteka jest rodzajem zaczynają wypadają z łask. 734 00:32:19,140 --> 00:32:19,850 To było około. 735 00:32:19,850 --> 00:32:22,040 Został spopularyzowany przez Twitter przez jakiś czas. 736 00:32:22,040 --> 00:32:24,470 A teraz wiele stron internetowych, wiele osób używa go. 737 00:32:24,470 --> 00:32:26,629 Ale nowe rzeczy idą na zewnątrz i idzie. 738 00:32:26,629 --> 00:32:29,420 Ale niech mi tylko daje poczucie co oznacza, że ​​do korzystania z biblioteki. 739 00:32:29,420 --> 00:32:32,250 Więc znowu jest obsługa JavaScript bardzo popularnym językiem. 740 00:32:32,250 --> 00:32:35,340 CSS lub Cascading Style Sheets, rozmawialiśmy o tym wczoraj. 741 00:32:35,340 --> 00:32:36,600 To też jest wszechobecny. 742 00:32:36,600 --> 00:32:40,130 Nikt nie robi stronę internetową już dziś bez użycia HTML i CSS minimalnie. 743 00:32:40,130 --> 00:32:42,510 Ale to nie zawsze jest łatwe do robienia pewnych rzeczy. 744 00:32:42,510 --> 00:32:46,281 >> A więc pozwól mi iść do getbootstrap.com. 745 00:32:46,281 --> 00:32:46,780 Ups. 746 00:32:46,780 --> 00:32:48,280 To nie jest jak zaklęcie. 747 00:32:48,280 --> 00:32:52,410 Getbootstrap.com, co będzie mnie prowadzić 748 00:32:52,410 --> 00:32:56,140 do strony docelowej dla tej biblioteki. 749 00:32:56,140 --> 00:32:59,720 Więc hojnie zadzwonić same ramy, które 750 00:32:59,720 --> 00:33:02,032 jest rodzajem rodzaju targach, ale chciałbym jeszcze nazwać 751 00:33:02,032 --> 00:33:03,490 więcej bibliotek niż ram. 752 00:33:03,490 --> 00:33:05,760 Ale to tylko twierdzić, semantyka. 753 00:33:05,760 --> 00:33:12,360 Pozwólcie mi iść do swojej karcie CSS pozwól mi przejść do czegoś takiego. 754 00:33:12,360 --> 00:33:15,450 >> Więc przypomnieć, co wyglądało nasze formularze jak wczoraj Cloud9? 755 00:33:15,450 --> 00:33:16,370 To było dość brzydkie. 756 00:33:16,370 --> 00:33:17,320 Stare przyciski szkolnych. 757 00:33:17,320 --> 00:33:20,420 Myślę, że przycisk został przez szare zaniedbanie. I wszystko było naprawdę 758 00:33:20,420 --> 00:33:22,420 sformatowane dość niechlujnie. 759 00:33:22,420 --> 00:33:26,940 Więc jeśli chcesz, aby formularze szukać trochę nicer-- pozwól mi przybliżyć tutaj. 760 00:33:26,940 --> 00:33:30,050 >> A tak naprawdę po prostu ładniejszy znaczy bardzo nitpicky estetykę. 761 00:33:30,050 --> 00:33:35,390 Tak więc zauważyć, jak skrzynka e-mail nie ma zaokrąglone rogi prostokątne a do niego. 762 00:33:35,390 --> 00:33:37,010 Więc to trochę czystsze tam. 763 00:33:37,010 --> 00:33:40,770 Zauważ, że słowo e-mail Jest tam aż zacznę pisać 764 00:33:40,770 --> 00:33:41,797 a potem odchodzi. 765 00:33:41,797 --> 00:33:43,130 Więc to ładny mały cecha. 766 00:33:43,130 --> 00:33:46,046 Zauważ, że jest to rodzaj świecące ładnie, co niektórzy z was tego 767 00:33:46,046 --> 00:33:49,069 dostać za darmo z poziomu przeglądarki, ale niektóre to też biblioteki, 768 00:33:49,069 --> 00:33:51,360 Kod, że inni ludzie mają napisane, że daje ci to. 769 00:33:51,360 --> 00:33:53,480 >> Coś takiego Daje mi moje hasło. 770 00:33:53,480 --> 00:33:58,480 Przycisk ten jest trochę bardziej seksownego niż zaniedbanie. Bardzo modne teraz. 771 00:33:58,480 --> 00:34:03,570 Odkąd iOS 7 lub tak, to Świat ma zdobyć bardzo płaskie, 772 00:34:03,570 --> 00:34:09,000 podczas gdy na świecie przedtem wiele cieni, działki 773 00:34:09,000 --> 00:34:11,040 refleksji na temat ikon. 774 00:34:11,040 --> 00:34:14,170 Podobnie jak w świecie odzieży, jest trendy mody, które przychodzą i odchodzą. 775 00:34:14,170 --> 00:34:16,190 Teraz wszystko jest płaska w telefonie. 776 00:34:16,190 --> 00:34:19,159 >> W rzeczywistości, przycisków na iPhone są teraz po prostu niebieskie linki. 777 00:34:19,159 --> 00:34:21,000 Nie często nawet okrągłe przyciski. 778 00:34:21,000 --> 00:34:22,791 To są po prostu rzeczy że i wyjdzie 779 00:34:22,791 --> 00:34:26,659 o modzie, a więc to, w jaki sposób może dokonać bardziej nowoczesny wygląd formularza internetowego. 780 00:34:26,659 --> 00:34:27,159 Guziki. 781 00:34:27,159 --> 00:34:29,190 Więc Bootstrap ma wiele pięknych przycisków. 782 00:34:29,190 --> 00:34:33,639 Więc jeśli chcesz niebieskie przyciski, zielone przyciski, niebieski, pomarańczowy, czerwony. 783 00:34:33,639 --> 00:34:35,840 Bootstrap ułatwia robić te rzeczy. 784 00:34:35,840 --> 00:34:38,131 Są takie rzeczy że można całkowicie 785 00:34:38,131 --> 00:34:41,840 zrobili wczoraj z CSS i HTML, ale to jest po prostu ból w szyi. 786 00:34:41,840 --> 00:34:44,840 I tak zamiast tego, co będzie Bootstrap masz zrobić, to coś takiego. 787 00:34:44,840 --> 00:34:48,960 >> Jeśli chcesz button-- wyproszeni Jest to znacznik HTML nie używaliśmy yesterday-- 788 00:34:48,960 --> 00:34:53,070 i chcesz go szukać jak ten link, 789 00:34:53,070 --> 00:34:57,380 dosłownie po prostu dać mu lekcje, co zrobiliśmy mówić o wczoraj, 790 00:34:57,380 --> 00:34:59,710 z "btn btn-sukcesu." 791 00:34:59,710 --> 00:35:00,971 >> Dlaczego te słowa? 792 00:35:00,971 --> 00:35:03,470 Twitter, autorzy Bootstrap, wyszedł z tych słów. 793 00:35:03,470 --> 00:35:05,428 Mogli nazywa im cokolwiek chcą. 794 00:35:05,428 --> 00:35:08,480 Ale co się teraz ktoś na Twitterze, w tym przypadku, 795 00:35:08,480 --> 00:35:12,360 zorientowali się, jak można zrobić Przycisk wyglądają ładnie i czyste i zielone. 796 00:35:12,360 --> 00:35:15,580 Są pakowane tę funkcjonalność w klasie CSS, zwany "btn" 797 00:35:15,580 --> 00:35:19,790 i "btn-success", tak, że każdy z nas może teraz używać go nawet bez myślenia o 798 00:35:19,790 --> 00:35:20,290 to. 799 00:35:20,290 --> 00:35:22,880 Więc one wydobywane z dala pojęcie link 800 00:35:22,880 --> 00:35:25,320 więc nie musimy się martwić o wykonującego je sami. 801 00:35:25,320 --> 00:35:28,520 Możemy faktycznie skupić się na wdrażaniu wszystko to do nas. 802 00:35:28,520 --> 00:35:30,902 >> Jeśli przewinąć na dół. 803 00:35:30,902 --> 00:35:32,110 Komunikaty o błędach na ekranie. 804 00:35:32,110 --> 00:35:35,440 Czasami chcesz trochę wiadomość pojawiają się na górze przeglądarki. 805 00:35:35,440 --> 00:35:39,729 Każdy z nas może zrobić z niektórymi wysiłku, po wczorajszej lekcji, 806 00:35:39,729 --> 00:35:40,770 ale dlaczego mielibyśmy się przejmować? 807 00:35:40,770 --> 00:35:42,540 To takie nieciekawe estetyczny detal. 808 00:35:42,540 --> 00:35:44,248 Spójrzmy prawdzie stanąć na ramiona Bootstrap 809 00:35:44,248 --> 00:35:49,440 i niech nam takie rzeczy, gdzie dosłownie dostać czerwone pole, 810 00:35:49,440 --> 00:35:53,220 Wystarczy zrobić paragraf tag z klasą of-- przykro. 811 00:35:53,220 --> 00:35:57,307 "BG-niebezpieczeństwo" dałoby nam Zamiast tego pola czerwonawe. 812 00:35:57,307 --> 00:35:59,140 Teraz przejdźmy do więcej ciekawych rzeczy. 813 00:35:59,140 --> 00:36:02,950 Jeśli wrócę na górę tę stronę i przejść do części składowe, 814 00:36:02,950 --> 00:36:05,380 teraz świat staje się bardziej interesująca. 815 00:36:05,380 --> 00:36:08,826 Na przykład, bardzo często jest rozwijanego menu jak ten. 816 00:36:08,826 --> 00:36:11,560 Byłby to absolutny ból wykonania. 817 00:36:11,560 --> 00:36:13,610 I to nie tak dawno temu, że mamy programistów 818 00:36:13,610 --> 00:36:16,490 musiałyby realizować te rodzaje menu od zera. 819 00:36:16,490 --> 00:36:20,800 >> Ale to taki wspólny paradygmat że biblioteki jak Bootstrap 820 00:36:20,800 --> 00:36:25,230 tylko daje możliwość dokonać rozwijanego menu znacznie, znacznie łatwiej. 821 00:36:25,230 --> 00:36:27,850 Nie ma jednego sposobu, aby to zrobić, ale jeśli czytam dokumentację 822 00:36:27,850 --> 00:36:32,100 Chciałbym zauważyć, że, OK, należy użyć Ten HTML, jeśli chcę się menu 823 00:36:32,100 --> 00:36:34,030 która zachowuje się w taki sposób. 824 00:36:34,030 --> 00:36:36,690 >> Podobnie, chodźmy przycisku rozwijanego. 825 00:36:36,690 --> 00:36:38,470 Więc to jest jeszcze bardziej wyszukane. 826 00:36:38,470 --> 00:36:41,800 Jeśli chcę to wyglądać przycisku ale to trochę trójkąt oznacza 827 00:36:41,800 --> 00:36:44,080 Powinienem kliknij na niego i dostać do tego menu, w tym 828 00:36:44,080 --> 00:36:45,760 jest za pomocą języka nazwie JavaScript. 829 00:36:45,760 --> 00:36:47,470 I moglibyśmy wdrożyć to w JavaScript. 830 00:36:47,470 --> 00:36:49,720 Ale znowu, jest kołem nie chce na nowo. 831 00:36:49,720 --> 00:36:52,700 Po prostu chcą go zdjąć biblioteka Półka na to. 832 00:36:52,700 --> 00:36:58,145 >> Chodźmy do czegoś jak paski postępu. 833 00:36:58,145 --> 00:36:59,770 Więc coś w tym jest trochę chłodno. 834 00:36:59,770 --> 00:37:02,910 Jeśli kiedykolwiek widział postęp Pasek przesuwając po ekranie, 835 00:37:02,910 --> 00:37:06,380 wykonawczych, które często jest tylko ikona przędzenia. 836 00:37:06,380 --> 00:37:10,200 W rzeczywistości, tak na marginesie, niech mi iść do Ajax-- co to jest? 837 00:37:10,200 --> 00:37:10,710 Informacje Ajax? 838 00:37:10,710 --> 00:37:11,720 Ups. 839 00:37:11,720 --> 00:37:13,035 Ajaxinfo. 840 00:37:13,035 --> 00:37:14,800 Pozwól mi zapamiętać adres. 841 00:37:14,800 --> 00:37:15,820 No to jedziemy. 842 00:37:15,820 --> 00:37:19,850 >> Więc jeśli kiedykolwiek widział niektóre animacje podczas gdy strona się ładuje, albo myśli, 843 00:37:19,850 --> 00:37:25,410 lub zapisywanie lub tworzenie czegoś, ty może zobaczyć takie animacje jak te. 844 00:37:25,410 --> 00:37:28,800 Więc spójrzmy na coś jak ten tutaj, 845 00:37:28,800 --> 00:37:33,550 i niech wybrać kolor pierwszoplanowy zielone, co czuje rodzaj obsłudze. 846 00:37:33,550 --> 00:37:34,545 Mogę kliknąć to? 847 00:37:34,545 --> 00:37:35,500 Przyjdź jeden. 848 00:37:35,500 --> 00:37:36,000 OK. 849 00:37:36,000 --> 00:37:38,930 Musimy po prostu iść z powodu czerwonej to co dostajesz. 850 00:37:38,930 --> 00:37:40,250 Więc tutaj mamy go. 851 00:37:40,250 --> 00:37:43,940 >> Więc jeśli kiedykolwiek widział to na ekranie, przy czym nagle okazuje się, a następnie 852 00:37:43,940 --> 00:37:47,550 nagle znika, co jest to, że w zakresie, który? 853 00:37:47,550 --> 00:37:48,970 Cóż, jest to po prostu GIF. 854 00:37:48,970 --> 00:37:52,850 G-l-F. I to jest animowany Plik, co oznacza po prostu 855 00:37:52,850 --> 00:37:54,327 to jak starej szkoły komiksu. 856 00:37:54,327 --> 00:37:57,160 Jest tylko kilka różnych Ramy, które idą [jąkanie] 857 00:37:57,160 --> 00:37:58,085 i po prostu powtarzać. 858 00:37:58,085 --> 00:38:00,090 I to tworzenia złudzenie ruchu. 859 00:38:00,090 --> 00:38:03,070 >> Dlatego też, kiedy strona odbywa załadunku lub robi coś, 860 00:38:03,070 --> 00:38:04,610 co robi programista zrobić? 861 00:38:04,610 --> 00:38:07,500 Cóż, on lub ona po prostu ukrywa tego obrazu. 862 00:38:07,500 --> 00:38:11,536 Więc wszystko jest pasek postępu jest rodzajem podobnego filmu oglądanego. 863 00:38:11,536 --> 00:38:14,660 Jesteś jakby nie zważając na fakt, że nie jest w rzeczywistości robi nic, 864 00:38:14,660 --> 00:38:15,940 to tylko w ruchu. 865 00:38:15,940 --> 00:38:19,150 >> A potem, kiedy to się robi postępy, oni po prostu ukryć lub wyłączyć. 866 00:38:19,150 --> 00:38:21,115 I to jest cała magia które się tam dzieje. 867 00:38:21,115 --> 00:38:22,770 Bootstrap daje coś nieco bardziej wyszukane, 868 00:38:22,770 --> 00:38:25,030 w którym rzeczywiście można zobacz procent jak to jest, 869 00:38:25,030 --> 00:38:27,840 ale to też jest właśnie rodzaj prostej animacji. 870 00:38:27,840 --> 00:38:32,250 >> Spójrzmy na niektóre ostateczna bardziej złożone przykłady. 871 00:38:32,250 --> 00:38:35,526 Coś jak modalnej. 872 00:38:35,526 --> 00:38:36,900 Czy ktoś wie co to jest modalne? 873 00:38:36,900 --> 00:38:39,880 874 00:38:39,880 --> 00:38:42,550 Okno modalne jest generalnie który ma 875 00:38:42,550 --> 00:38:46,880 przejąć kontrolę nad pierwszym planie i uniemożliwić cokolwiek innego. 876 00:38:46,880 --> 00:38:50,290 To rodzaj zmusza użytkownika uwagi na środek ekranu 877 00:38:50,290 --> 00:38:52,290 blokowania ich, zwykle wszystkiego innego. 878 00:38:52,290 --> 00:38:55,830 >> Więc jeśli mogę uruchomić ten Demo, Ekran będzie na ogół stają się szare. 879 00:38:55,830 --> 00:38:57,060 Cóż, w jaki sposób możemy się szary? 880 00:38:57,060 --> 00:38:59,080 Cóż, prawdopodobnie tylko zmienił kolor tła 881 00:38:59,080 --> 00:39:01,060 jak my wczoraj czy coś takiego. 882 00:39:01,060 --> 00:39:03,490 Może to nakładka że półprzezroczyste. 883 00:39:03,490 --> 00:39:06,320 A teraz zauważyć można zrobić fantazyjne takie rzeczy. 884 00:39:06,320 --> 00:39:09,930 Więc jeśli kiedykolwiek kliknij na przycisk i chcesz trochę pop się pojawiają, 885 00:39:09,930 --> 00:39:10,710 Możesz to zrobić. 886 00:39:10,710 --> 00:39:12,340 A więc kto dba o żadnym stopniu tak? 887 00:39:12,340 --> 00:39:15,791 >> PUBLICZNOŚCI: Więc z Bootstrap, aby ją włączyć, 888 00:39:15,791 --> 00:39:21,002 Jest to tak proste, jak to jak wczoraj zrobiliśmy stronę stylów CSS? 889 00:39:21,002 --> 00:39:21,960 David J. MALAN: Rzeczywiście. 890 00:39:21,960 --> 00:39:22,835 Bardzo dobre pytanie. 891 00:39:22,835 --> 00:39:24,480 Pozwólcie mi iść do Getting Started. 892 00:39:24,480 --> 00:39:26,090 I tak. 893 00:39:26,090 --> 00:39:30,920 Wszystko co musisz zrobić, aby Zastosowanie Bootstrap jest zasadniczo skopiować 894 00:39:30,920 --> 00:39:35,910 i wklej te trzy długie kolejki Kod do górnej części własnego page-- internetowej 895 00:39:35,910 --> 00:39:38,892 szef swojej page-- i jesteś gotowy do pracy. 896 00:39:38,892 --> 00:39:41,850 I nie ma różne sposoby robienia to, że jednak to być najprostsze. 897 00:39:41,850 --> 00:39:45,190 >> Więc co jest pomocny o tym wszystkim? 898 00:39:45,190 --> 00:39:47,524 Cóż, jeśli nie jesteś tak bardzo Osoba wdrażająca strony internetowej 899 00:39:47,524 --> 00:39:50,106 ale starasz się go zaprojektować, lub chcesz zapewnić kogoś 900 00:39:50,106 --> 00:39:53,220 z diagramami szkieletowym, że tak powiem, lub wydawania zaledwie artysty, co 901 00:39:53,220 --> 00:39:56,080 chcesz robić, I, to dzień, często udać się do serwisu 902 00:39:56,080 --> 00:39:58,660 jak Bootstrap, gdzie gdybym chcą wprowadzić something-- 903 00:39:58,660 --> 00:40:02,290 jak niedawno na uczelni Chcieliśmy wdrożyć 904 00:40:02,290 --> 00:40:06,170 narzędziem webowy do nawigacji Harvardu Katalog przedmiotów, 905 00:40:06,170 --> 00:40:08,770 ułatwiając dla studentów przeglądać kursy 906 00:40:08,770 --> 00:40:10,930 i dodać do kursów lista zakupów, by tak rzec, 907 00:40:10,930 --> 00:40:13,070 do rodzaju zdecydować, co chcieli podjąć. 908 00:40:13,070 --> 00:40:16,252 >> Próbowałam sobie wyobrazić ja, co byłoby składniki 909 00:40:16,252 --> 00:40:17,460 chcemy wykorzystać do zbudowania tego? 910 00:40:17,460 --> 00:40:19,050 Co interfejs użytkownika będzie jak? 911 00:40:19,050 --> 00:40:22,800 I tak patrząc przez witryny, takie jak Ten i inne takie miejsca biblioteczne, 912 00:40:22,800 --> 00:40:26,560 można uzyskać inspirację, ponieważ wow, Mogę korzystać z tej widget, a ten widget, 913 00:40:26,560 --> 00:40:27,330 a ten widget. 914 00:40:27,330 --> 00:40:29,080 I wtedy naprawdę co programator zaczyna 915 00:40:29,080 --> 00:40:32,800 do zrobienia, zwłaszcza w tych dniach w tym bardziej nowoczesny świat programowania WWW, 916 00:40:32,800 --> 00:40:35,827 jest programowanie jest coraz o okablowaniu rzeczy razem. 917 00:40:35,827 --> 00:40:38,910 Sortowanie biorąc to z półki, to z półki, to z półki, 918 00:40:38,910 --> 00:40:41,954 i jest inteligentny jeden podłączenie wszystkich tych punktach, 919 00:40:41,954 --> 00:40:45,120 ale ostatecznie zbudować coś ponownie stojąc na barki innych, 920 00:40:45,120 --> 00:40:49,370 tak, że nie spędzają miesiąc wdrożenie głupiego menu rozwijanego 921 00:40:49,370 --> 00:40:52,080 która jest rzeczywiście trudne do zrobienia, jeśli chcesz go do pracy w Chrome 922 00:40:52,080 --> 00:40:55,220 i IE i Firefox, a wszelkie Szereg innych przeglądarek. 923 00:40:55,220 --> 00:40:59,060 To dlatego nie jest to bogaty oprogramowanie komercyjne i open source 924 00:40:59,060 --> 00:41:01,220 przemysłu, jak również. 925 00:41:01,220 --> 00:41:06,810 >> PUBLICZNOŚCI: Więc nie Bootstrap uzyskać zaktualizowane i trzeba wtedy zaktualizować linki? 926 00:41:06,810 --> 00:41:07,820 >> David J. MALAN: Czyni. 927 00:41:07,820 --> 00:41:09,090 No tak, to robi. 928 00:41:09,090 --> 00:41:12,540 Bootstrap jest obecnie w wersji 3.3.6. 929 00:41:12,540 --> 00:41:16,720 I generalnie co byś do-- to jest rzeczywiście zasługuje na uwagę. 930 00:41:16,720 --> 00:41:19,200 Nie ma co się na ogół znany jako semantycznego wersjonowanie 931 00:41:19,200 --> 00:41:20,160 Układ na świecie. 932 00:41:20,160 --> 00:41:21,320 Nie każdy to robi. 933 00:41:21,320 --> 00:41:26,410 >> Ale jeśli widziałem numery wersji które mają postać x.y.z-- 934 00:41:26,410 --> 00:41:30,240 Tak na przykład, w pierwszej wersji programu może być 1.0.0. 935 00:41:30,240 --> 00:41:34,970 A jeśli jest to bardzo, bardzo beta lub nawet stan alfa, co oznacza wykorzystanie 936 00:41:34,970 --> 00:41:37,620 na własne ryzyko, że nie jest naprawdę gotowy do prime time, 937 00:41:37,620 --> 00:41:42,080 można nawet zacząć 0.0.1 czy coś takiego oznaczenia. 938 00:41:42,080 --> 00:41:47,260 Ale jeśli zaczyna się od wersji oprogramowania 1,0 lub równoważnie 1.0.0, 939 00:41:47,260 --> 00:41:50,530 typowo, co jest powszechne w tych days-- choć nie jest omnipresent-- 940 00:41:50,530 --> 00:41:53,520 Jeśli firma lub poszczególne poprawki programistyczne 941 00:41:53,520 --> 00:41:56,140 jakiś błąd w jakimś kawałku oprogramowania, które naprawdę 942 00:41:56,140 --> 00:42:01,620 Był to błąd, którego korekta nie powinna Wpływ cię w żadnym stopniu nie zmienia 943 00:42:01,620 --> 00:42:03,940 zachowanie programu, to po prostu coś naprawia 944 00:42:03,940 --> 00:42:06,580 że nie działa properly-- byś zwykle 945 00:42:06,580 --> 00:42:08,890 zaktualizować wartość oo istnieje. 946 00:42:08,890 --> 00:42:12,900 Co oznacza, że ​​ktoś taki jak Kareem może po prostu przejść do swojej stronie internetowej, 947 00:42:12,900 --> 00:42:19,470 ślepo zmienić numer wersji od 1.0.0 do 1.0.1, zapisać go, wysłać go, 948 00:42:19,470 --> 00:42:21,880 i teoretycznie nie trzeba obawiają się, że on po prostu uszkodzony 949 00:42:21,880 --> 00:42:24,430 Jego strona internetowa powodu brak niektórych funkcji, 950 00:42:24,430 --> 00:42:25,870 bo jeszcze coś złamał. 951 00:42:25,870 --> 00:42:28,740 >> Tymczasem, jeśli Ja Programista lub jakaś firma 952 00:42:28,740 --> 00:42:35,500 miały wprowadzić pewne znaczące zmiana, która podnosi funkcjonalność, 953 00:42:35,500 --> 00:42:40,320 mogę zaktualizować nas 1.1.0 bo jestem właściwie 954 00:42:40,320 --> 00:42:42,200 zmiany zachowania biblioteki. 955 00:42:42,200 --> 00:42:44,470 Daję ci może więcej funkcjonalności. 956 00:42:44,470 --> 00:42:48,490 Wreszcie, gdybym rzeczywiście fundamentalnie zmienić oprogramowanie tak 957 00:42:48,490 --> 00:42:54,380 dużo, że będzie przerwa wielu użytkowników stron internetowych lub aplikacji, 958 00:42:54,380 --> 00:42:59,550 Więc jestem zobowiązany, w tym modelu, aby uaktualnić główny numer wersji też 959 00:42:59,550 --> 00:43:01,059 który jest łamanie zmiana. 960 00:43:01,059 --> 00:43:03,725 Innymi słowy, może mam zaniechana wsparcie dla tych kropli 961 00:43:03,725 --> 00:43:04,350 Menu w dół. 962 00:43:04,350 --> 00:43:07,790 Więc jeśli upgrade do 2.0, pół Twoja strona może przestać działać. 963 00:43:07,790 --> 00:43:10,950 I to jest swego rodzaju sygnałem społeczności, aby co 964 00:43:10,950 --> 00:43:13,223 udział w tworzeniu uaktualnienie. 965 00:43:13,223 --> 00:43:16,710 966 00:43:16,710 --> 00:43:18,020 Dobrą okazją do podniesienia. 967 00:43:18,020 --> 00:43:18,718 Inne pytania? 968 00:43:18,718 --> 00:43:21,761 969 00:43:21,761 --> 00:43:22,260 W porządku. 970 00:43:22,260 --> 00:43:26,945 Więc rzućmy okiem na jednym finale tematem w tym segmencie programowania 971 00:43:26,945 --> 00:43:30,640 stosów technologicznych, a mianowicie związane z telefonów komórkowych. 972 00:43:30,640 --> 00:43:36,232 >> Tak więc w świecie telefonów komórkowych dzisiaj Ci have-- i iPadów, a powierzchnie, 973 00:43:36,232 --> 00:43:37,940 i wszystkie te rodzaje w urządzeniach: masz 974 00:43:37,940 --> 00:43:40,950 wiele możliwości, jeśli chodzi o wdrażanie 975 00:43:40,950 --> 00:43:47,270 aplikacja lub strona Urządzenia mobilne Twojego klienta. 976 00:43:47,270 --> 00:43:51,570 Więc po prostu podać oczywiste, być może w tych dniach, 977 00:43:51,570 --> 00:43:54,960 jakie są platformach rozwijać w mobilnej przestrzeni? 978 00:43:54,960 --> 00:43:59,650 Jakie urządzenia warto wsparcie ze swojej aplikacji lub strony internetowej? 979 00:43:59,650 --> 00:44:00,317 >> PUBLICZNOŚCI: Jabłko. 980 00:44:00,317 --> 00:44:01,108 David J. MALAN: OK. 981 00:44:01,108 --> 00:44:01,820 Więc urządzeń Apple. 982 00:44:01,820 --> 00:44:06,740 To znaczy, iPhone, a Oznacza iPada, a może nawet iPod. 983 00:44:06,740 --> 00:44:07,627 Co jeszcze? 984 00:44:07,627 --> 00:44:11,006 985 00:44:11,006 --> 00:44:11,505 Olivier? 986 00:44:11,505 --> 00:44:11,970 >> PUBLICZNOŚCI: Android. 987 00:44:11,970 --> 00:44:13,111 >> David J. MALAN: Android. 988 00:44:13,111 --> 00:44:13,610 OK. 989 00:44:13,610 --> 00:44:17,335 Więc telefonów z systemem Android, Android tabletki, Android Market 990 00:44:17,335 --> 00:44:21,240 Jest nawet Messier because-- i Nawet Apple jest coraz bałagan. 991 00:44:21,240 --> 00:44:23,960 Podczas gdy kiedyś iPhone był pewien rozmiar, 992 00:44:23,960 --> 00:44:26,560 i iPad była pewna wielkość, i iPod była pewna wielkość teraz 993 00:44:26,560 --> 00:44:33,420 mamy iPad Mini i cienki Te i iPhone 6 Plus i 6. 994 00:44:33,420 --> 00:44:34,407 Staje się bałagan. 995 00:44:34,407 --> 00:44:35,740 To staje świat Android. 996 00:44:35,740 --> 00:44:39,030 >> I mówię to z rodzaju walcowania moje oczy, bo od dewelopera 997 00:44:39,030 --> 00:44:41,680 perspektywicznym, to jest ból w szyi, gdy 998 00:44:41,680 --> 00:44:45,686 nie masz Steve Jobs ' Wizja absolutną kontrolą 999 00:44:45,686 --> 00:44:47,060 w stosunku do wszystkich tych specyfikacji. 1000 00:44:47,060 --> 00:44:49,726 Jabłko nadal nie dlatego, że są te, budowa sprzętu. 1001 00:44:49,726 --> 00:44:52,690 Ale jest to miła rzecz, jeśli Jestem programistą, 1002 00:44:52,690 --> 00:44:54,520 po prostu wiem, że moje iPhone zawsze będzie 1003 00:44:54,520 --> 00:44:56,850 za ten wielki, ponieważ co oznacza, że ​​zawsze wiem 1004 00:44:56,850 --> 00:44:58,847 ile ekran nieruchomości mam. 1005 00:44:58,847 --> 00:45:01,180 Więc jeśli chcesz umieścić ikonę w górnym lewym rogu, 1006 00:45:01,180 --> 00:45:04,530 to będzie dokładnie w tym samym umieszczać na urządzeniu Każdego klienta. 1007 00:45:04,530 --> 00:45:07,140 >> Ale w świecie iPhone 6s i iPhone 6 Plusy 1008 00:45:07,140 --> 00:45:10,570 i na świecie Androida telefony, to po całej mapie. 1009 00:45:10,570 --> 00:45:13,580 I tak to utrudnia programu rzeczy, zwłaszcza interfejsy użytkownika, 1010 00:45:13,580 --> 00:45:18,270 bo teraz trzeba zacząć organizowanie Twoje stosunkowo interfejsy użytkownika, a nie 1011 00:45:18,270 --> 00:45:19,730 absolutnie. 1012 00:45:19,730 --> 00:45:23,524 I to samo jest prawdą w przeglądarkach, i komputery stacjonarne i laptopy, na lata 1013 00:45:23,524 --> 00:45:25,690 bo Ty, oczywiście, mają różne rozmiary ekranów. 1014 00:45:25,690 --> 00:45:26,189 >> Co jeszcze? 1015 00:45:26,189 --> 00:45:30,170 Można mieć powierzchnie, jak Microsoft. 1016 00:45:30,170 --> 00:45:31,270 Możesz mieć-- 1017 00:45:31,270 --> 00:45:32,270 PUBLICZNOŚCI: Windows phone. 1018 00:45:32,270 --> 00:45:32,816 David J. MALAN: Co to jest? 1019 00:45:32,816 --> 00:45:33,570 PUBLICZNOŚCI: Windows phone. 1020 00:45:33,570 --> 00:45:34,403 David J. MALAN: Tak. 1021 00:45:34,403 --> 00:45:37,570 Więc telefony okna nadal można znaleźć. 1022 00:45:37,570 --> 00:45:41,840 Rodzaj rodzaju BlackBerry, ale próbować. 1023 00:45:41,840 --> 00:45:43,900 A potem kiści innych urządzeń. 1024 00:45:43,900 --> 00:45:48,020 Tak więc w większości przypadków, niech powiedzieć, są to te, 1025 00:45:48,020 --> 00:45:49,520 dbać o tej chwili. 1026 00:45:49,520 --> 00:45:51,890 Oczywiście rzeczy Apple Z pewnością Android rzeczy, 1027 00:45:51,890 --> 00:45:55,640 a wśród Windows, takich jak tabletki powierzchniowych Wydaje się, że łowienie na całkiem dobrze. 1028 00:45:55,640 --> 00:45:58,030 >> I tak wśród tych urządzeń, jeśli chcesz rozwałkować, 1029 00:45:58,030 --> 00:46:02,677 powiedzmy, mobilną dla swojej obecności firma, to jakie decyzje projektowe 1030 00:46:02,677 --> 00:46:03,510 masz zrobić? 1031 00:46:03,510 --> 00:46:06,350 Cóż, mamy już powiedział, świata Apple 1032 00:46:06,350 --> 00:46:08,790 jest co najmniej dwa języki które są zwykle używane. 1033 00:46:08,790 --> 00:46:10,260 Jeden nazywał się co? 1034 00:46:10,260 --> 00:46:11,260 >> PUBLICZNOŚCI: Objective-C. 1035 00:46:11,260 --> 00:46:11,560 >> David J. MALAN: Tak. 1036 00:46:11,560 --> 00:46:13,600 Więc Objective-C, który jest starszy. 1037 00:46:13,600 --> 00:46:17,720 Jest to także język, w którym wiele komputerów Mac aplikacje napisane w dalszym ciągu. 1038 00:46:17,720 --> 00:46:18,964 Potem drugi nowszy był? 1039 00:46:18,964 --> 00:46:19,630 PUBLICZNOŚCI: Swift. 1040 00:46:19,630 --> 00:46:20,590 David J. MALAN: Swift. 1041 00:46:20,590 --> 00:46:23,900 A to niby dwa wiedzieć, aby przekonać ludzi. 1042 00:46:23,900 --> 00:46:28,238 Następnie w świecie Androida, w jakim języku ma Android użyciu? 1043 00:46:28,238 --> 00:46:30,618 >> PUBLICZNOŚCI: C #? 1044 00:46:30,618 --> 00:46:31,570 >> PUBLICZNOŚCI: Java. 1045 00:46:31,570 --> 00:46:34,230 >> David J. MALAN: Java językiem "du jour". 1046 00:46:34,230 --> 00:46:37,950 W świecie Windows, na pewno, powiemy C # w tej sprawie. 1047 00:46:37,950 --> 00:46:40,590 Tak już jest to rodzaj denerwujące, bo co 1048 00:46:40,590 --> 00:46:43,070 wynos dla firmy Właściciel lub kogoś, kto po prostu 1049 00:46:43,070 --> 00:46:44,570 chce się rozciągnąć mobilną obecność? 1050 00:46:44,570 --> 00:46:45,220 Jak, do cholery? 1051 00:46:45,220 --> 00:46:48,590 Na przykład, jeśli chcę, aby wspierać dość szeroka baza użytkowników, 1052 00:46:48,590 --> 00:46:52,180 Muszę napisać, jak się wydaje, trzy oddzielne aplikacje. 1053 00:46:52,180 --> 00:46:55,630 Jeden na jeden z tych języków, jeden w Javie, jeden w języku C #. 1054 00:46:55,630 --> 00:46:59,620 I nawet, jeśli chcę funkcjonalność być identyczne, to nie ma znaczenia. 1055 00:46:59,620 --> 00:47:02,940 I jeszcze trzeba stosować różne Języki dlatego, że Apple i Microsoft, 1056 00:47:02,940 --> 00:47:06,084 i Google wszelkie wsparcie różnych środowiskach. 1057 00:47:06,084 --> 00:47:07,750 I to było wyzwanie na lata. 1058 00:47:07,750 --> 00:47:10,100 Powrót w dzień, kiedy ludzie używali do zakupu oprogramowania 1059 00:47:10,100 --> 00:47:12,230 w sklepie komputerowym w kurczyć zapakowane pudełka, 1060 00:47:12,230 --> 00:47:14,470 będzie trzeba albo sięgnąć po półce Mac 1061 00:47:14,470 --> 00:47:19,040 lub for-- Może to bardzo mały Mac shelf-- lub większa półka Okna 1062 00:47:19,040 --> 00:47:19,980 i kupić oprogramowanie. 1063 00:47:19,980 --> 00:47:22,813 I bardzo często, nie było nawet coś dla Ciebie na półce Mac. 1064 00:47:22,813 --> 00:47:23,430 Czemu? 1065 00:47:23,430 --> 00:47:26,900 Cóż, firmy zdecydowały, jeśli 90% świata, 95% światowej 1066 00:47:26,900 --> 00:47:31,180 ma komputery, po co się męczyć nawet wykonawczych rzeczy na Mac OS? 1067 00:47:31,180 --> 00:47:34,370 >> Jako aside-- łącznie digression-- dlaczego jest tak, 1068 00:47:34,370 --> 00:47:40,960 Mac, które wydaje się tak odporne na wirusy, i robaki i zagrożenia dla bezpieczeństwa? 1069 00:47:40,960 --> 00:47:44,040 Czy Apple to lepiej? 1070 00:47:44,040 --> 00:47:45,934 Lepiej na utrzymanie komputery są bezpieczne? 1071 00:47:45,934 --> 00:47:47,750 >> PUBLICZNOŚCI: Mniejsze publiczność? 1072 00:47:47,750 --> 00:47:50,720 >> David J. MALAN: To prawdopodobnie nieco większa do niej. 1073 00:47:50,720 --> 00:47:54,740 Więc wielu użytkowników komputerów Mac mają dawno twierdził, oh, korzystania z komputera Mac, 1074 00:47:54,740 --> 00:47:57,630 będziesz odporny na wirusy i robaki i wszystkie te rzeczy 1075 00:47:57,630 --> 00:47:59,180 które od dawna boryka się komputery. 1076 00:47:59,180 --> 00:48:02,050 To może być dlatego, że Apple ma lepszych programistów 1077 00:48:02,050 --> 00:48:05,250 i piszą lepsze oprogramowanie, lub System operacyjny został lepiej zaprojektowane. 1078 00:48:05,250 --> 00:48:06,870 Być może, ale chyba nie. 1079 00:48:06,870 --> 00:48:10,840 >> Jest to prawdopodobnie, że kiedy jesteś 12-letni lub 30 coś 1080 00:48:10,840 --> 00:48:13,510 rodzaj domu siedzi na piśmie złośliwe oprogramowanie przejąć 1081 00:48:13,510 --> 00:48:17,480 świat, masz zamiar iść po znacznie większa grupa docelowa. 1082 00:48:17,480 --> 00:48:20,590 95% na świecie, która może być uruchomiony system Windows lub niektóre 1083 00:48:20,590 --> 00:48:21,740 ich warianty. 1084 00:48:21,740 --> 00:48:23,800 Więc jest trochę po obu stronach. 1085 00:48:23,800 --> 00:48:25,710 Ale ich kredytu, Jabłko, o ile mi wiadomo, 1086 00:48:25,710 --> 00:48:28,270 nie bardzo reklamowany się jako bardziej bezpieczne, 1087 00:48:28,270 --> 00:48:32,110 skoro jesteś po prostu zaprosić dramatu, jeśli dokonać tego twierdzenia, że ​​myślę. 1088 00:48:32,110 --> 00:48:32,610 >> W porządku. 1089 00:48:32,610 --> 00:48:36,490 Bez uzyskiwania zbyt daleko w dół tym, w jaki sposób rozwiązać ten problem? 1090 00:48:36,490 --> 00:48:39,670 Czy trzeba kupić, czy trzeba zapłacić trzy różne osoby do rozwijania 1091 00:48:39,670 --> 00:48:41,540 aplikacje? 1092 00:48:41,540 --> 00:48:42,870 Czy wybrać jeden nad drugim? 1093 00:48:42,870 --> 00:48:45,460 Co należy kierować swoim myśląc o tym sądzisz? 1094 00:48:45,460 --> 00:48:47,960 1095 00:48:47,960 --> 00:48:48,460 Kareem? 1096 00:48:48,460 --> 00:48:51,001 1097 00:48:51,001 --> 00:48:51,500 Nie. 1098 00:48:51,500 --> 00:48:54,190 Ktoś inny. 1099 00:48:54,190 --> 00:48:56,885 >> PUBLICZNOŚCI: Wystarczy przyjść ze sprzętem. 1100 00:48:56,885 --> 00:48:58,510 David J. MALAN: Chodź ze sprzętem? 1101 00:48:58,510 --> 00:48:59,533 Co masz na myśli? 1102 00:48:59,533 --> 00:49:01,282 >> PUBLICZNOŚCI: Dla środowisko. [NIESŁYSZALNY] 1103 00:49:01,282 --> 00:49:04,867 1104 00:49:04,867 --> 00:49:06,200 David J. MALAN: Tak to prawda. 1105 00:49:06,200 --> 00:49:09,280 Ale klienci, Tymczasem może mieć iPhone, 1106 00:49:09,280 --> 00:49:13,530 mogą mieć telefonów z systemem Android, ale Tabletki mogą mieć wprowadzone przez Microsoft. 1107 00:49:13,530 --> 00:49:19,040 Więc jak masz strategię mobilną we wszystkich tych różnych użytkowników? 1108 00:49:19,040 --> 00:49:23,320 Wydaje się, że jeśli to kosztuje, powiedzmy 1000 $, aby iPhone 1109 00:49:23,320 --> 00:49:25,940 aplikacji, to będzie kosztować 2000 $, aby 1110 00:49:25,940 --> 00:49:29,250 aplikacja iPhone oraz Android aplikacji lub $ 3000 1111 00:49:29,250 --> 00:49:31,407 również wspierać oraz urządzeń z systemem Windows. 1112 00:49:31,407 --> 00:49:33,990 To chyba dość mało, a może nawet nie 1113 00:49:33,990 --> 00:49:36,050 być liniowa zależność tak. 1114 00:49:36,050 --> 00:49:41,065 >> PUBLICZNOŚCI: Jeśli chcesz mieć aplikację lub Nie można mieć czułe internetowej. 1115 00:49:41,065 --> 00:49:41,940 David J. MALAN: Dobrze. 1116 00:49:41,940 --> 00:49:46,255 PUBLICZNOŚCI: Czy można mieć natywną aplikację. 1117 00:49:46,255 --> 00:49:47,130 David J. MALAN: Tak. 1118 00:49:47,130 --> 00:49:50,260 Tak więc w całym tym kontekście tutaj rozmawialiśmy o tym, co 1119 00:49:50,260 --> 00:49:53,190 ludzie nazwaliby natywnych aplikacji. 1120 00:49:53,190 --> 00:49:58,040 Oznacza to, że aplikacje są pisane w rodzimym języku tego urządzenia. 1121 00:49:58,040 --> 00:50:02,190 Więc rodzimych Objective-C lub Swift Kod lub w Java lub C #. 1122 00:50:02,190 --> 00:50:06,900 Co oznacza, że ​​po pobraniu, niech powiedzieć snapchat, popularnej aplikacji 1123 00:50:06,900 --> 00:50:10,060 lub po pobraniu Facebook na telefon, 1124 00:50:10,060 --> 00:50:13,270 pobierasz albo Wersja napisane dla iPhone 1125 00:50:13,270 --> 00:50:16,830 lub zapisywane na telefonie z Androidem, lub zapisywane do powierzchni. 1126 00:50:16,830 --> 00:50:18,500 >> Ale istnieje alternatywa. 1127 00:50:18,500 --> 00:50:26,020 Olivier został nawiązując do, rzeczywiście można używać języka HTML 5 1128 00:50:26,020 --> 00:50:33,440 Zamiast tego, za pomocą tego, co się nazywa internetowej Aplikacja, której po prostu 1129 00:50:33,440 --> 00:50:35,940 realizować swoją obecność mobilnej i każda funkcjonalność. 1130 00:50:35,940 --> 00:50:37,030 Co mam na myśli obecność mobilnej? 1131 00:50:37,030 --> 00:50:39,800 Podobnie jak swojej stronie, pod którymi informacje kontaktowe, wykaz wszystkich 1132 00:50:39,800 --> 00:50:43,049 swoje produkty, może to ma zakupy koszyk, może sprzedawać rzeczy za jego pośrednictwem. 1133 00:50:43,049 --> 00:50:46,850 Niezależnie od zastosowania, wy wdrożyć, a nie w Objective-C, 1134 00:50:46,850 --> 00:50:51,200 lub Swift, lub Java lub C #, ale w HTML 5, który był językiem przyjrzeliśmy 1135 00:50:51,200 --> 00:50:55,470 od wczoraj, z JavaScript i CSS. 1136 00:50:55,470 --> 00:50:58,700 >> A co z tymi, ładne trzy jest to, że do ich uruchomienia, 1137 00:50:58,700 --> 00:51:01,981 trzeba tylko to, co kawałek oprogramowania? 1138 00:51:01,981 --> 00:51:02,980 PUBLICZNOŚCI: przeglądarki internetowej. 1139 00:51:02,980 --> 00:51:04,229 David J. MALAN: przeglądarki internetowej. 1140 00:51:04,229 --> 00:51:07,610 A najlepiej wiem, wszystkie te Urządzenia wyposażone są w przeglądarkach internetowych 1141 00:51:07,610 --> 00:51:10,480 tak aby użytkownik nie musiał zainstalować coś specjalnego. 1142 00:51:10,480 --> 00:51:12,920 Tak więc można po prostu powiedzieć swoje Publiczność, klienci, 1143 00:51:12,920 --> 00:51:16,590 przejdź do acme.com w telefonie Przeglądarka i będziesz po prostu 1144 00:51:16,590 --> 00:51:19,730 posiada doświadczenie Web Based które nadal wypełnia ekran, 1145 00:51:19,730 --> 00:51:25,100 ale nie trzeba się martwić o wszystko Koszty te i tym wszystkim złożoności. 1146 00:51:25,100 --> 00:51:28,600 Ale na pewno nie będzie być jakiś haczyk tutaj, prawda? 1147 00:51:28,600 --> 00:51:31,740 Zwłaszcza jeśli zwrócić uwagę że kilka lat temu, 1148 00:51:31,740 --> 00:51:35,700 Pierwsza wersja Aplikacja mobilna Facebooka 1149 00:51:35,700 --> 00:51:38,810 była głównie aplikacją HTML 5. 1150 00:51:38,810 --> 00:51:42,490 I oni mają bardziej Niedawno przepisany go 1151 00:51:42,490 --> 00:51:44,700 w swoich innych zastosowań. 1152 00:51:44,700 --> 00:51:46,990 >> Więc dlaczego nie od razu chcę powiedzieć, 1153 00:51:46,990 --> 00:51:49,190 Cóż, oczywiście mamy zamiar to zrobić? 1154 00:51:49,190 --> 00:51:51,560 Co może być ukryte koszty? 1155 00:51:51,560 --> 00:51:52,477 >> PUBLICZNOŚCI: Wydajność. 1156 00:51:52,477 --> 00:51:53,643 David J. MALAN: Wydajność? 1157 00:51:53,643 --> 00:51:54,567 Co masz na myśli? 1158 00:51:54,567 --> 00:52:01,040 >> Uczestniczyć: natywna aplikacja ma większą wydajność. 1159 00:52:01,040 --> 00:52:03,850 >> David J. MALAN: Więc to jest prawda, z kilku powodów. 1160 00:52:03,850 --> 00:52:05,270 Możemy oversimplify odpowiedź. 1161 00:52:05,270 --> 00:52:08,061 I przypomnieć naszą dyskusję interpretowany w porównaniu zebranych językach. 1162 00:52:08,061 --> 00:52:12,030 To jest HTML 5 a wraz z nią, żeby być jasne, JavaScript-- powszechnie napisane 1163 00:52:12,030 --> 00:52:15,880 JS-- i CSS są interpretowane języki, 1164 00:52:15,880 --> 00:52:21,020 chociaż tylko JavaScript jest językiem programowania. 1165 00:52:21,020 --> 00:52:25,820 >> I tak w stosunku do nich, co niektóre z tych zestawiane są, przynajmniej te three-- 1166 00:52:25,820 --> 00:52:29,990 Objective-C, Java i C # - tych, Teoretycznie powinna być tylko szybciej. 1167 00:52:29,990 --> 00:52:31,670 Ale istnieje inna rzeczywistość for-- 1168 00:52:31,670 --> 00:52:32,440 >> PUBLICZNOŚCI: Funkcjonalności? 1169 00:52:32,440 --> 00:52:32,830 >> David J. MALAN: Co to jest? 1170 00:52:32,830 --> 00:52:34,060 >> WIDOWNI: funkcjonalności. 1171 00:52:34,060 --> 00:52:34,570 >> David J. MALAN: funkcjonalność? 1172 00:52:34,570 --> 00:52:35,070 Jak to? 1173 00:52:35,070 --> 00:52:37,305 PUBLICZNOŚCI: za pomocą aparatu wyłączanie telefonu lub czegoś. 1174 00:52:37,305 --> 00:52:41,471 Można użyć tych z przeglądarką. 1175 00:52:41,471 --> 00:52:42,470 David J. MALAN: Dokładnie. 1176 00:52:42,470 --> 00:52:43,011 Oni sec-- 1177 00:52:43,011 --> 00:52:45,034 PUBLICZNOŚCI: [INAUDIBLE] 1178 00:52:45,034 --> 00:52:46,700 David J. MALAN: To kolejny dobry. 1179 00:52:46,700 --> 00:52:49,230 Nie ma cechy, które pochodzą z telefonów komórkowych dzisiaj 1180 00:52:49,230 --> 00:52:53,840 które nie są zgodne z projektem, dla bezpieczeństwa Powody, dostępne dla przeglądarek internetowych. 1181 00:52:53,840 --> 00:52:56,410 Ponieważ byłoby to rodzaj creepy, gdyby właśnie wtedy, gdy 1182 00:52:56,410 --> 00:53:00,710 odwiedzić google.com lub cnn.com lub dowolny website.com, 1183 00:53:00,710 --> 00:53:04,490 że strona ma prawo, aby włączyć w aparacie, zrobić zdjęcie z was, 1184 00:53:04,490 --> 00:53:06,010 a następnie użyj go. 1185 00:53:06,010 --> 00:53:09,280 Ale nie chcesz losową stronę internetową że wizyta po raz pierwszy 1186 00:53:09,280 --> 00:53:10,690 mieć tę możliwość. 1187 00:53:10,690 --> 00:53:13,460 >> I co z tego telefonu Producenci zazwyczaj zrobić 1188 00:53:13,460 --> 00:53:17,230 jest po prostu odmówić dostępu do tego rodzaju informacji 1189 00:53:17,230 --> 00:53:20,650 do przeglądarki, co oznacza, że nie może stosować aparat. 1190 00:53:20,650 --> 00:53:24,180 Nie można wdrożyć powiadomienia push, sygnały dźwiękowe, które pojawi się na ekranie 1191 00:53:24,180 --> 00:53:26,120 krótkich wiadomości. 1192 00:53:26,120 --> 00:53:31,350 A w rzeczywistości, nawet GPS jest jedynym rodzajem od rodzaju dostępne dla przeglądarek internetowych. 1193 00:53:31,350 --> 00:53:34,140 Jeśli kiedykolwiek na laptopie lub na urządzeniu przenośnym, 1194 00:53:34,140 --> 00:53:38,770 zatrzymał się mniej więcej tak może CNN.com, ale także lokalne stacje informacyjne 1195 00:53:38,770 --> 00:53:43,890 wydają się to zrobić, zostanie wyświetlony monit często z message-- foxnews.com 1196 00:53:43,890 --> 00:53:45,170 chce poznać swoją lokalizację. 1197 00:53:45,170 --> 00:53:46,610 Zatwierdzić lub odrzucić. 1198 00:53:46,610 --> 00:53:52,070 >> Dobrze, przeglądarka próbuje uzyskać dostęp do Twoje dane GPS z telefonu. 1199 00:53:52,070 --> 00:53:54,740 Ale na szczęście Microsoft, Apple i Google 1200 00:53:54,740 --> 00:53:57,330 Uznaliśmy, że czuje się jak jest to użyteczne sytuacja, 1201 00:53:57,330 --> 00:53:59,461 chcemy Google Maps i inne narzędzia do pracy, 1202 00:53:59,461 --> 00:54:02,710 ale nie chcemy skradać ludzi po prostu umożliwienie każdej strony, aby to zrobić. 1203 00:54:02,710 --> 00:54:05,934 Warto więc rodzaj spotykają połowy i poprosi użytkownika. 1204 00:54:05,934 --> 00:54:08,850 Ale to nie jest to regułą z całym sprzętem, takim jak kamery 1205 00:54:08,850 --> 00:54:10,680 i naciśnięciu Uwagi szczególne i tym podobne, 1206 00:54:10,680 --> 00:54:13,650 więc może trzeba rezygnować z pewnych funkcji. 1207 00:54:13,650 --> 00:54:15,100 Ale wydajność też. 1208 00:54:15,100 --> 00:54:18,020 Jest coraz mniej zauważalne dziś, być może 1209 00:54:18,020 --> 00:54:22,400 jak LTE łapie dalej i szybciej prędkość Internetu na telefonach, 1210 00:54:22,400 --> 00:54:24,110 ale można trochę poczuć różnicę. 1211 00:54:24,110 --> 00:54:28,190 Jak aplikacji internetowych po prostu czuje się wolniej, zazwyczaj, 1212 00:54:28,190 --> 00:54:31,100 niż natywnej aplikacji, częściowo Ponieważ aplikacji internetowych 1213 00:54:31,100 --> 00:54:32,680 definicji jest w Internecie. 1214 00:54:32,680 --> 00:54:35,610 To rozmowy z serwerami w sieci. 1215 00:54:35,610 --> 00:54:39,590 A jeśli połączenie sieciowe jest powolny, nawet przewijanie może być powolne. 1216 00:54:39,590 --> 00:54:43,710 >> Ale natywną aplikacją, trzeba już wstępnie downloaded-- prawdopodobnie 1217 00:54:43,710 --> 00:54:45,680 kiedy byłaś w domu ze sklepu z aplikacjami, 1218 00:54:45,680 --> 00:54:47,900 lub przynajmniej wstępnie pobrane jest w całości 1219 00:54:47,900 --> 00:54:49,640 wcześniej, niezależnie od speed-- połączenia 1220 00:54:49,640 --> 00:54:52,530 i tak teraz masz wszystkie wymienione bity, które trzeba zazwyczaj. 1221 00:54:52,530 --> 00:54:55,090 Może z wyjątkiem niektórych danych że pochodzi z serwera. 1222 00:54:55,090 --> 00:54:57,130 >> Więc to są kompromisy tutaj. 1223 00:54:57,130 --> 00:54:59,980 Jest rodzajem środku kompromis w rzeczywistości. 1224 00:54:59,980 --> 00:55:00,907 I myślę, że pan: 1225 00:55:00,907 --> 00:55:02,895 >> PUBLICZNOŚCI: Użyj danych w trybie offline. 1226 00:55:02,895 --> 00:55:06,355 W natywnych aplikacji, można [INAUDIBLE] 1227 00:55:06,355 --> 00:55:07,480 David J. MALAN: Oczywiście. 1228 00:55:07,480 --> 00:55:09,730 Więc nie jest to problemem w trybie offline, który jest naprawdę denerwujące 1229 00:55:09,730 --> 00:55:13,120 jeśli nie można zagrać w gry lub korzystania niektóre programy po prostu dlatego, że jesteś 1230 00:55:13,120 --> 00:55:15,110 gdzieś w piwnicy lub windy. 1231 00:55:15,110 --> 00:55:18,700 Pochodzący aplikacja jest sprężysta z wyższym prawdopodobieństwem przeciw tym, 1232 00:55:18,700 --> 00:55:20,990 zakładając, że masz wszystko Dane trzeba lokalnie. 1233 00:55:20,990 --> 00:55:22,900 >> Więc nie jest jeszcze trzecia opcja tutaj. 1234 00:55:22,900 --> 00:55:30,270 I niech zwróci widma natywna aplikacja web app tutaj i tutaj. 1235 00:55:30,270 --> 00:55:32,460 A co jest w środku Jest coś called-- 1236 00:55:32,460 --> 00:55:35,410 i myślę, że może mieć użył słowa wcześniej, może być? 1237 00:55:35,410 --> 00:55:37,170 Hybrydowy aplikacji. 1238 00:55:37,170 --> 00:55:40,980 I jak wskazuje nazwa, to coś w środku. 1239 00:55:40,980 --> 00:55:46,230 Jest to rodzaj aplikacji internetowej oraz to rodzaj natywnej aplikacji. 1240 00:55:46,230 --> 00:55:47,690 >> A co to znaczy? 1241 00:55:47,690 --> 00:55:51,750 Okazuje się, że są frameworks-- używając terminu z earlier-- oprogramowania 1242 00:55:51,750 --> 00:55:55,860 że inni ludzie pisali dla każdej z tych platform. 1243 00:55:55,860 --> 00:55:57,500 Te i jeszcze inne urządzenia. 1244 00:55:57,500 --> 00:56:02,390 W rzeczywistości, pozwól mi iść do PhoneGap, które jest takie, że ramy 1245 00:56:02,390 --> 00:56:04,520 Wierzymy Adobe posiada teraz. 1246 00:56:04,520 --> 00:56:07,830 Pozwólcie mi iść do Getting Started. 1247 00:56:07,830 --> 00:56:09,430 Zobaczmy. 1248 00:56:09,430 --> 00:56:12,450 Zobacz, czy mogę zobaczyć listę narzędzi. 1249 00:56:12,450 --> 00:56:13,150 Sprzęt komputerowy. 1250 00:56:13,150 --> 00:56:15,845 Pierwsze kroki. 1251 00:56:15,845 --> 00:56:17,570 sprzętu PhoneGap. 1252 00:56:17,570 --> 00:56:18,672 >> Zobaczmy. 1253 00:56:18,672 --> 00:56:23,459 PhoneGap dostępu do sprzętu. 1254 00:56:23,459 --> 00:56:26,125 Pozwól mi zobaczyć, czy możemy dowiedzieć się trochę wykres, który kiedyś mieć. 1255 00:56:26,125 --> 00:56:29,170 1256 00:56:29,170 --> 00:56:31,640 Jest to w innym miejscu. 1257 00:56:31,640 --> 00:56:32,525 Jest to przydatne? 1258 00:56:32,525 --> 00:56:33,030 Nie. 1259 00:56:33,030 --> 00:56:36,330 To będzie tracić czasu. 1260 00:56:36,330 --> 00:56:40,185 sprzętu PhoneGap. 1261 00:56:40,185 --> 00:56:40,685 Pomysłowość. 1262 00:56:40,685 --> 00:56:45,190 1263 00:56:45,190 --> 00:56:48,030 API urządzeń. 1264 00:56:48,030 --> 00:56:49,270 Nie, oni przeniósł go. 1265 00:56:49,270 --> 00:56:50,070 >> PhoneGap. 1266 00:56:50,070 --> 00:56:54,964 Chodźmy po raz ostatni spojrzeć na to i zobaczyć, czy mogę ci pokazać. 1267 00:56:54,964 --> 00:56:55,630 Pierwsze kroki. 1268 00:56:55,630 --> 00:56:58,160 1269 00:56:58,160 --> 00:56:59,020 Instaluj PhoneGap. 1270 00:56:59,020 --> 00:57:02,310 1271 00:57:02,310 --> 00:57:03,270 Zainstaluj aplikację mobilną. 1272 00:57:03,270 --> 00:57:04,320 Daj spokój. 1273 00:57:04,320 --> 00:57:07,220 1274 00:57:07,220 --> 00:57:08,580 Oni zreorganizowana wszystko. 1275 00:57:08,580 --> 00:57:09,750 W porządku. 1276 00:57:09,750 --> 00:57:11,370 Ah w porządku. 1277 00:57:11,370 --> 00:57:12,550 Cóż, jedziemy. 1278 00:57:12,550 --> 00:57:16,130 To nie jest wcale tak pouczające, ale to co ja niby szuka. 1279 00:57:16,130 --> 00:57:20,940 >> Więc PhoneGap to framework, który Cię można pobrać za darmo, który daje 1280 00:57:20,940 --> 00:57:22,750 jakiś kod startowy, zasadniczo. 1281 00:57:22,750 --> 00:57:26,600 Tak więc niektóre kodu, które mają napisane że nie robi prawie nic. 1282 00:57:26,600 --> 00:57:29,610 Ale co to daje zasadniczo jest odpowiednikiem 1283 00:57:29,610 --> 00:57:34,910 wniosku, że po prostu wkłada duży prostokąt na ekranie użytkownika. 1284 00:57:34,910 --> 00:57:38,040 To nie umieścić pasek URL, jak Przeglądarka, nie umieścić adres. 1285 00:57:38,040 --> 00:57:39,650 To po prostu kładzie duży prostokąt. 1286 00:57:39,650 --> 00:57:43,230 I tak skonfigurować ten wielki prostokąt, pod maską 1287 00:57:43,230 --> 00:57:50,780 faktycznie przejść do acme.com, czy może m.acme.com dla mobile.acme.com, 1288 00:57:50,780 --> 00:57:52,910 ale użytkownik nie wie są one pod tym adresem. 1289 00:57:52,910 --> 00:57:55,520 Wszyscy widzą, jest Zawartość strony internetowej. 1290 00:57:55,520 --> 00:57:59,822 >> Ale co jest miłe o tym istoty aplikacja hybrydowa jest, że to co PhoneGap 1291 00:57:59,822 --> 00:58:03,030 i inne firmy dają Ci to oni dają wam trochę kodu 1292 00:58:03,030 --> 00:58:05,760 w Objective-C lub Swift, lub trochę kodu w języku Java, 1293 00:58:05,760 --> 00:58:08,320 lub trochę kodu w języku C #, a przede wszystkim, 1294 00:58:08,320 --> 00:58:12,990 wszystko co musisz dostarczyć jest minimalnie adres aplikacji przez przeglądarkę WWW. 1295 00:58:12,990 --> 00:58:15,750 I wtedy ten pakiet wszyscy razem, a ty 1296 00:58:15,750 --> 00:58:20,670 mieć albo dostęp do swojej site za pośrednictwem Internetu, 1297 00:58:20,670 --> 00:58:24,060 lub nawet buforować lokalny skopiować wewnątrz aplikacji, 1298 00:58:24,060 --> 00:58:28,690 a następnie zapisać swoją aplikację w formacie iPhone, Android telefon 1299 00:58:28,690 --> 00:58:32,030 Format, format powierzchni, lub Dowolna liczba innych urządzeń. 1300 00:58:32,030 --> 00:58:34,960 >> Przesłać każda z tych wersji do sklepu Google Play, 1301 00:58:34,960 --> 00:58:37,690 do App Store, do System Windows Store, i tak dalej. 1302 00:58:37,690 --> 00:58:41,570 A teraz, można mieć wszystkie swoje widzowie ściągnąć naprawdę natywną aplikację 1303 00:58:41,570 --> 00:58:44,250 choć większość kodu było napisany przez kogoś innego, 1304 00:58:44,250 --> 00:58:49,090 ale zawartość tej natywnej aplikacji wszystkie pochodzą z typowo własnej stronie internetowej. 1305 00:58:49,090 --> 00:58:53,950 Więc dalej pisząc swoją stronę w HTML, JavaScript i CSS. 1306 00:58:53,950 --> 00:58:56,400 >> Więc dlaczego rozmycie te linie? 1307 00:58:56,400 --> 00:59:00,240 Dlaczego mają zastosowanie hybrydowego to rodzaj rodzimych, ale także 1308 00:59:00,240 --> 00:59:02,569 rodzaj sieci opiera? 1309 00:59:02,569 --> 00:59:04,610 Co znajduje się cały sens dodając tę ​​złożoność? 1310 00:59:04,610 --> 00:59:07,180 To znaczy, nawet jeszcze, tylko z spoglądając za pośrednictwem tej strony, 1311 00:59:07,180 --> 00:59:11,790 Podręcznik Wprowadzenie czuje jest tam dużo schodów dla mnie 1312 00:59:11,790 --> 00:59:13,514 zrobić zanim can-- 1313 00:59:13,514 --> 00:59:14,430 PUBLICZNOŚCI: Ponowne? 1314 00:59:14,430 --> 00:59:14,960 David J. MALAN: Ponowne? 1315 00:59:14,960 --> 00:59:15,618 Co masz na myśli? 1316 00:59:15,618 --> 00:59:16,826 >> PUBLICZNOŚCI: kodu źródłowego. 1317 00:59:16,826 --> 00:59:19,438 Więc ten sam kod będzie działać na wszyscy różnych platformach. 1318 00:59:19,438 --> 00:59:20,313 David J. MALAN: Tak. 1319 00:59:20,313 --> 00:59:21,188 PUBLICZNOŚCI: [INAUDIBLE] 1320 00:59:21,188 --> 00:59:23,200 1321 00:59:23,200 --> 00:59:24,200 David J. MALAN: Perfect. 1322 00:59:24,200 --> 00:59:26,930 Jeśli czas jest napięty, a jeśli nie trzeba, że ​​wiele developers-- 1323 00:59:26,930 --> 00:59:28,900 Może masz jeden developer a on na pewno 1324 00:59:28,900 --> 00:59:31,050 nie zna wszystkich tych environments-- pewnością nie jest dobrze, 1325 00:59:31,050 --> 00:59:33,341 a już na pewno nie mogę programu we wszystkich trzech jednocześnie 1326 00:59:33,341 --> 00:59:35,970 i wysłać trzy produkty w czas przeznaczony na jeden, 1327 00:59:35,970 --> 00:59:40,360 możesz mieć go lub ją zbudować wszystko HTML i JavaScript i CSS, 1328 00:59:40,360 --> 00:59:43,260 a następnie nauczyć się malutkie Trochę o natywnych aplikacji, 1329 00:59:43,260 --> 00:59:45,930 tylko na tyle, aby pobrać ramy w ten sposób, 1330 00:59:45,930 --> 00:59:48,750 aby następnie przesłać swój produkt wszystkich różnych sklepach aplikacji 1331 00:59:48,750 --> 00:59:51,700 tak, że masz teraz natywną aplikacją. 1332 00:59:51,700 --> 00:59:54,090 >> Tak, że wydaje się to win-win, ale znowu, być jasne, 1333 00:59:54,090 --> 00:59:56,540 Jakie są potencjalne kosztów lub pułapek? 1334 00:59:56,540 --> 01:00:00,292 1335 01:00:00,292 --> 01:00:01,209 >> PUBLICZNOŚCI: Wydajność? 1336 01:00:01,209 --> 01:00:02,083 David J. MALAN: Tak. 1337 01:00:02,083 --> 01:00:02,959 Wydajność. 1338 01:00:02,959 --> 01:00:04,250 Trudno opisać werbalnie. 1339 01:00:04,250 --> 01:00:07,590 Więc jeśli po prostu wziąć na Wiara to aplikacja mobilna, 1340 01:00:07,590 --> 01:00:11,430 aplikacja internetowa będzie zazwyczaj wykonują wolniej. 1341 01:00:11,430 --> 01:00:16,500 Może nie wyglądają dość dobrze, ponieważ w iPhone, Android i telefonów, 1342 01:00:16,500 --> 01:00:19,210 oraz Windows, istnieje zawsze rodzajem domyślnym wyglądzie 1343 01:00:19,210 --> 01:00:21,780 i poczuć się do wszystkich z przyciski i menu. 1344 01:00:21,780 --> 01:00:25,160 >> A firmy w internecie, można spróbować zbliżenie tych estetykę 1345 01:00:25,160 --> 01:00:28,329 z bibliotekami jak Bootstrap, ale user-- bystry user-- 1346 01:00:28,329 --> 01:00:30,620 będzie wiedział, że coś nie całkiem tutaj. 1347 01:00:30,620 --> 01:00:32,510 I to jest w porządku, może to nie jest wielka sprawa. 1348 01:00:32,510 --> 01:00:35,500 Ale problem z wydajnością absolutnie jest to nic wielkiego. 1349 01:00:35,500 --> 01:00:39,400 Natywne aplikacje będą miały tendencję do zaledwie być znacznie bardziej elastyczne i dlatego 1350 01:00:39,400 --> 01:00:39,946 lepszy. 1351 01:00:39,946 --> 01:00:42,070 I tak, co to może być najlepsze z obu światów? 1352 01:00:42,070 --> 01:00:44,584 Jeśli jesteś szczególnie mała firma lub mała grupa, 1353 01:00:44,584 --> 01:00:47,000 nie ma środków rozwijać aplikację równolegle 1354 01:00:47,000 --> 01:00:50,480 na wszystkich trzech platformach, i szczerze mówiąc, czuje, że jest złym pomysłem 1355 01:00:50,480 --> 01:00:53,526 bo jeśli rozwałkuj i wszystkie trzy jednocześnie sprawę, 1356 01:00:53,526 --> 01:00:56,400 Należy dodaliśmy kilka funkcji lub zrobić coś inaczej, teraz 1357 01:00:56,400 --> 01:00:59,530 trzeba go naprawić trzy miejsca, a nie jeden. 1358 01:00:59,530 --> 01:01:02,390 Co może być optymalna Strategia tutaj ogólnie, 1359 01:01:02,390 --> 01:01:04,130 jeśli środki i czas są szczelne? 1360 01:01:04,130 --> 01:01:06,420 >> PUBLICZNOŚCI: Po prostu zrób to na iOS. 1361 01:01:06,420 --> 01:01:08,390 >> David J. MALAN: To nie jest nierozsądne. 1362 01:01:08,390 --> 01:01:10,670 iPhone, przynajmniej w USA, są bardzo popularne. 1363 01:01:10,670 --> 01:01:13,820 Android wydaje się wciąż mieć dominującą udział w rynku, w skali globalnej, w klasyfikacji generalnej. 1364 01:01:13,820 --> 01:01:16,740 Więc nie jesteś być reprezentatywna 1365 01:01:16,740 --> 01:01:19,210 z całości globu w tym tygodniu. 1366 01:01:19,210 --> 01:01:21,180 Ale to absolutnie jedna decyzja. 1367 01:01:21,180 --> 01:01:23,620 To znaczy, na kampusie tu że niektóre liczby okropne 1368 01:01:23,620 --> 01:01:26,600 lub odsetek studentów Nie masz iPhone i Android komórkowych. 1369 01:01:26,600 --> 01:01:28,490 Ale za granicą, jest to swego rodzaju przeciwieństwo. 1370 01:01:28,490 --> 01:01:30,040 Więc zdecydować na podstawie odbiorców. 1371 01:01:30,040 --> 01:01:31,990 Skąd wiesz, co publiczność ma? 1372 01:01:31,990 --> 01:01:34,080 >> Dobrze, dowiedzieliśmy się wczoraj trick. 1373 01:01:34,080 --> 01:01:35,060 Można je zadać. 1374 01:01:35,060 --> 01:01:37,910 Jeśli masz widownia można wysłać formularz ankiety. 1375 01:01:37,910 --> 01:01:39,172 Albo może po prostu robić to, co? 1376 01:01:39,172 --> 01:01:40,076 >> PUBLICZNOŚCI: Google Analytics? 1377 01:01:40,076 --> 01:01:40,680 >> David J. MALAN: Co to jest? 1378 01:01:40,680 --> 01:01:41,876 >> PUBLICZNOŚCI: Google Analytics. 1379 01:01:41,876 --> 01:01:43,250 David J. MALAN: Google Analytics. 1380 01:01:43,250 --> 01:01:43,750 Tak. 1381 01:01:43,750 --> 01:01:46,970 Albo jeszcze bardziej jakby technicznie, po prostu spojrzeć na własnych serwerach internetowych dzienników. 1382 01:01:46,970 --> 01:01:49,100 Bo to, co się dzieje za każdym razem, przeglądarka, 1383 01:01:49,100 --> 01:01:51,880 czy laptop, desktop lub Telefon odwiedzić swoją stronę internetową? 1384 01:01:51,880 --> 01:01:56,847 Wysyłają że nagłówek HTTP, który pokazuje Ci, co przeglądarka i system operacyjny, z którego korzystają. 1385 01:01:56,847 --> 01:02:00,180 Więc można wywnioskować, z dużym prawdopodobieństwem, co twój demograficzna korzysta w ten sposób 1386 01:02:00,180 --> 01:02:01,410 a następnie dostosować. 1387 01:02:01,410 --> 01:02:03,030 >> Więc przypuszczam, że to nie do przyjęcia. 1388 01:02:03,030 --> 01:02:07,760 To rodzaj złe dla firmy, jeśli Użytkownicy Androida nie można kupić nasze widgety. 1389 01:02:07,760 --> 01:02:10,942 >> PUBLICZNOŚCI: Czy jesteś będzie pobierać opłaty, czy nie? 1390 01:02:10,942 --> 01:02:12,900 David J. MALAN: Niezależnie od tego, idziesz do ładowania? 1391 01:02:12,900 --> 01:02:14,900 Więc OK, masz za co płacisz. 1392 01:02:14,900 --> 01:02:18,400 >> PUBLICZNOŚCI: Czy aplikacja ma zamiar jest wolny, czy to gonna-- 1393 01:02:18,400 --> 01:02:19,530 >> David J. MALAN: OK. 1394 01:02:19,530 --> 01:02:21,920 Więc może można odzyskać W ten sposób koszty, or--? 1395 01:02:21,920 --> 01:02:26,195 >> PUBLICZNOŚCI: Czytałem kiedyś, że wspomniane badania Użytkownicy Apple więcej płacić za aplikacje versus-- 1396 01:02:26,195 --> 01:02:28,320 David J. MALAN: To prawda ponieważ są one już 1397 01:02:28,320 --> 01:02:29,640 płacą więcej za ich urządzeń. 1398 01:02:29,640 --> 01:02:31,295 Więc nie nieuzasadnione założenie. 1399 01:02:31,295 --> 01:02:32,170 >> PUBLICZNOŚCI: [INAUDIBLE] 1400 01:02:32,170 --> 01:02:34,439 1401 01:02:34,439 --> 01:02:35,230 David J. MALAN: OK. 1402 01:02:35,230 --> 01:02:38,667 Więc jeśli są bardziej skłonni zapłacić, potem do diabła z użytkowników Androida. 1403 01:02:38,667 --> 01:02:40,500 Nie zamierzamy płacą nam nic tak. 1404 01:02:40,500 --> 01:02:43,499 Równie dobrze możemy skupić nasze priorytety, przynajmniej przez kilka pierwszych miesięcy 1405 01:02:43,499 --> 01:02:44,810 lub rok, na iOS. 1406 01:02:44,810 --> 01:02:46,240 Całkowicie uzasadnione. 1407 01:02:46,240 --> 01:02:48,558 Co to jest bardziej zintegrowane Strategia niż to? 1408 01:02:48,558 --> 01:02:53,740 1409 01:02:53,740 --> 01:02:54,960 Maybe-- co to jest? 1410 01:02:54,960 --> 01:02:57,040 >> PUBLICZNOŚCI: [INAUDIBLE] 1411 01:02:57,040 --> 01:03:00,142 >> David J. MALAN: Bardziej expensive-- więc może inwestować więcej in-- iść do przodu. 1412 01:03:00,142 --> 01:03:00,767 PUBLICZNOŚCI: Tak. 1413 01:03:00,767 --> 01:03:02,050 Wystarczy mobilna strona internetowa. 1414 01:03:02,050 --> 01:03:03,966 >> David J. MALAN: Czyli zrobić mobilne www i nie 1415 01:03:03,966 --> 01:03:05,440 nawet martwić o tej złożoności. 1416 01:03:05,440 --> 01:03:07,970 Albo rozsądna strategia, który wziął nawet Facebook, 1417 01:03:07,970 --> 01:03:10,890 jest zacząć hybryda aplikacji, ponieważ nie jest 1418 01:03:10,890 --> 01:03:13,582 że o wiele trudniej jest to zrobić niż to. 1419 01:03:13,582 --> 01:03:16,040 Po prostu trzeba przeczytać kilka dokumentacja i dowiedzieć się, jak 1420 01:03:16,040 --> 01:03:17,480 przesłać rzeczy do App Store. 1421 01:03:17,480 --> 01:03:19,670 Więc może zacząć Ta tak, że w pierwszym dniu, 1422 01:03:19,670 --> 01:03:21,112 można obsługiwać wszystkich użytkowników. 1423 01:03:21,112 --> 01:03:23,570 A potem, po prostu lubią Facebooka i innych firm zrobili, 1424 01:03:23,570 --> 01:03:25,330 gdy masz zasobów, masz ludzi, 1425 01:03:25,330 --> 01:03:27,660 dlaczego nie można ponownie wdrożyć po prostu aplikacja iOS. 1426 01:03:27,660 --> 01:03:31,460 Masz jeszcze coś dla każdego, mimo że jest to gorsze doświadczenia 1427 01:03:31,460 --> 01:03:33,330 Być może z zastosowaniem hybrydowych. 1428 01:03:33,330 --> 01:03:36,770 Ale można stopniowo rozwałkować i wymienić swój krótki termin 1429 01:03:36,770 --> 01:03:40,280 Środki hybrydowego aplikacjach Twoje bardziej rodzime aplikacje. 1430 01:03:40,280 --> 01:03:44,090 >> PUBLICZNOŚCI: Ale z Ciebie aplikacja hybrydowa będą mieli dostęp do funkcji mobilnych? 1431 01:03:44,090 --> 01:03:45,440 >> David J. MALAN: Niekoniecznie. 1432 01:03:45,440 --> 01:03:47,810 Więc może zrobić świadomą decyzję na początku, 1433 01:03:47,810 --> 01:03:51,930 można przesyłać tylko na zdjęcia natywna aplikacja iPhone na Facebooku, 1434 01:03:51,930 --> 01:03:56,060 ale nie na aplikacji Android Początkowo, na przykład. 1435 01:03:56,060 --> 01:04:00,600 I to jest trochę białym kłamstwem, ponieważ aplikacje internetowe mają więcej ograniczeń 1436 01:04:00,600 --> 01:04:03,620 niż aplikacje hybrydowe okazuje na zewnątrz, a jeśli czytamy w dokumentacji 1437 01:04:03,620 --> 01:04:07,260 dla PhoneGap i rzeczy podoba, ludzie wymyślić sposoby 1438 01:04:07,260 --> 01:04:11,110 dać do aplikacji internetowych Dostęp do kamery, 1439 01:04:11,110 --> 01:04:13,310 tak długo jak używasz hybrydą aplikacji. 1440 01:04:13,310 --> 01:04:14,214 >> Jak to działa? 1441 01:04:14,214 --> 01:04:16,130 Ponieważ hybryda Aplikacja definicji 1442 01:04:16,130 --> 01:04:19,600 ma kawałek kodu w Objective-C, Swift i Java lub C #, 1443 01:04:19,600 --> 01:04:20,920 może uzyskać dostęp do sprzętu. 1444 01:04:20,920 --> 01:04:24,590 Niekoniecznie wszystko, ale to może bardzo dobrze 1445 01:04:24,590 --> 01:04:27,310 być tak, że masz wystarczy uzyskać dostęp do aparatu, 1446 01:04:27,310 --> 01:04:32,960 nawet dla platform Android, na Przykładowo, w tym contrived przykładzie. 1447 01:04:32,960 --> 01:04:35,515 >> Jakieś inne pytania? 1448 01:04:35,515 --> 01:04:36,279 W porządku. 1449 01:04:36,279 --> 01:04:38,070 Dlaczego nie bierzemy 15 minut przerwy tutaj. 1450 01:04:38,070 --> 01:04:44,060 Będziemy wznowić w trzech z końcowym spojrzeć na programowaniu WWW, bazy danych, 1451 01:04:44,060 --> 01:04:45,910 i JavaScript. 1452 01:04:45,910 --> 01:04:48,877