ZAMYLA ચાન: સારું, અહીં આપણે છે, છેલ્લા પી સેટ CS50 માં. ધરાવતી પોતે અભિનંદન અત્યાર સુધી આવી તમારા પ્રથમ હેલો થી વિશ્વોની અને પ્રિન્ટિંગ ઉપર મારિયો પિરામિડ. તમે છેલ્લા અઠવાડિયે એક વેબસાઇટ કરી હતી. અને અમે અન્ય એક કરી રહ્યા છીએ આ અઠવાડિયે, એક તમે માટે પરવાનગી આપે છે ચૂંટવું, હાર્વર્ડ કેમ્પસ આસપાસ ડ્રાઇવ CS50 સ્ટાફ સભ્યો અને તેમને પાછા લાવવામાં તેમની રહેણાંક મકાનો. હવે, છેલ્લા અઠવાડિયે આપણે, PHP માં કામ કર્યું હતું સર્વર બાજુ ઓનલાઇન. આ પી સેટ માટે, અમે રજૂઆત કરી રહ્યાં છો એક છે જે જાવાસ્ક્રિપ્ટ, માટે ક્લાઈન્ટ બાજુ ઓનલાઇન. તેથી આપણે કેટલાક પર એક નજર માટે પૂરી પાડવામાં આવેલ છે કે વિતરણ કોડ આ પી સેટ બદલ. આ જાવાસ્ક્રિપ્ટ ફોલ્ડર, ત્યાં કરશે જાવાસ્ક્રિપ્ટ ફાઈલો સમૂહ છે. એક સમાવે છે buildings.js છે, હાર્વર્ડ આસપાસ ઇમારતો એરે તેમની માહિતી સાથે કેમ્પસ અને સ્થાન. Houses.js હાર્વર્ડ ઝાકઝમાળ છે સાથે રહેણાંક મકાનો તેમના અક્ષાંશ અને રેખાંશ. Passengers.js ઝાકઝમાળ સમાવે મુસાફરો, આ CS50 સ્ટાફ સભ્યો તમે પાછા લાવવામાં આવશે કે તેમના રહેણાંક મકાનો. ઘણો સમાવે છે Math3D.js, આ આંદોલન સાથે કરવા માટે કાર્ય કરે છે. તમે ગાણિતિક દિમાગનો છો, તો પછી હું તમને એક નજર સ્વાગત છે. પરંતુ તમે સમજવા માટે જરૂર નથી ત્યાં બધું. Shuttle.js, કે સાથે વહેવાર શટલ આંદોલન. અને index.html હોમ પેજ છે જ્યાં બધું ખરેખર થાય છે કે જ્યાં વપરાશકર્તા સાઇટ સાથે સંપર્કમાં આવવાની છે. Service.css આ સીએસએસ શૈલી પત્રક છે, જે ટ્વિટર ઉપરાંત બુટસ્ટ્રેપ લાયબ્રેરી, નિયંત્રણો કેવી રીતે index.html દેખાવ. અને પછી અમે service.js, કે જે માટે સેવા કાર્યો સમાવે શટલ. અને અહીં તમે કરી રહ્યા છીએ જ્યાં માટે શું માતાનો કેટલાક ભરતા. હવે આપણે વસ્તુઓ પર એક નજર કરીએ અને જાવાસ્ક્રિપ્ટ સમૂહનો એરે, જે, તમામ ઇરાદાઓ અને હેતુઓ માટે, વિનિમયક્ષમ છે. હું એક પદાર્થ એક ચલ બનાવવા માગતા હતા હું એક લાકડી કરશે કહેવાય તે જાહેર. અને તે સર્પાકાર કૌંસ અંદર, હું છો સ્પષ્ટ, કોર, લાકડાની શૃંગાશ્વ છે ચેરી છે, અને લંબાઈ 13 છે. હવે, હું પણ કિંમતો ઍક્સેસ કરી શકો છો નો ઉપયોગ કરીને વસ્તુઓ સમૂહનો એરે નોટેશનમાં. તેથી લાકડી ઇન્ડેક્સ કોર, હું સેટ કરી શકો છો કે શૃંગાશ્વ સમાન, અથવા હું જરૂર છે કે તપાસ કરો. અથવા હું કોઈ ઓપરેટર ઉપયોગ કરી શકો છો wand.wood ચેરી સમકક્ષ હોય છે, અને તેથી અને તેથી આગળ. તેથી તમે જુઓ છો તે સમૂહનો એરે અને જાવાસ્ક્રિપ્ટ વસ્તુઓ હશે આવે છે વિનિમયક્ષમ છે, અને ઇચ્છા તદ્દન હાથમાં આવે છે. તો પછી અમે ઇમારતો ઝાકઝમાળ જોવા buildings.js માં, ફરીથી, વસ્તુઓ પણ દર્શાવે છે. હું શ્રેષ્ઠ ઝાકઝમાળ બનાવવા માગતા હતા પછી હાર્વર્ડ કેમ્પસ પર ઇમારતો, નીચે પ્રમાણે હું તે કરી શકે છે. આ પદાર્થ સંકેત ઉપયોગ કરી રહ્યા છે, જ્યાં હું રુટ, નામ, સરનામું સંગ્રહ, દરેક માટે અક્ષાંશ અને રેખાંશ એક મકાન પદાર્થ. માતાનો ઝડપથી ચલો વિશે વાત કરો જાવાસ્ક્રિપ્ટ. PHP, જાવાસ્ક્રીપ્ટ ચલો જેવું નબળું અથવા ઢીલી લખ્યો છે. એક સ્થાનિક ચલ બનાવવા માટે, તમે પૂર્વગ વી એ આર, વાર સાથે ચલ નામ. હવે, જાવાસ્ક્રિપ્ટ, કાર્યો કરશે ચલો અવકાશ મર્યાદિત કરે છે. તેથી જો તમે અંદર એક સ્થાનિક ચલ હોય તો એક કાર્ય, તો પછી અન્ય કાર્યો તે ઍક્સેસ કરી શકતા નથી. પરંતુ સી જેમ નહિં પણ, આંટીઓ અને શરતો નથી એક તક ચલ મર્યાદિત કરે છે. તમે ની અંદર જાહેર તેથી તો પણ શરત, સમગ્ર કાર્ય કરશે તે વપરાશ હોય છે. હવે, var વગર ચલ વૈશ્વિક હશે. તમે માત્ર નામ જાહેર અને તેથી જો કિંમત સોંપી છે, પછી તે ચલ વૈશ્વિક ચલ હશે જાવાસ્ક્રિપ્ટ. હવે, ઘરો, અમે એક સમૂહનો છે યજમાન પ્રકાર પદાર્થો છે, કે એરે જ્યાં દરેક ઘરમાં માત્ર એક અક્ષાંશ છે અને રેખાંશ. પછી અમે મુસાફરો છે એક વ્યૂહરચના છે કે જે એરે, ઑબ્જેક્ટ પ્રકાર પેસેન્જર કુલ. તેથી દરેક પેસેન્જર વપરાશકર્તા છે , એ નામ, અને એક ઘર નામ. હું પ્રકારની કહી રહ્યો છું નોંધ કરો કે ખરેખર માત્ર અર્થ એ થાય કે જે પેસેન્જર, દરેક પદાર્થ છે કે જ કી કિંમત જોડીઓને. તેથી પ્રકાર પેસેન્જર દરેક પદાર્થ છે વપરાશકર્તા નામ, એ નામ, અને એક ઘર. તેથી શું અમે જરૂર છે પી સેટ માટે છે? વેલ, અમે વપરાશકર્તાઓ પસંદ કરવા માટે પરવાનગી આપે જરૂર સ્ટાફ સભ્યો સુધી, તમામ દર્શાવે છે હાલમાં છે કે સ્ટાફ સભ્યો અમારા શટલ, અને તેમને બંધ છોડો. અને પછી અમે પણ વધારાની વિશે વાત કરીશું માટે અમલ કરી શકાય છે લક્ષણો શટલ પી સમૂહ. પરંતુ પ્રથમ દુકાન વિશે વાત કરો. CS50 સ્ટાફ ની ચહેરા કરવામાં આવી છે , બધા કેમ્પસ પર મૂકવામાં આવ્યા છે, જ્યાં દરેક ચહેરો સ્થળ ચિહ્ન તરીકે લાગુ પાડવામાં આવે છે 3 ડી પૃથ્વી પર, અને એક તરીકે આ 2D નકશા પર માર્કર. વપરાશકર્તા દુકાન ક્લિક કરે તેથી જ્યારે બટન, અમે નજીકના ઉમેરવા માંગો શટલ મુસાફરો. અને અમે પણ તેમના સ્થાને દૂર કરવા માંગો છો જગતથી ચિહ્નિત કરો અને દૂર તેમના નકશા પરથી માર્કર, સૂચવે છે કે તેઓ હવે અમારી શટલ છો. તેથી અમે કેવી રીતે શોધી તો મુસાફરો અમારા શટલ મયાદામાં છો? વેલ, આ કાર્ય અંતર, તેથી shuttle.distance, પાંચ પસાર અક્ષાંશ અને રેખાંશ, ગણતરી કરશે વર્તમાન સ્થિતિ થી અંતર બિંદુ શટલ કે તમે તે આપવામાં સાથે સ્પષ્ટ અક્ષાંશ અને રેખાંશ. તેથી તમે ગણતરી માટે આ ઉપયોગ કરી શકો છો આ માટે શટલ થી અંતર મુસાફરો. પરંતુ તમે કેવી રીતે ખબર નથી કે જ્યાં મુસાફરો છે? અમે પડશે જ્યાં સારું, તે છે આ રચના કાર્ય ફેરફાર કરો. સ્થળો સ્ટાફ બધા સભ્યોને રચના દુનિયામાં મુસાફરો માં અને નકશા માં નથી, પરંતુ તેમના સ્થાન સ્ટોર કરે છે. તેથી કદાચ તમે સ્ટોર કરી શકો છો તેમના ગુણ અને માર્કર્સ મૂકો કેટલાક વૈશ્વિક એરે. હવે, પહેલેથી વૈશ્વિક એરે છે મુસાફરો પાસેથી માહિતી સ્ટોર કરે છે. આ મુસાફરો એરે સ્ટોર્સ દરેક પેસેન્જર નામ અને તેમના ઘર. તેથી કદાચ તમે થોડા પરિમાણો ઉમેરી શકો છો ત્યાં પેસેન્જર વસ્તુઓ છે. અમને મુસાફરો બધા શોધી કાઢવા માટે સહાય અમારા મયાદામાં આ બધા દ્વારા શટલ, ચાલો લૂપ મુસાફરો એરે મુસાફરો. જાવાસ્ક્રિપ્ટ એક માટે લૂપ જોવા શકે જેવી જ આ કંઈક, સી માં આંટીઓ માટે તે અથવા આપણે એક ઉપયોગ કરી શકો છો માટે, લૂપ માળખું માટે વૈકલ્પિક એરે વાર હું જ્યાં હું હજુ પણ હશે ઇન્ડેક્સ, પરંતુ તમે જરૂર નથી પાંચ array.length સ્પષ્ટ શરત અને હું + +. દરેક પેસેન્જર સ્થાન છે તેમના સ્થાને માર્ક દ્વારા આપવામાં આવે છે. પરંતુ જગ્યાએ ચિહ્ન નથી અક્ષાંશ અને રેખાંશ. અમે દ્વારા તે પરિમાણો વાપરવા માટે છે વિચાર ઉપયોગ કરીને, ભૂમિતિ મેળવવામાં પછી સ્થળ ચિહ્ન પર ભૂમિતિ, અને અમે મેળવવામાં, ભૂમિતિ છે એક વખત પાંચ અક્ષાંશ અથવા રેખાંશ ક્યાં તે કાર્યો મદદથી. તેથી હવે અમે કે શું શોધવા માટે કેવી રીતે મુસાફરો અંદર છે અમારા શટલ ની શ્રેણી. અમે તે મુસાફરો છે, એટલે હંમેશાં પડશે છે કે જે કોઈપણ મુસાફરો ઉમેરવા માંગો કે શ્રેણી અંદર. અમે તેમના પર હોપ અને લેવા માટે પરવાનગી આપવા માંગો છો એક અમારા શટલ પર બેઠક છે, પરંતુ માત્ર અમે તેમને પૂરતી જગ્યા હોય છે. આ shuttle.seats એરે સૂચવે કરશે બેઠકો ખાલી છે, અથવા કે નહીં જે કે બેઠક છે. તેથી એક બેઠક ખાલી, તો પછી જો કે બેઠક નલ હશે. તેથી બેઠકો એરે પર ફરી વળવું, સ્ટોર, ખાલી બેઠકો માટે ચકાસણી તમે ત્યાં સુધી તે બેઠકો માં મુસાફરો કોઈ વધુ ખાલી બેઠકો નથી. અને કમનસીબે, અન્ય કોઇ મુસાફરો આ માટે રાહ જોવી પડશે આગામી સમય શટલ નીચે આવે છે. તેઓ શટલ પર વિચાર કરી લો, અમે માંગો છો પડશે તેની જગ્યાએ ચિહ્ન દૂર કરવા માટે જે 3 ડી વિશ્વમાં તેમના ફોટો છે. હું એક જગ્યાએ ચિહ્ન પી દૂર કરવા માગતા હતા, તો પછી હું બધા લક્ષણો મળી જશે મારા પૃથ્વી પરથી, ગૂગલ અર્થ પ્રમાણે, અને પછી તે ચોક્કસ સ્થળ દૂર પાંચ removeChild કાર્ય ઉપયોગ કરો. પછી છેલ્લે, ચાલો માર્કર દૂર કરો, કોઈ પણ માટે 2D નકશા પર ચિહ્ન, અમે તેજી છે કે પેસેન્જર. એક માર્કર મીટર દૂર કરવા માટે, પછી હું પડશે માત્ર m.setMap નલ ચલાવો. શ્રેણી અંદર કોઈપણ મુસાફરો માટે આ શું, અને તમે દુકાન પૂર્ણ કરી. ચાર્ટ કાર્ય બધા પ્રદર્શિત કરીશું છે કે મુસાફરો તમારા શટલ, અને ખાલી બેઠક ખાલી છે. તેથી ચાર્ટ પર ફરી વળવું જોઇએ shuttle.seats, પાંચ પ્રદર્શિત દરેક અનુક્રમણિકા માટે મુસાફરોની માહિતી, અને ખાલી બેઠક કે ઇન્ડેક્સ નલ છે. હવે એચટીએમએલ લખાણ એ ની અંદર મૂકવામાં આવે છે તો જાવાસ્ક્રિપ્ટ ચલ, તો પછી ઉપયોગ કરીને document.getElementById, ચાર્ટ કરી શકો છો આપેલ છે કે જે આંતરિક HTML ને સંપાદિત આઈડી તત્વ આ કરવા માટે HTML લખાણ document.getElementById આંતરિક એચટીએમએલ ચલ. આ વપરાશકર્તાઓ ડ્રોપ બંધ બટન ક્લિક કરો index.html, તે કહી શકશો dropoff કાર્ય કરે છે. અને તે અમલમાં અમારા કામ છે. Dropoff, અમે કોઈપણ દૂર કરવા માંગો છો પડશે શટલ થી મુસાફરો તો જ અમે તેમની ગંતવ્ય શ્રેણી છો, તેમના રહેણાંક મકાન છે. તેથી dropoff કે કેમ તેની તપાસ કરવા માટે હોય છે શટલ પાંચ કોઇ શ્રેણી છે ઘરો, અને જરૂરી દૂર શટલ થી મુસાફરો. અમે છો તેથી અમે કેવી રીતે તપાસ કરી શકું કોઈપણ હાઉસની શ્રેણીમાં? ઠીક છે, પણ ફરીથી, અમે ઉપયોગ કરી શકશો માં પસાર, કાર્ય shuttle.distance આ બોલ પર કોઈ ના અક્ષાંશ અને રેખાંશ અમે સામે ચકાસણી કરી રહ્યા છીએ છે. પરંતુ તે પોઇન્ટ શું છે? વેલ, આ ઘરો અરે, તમને યાદ હોય તો houses.js માં, સ્ટોર્સ દરેક ઘરની અક્ષાંશ અને રેખાંશ એક સમૂહનો એરે, જ્યાં દરેક ઇન્ડેક્સ કે ઘરની નામ છે. પછી મુસાફરો દૂર કરવા માટે - સાથે સાથે, અમે શ્રેણી છો તો જ તેમના તેઓ પર જાઓ કરવા માંગો છો ઘર. તેથી ફરી યાદ રાખો કે મુસાફરો ઘરમાં સંગ્રહ કરે છે કે જે દરેક પેસેન્જર માટે જવા માંગે છે. તેઓ મયાદામાં છે તેમના ઘર, તો પછી અમે તે દૂર પડશે shuttle.seats અને સેટ પરથી પેસેન્જર null માં એરે તેમના સ્થાન. હવે આપણે કેટલાક વધારાના લક્ષણો વિશે વાત કરો કે માં અમલ કરી શકાય છે આ CS50 શટલ પી સમૂહ. એક બિંદુ સિસ્ટમ છે જેમાં તમે સાચવી રાખે કેટલા વપરાશકર્તા છે નિર્દેશ કરે છે. મુસાફરો બોલ છોડી દેવા માટે સફળતાપૂર્વક, તેઓ પોઈન્ટ મેળવી શકો છો. પરંતુ બંધ મુસાફરો છોડો પ્રયાસ જ્યાં કોઈ પણ ઘર નજીકના નથી, સાથે સાથે, તેઓ તે માટે દંડ કરી શકો છો. તેથી કદાચ તમે ટ્રેક રાખવા માંગો છો વૈશ્વિક ચલ માં નિર્દેશ કરે છે. તમે કદાચ ટાઈમર, અમલ કરી શકે છે વપરાશકર્તા ચોક્કસ રકમ ધરાવે છે બનાવ્યો અને એક બોલ છોડો સમય મુસાફરોની સંખ્યા. કદાચ આ સંકલિત બિંદુ સિસ્ટમ સાથે. અથવા તમે જેમ કે ચાર્ટ ફેરફાર કરી શકો છો મુસાફરો હાઉસ દ્વારા અલગ પાડવામાં આવે છે. તેથી તે કદાચ એક પ્રકારના છે shuttle.seats માટે કામ કરે છે. તમે ફ્લાઈંગ લક્ષણ અમલમાં મૂકી શકે છે, જ્યાં વપરાશકર્તા Konami ઇનપુટ્સ જો કોડ અને પછી શટલ બોલ લિફ્ટ જમીન અને શટલ ઉડી શકે છે. પરંતુ બોલ સુરક્ષિત ડ્રોપ માટે, શ્રેષ્ઠ બનાવવા માટે શટલ પર તેના વ્હીલ જમીન પ્રથમ જમીન. તમે પણ teleportation અમલમાં મૂકી શકે છે, તમે યાદી નીચે ડ્રોપ કરો જ્યાં index.html ઇમારતો. અને તે એક છે, જે પસંદ વપરાશકર્તા માટે પરિવહન કરવામાં આવશે કેમ્પસ પર ઇમારત. બરાબર છે, જોકે, પસાર કરવા માટે કેટલાક દિવાલો ત્યાં તમારી રીતે પર ઇમારતો. તમે પણ ની ઝડપ બદલી શકો છો શટલ, વપરાશકર્તા વૃદ્ધિ કરવામાં મદદ મળી અથવા ઝડપ ઘટે છે. કદાચ તમે વૈશ્વિક ચલ કરવા માંગો છો કેટલી બળતણ પાંચ સાચવી રાખે શટલ ઘટી છે તે તમને સાથે જાઓ. તમે શૂન્ય ફટકો એકવાર, જોકે, આ શટલ તમે છે જ્યાં સુધી ખસેડવા માટે સમર્થ હશે નહિં કદાચ એક બટન નો ઉપયોગ કરીને, અથવા, refueled તમારા પોતાના ગેસ સ્ટેશન બનાવે છે. પરંતુ તે ચોક્કસપણે નથી સંપૂર્ણ યાદી. સંપૂર્ણ માટે સ્પેક તપાસો યાદી જોવા માટે, અથવા કદાચ પ્રસ્તાવ તમારા તમારા ટીએફ માટે પોતાના. આકાશમાં મર્યાદા છે. આ તમારા છેલ્લા CS50 પી સમૂહ છે, તેથી તેની સાથે મજા છે. આ CS50 શટલ હતી. હું કહેવા મળી છે, તે એક આનંદ રહ્યો છે આ સાથે આ તમારા માટે બનાવે છે પ્રોડક્શન ટીમ. અને હું તમે કરેલા આશા છે કે સાથે સાથે, પણ ભોગવે છે. મારું નામ Zamyla છે. અને આ CS50 હતી.