DAVID J. малая: Такім чынам, мы вярнуліся. Так высокага ўзроўню тэма ў дадзены момант у цяперашні час з'яўляецца тэхналогія стэкі, якая не з'яўляецца асабліва тэхнічны тэрмін, гэта больш ўлову усё для любога колькасць камбінацый тэхналогій што вы маглі б выкарыстоўваць для вырашэння праблем. І, мабыць, самы фітынга спосаб пачаць будзе глядзець на мовах, так як Я ўвесь час сыпаць цэлую кучу і большасць усё ў пакоі ёсць напэўна, чулі, па меншай меры, адзін. Дык чаму б нам не паспрабаваць адрозніць што-адрозніваць гэтыя мовы і коратка казаць пра тое, калі вы б выбраць адзін над іншым, як яны свайго роду фундаментальна розныя, і ў асаблівасці калі вы ў чаце з інжынерамі, або спрабуе вырашыць, каго наймаць, або тое, што рэалізацыя Прапанову аб зялёнае святло, як бы вы на самой справе зрабіць тыя віды рашэнняў. Так што давайце проста грымець некаторыя рэчы. З моў людзі маюць чулі, што прыходзіць на розум? C. OK. OK, C ++. Што гэта? ГЛЕДАЧЫ: Python. DAVID J. малая: Python. Выдатна. Што яшчэ? Visual Basic. Я чуў, Java. Візуальны а.к.а. Basic-- VB. Java. .NET, Якая больш за ўсё ўлову за тое, што, як правіла, C # у якасці мовы пра які ідзе гаворка. І дазвольце мне сказаць, што. Такім чынам, мы вернемся да гэтага. Мне вельмі шкада? На жаль? ГЛЕДАЧЫ: SQL. DAVID J. малая: драпіна? ГЛЕДАЧЫ: SQL. DAVID J. малая: О, SQL. ДОБРА. SQL. Такім чынам, мы вернемся да that-- на самай справе, гэта good-- пасля перапынку, а таксама. Што яшчэ? ГЛЕДАЧЫ: Oracle. DAVID J. малая: Так Oracle, не з'яўляецца мовай. На самай справе яны будуць выкарыстоўваць SQL, а таксама. Так што давайце пакласці, што пасля таго, як перапынак, а таксама. І шкада, што-то тут? ГЛЕДАЧЫ: Mathematica. DAVID J. малая: Mathematica? Так, вядома. І MATLAB з'яўляецца свайго роду там часам. ГЛЕДАЧЫ: Р. DAVID J. малая: Р. Давайце разгледзім тут. Fortran. Вядома. Старая школа. Fortran. COBOL. Я выкінуць BASIC. BASIC. Any-- ГЛЕДАЧЫ: MATLAB? DAVID J. малая: MATLAB. О, біць вас да яго. Што-небудзь? Я магу думаць аб некалькіх іншых. Я магу думаць аб некалькіх іншых. А што было апошнім? ГЛЕДАЧЫ: ASP. DAVID J. малая: ASP? Так. Актыўныя серверныя старонкі. Гэта, як правіла, падпадаюць пад іншыя мовы, часам C #, так што давайце пакінем гэта прэч. Але мы вернемся да таго, што за рамкі і таму падобнае. Што-небудзь яшчэ? PHP з'яўляецца папулярным. Лал іншы. JavaScript, не варта блытаць з Java, гэта зусім іншае. Гэта накшталт шмат. Так што гэта можа быць, вядома, пераважная, як калі б гэты спіс не з'яўляецца ўжо, проста пачаць ведаць, дзе вы пачынаеце. А так, на шчасце, давайце падысці да гэтага з некалькіх пунктаў гледжання. Па-першае, давайце паспрабуем класіфікаваць па меншай меры, некаторыя з гэтых моў на дзве вялікія вёдры, якія нагадваюць размова ў нас быў перапынак перад тым, дзе мы гаварылі пра складанні, і зыходны код, і машынны код, таму што гэта не так, як ўсе мовы працуюць. Такім чынам, мы будзем зрываць некалькі прыкладаў of-- або контр-examples-- да гэтай мадэлі. І потым, чаму б нам не казаць аб прыкладаннях што гэтыя мовы як правіла, выкарыстоўваюцца для. І, шчыра кажучы, нягледзячы на ​​тое, гэта даволі доўгі спіс, гэта толькі частка гэтага спісу, Вы, як правіла, зрабіць з гэтых дзён для вырашэння праблем. Некаторыя мовы з'яўляюцца больш новымі, чым іншыя. У некаторых мовах больш папулярныя, чым іншыя. Так што гэта не так, як у вас ёсць такая невыканальнай задачай перад вамі пры прыняцці рашэння сярод гэтыя розныя мовы. Дык давайце зробім гэта. У нас была раней, зыходны код, і тады мы мелі машынны код. Упс. Даць няправільнае слова. Машынны код. І ў нас быў нейкі працэс у сярэдні called-- ды, кампілятар. Так што кампілятар. І тое, што машынны код на самай справе працуе на ў рэшце рэшт, будзе ваш фактычны CPU. Іншымі словамі, машынны код, я азначаюць самыя нізкія інструкцыі на ўзроўні што працэсар на самой справе разумее. Складанне, адніманне, перасоўванне, захаваць, і такія аперацыі, як гэта. І так гэта мадэль для таго, што як правіла, вядомыя як трансліруюцца мовах. Напэўна, не дзіўна. Так што гэта мадэль для скампіляваных моў. Але аказваецца, што ёсць іншы клас моў называецца інтэрпрэтаваныя languages-- інтэрпрэтаваныя languages-- якія трохі адрозніваюцца. Вы пішаце ў зыходным кодзе, запусціце ім праз перакладчыка, і што перакладчык тое, што працуе на працэсары. Іншымі словамі, што вы не робіце Выпусьціла з'яўляецца тое, што, мяркуючы па ўсім? Машынны код. Нулі і тыя, што працэсар сама ў канчатковым рахунку разумее. Такім чынам, у гэтай першай версіі і Мовы, як C, як мы бачылі, Вы пішаце ў зыходным кодзе гэта крыху аркан, але, па меншай меры, гэта свайго роду ангельскага тыпу і гэта, па меншай меры для чытання як толькі вы абвыкнеце да яго. Вы запускаеце яго праз кампілятар і па-за Вы атрымліваеце, у канчатковым выніку, нулі і адзінкі. Гэта спрашчэннем. Ёсць некаторыя іншыя крокі там. На самай справе, калі вы калі-небудзь чуў тэрмін "мова асэмблера" гэта адзін крок да нулі і адзінкі. Гэта крыху больш зручным для чытання, але ўсё яшчэ даволі аркан. І такім чынам, ёсць прамежкавыя крокі якія, па сутнасці, тут адбываецца. Але выйсце, у канчатковым рахунку, гэтыя нулі і адзінкі. Але ў інтэрпрэтаваныя свет, у якім у вас ёсць Мовы, якія інтэрпрэтуюцца мовы, вы на самой справе прапусціць гэты крок. Іншымі словамі, калі вы пішаце Праграма, вы проста запусціць яе адразу. Вы не кампіляваць яго і затым запусціць яго, як я рабіў раней. Вы проста напісаць і запусціць яго. І калі вы хочаце, каб зрабіць хуткую змену, вы робіце хуткую замену і зноў запусціць яго. Такім чынам, няма ніякага сярэдняга кроку тут. Цяпер для праграмы я ўжо пісаў раней, якая была гэтая праграма "Hello World", Вы маглі б разумна wonder-- або маглі б разумна state-- гэта было не той час спажываючы скласці сваю праграму. Гэта, здаецца, зрабіў гэта так жа, як гэта. І ёсць графічны версіі кампілятараў. Я выкарыстоўваю вельмі містычную версію, але вы можаце ўдарыць кнопку прайгравання і што будзе на самой справе зрабіць падборка для вас. Я склаў праграму, а затым зноў жа, каб запусціць яго, я проста раблю гэта. І гэта выводзіць злева там, "Прывітанне!" Гэта не здаецца ўсё, што цяжкай. Але калі вашы праграмы больш, чым проста адзін, два, тры, чатыры, пяць ліній доўга, гэта можа заняць значна больш секунды для кампіляцыі. Часам нават хвілін або зусім няшмат часу для кампіляцыі. У рэшце рэшт, некаторыя з Найбуйнейшыя сусветныя прадукты такія рэчы, як аперацыйныя сістэмы, Microsoft Word, Microsoft Excel, якія могуць быць сотні тысяч ці нават мільёны радкоў кода доўгіх, і тых, хто не проста неадкладна выканаць. Акрамя таго, у Інтэрнэце, гэта стала модна выкарыстоўваць проста інтэрпрэтаваная мова, збольшага таму, што вы можа ўнесці змены ў якасці распрацоўніка а затым проста неадкладна перазагрузіць старонка браўзэра і Вы адразу ўбачыце вынік. І так HTML, а не мова праграмавання, з'яўляецца мовай, які інтэрпрэтуецца. І мы ўбачылі, што той жа самы эфект ўчора. Вы проста перазагрузіць старонку пасля ўнясення змяненне ў Cloud9 и-- voila-- вы бачыце новы вынік. Так якая розьніца тут? У HTML, нагадаем, у нас быў адкрыты HTML, адкрытая галава, адкрытае назву, назва блізка, блізка галава, з адкрытым кузавам, і гэтак далей. У нас былі ўсе гэтыя тэгі, што мы даволі шмат сказана, паведаміць браўзэру, што рабіць. Эй-браўзэр, вось ідзе старонку HTML. Эй браўзэр, тут прыходзіць назву. Эй-браўзэр, вось некаторыя тэкст, які павінен быць адважным. І тады вы кажаце адваротнае. Эй-браўзэр, гэта ўсё для тлустага тэксту асобы. Эй-браўзэр, гэта ўсё для цела. І гэтак далей. І так, што такое браўзэр? Браўзэр проста перакладчык. Гэта праграма, якая камусьці падабаецца Microsoft або Google напісаў, чыя мэта ў жыцці, каб чытаць мову, вядомы як HTML, і інтэрпрэтаваць яго. Зверху ўніз, злева направа. І ў любы час бачыць браўзэр адкрытым кранштэйн, назва, якая зачыняе дужка, ён павінен інтэрпрэтаваць гэта у тым сэнсе, о, азначае, што я павінен паставіць гэтыя словы шлях тут у верхняй частцы браўзэра. Так што ён проста робіць тое, што кажа HTML-код. Але няма ніякіх нулёў і адзінак. Там няма кампіляцыі. Вы не рабілі гэтага. Браўзэр не рабіў гэтага. Гэта проста не ўдзельнічае. Такім чынам, у духу гэтых працягваюцца Тым, сёння і ўчора, што, здаецца, выдатная асаблівасць. Вы эканоміце свой код, а затым проста запусціць яго ці інтэрпрэтаваць яго. Там няма прамежкавых крокаў. Вядома, ёсць кошт? Не можа быць усё расквітацца. Так што, магчыма, што кошт будзе? ГЛЕДАЧЫ: Space. DAVID J. малая: Space. Так, вядома. У складзеным свеце, у вас ёсць не толькі зыходны код, Вы таксама стварэнне і затым як мяркуецца эканоміі машына code-- нулі і ones-- і гэта павінен заняць некаторы колькасць прасторы. Вы маеце рацыю. Так што гэта варта вам больш прасторы. Так? АЎДЫТОРЫЯ: браўзэры інтэрпрэтаваць па-рознаму. DAVID J. малая: браўзэры інтэрпрэтаваць яго па-рознаму. Гэта дакладна. Але я не ўпэўнены, што я камфортна сцвярджаючы, гэта таму, што гэта інтэрпрэтуецца. Гэта больш толькі таму, што рэалізацыя мовы што само па сабе мае неадназначнасці:. Так што давайце не зусім пацвердзіць што адзін, але добры здагадка. Што яшчэ можа быць расплата? Эндру? ГЛЕДАЧЫ: Ты камбінуючы два крокі, так што вы таму ёсць нарастаючым складанасці, а таксама. DAVID J. малая: The complex-- павелічэнне складанасці, дзе? Для каго? ГЛЕДАЧЫ: Так, у інтэрпрэтатару крок, вы сумяшчаючы інтэрпрэтатар і кампілятар проста даводзячы, мэтай якіх DAVID J. малая: Ах, добра. Як ні дзіўна, гэта, верагодна, крыху прасцей рэалізаваць інтэрпрэтатар, нягледзячы на ​​тое, што, здавалася б, выхад расквітацца гэтага выгоды. Так што, магчыма, праўда. Але гэта збольшага залежыць, як я хацеў бы сказаць, на мове і пра тое, як яны пайшлі аб яго рэалізацыі. Там можа быць нашмат больш складанасці, на самой справе, у кампілятар, толькі таму, што вы павінны ісці ад нешта такога высокага ўзроўню, да чаго-то так нізкага ўзроўню. Але добрая думка. Так што, па-іншаму, скампіляваны праграма, пры ўключэнні ў гэтыя нулі і адзінкі, заканчваецца на мове што працэсар кажа пра тое, у той час як у гэтым баку свет, праграма, якую вы напісалі, код, які вы напісалі, ніколі на самой справе пераўтворыцца ў рэальны мову кампутар кажа. Нулі і адзінкі. Ён застаецца ў арыгінале, больш чалавечых дружалюбным, больш зручным для чытання мовы. Так што можа быць следствам там, калі вы на самой справе не затлумляцца пераўтварэнні Праграма на самай мове што асноўнай кампутар кажа? ГЛЕДАЧЫ: не маглі б зразумець што-то? DAVID J. малая: Магутнасьць то не разумею. І гэта можа claim-- калі ён не зразумеў нешта, што гэта памылка ці адсутнасць прыкметы ў інтэрпрэтатару. Так што было б больш памылка, чым кошт. ГЛЕДАЧЫ: У вас ёсць доступ да зыходнага кода? DAVID J. малая: Там добры. Такім чынам, ніжняя бок тут вы Здавалася б мець доступ. Вы, канчатковы карыстальнік, можа здацца маюць доступ да зыходнага кода. І гэта не заўсёды дакладна. Але гэта праўда, у выпадак JavaScript, які мы разгледзім пасля таго, як перапынак сёння, што гэта інтэрпрэтаваная мова праграмавання што вы пішаце ў зыходным кодзе. Але зыходны код атрымлівае перададзеныя з вашага сервера ў браўзэр і працуе ў браўзэры чалавека. Дык вось яна магла б проста адкрыць акно, як я рабіў у Chrome, і глядзець на яго, як і мы самі зірнуў на ўчора з Google. Гэта можа выглядаць трохі незразумелая, але яна ёсць. Так што гэта абсалютна адна цана, якую плацяць. ГЛЕДАЧЫ: Прадукцыйнасць хіт? DAVID J. малая: Так. І гэта іншая важная персона. Там у падзенне прадукцыйнасці. Таму што ў вас ёсць гэта сярэдні чалавек, які сам па сабе гэта праграма, паміж вамі і цэнтральны працэсар, у адрозненне проста карміць іх сырой нулі і адзінкі ў працэсар, ёсць падзенне прадукцыйнасці, што вам ўзяць з сабой інтэрпрэтаваная мова. Такое, што, адвольна, праграма што можа заняць адну секунду для запуску на кампутары або адным хвілін, каб працаваць на кампутары, тут, можа заняць 10 секунд або 10 хвілін, каб працаваць на кампутары, тут. Гэта, як правіла, не будзе, што вялікая частка difference-- фактару ў частцы 10-- таму што ёсць аптымізацыі вы можаце зрабіць. Але гэта амаль заўсёды больш павольна. Цяпер, адваротны бок гэтай заклапочанасці у тым, што, добра кампутараў, кожны 12 18 months-- ў адпаведнасці з Закон Мура, так speak-- проста становяцца ўсё хутчэй і хутчэй. У мяне ёсць усё больш і больш месца на дыску. У мяне ёсць усё больш і больш аператыўнай памяці. Хто сапраўды клапоціцца? І гэта дабро з разумны аргумент. Сапраўды, адной з прычын, чаму мы можам трываць больш павольна інтэрпрэтаваныя моў, таму што мы, людзі, на самай справе не заўважаюць. кампутары маюць атрымаў проста так па-чартоўску хутка. У той час як яшчэ ў дзень, асабліва калі абсталяванне было значна больш абмежаваным, у вас было менш за ўсё, гэта было значна даражэй так што ўсё каштуюць даражэй, ну а потым вы сапраўды хацелі выціснуць столькі ж прадукцыйнасць, як вы маглі б. Але гэта патрабуецца пісаць у больш нізкага ўзроўню, калі вы будзеце, з кампіляваных мовы. Такім чынам, вы робіце прыняць гэты ўдар па прадукцыйнасці. А наогул, расквітацца як уяўляецца, будзе стаіць у гэтыя дні. Ну, за выключэннем таго, для пытання аб інтэлектуальнай уласнасці. Такога роду чытальнасці кода, мы будзем вярнуцца да таго, калі мы глядзім на JavaScript. Дык давайце паспрабуем класіфікаваць па меншай меры, некаторыя з іх. Такім чынам, сярод кампіляваных моў, мы будзе мець C, C ++, цікавае, Гатункі, Java, хоць гэта крыху выключэнне, для Прычыны я пакажу вам усяго хвіліну. C # будзе ў гэтым спісе. Мы будзем глядзець на больш на проста больш сучасныя мовы. Добра. І гэта, здаецца, як шмат там. У той час як на гэтым баку плота, мы маглі б мець JavaScript і Python, і PHP і Ruby. І ў тым, што дастаткова для пазнейшыя з іх? Гэта адчувае, як шмат цяпер. ДОБРА. І тады кропка кропка кропка, бо спіс можна працягваць бясконца. І на самай справе, калі мы хочам проста атрымаць адчуванне this-- Вікіпедыі, скампіляваныя моў. Я мяркую, што мы можам атрымаць значна больш вычарпальны спіс. Так што тут мы ідзем. Дык вось значна больш вычарпальны спіс. І я спадзяваўся, што хто-то выказаў здагадку бы, D як мова, таму што занадта існуе, але яны спыніліся на D, здавалася б. Нягледзячы на ​​тое, што можа быць на самой справе Е. О, на самай справе, гэта павінна быць у спісе ў гэтыя дні. Swift на самай справе мова, які кампанія Apple вынайшла што ў цяперашні час выкарыстоўваецца, усё больш і больш так, у развіцці iPhone. Але мы вернемся да што з нашай дыскусіі на мабільным тэлефоне ў толькі крыху, а таксама. Так Swift, а таксама. І потым, калі мы ідзем інтэрпрэтаваныя language-- інтэрпрэтаваць language-- то вось яшчэ доўгі спіс, а таксама. Так што калі вы толькі што Google і шукаць у Вікіпедыі для іх, вы ўбачыце ўсе віды моў. Але мэта складаецца ў тым, на сённяшні дзень на самай справе, проста зводзіцца да таго, можа быць, гэта Пытанне інтэлектуальнай уласнасці і чытальнасць канчатковым карыстальнікам і прадукцыйнасць, з'яўляецца яшчэ адным Biggie, а таксама. Так што сярод гэтых моў, дазвольце мне ўбачыць, калі мы можам даць вам толькі некаторыя прыклады моў. Мы не хочам, каб прайсці праз ўсе мовы бясконца. Вы калі-небудзь задаваліся пытаннем, што такое вызначаная мова выглядае? Мы бачылі хвіліну таму. Чаму мы не пара прыкметы запытаў. Хто хацеў бы бачыць, што іншую мову выглядае? Так. ГЛЕДАЧЫ: Java. DAVID J. малая: Java. Добра. Так што давайце вернемся да Java. І як раз, каб даць вам sample-- мы маглі б напісаць усе гэтыя па-за, але было б хутчэй, проста паглядзець на прыклад кода кагосьці іншага. Добра. Так што гэта добры прыклад? Упс. ДОБРА. Так вось версія Java з праграма, якую я пісаў раней, "Hello World". Так Java, вы будзеце часта см "клас." ключавое слова Тады вы ўбачыце некаторы імя пасля гэтага. Вы ўбачыце фігурныя дужкі як мы бачылі раней, а часам яны ідуць на той жа лініі, часам і іншыя лініі, гэта свайго роду асабістае рашэнне. Вы ўбачыце, як ключавыя словы "Грамадскасць", "статычныя", "пустата". Але мы бачылі "асноўныя". "Main", як правіла, імя функцыі па змаўчанні або кавалак па змаўчанні кода, які атрымлівае працаваць у праграме. "Радок". Што мы маем на ўвазе пад радком раней? Я выкарыстаў яго выгляд выпадкова. Радок што? Слова. Гэта як паслядоўнасць знакаў. Асобныя знакі, назад у спіна да спіны, як правіла, у масіве, як мы ўжо абмяркоўвалі. І на самай справе, убачыць гэты сінтаксіс Тут два квадратныя дужкі? Гэта азначае, эй кампутар, тут прыходзіць масіў радкоў. Квадратная дужка абазначэння звычайна выкарыстоўваецца для абазначэння таго, што. І тады вы, верагодна, ўзяць guess--, што робіць гэта выдзелены кавалак кода, верагодна, рабіць? ГЛЕДАЧЫ: Выхад? DAVID J. малая: Так. Ён друкуе нешта на экране. Такім чынам, "сістэма" з'яўляецца свайго роду Спасылка на ваш кампутар. "Out" азначае вашага кампутара выхад або экран. Такім чынам, "System.out.print зав", верагодна, азначае? "Пер." Друк лініі, якую праграмісты, як каб па-відаць, некалькі слоў па літарах з ва ўсёй сваёй паўнаце і прыняць Спалучэння з іншымі словамі. Але "зав" з'яўляецца лінія, так што друк лініі. Так што ён друкуе "Hello World! ", А затым з новага радка. Дык вось яно што. Але Java з'яўляецца тое, што яны будуць аб'ектна-арыентаваны выклік. І на самай справе, проста каб даць пара іншых азначэнняў там, што вы маглі б см, увогуле, шмат розных тыпаў моў, але найбольш распаўсюджаны працэдурныя або імператыўныя мовы. ёсць функцыянальны мовы, якія ня робіць азначае, што іншыя нефункцыянальныя. І затым ёсць аб'ектна-арыентаваныя мовы. І гэта, бадай, самы лепшы катэгарызацыі большасці моў што вы калі-небудзь выбраць для свайго роду тыповага камерцыйнага праекта. Гэта было б занадта шмат, Я думаю, адтуліны пацукі ісці ўніз, каб паспрабаваць растлумачыць розныя адрозненні. але мовы мы ўжо бачылі, такім чынам, far-- C з'яўляецца працэдурным або імператыўны мова. Зусім нядаўна вынайшлі Мовы, як правіла, прабачце, аб'ектна-арыентаваным, што азначае, ў іх ёсць іншыя магчымасці для іх. Ці магу я растлумачыць гэта такім чынам? Давайце не будзем нават туды спускацца. Аб'ектна-арыентаваныя сродкі Вы можаце implement-- Вы можаце змадэляваць рэальны свет трохі больш эфектыўна. Чалавецтва, на працягу доўгага часу, высвятліў, нічога сабе, было б нядрэнна, калі б мой мову меў гэтую функцыю, або гэтую функцыю. І менавіта таму ў нас так многія мовы свету. Разумныя людзі, разумныя людзі, згодны ці не згодныя і нязменна роду прыходзяць разам распрацоўка новых моў ўсе разам. Справа ў кропцы. Apple, вынайшаў Swift ў надзеі меркавана апускання бар для развіцця iPhone, таму што папярэдні language-- называецца Objective-C, якая магла б таксама ў нашым спісе here-- быў нашмат больш заблытанымі, а шмат цяжэй абгарнуць свой розум вакол. І як праграмаванне становіцца магчыма больш даступным і ў больш шырокім сэнсе прынятая людзьмі нават менш тэхнічны, то goal-- гэта вельмі адважная мэта, каб паспрабаваць знізіць бар'ер для выхаду на рынак, зрабіўшы самі мовы прасцей пачаць з, але не менш магутны абавязкова. І адзін іншую мову. Чаму мы не паглядзім на нешта накшталт Python, які вельмі ў модзе ў гэтыя дні. Python. Прыклад праграмы. Пабачым. мовы "Hello World". Давайце зробім гэта. "Прывітанне Сусвет." Давайце паглядзім, калі гэта дае нам добры прыклад. ДОБРА. Так што гэта на самай справе свайго роду забава. Так што калі вы калі-небудзь Google "Hello World", які здараецца, адзін з першых праграм калі-небудзь напісаных на сучаснай мове, гэтак жа, як доказ канцэпцыі, вы можаце ўбачыць усе віды рэалізацый гэтага. Некаторыя з гэтых моў Я нават не чуў. Але вы можаце see-- давайце пяройдзем да Basic, адзін я даведаўся гадоў таму, часткова. Гэта было весела мову, таму што вы павінен быў, як праграміст, нумар усе вашы лініі. Не ў адрозненне ад таго, што я быў рабіць, калі я пісаў псевдокод на жоўтым дакуменце раней для двайковага пошуку, для пошуку ў тэлефоннай кнізе. І так, калі вы хочаце каб перайсці на іншую лінію, вы ў літаральным сэнсе тыпу, перайсці да 10, або ісці да 20. І калі вы пішаце ліній, Канвенцыя павінна была зрабіць, гэта лінія 10, гэта лінія 20, гэта лінія 30, 40, паміж якімі нічога няма, тым самым даючы сабе некаторую пакой калі вы вырашыце, пачакайце хвіліну, Я павінен быў дадаць некаторыя больш кода дзе-небудзь. Вы ўсё яшчэ мелі выгляд дзевяць шанцаў выціскаць што паміж вашай праграмай перш чым давялося ўручную перанумараваць ўсё. Так што гэта накшталт таго, што я маю на ўвазе калі я кажу, што свет прыйшоў з новымі магчымасцямі. Дзесьці па шляху кагосьці зразумеў, хлопчык гэта глупства. Гэта простае стварэньне праца для праграміста. Такім чынам, ён ці яна проста выгляд пабудовы новы пласт па-над, што так што вам не прыйдзецца турбавацца пра што нумары радкоў кода на самай справе на. Так што, калі вы можаце выбраць адзін іншую мову або? Ну, якія з іх мовы вы, як правіла, пачуць пра найбольш свой уласны свет у гэтыя дні? Давайце выпадальны Objective-C таксама. ГЛЕДАЧЫ: C #. DAVID J. малая: C #. Такім чынам, дазвольце мне колер. Ці ёсць у нас іншы колер дзе-небудзь? Так што C #. А што вы ведаеце пра C #? Усё, што вясной на розум? АЎДЫТОРЫЯ: Гэта мова праграмавання. DAVID J. малая: Гэта мова праграмавання. ДОБРА. Гэта дакладна. Такім чынам, мы гаворым пра C #. C #, як правіла, выкарыстоўваецца ў асяроддзях Windows, так што калі вы пішаце праграмнае забеспячэнне Microsoft для Windows, C # вельмі шырока выкарыстоўваецца, ці з'яўляецца гэта для настольнага праграмнага забеспячэння, або нават праграмнае забеспячэнне тэлефона на тэлефонах Windows ,, калі вы мелі тыя, або ў Інтэрнэце, нават занадта. І на самай справе, можа быць, Kareem вышэйзгаданы ASP раней? Так што і гэтыя рэчы, званыя рамкі, які можна ўвесці шляхам пашырэння. Каркасы, як ASP. Падстаўкі для актыўных старонак сервера. І гэта кода і спосаб праграмавання што ў цэлым робіць яго больш лёгкім пісаць прыкладання на аснове вэб. Іншымі словамі, гэта было б супер, супер раздражняе, каб напісаць вэб-сайт на мове З, мы бачылі раней, таму што вы павінны выкарыстоўваць для друку + F, вы павінны выкарыстоўваць гэта ключавое слова "Галоўны" і фігурныя дужкі. Шмат загадкавага сінтаксісу і падыход да рэалізацыі тое, што з'яўляецца даволі складаным. Вэб-старонка. І таму іншыя мовы развіліся каб зрабіць такія рэчы прасцей. І, у сваю чаргу, людзі прыдумалі з рамкамі, накшталт інструментаў што вы можаце выкарыстоўваць, што зрабіць гэта нават прасцей пісаць вэб-старонак. Так, напрыклад, каб зрабіць гэта значна больш канкрэтнае, дазвольце мне адкрыць толькі тэкставы файл на імгненне. І вы маглі б узгадаць ўчора што мы сказалі нешта як гэта вэб-старонка. HTML. Зачыніць HTML. Дазвольце мне прапусціць галаву і проста зрабіць цела тут. Выкажам здагадку, што я хацеў напісаць не "Hello World" але "Прывітанне Дэвід," дзе Дэвід з'яўляецца імя бягучага аўтарызаванага карыстальніка. Нешта накшталт ASP будзе рабіць, або JSP-- які з'яўляецца серверам Java pages-- або любую колькасць іншых структур гэта яны не мовы, само па сабе. Яны так жа, як дадатковае праграмнае забеспячэнне, якое вам усталюе ў сераду што проста зрабіць яго прасцей праграмаваць. Так, напрыклад, замест таго, каб зрабіць нешта накшталт "Прывітанне, Е (" Давід ")" ці нешта, што гэта выгляд са-mingling-- выгляд кода, які мы ўжо бачылі before-- вы маглі б зрабіць нешта значна прасцей, як "імя%." І вось гэтыя рамкі, як ASP-- і I не памятаю, калі я атрымліваю сінтаксіс раз для ASP. JSP з'яўляецца little-- гэта права? Такім чынам, з ASP, гэта свайго роду спецыяльны сінтаксіс што некаторыя распрацоўшчыкі вырашылі гэта можа дапамагчы людзям. І я магу выказаць больш лаканічна запаўняльнікі, напрыклад. Як змясціць значэнне тут, дзе гэтае імя значэнне не N-А-М-Е, гэта нейкая значэнне, якое захоўваецца там. Так што "імя" у гэтым кантэксце, мы маглі б назваць зменную. Алгебра мае зменныя як х і у, і г. Праграмісты выкарыстоўваюць зменныя, якія з'яўляюцца больш апісальны, чым х, у, г, звычайна. Так што "назва" у літаральным сэнсе быць нейкі кантэйнера для памяці нешта накшталт D-A-V-I-D, для майго імя, ці хто астатняе рэгіструецца на вэб-сайт. І так што гэта свайго роду выгоды Вы атрымліваеце з пэўнымі асяроддзямі. Так што C # і нешта накшталт б вельмі ASP звычайна выкарыстоўваецца ў свеце Windows ,, будзь то для свайго працоўнага стала праграмнага забеспячэння або вэб-сервер, асабліва калі вашы серверы ў сваю чаргу, працуе Microsoft Windows і Microsoft IIS-- або Internet Information Сервер, калі я атрымліваю акронім right-- які з'яўляецца вэб-сервер кампаніі Microsoft. Так што іншыя мовы з'яўляюцца людзі, знаёмыя з, ці вы чулі часцей, чым не? ГЛЕДАЧЫ: Я ведаю, што ў Python выгляд папулярны [неразборліва]. DAVID J. малая: Вельмі папулярныя. Так Python тут выкарыстоўваецца вельмі часта у навуковых прыкладаннях і дадзеных навука, дзе ў вас ёсць шмат дадзеных, якія вы хочаце прааналізаваць і вы хочаце выкарыстоўваць мова праграмавання для яго. R, магчыма, звычайна можна выкарыстоўваць для гэтага а таксама, у статыстычным кантэксце. Але Python мае так шмат функцыі, убудаваныя ў сістэму. Так шмат дадатковых бібліятэкі, як людзі кажуць. Бібліятэкі проста наборы кода, што іншыя людзі пісаў, што вы можаце выкарыстоўваць так, што вы не трэба вынаходзіць гэтыя колы. І таму Python вельмі часта выкарыстоўваецца ў навуковых дадзеных прыкладанняў. Але гэта таксама вельмі часта выкарыстоўваецца ў вэб-прыкладаннях. Вы можаце рэалізаваць дынамічны вэб-сайт з дапамогай Python. І дынамічны вэб-сайт, я маю на ўвазе не толькі статычны кантэнт як мы стварылі учора, па проста жорсткае кадаванне ў лацінскім тэксце і іншыя падобныя рэчы, а хутчэй здольнасць увайсці ў сістэму, магчымасць купіць нешта, магчымасць праверыць з каляскамі, ці таму падобнае. Усё гэта патрабуе дынамізму і вас патрэбен нейкі мову, як адзін з іх. ГЛЕДАЧЫ: Ці так Python ёсць свая пашырэнне, падобна таму, як [неразборліва] DAVID J. малая: Ён робіць. Так што ў свеце Python, Django з'яўляецца вельмі папулярны рамкі для Python. WSGI гэта яшчэ адзін механізм, гэта свайго роду адрозніваецца ад гэтага але блізкія па духу. Гэта надбудова, якая дазваляе для запуску кода Python на сэрвэры. Там у other-- так. Так што гэта мы будзем называць рамкі. І гэта крыху злоўжыванні. Гэта больш тэхналогіі вэб-сервера. Але мы будзем трымаць яго простым і пакласці ён у гэтай калонцы, тым не менш. ДОБРА. WSGI. WSGI. Іншы thing-- і на самой справе, хай мне рухацца, што ў сваёй уласнай калонцы, таму што я крычаў на сябе за змяшчаючы іх у тым жа вядро. Давайце пакласці гэта ў сервер асаблівасці, скажам. Гэта не тэхнічны тэрмін. Такім чынам, тут мы маглі б быць WSGI. Там у CGI, які з'яўляецца старэй тэхніка для абслугоўвання да моў як Perl або PHP, або некаторыя іншыя. Зноў жа, я згадаў гэтыя тэрміны ня столькі свайго роду заварваць іх, але так, што калі вы бачыце ім гэта нешта вы проста Google, каб даведацца больш. Там няма ніякага рэальнага соку некаторыя з гэтых рэчаў. Але давайце вернемся да моў. Мы гаварылі пра C #, Python. Што яшчэ вы маглі б выкарыстоўваць для Вэб-праграмаванне ў гэтыя дні? Давайце засяродзімся на тым, што да гэтага часу. ГЛЕДАЧЫ: PHP. DAVID J. малая: PHP. І давайце вернемся да гэтага адзін. Такім чынам, PHP вельмі часта выкарыстоўваецца. PHP, як правіла, атрымліваюць дрэнны рэп. Ён пачынаў як рэалізаваны мова ад людзей, якія, магчыма, не абавязкова лепшыя дызайнеры мовы. І таму вы можаце прачытаць усе віды артыкулаў у Інтэрнэце аб тым, як дрэнна гэта PHP. І, на жаль, гэта праява, у прыватнасці, ад усяго рэлігійныя дэбаты якія ўспыхваюць сярод праграмістаў. І гэта нешта варта мець на ўвазе, з пункту гледжання бізнесу, што гэта вельмі лёгка для тэхнічных спецыялістаў каб усе працавалі са сваімі думкі пра некаторыя рэчы. І гэта не абавязкова азначае, што адзін гарлапаніць мацней за ўсіх або з самым моцным, angriest меркаванне з'яўляецца правільным. Шмат разоў, гэта на самай справе проста не мае значэння. І таму людзі проста спрачаюцца ўсё, іх уласныя прадузятасці або камфорт зоны. І таму вы павінны трымаць што на ўвазе пры прыняцці рашэнне, што якраз таму што хто-то кажа гэта правільны мова для праца, якая можа быць праўдай, але гэта таксама проста можа быць гэта Права мовы ў межах свайго ўласнага майстэрства ўсталяваць або зоны камфорту. Але гэта не дрэнна, але вы павінны разумець, што там можа быць нейкі кантэкст там. Ёсць некаторыя аб'ектыўна няправільныя заявы, як C няправільны мову для выкарыстання у гэтыя дні для рэалізацыі вэб-сайтаў амаль заўсёды. Але гэта не з'яўляецца неабгрунтаваным сказаць, што любы з іх няправільна, што мы кружылі да гэтага часу. PHP прайшоў шмат версій. Такім чынам, мовы, як правіла, маюць версію колькасці, звязаныя з імі. PHP да, я думаю, версія 7 зараз, так што гэта было вакол на працягу досыць доўгага часу. І, як мовы атрымаць новыя, яны часта атрымліваюць новыя магчымасці. Але вы павінны памятаць пра гэта таму што калі ваш сайт быў рэалізавана ў 7-ю версію PHP, але вы спрабуеце запусціць свой вэб-сайт, ці можа быць, вы на знешні запар распрацоўка кода каб нехта іншы, і яны пошце гэта вам ці адправіць яго да вас і яны кажуць, вось, паставіў гэта на вашым вэб-сэрвэры, калі ваш вэб-сервер некалькі гадоў outdated-- Ці гэта Ваш уласны сервер або вэб-host-- яна не можа рэальна працаваць. Такім чынам, гэтыя віды рэчаў, якія хто-то Неабходна мець на ўвазе пры абнаўленні сайта або рэалізацыі яго ў першы раз. Я чуў JavaScript раней. Так JavaScript цікавая адзін у тым, што яно, як правіла, на баку кліента, як мы ўбачым пасля перапынку, які азначае, што ён працуе ў браўзэры карыстальніка. Але вы таксама можаце запусціць JavaScript у гэтыя дні выкарыстоўваючы тое, што называецца Node.js, дзе Node.js ўяўляе сабой механізм для бегу код JavaScript на боку сервера, замест таго, каб выкарыстоўваць Python або PHP, або іншыя мовы. JavaScript асабліва добра падыходзіць для чата прыкладанняў і рэальнага часу прыкладанняў, у той час як PHP не з'яўляецца вялікім мова для рэалізацыі нешта як чат сервер, дзе карыстальнікі Заставайцеся на сувязі з ім пастаянна. PHP з'яўляецца больш візіту мяне адзін раз, каб вярнуцца вынік, а затым націсніце іншую спасылку некаторыя секунд ці хвілін з гэтага часу. У той час як Node.js і JavaScript можа быць выкарыстоўваецца больш для пастаянных злучэнняў. Іншыя мовы, якія вы падазраяце, звычайна выкарыстоўваюцца для вэб-матэрыялу? ГЛЕДАЧЫ: Ці будзе Jquery быць асновай? DAVID J. малая: Добры пытанне. Ні. Я б назваў JQuery бібліятэку, дзе зноў бібліятэка проста куча кода што нехта іншы напісана, што ў цэлым вырашае некаторыя праблемы, якія робіць гэта, спадзяюся, лягчэй для Вас, каб рабіць сваю працу. І дазвольце мне зрабіць адзін прыклад гэта ў кантэксце Інтэрнэту. У кантэксце сетцы ёсць гэтая мова, JavaScript, што мы ўбачым пазней, у якім вы маглі б сказаць нешта накшталт this-- "Document.getElementById". І што ж я называю гэта ўчора? Па-першае, я думаю, быў унікальны ідэнтыфікатар я даў да элемента, які выглядаў як гэта. "P ID =" першы ">", а затым мы мелі як "Lorem Ipsum," і гэтак далей. Так што, калі б я пісаў праграму ў JavaScript, каб нейкім чынам маніпуляваць, змяняць вэб-старонкі, якія мы гулялі з ўчора, Я хацеў бы выкарыстаць гэтую функцыю выдзелена радок кода каб атрымаць гэты канкрэтны фрагмент HTML з маёй старонкі, што канкрэтны вузел, як мы будзем называць яго. Тым не менш, у JQuery, замест напісання гэта, што сырой code-- JavaScript проста з скрынкі, гэта, як вы напісаць it-- вы б замест таго, каб проста сказаць, "# Першы". Гэта эквівалентна. І таму грунтуецца толькі на гэтым вельмі аркан прыклад, тое, што, магчыма, з'яўляецца аргументам для выкарыстання JQuery? Чаму б распрацоўшчык выкарыстоўваць бібліятэку як JQuery, грунтуючыся на гэтым ізаляваным прыкладзе, магчыма? ГЛЕДАЧЫ: Менш кода. DAVID J. малая: Так. Гэта менш кода. Гэта проста хутчэй набраць. контрапункт што ён выглядае страшней. Вы не можаце прачытаць яго злева направа. На самай справе, так як гэта ў асноўным пунктуацыі зараз замест фактычных слоў, Я магу выгляд зрабіць выснову, што "Document.getElementById" атрымлівае элемент з дакумента па яго ідэнтыфікатары. Я сапраўды не магу выкарыстоўваць няма такога Мнемоніка ад гэтай рэчы тут. Так што гэта кампраміс. Там у выдасканаленасці, які прыходзіць часта з выкарыстаннем бібліятэк, асабліва як JQuery. Але рэальнасць такая, JQuery мае выгляд з сталі стандартам дэ-факта, так што практычна любы чалавек гэтыя дзён, хто піша код JavaScript выкарыстоўвае JQuery ці нешта як ён, і больш не піша такая шматслоўныя выразы, як гэта, таму што зноў жа, чалавецтва Як стала вядома, нічога сабе, гэта было свайго роду выпушчаная магчымасць каб зрабіць нашу жыццё прасцей. Такім чынам, людзі робяць іх жыццё лягчэй. Добрае пытанне. Іншыя мовы, каб разгледзець. Я б сказаў, сярод гэтага Спіс Рубін з'яўляецца даволі папулярным. І так у свеце Лал, ёсць рамкі званыя рэйкі, якая вельмі папулярная. Так Рубін на рэйкі з'яўляецца звычайна выкарыстоўваецца выраз. Акрамя таго, у гэтым свеце, хай мяне круг Java для вэб-матэрыялу, дзе ў свеце Java Вы маглі б мець JSP або Java Сэрвлета, якая з'яўляецца агульнай тэхналогіяй. І гэта толькі зноў спосабы выкарыстання што мова ў сервернай асяроддзі. Дык што ж гэта азначае? Калі ў вас ёсць фізічны сервер, вы ў літаральным сэнсе загрузіць праграмнае забеспячэнне вэб-сервера і ўсталяваць яго такім чынам, што ў вас ёсць падтрымка адной з гэтыя рамкі, з дапамогай якіх вы можа, у сваю чаргу, выкарыстоўваць адзін ці больш з гэтых моў. І на самай справе, калі вы зарэгіструецеся як вэб-хостынгу, ці некаторыя з воблака Паслугі, якія мы гаварылі аб ўчора, часта матэрыял проста прыходзіць з Канфігурацыя машыны для вас. Вам не трэба, каб усталяваць гэта ўручную. Але калі вы зрабілі, гэта дзе роля сістэмнага адміністратара, так бы мовіць, уступае ў гульню. Ён ці яна будзе на самой справе такога роду рэчы для вас, або так званыя вэб-майстар часта б гэта для вас. Добра. Любыя пытанні аб некаторых з іх тут? Ці нейкія магчымасці ў усё, каб спытаць аб мовах? Каркасы? Тады дазвольце мне прадставіць толькі адна бібліятэка што таксама вельмі часта ў гэтыя дні. Гэты спіс можна працягваць бясконца. І гэтая бібліятэка з'яўляецца своеасаблівай пачынаюць выпадаць у няласку. Гэта было вакол. ён папулярызаваў Twitter на працягу некаторага часу. А цяпер шмат вэб-сайтаў, шмат распрацоўнікаў выкарыстоўваць яго. Але новыя рэчы прыходзяць , І пастаўляецца разам. Але дазвольце мне даць вам пачуццё што значыць выкарыстоўваць бібліятэку. Такім чынам, яшчэ раз, JavaScript з'яўляецца вельмі папулярны мову. CSS або каскадныя табліцы стыляў, мы казалі аб ўчарашнім дні. Гэта таксама з'яўляецца усюдыісным. Ніхто не робіць вэб-старонкі сёння без выкарыстання HTML і CSS мінімальна. Але гэта не заўсёды лёгка рабіць пэўныя рэчы. І таму дазвольце мне перайсці да getbootstrap.com. Упс. Гэта не так, як мы па літарах. Getbootstrap.com, які збіраецца весці мяне на мэтавую старонку для гэтай бібліятэкі. Такім чынам, яны шчодра патэлефанаваць Самі рамкі, якая гэта свайго роду выгляд справядлівай, але я б да гэтага часу называюць яго больш бібліятэкі, чым асновы. Але гэта толькі даказальна семантыка. Дазвольце мне перайсці праз ўкладку CSS і дазвольце мне перайсці да чаму-то накшталт гэтага. Так Нагадаем, што выглядала нашы формы як учора на Cloud9? Гэта было даволі непрыгожа. Старыя школьныя кнопкі. Я думаю, што кнопка была шэрай ад па змаўчанні. І ўсё было на самай справе адфарматаваны даволі неахайна. Так што калі вы хочаце, каб вашы вэб-формы, каб паглядзець трохі nicer-- дазвольце мне павялічыць тут. І лепш я на самой справе проста значыць вельмі nitpicky эстэтыка. Так зьвярніце ўвагу, як паштовую скрыню там ёсць круглявую прастакутныя куты да яго. Так што гэта трохі чысцей там. Звярніце ўвагу на тое, што слова па электроннай пошце там, пакуль я не пачаць друкаваць а пасля ён сыходзіць. Так што гэта добрая маленькая асаблівасць. Звярніце ўвагу на тое, як рэч выгляд свецяцца прыгожа, што некаторыя з вас гэтага вызваліцца ад вашага браўзэра для, але некаторыя гэта таксама бібліятэкі, код, які іншыя людзі напісана, што дасць вам гэта. Нешта накшталт гэтага дае мне мой пароль. Гэтая кнопка трохі сэксуальней, чым па змаўчанні. Вельмі ў модзе цяпер. З тых часоў прашыўкай 7 або каля таго, свет атрымаў вельмі плоскі, у той час як у свеце, перш чым было шмат ценяў, шмат адлюстраванняў на абразах. Гэтак жа, як у свеце адзення, ёсць модныя тэндэнцыі, якія прыходзяць і сыходзяць. Зараз усе кватэры на тэлефоне. На самай справе, кнопкі на iPhone зараз проста сінія спасылкі. Там не часта нават круглыя ​​кнопкі. Так што гэта проста рэчы, што ўваходзіць і выходзіць з моды, і так гэта тое, як вы маглі б зрабіць больш сучасны выгляд вэб-форму. Кнопкі. Так Bootstrap мае шмат прыгожых кнопак. Так што калі вы хочаце сінія кнопкі, зялёныя кнопкі, сіні, аранжавы, чырвоны. Bootstrap палягчае каб зрабіць гэтыя рэчы. Гэтыя віды рэчаў што вы маглі б абсалютна зрабілі ўчора з дапамогай CSS і HTML, але гэта проста боль у шыі. І таму замест таго, што б Bootstrap значыць вы робіце нешта накшталт гэтага. Калі вы хочаце button-- Аказваецца, гэта з'яўляецца HTML-тэг, мы не выкарыстоўвалі yesterday-- і вы хочаце яго паглядзець як гэты зялёны кнопкі, вы ў літаральным сэнсе проста даць яму клас, які мы сапраўды казалі пра ўчора, з "БТН БТН-поспеху." Чаму гэтыя словы? Twitter, аўтары Bootstrap, прыдумаў гэтыя словы. Яны маглі б назваць ім усё, што яны хочуць. Але тое, што вы атрымліваеце зараз хтосьці на Twitter, у гэтым выпадку, высвятліў, як вы робіце Кнопка выглядаць прыгожа і чысты і зялёны. Яны спакаваныя, што функцыянальныя магчымасці у класе CSS, называецца "БТН" і "БТН-поспех", так што любы з нас можа цяпер выкарыстоўваюць яго нават не думаючы пра гэта. Такім чынам, яны абстрагуюцца паняцце зялёнай кнопкі таму мы не павінны клапаціцца пра рэалізацыі яго самі. Мы можам на самай справе засяродзіцца на рэалізацыі рэчы, якія прадстаўляюць інтарэс для нас. Калі пракруціць ўніз тут. Паведамленні пра памылкі на экране. Часам вы хочаце крыху паведамленне з'яўляцца на верхняй частцы браўзэра. Любы з нас можа зрабіць гэта з некаторымі намаганні, пасля ўчорашняга ўрока, але чаму б вам турбавацца? Вось такая нецікавая эстэтычная дэталь. Давайце стаяць на плечы Bootstrap і хай яны даюць нам такія рэчы, дзе мы ў літаральным сэнсе, каб атрымаць чырвоную скрынку, проста павінны зрабіць пункт Тэг з класам of-- шкада. "BG-небяспека" дасць нам гэта чырванавата скрынка замест гэтага. Зараз давайце вернемся да больш цікавыя рэчы. Калі я вярнуся да пачатку гэтую старонку і перайсці да кампанентаў, Цяпер свет становіцца ўсё больш цікавым. Напрыклад, вельмі часта сустракаецца выпадаючыя меню, як гэта. Гэта было б абсалютным боль у рэалізацыі. І гэта было не так доўга таму мы праграмісты б рэалізаваць гэтыя віды меню з нуля. Але гэта такая агульная парадыгма што бібліятэкі Bootstrap проста даць вам магчымасць, каб зрабіць выпадальнае меню далёка, значна лягчэй. Там няма ні аднаго спосабу зрабіць гэта, але калі я чытаю дакументацыю Я хацеў бы бачыць, што, добра, я павінен выкарыстоўваць гэта HTML, калі я хачу спадальнае меню які паводзіць сябе, як гэта. Сапраўды гэтак жа, давайце пяройдзем да кнопкі выпадальнага. Так што гэта нават спрактыкаваней. Калі я хачу, каб гэта выглядаць як кнопка але гэта маленькі трохкутнік азначае Я павінен націснуць на яго і атрымаць гэта меню, гэта выкарыстоўвае мову, званы JavaScript. І мы ўсе маглі б рэалізаваць гэта ў JavaScript. Але зноў жа, гэта кола Вы не хочаце, каб вынайсці. Вы проста хочаце, каб зняць яго бібліятэка палка для гэтага. Давайце вернемся да нечага як прагрэс бараў. Дык нешта, як гэта крута. Калі вы калі-небудзь бачылі прагрэс бар перамяшчэння па экране, рэалізацыі, якія часта проста значок прадзення. На самай справе, гэтак жа, як і ў бок, хай мне ісці да Ajax-- што гэта? Ajax інфармацыя? Упс. Ajaxinfo. Дазвольце мне запомніць адрас. Там мы ідзем. Так што калі вы калі-небудзь бачылі некаторыя анімацыі у той час як старонка загружаецца, або думаць, або захаваць, або стварыць нешта, вы маглі б бачыць такія анімацыі, як гэтыя. Такім чынам, давайце паглядзім на што-то як гэты тут, і давайце выбраць асноўны колер зялёны, які адчувае сябе свайго роду сяброўскія. Ці магу я націснуць гэта? Прыходзь адзін. ДОБРА. Мы будзем проста ісці з чырвоным, таму што гэта тое, што мы атрымліваем. Дык вось у нас ёсць. Так што калі вы калі-небудзь бачылі гэта на экране, у выніку чаго раптам з'яўляецца, а затым раптоўна знікае, што з'яўляецца тое, што гэта ажыццяўленне гэтага? Ну, гэта проста GIF. G-I-F. І гэта анімацыйны файл, які проста азначае, гэта як коміксу старой школы. Там проста куча розных кадры, якія збіраюцца [заікання] і проста паўтарыць. І гэта ствараючы ілюзія руху. Так як толькі старонка робіцца загрузкі ці рабіць нешта, што робіць праграміст рабіць? Ну, ён ці яна проста хавае гэта малюнак. Так што ўсе бар прагрэс з'яўляецца свайго роду аднайменных кіно вы глядзіце. Ты накшталт не звяртаючы ўвагі на той факт, што гэта на самай справе не робіць нічога, гэта проста рух. А потым, калі гэта зроблена прагрэсуе, яны проста схаваць яго ці выключыць яго. І гэта ўсё, магія што там адбываецца. Bootstrap дае вам нешта крыху спрактыкаваней, у якім вы можаце на самой справе убачыць працэнт, як яна ідзе, але гэта таксама толькі выгляд просты анімацыі. Давайце паглядзім на фінальныя больш складаныя прыклады тут. Нешта накшталт мадальным. Хто-небудзь ведае, што такое мадальнай? Акно мадальнай, як правіла, той, які, як мяркуецца, ўзяць пад свой кантроль на пярэднім плане і перашкодзіць вам рабіць што-небудзь яшчэ. Гэта свайго роду прымушае карыстальніка Увага да сярэдзіны экрана, блакавання іх, як правіла, ад усяго астатняга. Так што, калі я запускаю гэтую дэманстрацыю, у экран, як правіла, становяцца шэрымі. Ну, як мы робім гэта шэры колер? Ну, мы, верагодна, проста змяніў колер фону як мы рабілі ўчора ці нешта ў гэтым родзе. Можа быць, гэта накладанне што напаўпразрыстымі. А цяпер заўважыў, што вы можаце зрабіць модныя рэчы, як гэта. Так што калі вы калі-небудзь націснуць на кнопку і хочаце крыху выскачыць з'яўляцца, вы можаце зрабіць гэта. І так, хто клапоціцца аб all-- да? ГЛЕДАЧЫ: Так што з Bootstrap, каб атрымаць яго ўключыць, гэта так проста, як быццам учора мы зрабілі старонку стыляў CSS? DAVID J. малая: У самай справе. Сапраўды добры пытанне. Дазвольце мне перайсці да пачатку работы. І так. Усё, што вам трэба зрабіць для таго, каб Выкарыстанне Bootstrap па сутнасці капіяваць і ўстаўце гэтыя тры доўгія лініі код у верхняй частцы вашага ўласнага вэб-page-- кіраўнік вашага page-- і вы і працуе. І ёсць розныя спосабы зрабіць гэта, але гэта было б самым простым. Так што карысна пра ўсё гэта? Ну, калі вы не так шмат рэалізатар вэб-сайта але вы спрабуеце яго дызайн, ці вы хочаце падаць каму-то з драцяных каркасе дыяграм, так бы мовіць, або выдачаў за ўсё ў мастака пра тое, што што вы хочаце зрабіць, я, да гэтага дзень, часта ідуць на сайт як Bootstrap, дзе калі I хочаце рэалізаваць something-- як у апошні час на тэрыторыі кампуса мы хацелі рэалізаваць інструмент на аснове вэб-навігацыі каталог курсаў Гарвардскага універсітэта, што робіць яго больш лёгкім для студэнтаў праглядаць курсы і дадаць курсы для спіс пакупак, так бы мовіць, каб збольшага вырашыць, што яны хацелі ўзяць. Я спрабаваў уявіць сабе, для сам, якія інгрэдыенты будзе мы хочам выкарыстаць, каб пабудаваць гэта? Што б карыстацкі інтэрфейс будзе? І толькі гледзячы праз сайт, як гэта ці іншыя падобныя сайты бібліятэк, вы можаце атрымаць натхненне, таму што нічога сабе, Я магу выкарыстоўваць гэты віджэт, і гэты віджэт, і гэты віджэт. І тады сапраўды што праграміст пачынае зрабіць, асабліва ў гэтыя дні ў гэтым больш сучасны свет вэб-праграмавання, гэта праграмаванне становіцца ўсё больш пра падключэнне разам. Сартаванне браць гэта з паліцы, гэта з паліцы, гэта з паліцы, і вы быць разумны каб злучыць усе гэтыя кропкі, але ў канчатковым рахунку, пабудаваць нешта яшчэ раз стоячы на ​​плячах іншых людзей, так што вы не марнуеце у месяц рэалізацыі дурную выпадальнага меню, што на самой справе цяжка зрабіць, калі Вы хочаце, каб працаваць на Chrome, і IE і Firefox, і любы шэраг іншых браўзэраў. Вось чаму ёсць такая багатая Праграмнае забеспячэнне камерцыйных і з адкрытым зыходным кодам прамысловасці, а таксама. ГЛЕДАЧЫ: Ці так Bootstrap абнаўляецца і вы павінны затым абнавіць свае спасылкі? DAVID J. малая: Ён робіць. Ну, так, гэта робіць. Bootstrap ў цяперашні час у версіі 3.3.6. І наогул, што вы б do-- гэта на самай справе варта згадаць. Там у тое, што ў цэлым вядомы як семантычнага кіравання версіямі сістэма ў свеце. Не ўсё гэта робіць. Але калі вы ўжо бачылі нумары версій якія маюць від x.y.z-- Так, напрыклад, першы варыянт праграмы можа быць 1.0.0. Ці, калі гэта вельмі, вельмі бэта або нават альфа-статус, што азначае выкарыстанне на свой страх і рызыка, гэта не сапраўды гатовы да прайм-тайм, Вы маглі б нават пачаць 0.0.1 ці некаторыя такое пазначэнне. Але калі праграма пачынаецца з версіі 1.0, або, што эквівалентна 1.0.0, як правіла, тое, што яны распаўсюджаныя days--, хоць і не з'яўляецца omnipresent-- калі кампанія або індывідуальныя выпраўлення праграміст нейкая памылка ў нейкай частцы праграмнага забеспячэння, якое на самай справе была памылка, якой карэкцыя не павiнна Ўздзеянне на вас all-- гэта не мяняе паводзіны праграмы, ён проста фіксуе нешта што не працуе properly-- вы, як правіла, абнавіць значэнне г ёсць. А гэта значыць, хто-то накшталт Карыма можа проста зайсці ў свой вэб-сайт, слепа змяніць нумар версіі ад версіі 1.0.0 да 1.0.1, захаваць яго, адправіць яго, і ў тэорыі, не павінны занепакоеныя тым, што ён проста зламаныя яго вэб-сайт з-за некаторыя недахоп функцыянальнасці, таму што нешта яшчэ зламаў. У той жа час, калі Я, праграміст ці нейкая кампанія павінны былі зрабіць некаторыя істотныя змена, якое дадае функцыянальнасць, Я мог бы абнавіць нас 1.1.0, таму што я на самой справе змяненне паводзін бібліятэкі. Я даю вам, магчыма, больш функцыянальных магчымасцяў. І, нарэшце, калі б я быў на самай справе карэнным чынам змяніць праграмнае забеспячэнне так, шмат, што яна будзе ламацца шмат карыстальнікаў вэб-сайтаў або прыкладанняў, то я абавязаны, у гэтай мадэлі, абнавіць асноўны нумар версіі таксама, які з'яўляецца крытычным зьмену. Іншымі словамі, я мог бы спыненая падтрымка для тых, хто кроплі ўніз меню. Так што калі вы абнаўленне да 2.0, палова Ваш вэб-сайт можа перастаць працаваць. І гэта свайго роду сігнал супольнасці, як да таго, што удзельнічае ў стварэнні абнаўлення. Добрая магчымасць падняць. Іншыя пытанні? Добра. Ну давайце паглядзім на адзін фінал тэма ў гэтым сегменце праграмавання тэхналагічных стэкаў, а менавіта, звязаныя з мабільным. Такім чынам, у свеце мабільных тэлефонаў сёння Вы have-- і IPADS, і паверхні, і ўсе гэтыя віды з devices-- ў вас ёсць шмат варыянтаў, калі гаворка ідзе аб ажыццяўленні дадатак або вэб-сайт для мабільныя прылады вашага кліента. Так што проста заявіць відавочныя, магчыма, у гэтыя дні, якія платформаў развівацца ў мабільным прасторы? Якія прылады вы можаце захацець падтрымкі з дадаткам або вэб-сайт? АЎДЫТОРЫЯ: Apple. DAVID J. малая: OK. Так што Apple, прылады. Дык гэта азначае, iPhone, і што азначае Ipad, а можа нават і IPod. Што яшчэ? Аліўе? ГЛЕДАЧЫ: Android. DAVID J. малая: Android. ДОБРА. Так што Android тэлефоны, Android таблеткі, Android Market нават брудней because-- і Нават Apple становіцца брудным. У той час як калісьці даўно iPhone быў пэўны памер, і IPad быў пэўны памер, і IPod быў пэўны памер, цяпер у нас ёсць IPad Minis, і тонкі з іх, а таксама iPhone 6 Plus і 6. Гэта становіцца беспарадак. Гэта становіцца Android свет. І я кажу гэта з роду прокатке мае вочы, таму што ад распрацоўшчыка перспектыва, гэта болі ў шыю, калі ў вас няма Стыва Джобса " бачанне абсалютнага кантролю над усімі гэтымі характарыстыкамі. Apple, па-ранейшаму робіць, таму што яны тыя будуюць апаратныя сродкі. Але гэта добрая рэч, калі Я распрацоўшчык праграмнага забеспячэння, проста ведаю, што мой iPhone заўсёды будзе быць такі вялікі, таму што гэта азначае, што я заўсёды ведаю, колькі экран нерухомасці ў мяне ёсць. Так што, калі я хачу паставіць абразок ў верхнім левым куце, гэта збіраецца быць у сапраўды такі ж месца на прыладзе кожнага асобнага кліента. Але ў свеце iPhone 6с і iPhone 6 Вартасці і ў свеце Android тэлефоны, гэта па ўсёй карце. І такім чынам гэта робіць яго больш цяжкім для праграмы рэчы, асабліва карыстацкія інтэрфейсы, таму што цяпер вы павінны пачаць арганізацыю вашы карыстацкія інтэрфейсы адносна, а не абсалютна. І тое ж самае было дакладна ў браўзэрах, і настольныя кампутары, ноўтбукі і на працягу многіх гадоў таму што вы, вядома, маюць розныя памеры экрана. Што яшчэ? Вы можаце мець паверхні, як ад Microsoft. Вы можаце have-- ГЛЕДАЧЫ: Windows Phone. DAVID J. малая: Што гэта такое? ГЛЕДАЧЫ: Windows Phone. DAVID J. малая: Так. Такім чынам, Windows тэлефоны ўсё яшчэ можна знайсці. Выгляд роду BlackBerrys, але яны працягваюць спрабаваць. А потым згусткаў іншых прылад. Такім чынам, па большай частцы, давайце кажуць, што гэта тыя, клапаціцца аб ў дадзены момант. Вядома ж матэрыял кампаніі Apple, вядома, Android рэчы, і сярод Windows, як і на паверхні таблетак здаецца, лавіць на даволі добра. І таму сярод гэтых прылад, калі вы хочаце, каб выкаціць, скажам, мабільнае прысутнасць для вашага кампанія, якія віды праектных рашэнняў вы павінны зрабіць? Ну, мы ўжо казалі у свеце Apple, ёсць па меншай меры дзве мовы якія звычайна выкарыстоўваюцца. Адна называлася што? ГЛЕДАЧЫ: Objective-C. DAVID J. малая: Так. Такім чынам, Objective-C, які з'яўляецца старой. Гэта таксама мова, на якім шматлікія Mac прыкладання па-ранейшаму напісаны ст. Тады іншы новы кліент быў? ГЛЕДАЧЫ: Swift. DAVID J. малая: Swift. І гэта выгляд два, каб ведаць, каб зрабіць уражанне на людзей. Тады ў Android свеце, На якой мове выкарыстоўваць Android? ГЛЕДАЧЫ: C #? ГЛЕДАЧЫ: Java. DAVID J. малая: Java з'яўляецца мова "дзяжурныя". У свеце Windows ,, вядома, мы скажам C # у гэтым выпадку. Так ужо гэта свайго роду раздражняе, таму што вынас для бізнесу ўладальнік або хтосьці проста хоча, каб выкаціць мабільнае прысутнасць? Як, чорт пабяры? Маўляў, калі я хачу, каб падтрымаць даволі шырокая карыстацкая база, Я павінен напісаць, здавалася б, тры асобных прыкладанняў. Адзін у адзін з гэтых моў, адзін у Java, адзін у C #. І нават калі я хачу функцыянальнасць каб быць ідэнтычнымі, гэта не мае значэння. Я да гэтага часу трэба выкарыстоўваць розныя мовы, так як Apple, і Microsoft, і Google ўсе падтрымліваюць розных асяроддзях. І гэта было праблемай на працягу многіх гадоў. Яшчэ ў той дзень, калі людзі выкарыстоўвалі для куплі праграмнага забеспячэння ў кампутарнай краме ў термоусадка скрынкі, вы павінны альбо дасягаць для Mac паліцы, або for-- можа быць, гэта вельмі маленькі Mac shelf-- або больш для Windows паліцы і купіць некаторы праграмнае забеспячэнне. І вельмі часта, не было нават што-небудзь для вас на Mac паліцы. Чаму? Ну, кампаніі, калі 90% вырашылі свету, 95% насельніцтва свету ёсць ПК, то навошта нават рэалізацыі рэчаў на Mac OS? У якасці aside-- ў агульнай складанасці digression-- чаму гэта што Mac здаецца настолькі неўспрымальныя да вірусаў, і чарвякоў, а таксама пагрозы бяспекі? Ці з'яўляецца Apple, лепш у гэтым? Лепш на падтрыманне кампутараў у бяспекі? ГЛЕДАЧЫ: меншую аўдыторыю? DAVID J. малая: Гэта верагодна, тым больш біт да яго. Такім чынам, многія карыстальнікі кампутараў Mac маюць доўгі час сцвярджаў, ой, выкарыстоўваць Mac, вы будзеце застрахаваны ад вірусаў, чарвякоў, і ўсе гэтыя рэчы якія ўжо даўно пакутуюць ПК. Гэта можа быць таму, што кампаніі Apple мае лепшыя праграмісты і яны пішуць лепшае праграмнае забеспячэнне, або аперацыйная сістэма была распрацавана лепш. Можа быць, але, верагодна, няма. Гэта, верагодна, што, калі вы 12-гадовы або 30-то свайго роду седзячы ў сябе дома пісьмовай форме шкоднаснае праграмнае забеспячэнне, каб узяць на сябе свет, які вы збіраецеся пайсці пасля таго, як значна больш мэтавай аўдыторыі. 95% насельніцтва свету, якія маглі б працаваць пад кіраваннем АС Windows ці некаторыя іх варыянты. Такім чынам, ёсць трохі з абодвух бакоў. Але да іх гонару, Apple, да маіх ведаў, сапраўды ня рэкламавалі сябе як больш бяспечным, так як вы проста запрасіўшы драмы, калі вы робіце гэтую заяву, я думаю. Добра. Не ўдаючыся занадта далёка ўніз што, як мы вырашыць гэтую праблему? Ці ёсць у вас купіць ці вы павінны плаціць тры розных людзей развіваць вашыя прыкладання? Вы выбіраеце адзін над іншым? Што павінна накіроўваць вашыя думаю тут вы думаеце? Kareem? Не. Нехта яшчэ. ГЛЕДАЧЫ: Проста прыходзьце з апаратнымі сродкамі. DAVID J. малая: Прыйдзіце з апаратнымі сродкамі? Што ты маеш на ўвазе? ГЛЕДАЧЫ: Для навакольнае асяроддзе. [Неразборліва] DAVID J. малая: Так што гэта праўда. Але вашы кліенты, У той жа час, магчыма, айфонаў, яны могуць мець для Android тэлефонаў, яны могуць мець таблеткі, зробленыя Microsoft. Так як у вас ёсць мабільная стратэгія для ўсіх гэтых розных карыстальнікаў? Здавалася б, што калі гэта будзе каштаваць, скажам, $ 1000, каб зрабіць iPhone дадатак, гэта будзе каштаваць вам $ 2000, каб зрабіць прыкладанне iPhone і Android-дадатак, або $ 3000 таксама падтрымлівае прылады Windows, а таксама. Гэта, верагодна, даволі прыніжэнне, і ён не можа нават лінейная залежнасць, як гэта. ГЛЕДАЧЫ: Калі вы хочаце мець прыкладанне або няма, вы можаце мець адаптыўны вэб-сайт. DAVID J. малая: Добра. ГЛЕДАЧЫ: Ці вы можаце мець роднае прыкладанне. DAVID J. малая: Так. Так што ва ўсім гэтым кантэксце тут, мы гаворым пра тое, што людзі назвалі б родныя прыкладання. Гэта значыць прыкладання, якія напісаны на роднай мове гэтай прылады. Такім чынам, родны Objective-C або Swift код, або ў Java, або ў C #. А гэта значыць, калі вы загружаеце, давайце кажуць Snapchat, папулярнае прыкладанне, або пры загрузцы Facebook для тэлефона, Вы загружаеце альбо версія напісана для вашага iPhone, або напісаныя для ваш тэлефон, або напісаныя для вашай паверхні. Але ёсць альтэрнатыва. Як Аліўе намякаў, вы можаце выкарыстаць HTML 5 замест таго, каб, выкарыстоўваючы тое, што называецца вэб дадатак, у якім вы проста рэалізаваць мабільнае прысутнасць і любыя функцыянальныя магчымасці. Што я маю на ўвазе з дапамогай мабільнага прысутнасці? Як ваш вэб-сайт, які змяшчае патрэбныя кантактная інфармацыя, спіс усіх вашыя прадукты, можа быць, ён мае па крамах кошык, можа быць, вы прадаеце рэчы праз яго. Незалежна ад мэты вашага прыкладання, вы рэалізаваць яго, а не ў Objective-C, або Swift, або Java або C #, але ў HTML 5, які быў мова, які мы глядзелі на ўчора, з JavaScript і CSS. І што прыемна аб тых, тры ў тым, што для іх працы, вам трэба толькі тое, што частка праграмнага забеспячэння? ГЛЕДАЧЫ: Вэб-браўзэр. DAVID J. малая: Вэб-браўзэр. І лепшае, што я ведаю, усе гэтыя прылады пастаўляюцца з вэб-браўзэрамі, так што карыстальнік не павінен ўсталяваць нешта асаблівае. Такім чынам, вы можаце проста сказаць ваш аўдыторыі, вашы кліенты, перайсці да acme.com ў вашым браўзэр, і вы будзеце проста ёсць вэб-на аснове вопыту што да гэтага часу запаўняе экран, але вам не прыйдзецца турбавацца аб усіх гэтыя выдаткі і ўсё гэта складанасці. Але, вядома, там будзе каб быць падвох тут, ці не так? Асабліва, калі я паказваю што пару гадоў таму, самая першая версія Мабільнае прыкладанне Facebook, быў у большай частцы HTML 5 прыкладанняў. І ў іх ёсць, больш у апошні час, перакрываем яго у іншых сваіх прыкладаннях. Дык чаму б вам не адразу хачу сказаць, ну, відавочна, што мы збіраемся зрабіць гэта? Што схаваныя выдаткі могуць быць? ГЛЕДАЧЫ: Прадукцыйнасць. DAVID J. малая: Прадукцыйнасць? Што ты маешь на ўвазе? ГЛЕДАЧЫ: Роднае прыкладанне мае больш высокую прадукцыйнасць. DAVID J. малая: Так што гэта праўда, па некалькіх прычынах. Мы можам спрашчаць адказ. І ўспомніць наша абмеркаванне інтэрпрэтаваныя ў параўнанні са складзеным мовамі. Гэта HTML 5 і з ім, проста каб быць ясна, JavaScript-- звычайна пішацца JS-- і CSS усё інтэрпрэтаваная мова, нават калі толькі JavaScript гэта мова праграмавання. І так у параўнанні з гэтым, што некаторыя з іх складаюцца, па меншай меры, гэтыя three-- Objective-C, Java і C # - гэта, у тэорыі, павінны быць проста хутчэй. Але ёсць іншая рэальнасць for-- ГЛЕДАЧЫ: функцыянальнае? DAVID J. малая: Што гэта такое? АЎДЫТОРЫЯ: функцыянальнае. DAVID J. малая: Функцыянальнасць? Як так? ГЛЕДАЧЫ: Выкарыстоўвайце камеру Выключэнне тэлефона ці нешта. Вы можаце выкарыстоўваць тыя, з браўзэрам. DAVID J. малая: Вы маеце рацыю. яны sec-- ГЛЕДАЧЫ: [неразборліва] DAVID J. малая: Гэта яшчэ адзін добры. Там у асаблівасці, якія прыходзяць з мабільнымі тэлефонамі сёння якія не з'яўляюцца, у адпаведнасці з праектам, для забеспячэння бяспекі Прычыны, даступныя для вэб-браўзэраў. Таму што гэта будзе свайго роду жудасная рэч, калі толькі тады, калі Вы наведаеце google.com, або cnn.com, або любы website.com, што гэты сайт мае права ўключыць на камеру, сфатаграфаваць вас, а затым выкарыстоўваць яго. Але вы не хацелі б выпадковы сайт што вы наведваеце ў першы раз каб мець такую ​​магчымасць. І так, што тэлефон вытворцы звычайна робяць гэта яны проста адмовіць у доступе да такога роду інфармацыі ў браўзэр, які азначае, што вы не можа рэалізаваць камеру. Вы не можаце рэалізаваць паведамлення штуршка, гукавыя сігналы, якія вы атрымліваеце на экране з кароткімі паведамленнямі. І на самай справе, нават GPS з'яўляецца адзіным выглядам са свайго роду даступныя вэб-браўзэраў. Калі вы калі-небудзь, на ноўтбуку або на мабільным прыладзе, пад'ехала нешта накшталт магчыма CNN.com, але і мясцовыя навіны станцыі як правіла, зрабіць гэта, вам будзе прапанавана часта з message-- foxnews.com хоча ведаць сваё месцазнаходжанне. Зацвердзіць або адхіліць. Ну, браўзэр спрабуе атрымаць доступ Ваша інфармацыя GPS з вашага тэлефона. Але, на шчасце Microsoft, і Apple, і Google вырашылі, што адчувае, як гэта карысная сітуацыя, мы хочам, каб Google Maps і іншыя прылады для працы, але мы не хочам, каб паўзці людзей з , Проста дазваляючы любы вэб-сайт, каб зрабіць гэта. Так што давайце свайго роду сустракаюцца на паўдарогі і прапануе карыстачу. Але гэта не абавязкова так з усім абсталяваннем, як камеры і з націскам апавяшчэнняў і да т.п., так што вы, магчыма, прыйдзецца прынесці ў ахвяру пэўныя функцыі. Але прадукцыйнасць таксама. Гэта становіцца ўсё менш прыкметна ў наш час, магчыма, паколькі LTE ўлоўлівае і хутчэй хуткасць інтэрнэту на тэлефонах, але вы можаце выгляд адчуць розніцу. Як вэб-дадатак проста адчувае сябе больш павольна, як правіла, чым роднае прыкладанне, часткова таму што вэб-дадатак па вызначэнні знаходзіцца ў Інтэрнэце. Ён размаўляе з серверамі ў Інтэрнэце. І калі сеткавае падключэнне павольна, нават пракрутка можа быць павольным. Але роднае прыкладанне, ў вас ёсць ўжо папярэдне downloaded-- верагодна, калі вы былі ў сябе дома з крамы прыкладанняў, ці вы па крайняй меры, папярэдне загружаных гэта ва ўсёй яе паўнаце раней, незалежна ад вашых злучэнне speed-- і зараз у вас ёсць усе біты, якія звычайна патрабуецца. За выключэннем, магчыма, некаторыя дадзеныя што прыходзіць з сервера. Такім чынам, гэтыя кампрамісы тут. Там, здаецца, у сярэдзіне Кампраміс, на самай справе. І я думаю, што you-- ГЛЕДАЧЫ: Выкарыстоўвайце дадзеных у аўтаномным рэжыме. У родных прыкладаннях можна [неразборліва] DAVID J. малая: Вы маеце рацыю. Такім чынам, ёсць аўтаномны пытанне, які сапраўды раздражняе калі вы не можаце гуляць у нейкую гульню ці выкарыстоўваць некаторы праграмнае забеспячэнне толькі таму, што вы у склепе дзесьці або ў ліфце. Ураджэнец дадатак з'яўляецца пругкім з большай верагоднасцю, супраць таго, калі ў вас ёсць усе дадзеныя, неабходныя на мясцовым узроўні. Такім чынам, ёсць трэці варыянт тут. І давайце намалюем спектр, як роднае прыкладанне тут і вэб-дадатак тут. І тое, што ў сярэдзіне нешта called-- і я думаю, што вы, магчыма, выкарыстаў слова раней, можа быць? Гібрыдныя прыкладання. І як слова мае на ўвазе, гэта нешта ў сярэдзіне. Гэта свайго роду вэб-прыкладанні і гэта свайго роду роднае прыкладанне. А што гэта значыць? Аказваецца, ёсць frameworks-- выкарыстоўваць тэрмін з earlier-- праграмнага забеспячэння што іншыя людзі пісалі для кожнага з гэтых платформаў. Гэтыя і яшчэ іншыя прылады. На самай справе, дазвольце мне перайсці да PhoneGap, якая з'яўляецца адным з такіх рамак, якія я Adobe мяркуюць, валодае ў цяперашні час. Дазвольце мне перайсці да пачатку работы. Пабачым. Глядзіце, калі я магу ўбачыць спіс інструментаў. Апаратныя сродкі. Прыступаючы да працы. PhoneGap апаратных сродкаў. Пабачым. Апаратныя сродкі забеспячэння доступу PhoneGap. Давайце паглядзім, калі мы зможам знайсці крыху Дыяграмы, якія яны выкарыстоўвалі, каб мець. Гэта на іншым сайце. Карысна гэта? Няма. Гэта збіраецца марнаваць наш час там. PhoneGap апаратных сродкаў. Прыборы. Device API. Не, яны пераехалі яго. PhoneGap. Давайце ў апошні раз зірнуць на гэта і паглядзець, калі я магу паказаць вам. Прыступаючы да працы. Ўсталяваць PhoneGap. Ўсталяваць мабільнае прыкладанне. Давай. Яны рэарганізавалі ўсё. Добра. О, усё ў парадку. Ну, тут мы ідзем. Гэта не ўсё, што павучальна, але гэта тое, што я быў збольшага шукаў. Так PhoneGap з'яўляецца асновай, што вам можна спампаваць бясплатна, што дае вам некаторыя стартавы код, па сутнасці. Так што некаторы код, які яны напісалі што нічога не робіць нічога. Але што гэта дае вам па сутнасці, з'яўляецца эквівалентам прыкладання, якое проста ставіць вялікі прастакутнік на экране карыстача. Ён не ставіць планку URL, падобна браўзэр, ня змяшчае адрас. Ён проста ставіць вялікі прастакутнік. І наладзіць гэты вялікі прастакутнік, пад капотам, на самай справе ісці да acme.com, або, магчыма, m.acme.com, для mobile.acme.com, але карыстальнік не ведае, яны па гэтым адрасе. Усе яны бачаць гэта змесціва вэб-старонкі. Але што прыемна пра гэта істоце гібрыд дадатак з'яўляецца тое, што PhoneGap і іншыя кампаніі даюць вам, яны даюць вам крыху кода у Objective-C або Swift, або трохі кода ў Java, або трохі кода ў C #, і, па сутнасці, усё, што вы павінны забяспечыць мінімальна адрас вашага вэб-прыкладанняў. І тады вы звязвае гэта ўсе разам, і вы ёсць гэта альбо атрымаць доступ да вашых сайт праз Інтэрнэт, ці нават лакальны кэш скапіяваць ўнутры прыкладання, а затым захавайце прыкладанне ў фармаце iPhone, Android тэлефон фармат, фармат паверхні, або любы лік іншых прылад. Вы загружаеце кожнай з гэтых версій ў краме Play Google, у App Store, да Windows Store, і гэтак далей. А цяпер, вы можаце мець усе вашыя гледачы спампаваць сапраўды роднае прыкладанне, хоць вялікая частка кода была напісаны кімсьці іншым, але змест гэтага роднае прыкладанне ўсё родам, як правіла, уласны вэб-сайт. Такім чынам, вы працягваеце пісаць свой вэб-сайт у HTML, JavaScript і CSS. Дык чаму размыццё гэтыя радкі? Чаму гібрыдныя прыкладання гэта свайго роду роднай, але і выгляд вэб-інтэрфейс? Што ўвесь сэнс дадаўшы гэтую складанасць? Я маю на ўвазе, нават да гэтага часу, толькі ад перачытваў гэтую старонку, Прыступаючы да працы кіраўніцтва адчувае, як ў яго ёсць цэлы шмат крокаў для мяне каб зрабіць, перш чым я can-- ГЛЕДАЧЫ: Паўторнае выкарыстанне? DAVID J. малая: Паўторнае выкарыстанне? Што ты маеш на ўвазе? ГЛЕДАЧЫ: З зыходнага кода. Такім чынам, той жа код будзе працаваць на ўсе розныя платформы. DAVID J. малая: Так. ГЛЕДАЧЫ: [неразборліва] DAVID J. малая: Выдатна. Калі часу мала, і калі вы не так ужо шмат developers-- можа быць, у вас ёсць адзін распрацоўшчык і ён або яна, вядома, не ведае, усе гэтыя environments--, вядома, не вельмі добра, і, вядома, не можа праграма ва ўсіх трох адначасова і адправіць тры прадукту ў час, адведзенае для аднаго, вы можаце мець яго ці яе будаваць усе у HTML і JavaScript і CSS, а затым навучыцца маленечкай Крыху пра родных прыкладанняў, Дастаткова проста спампаваць рамкі, як гэта, каб затым загрузіць свой прадукт усе розныя крамы прыкладанняў так што зараз у вас ёсць роднае прыкладанне. Так што здаецца бяспройгрышнай, але зноў жа, каб быць ясна, якія патэнцыйныя дадатковых затрат ці падводных камянёў? ГЛЕДАЧЫ: Прадукцыйнасць? DAVID J. малая: Так. Прадукцыйнасць. Цяжка апісаць словамі. Так што, калі вы проста ўзяць на сябе вера мабільнае прыкладанне, вэб-дадатак будзе звычайна выконваюць больш павольна. Гэта можа выглядаць не зусім дакладна, таму што ў iPhone, а ў Android тэлефонаў, і прылады для Windows, ёсць заўсёды свайго роду знешні выгляд па змаўчанні і адчуваць сябе ўсё з Кнопкі і меню. І кампаніі ў Інтэрнэце, можна паспрабаваць каб наблізіць гэтыя эстэтыкі з бібліятэкамі, як Bootstrap, але user-- праніклівы user-- будзе ведаць, што нешта не зусім прама тут. І гэта нармальна, можа быць, што гэта не мае вялікага значэння. Але праблема прадукцыйнасці абсалютна вялікую справу. Ўласныя прыкладання будуць мець тэндэнцыю толькі быць значна больш гнуткім і, такім чынам, лепш. І так, што ж тады можа быць лепшае з абодвух сьветаў? Калі вы асабліва невялікі кампанія або невялікая група, ў вас няма рэсурсаў распрацаваць прыкладанне паралельна на ўсіх трох платформах, і, шчыра кажучы, адчувае, што гэта дрэнная ідэя ў любым выпадку таму што калі вы раскачаць і на ўсе тры адначасова рэалізаваць, мы павінны былі дададзены некаторыя функцыі або зрабіць што-то па-іншаму, цяпер вы павінны выправіць яе ў тры месцы, а не адзін. Што можа быць аптымальным Стратэгія тут у цэлым, калі рэсурсы і час зацягнуты? ГЛЕДАЧЫ: Проста зрабі гэта на IOS. DAVID J. малая: Гэта не пазбаўлена сэнсу. айфонаў, па меншай меры ў ЗША, супер папулярныя. Android да гэтага часу, здаецца, дамінуе Доля рынку, ва ўсім свеце, у цэлым. Такім чынам, вы не абавязкова прадстаўнік у поўным аб'ёме зямнога шара на гэтым тыдні. Але гэта абсалютна адно рашэнне. Я маю на ўвазе, у універсітэцкім гарадку тут я думаю, што нейкі агідны нумар або працэнт студэнтаў ёсць iPhone'ов і ня Android тэлефонаў. Але за мяжой, гэта свайго роду супрацьлегласць. Такім чынам, Вы самі вырашаеце, на аснове вашай аўдыторыі. Як вы ведаеце, што ваша аўдыторыя? Ну, учора мы даведаліся трук. Вы маглі б спытаць іх. Калі ў вас ёсць аўдыторыя вы можаце адправіць ім форму абследавання. Ці вы маглі б проста рабіць тое, што? ГЛЕДАЧЫ: Google Analytics? DAVID J. малая: Што гэта такое? ГЛЕДАЧЫ: Google Analytics. DAVID J. малая: Google Analytics. Так. Ці яшчэ накшталт тэхнічна, проста паглядзець на свае вэб-серверы часопісаў. Таму што тое, што адбываецца кожны раз, калі браўзэр, няхай гэта будзе наўтбук, настольны кампутар або тэлефон наведаць ваш сайт? Яны пасылаюць, што HTTP загаловак, які паказвае Вы які браўзэр і АС яны выкарыстоўваюць. Такім чынам, можна зрабіць выснову, з высокай ступенню верагоднасці, што ваш дэмаграфічны выкарыстоўвае гэты шлях а затым адрэгуляваць. Таму выкажам здагадку, што гэта непрымальна. Гэта свайго роду дрэнна для бізнесу, калі Android карыстальнікі не могуць купіць нашы фішкі. ГЛЕДАЧЫ: З'яўляецеся Ці вы збіраецца спаганяць плату ці не? DAVID J. малая: Ці з'яўляецца вы збіраецеся даручыць? Так добра, вы атрымаеце тое, што вы плаціце. ГЛЕДАЧЫ: Ці з'яўляецца ваша прыкладанне збіраецца быць свабоднымі ці няхай гэта будзе gonna-- DAVID J. малая: OK. Так што, можа быць, вы маглі б акупіць Выдаткі Такім чынам, или--? АЎДЫТОРЫЯ: Я прачытаў даследаванне, калісьці сказаў, што Чым больш карыстальнікаў Apple, плаціць за прыкладання versus-- DAVID J. малая: Гэта праўда таму што яны ўжо плаціць больш для сваіх прылад. Такім чынам, не з'яўляецца неабгрунтаваным здагадка. ГЛЕДАЧЫ: [неразборліва] DAVID J. малая: OK. Так што, калі яны больш гатовыя плаціць, то да чорта з Android карыстальнікаў. Яны не збіраюцца плаціць нам што-небудзь у любым выпадку. Мы маглі б таксама засяродзіць нашы прыярытэты, па меншай меры, на працягу першых некалькіх месяцаў ці год, на IOS. Цалкам разумным. Што больш змястоўны стратэгія, чым гэта? Maybe-- што гэта такое? ГЛЕДАЧЫ: [неразборліва] DAVID J. малая: Больш expensive-- так што, магчыма інвеставаць больш in-- ісці наперад. ГЛЕДАЧЫ: Так. Проста мабільны вэб-сайт. DAVID J. малая: Дык што рабіць мабільны вэб-сайт і не нават думаць пра гэту складанасці. Ці, можа быць разумнай стратэгіяй, які нават Facebook ўзяў, будзе пачынацца з гібрыдным дадатак, таму што гэта не што значна цяжэй зрабіць гэта, чым гэта. Вы проста павінны прачытаць некаторыя дакументацыя і высветліць, як каб загрузіць рэчы ў App Store. Так што, можа быць, вы пачынаеце з гэта, так, што ў адзін дзень, Вы можаце падтрымаць усіх карыстальнікаў. А потым, гэтак жа, як Facebook і іншыя кампаніі зрабілі, калі ў вас ёсць рэсурсы, ў вас ёсць людзі, чаму б вам не паўторна рэалізаваць проста прыкладанне IOS. У вас яшчэ ёсць сёе-тое для ўсіх, нават калі гэта найнізкае вопыт можа быць, з гібрыдным дадаткам. Але вы можаце паступова раскачаць і замяніць кароткі тэрмін меры гібрыдных прыкладанняў з вашыя болей родныя прыкладання. ГЛЕДАЧЫ: Але гібрыд дадатак, якое вы будуць мець доступ да мабільных функцыямі? DAVID J. малая: Не абавязкова. Так што, можа быць, вы зробіце свядомае рашэнне на ранняй стадыі, Вы можаце толькі загрузіць фатаграфіі па маршруце прыкладанне для iPhone роднай Facebook, але не на прыкладання для Android, на пачатковым этапе, напрыклад. І гэта крыху белай хлусні, таму што вэб-прыкладанні маюць больш абмежаванняў чым гібрыдных прыкладанняў аказваецца , І калі мы чытаем дакументацыю для PhoneGap і да таго падобнае яму, людзі прыдумалі спосабы каб даць вэб-прыкладанням Доступ да камеры, да таго часу, як вы карыстаецеся гібрыднае прыкладанне. Як гэта працуе? паколькі гібрыд дадатак, па вызначэнні, мае трохі кода ў Objective-C, і Swift, а таксама Java, або ў C #, ён можа атрымаць доступ да абсталявання. Не абавязкова ўсе, але гэта можа вельмі добра быць так, што ў вас ёсць дастаткова, каб атрымаць доступ у камеру, нават для Android платформаў, для Напрыклад, у гэтым надуманы прыклад. Любыя іншыя пытанні? Добра. Чаму мы не бярэм нашы 15-хвілінны перапынак тут. Мы рэзюмэ ў тры з канчатковым паглядзець на вэб-праграмаванне, базы дадзеных, і Javascript.