[સંગીત વગાડવાનો] ડેવીડના MALAN: આ CS50 છે, અને આ અઠવાડિયે આઠ શરૂઆત છે. અને અમે આવકારવા માટે ઉત્સાહિત છીએ બેક, મોટું આશ્ચર્ય, CS50 પોતાના રોમન Galvan, કરવામાં આવી છે જે વધતી વરિષ્ઠ છેલ્લા કેટલાક મહિના ગાળ્યા LA માં જુલાઈ થી, હોલિવુડ, શાબ્દિક એક નવા ટીવી પર કામ કોલોની કહેવાય શો, જે સર્જક ખરેખર એક હાર્વર્ડ ફટકડી પોતે છે. અને તેથી અમે આ જોવા માટે ખૂબ જ ઉત્સાહિત છીએ યુએસએ નેટવર્ક આ જાન્યુઆરી પર પદાર્પણ. તેથી તે માટે સંગીતમય રહો, અને અઠવાડિયા માટે વધુ રોમન આવે છે. અંત નજીક છે કે હવે ખબર. અને આ શું અર્થ થાય છે ત્યાં નથી કે છે કે બધા જ કહેવું ઉદાસી, CS50 બાકી. અમે હમણાં જ ત્રણ સમસ્યા હોય સેટ છે left-- સમસ્યા છે કે જે six-- સુયોજિત તમારા હાથ હવે અથવા ટૂંક સમયમાં થશે પછી જ છે સપ્તાહના આ પુલ કારણે આદેશ વાક્ય છે, જ્યાં અમારી વિશ્વોની અમે ઉપયોગ અમારા સમયના સૌથી ખર્ચવામાં કર્યું સી, અને વેબ પ્રોગ્રામિંગ દુનિયામાં. વેલ, તમે વિચારો ઘણો જોશો આદેશ વાક્ય કામ પાસેથી ઉધાર, પરંતુ નવા પણ ઘણો અને રસપ્રદ વિચારો પણ સંગત હોઈ જતા હોય છે કે મોબાઇલ એપ્લિકેશન્સ અને ટેકનોલોજી, વધુ સામાન્ય રીતે, કે જેની સાથે તમે ગાય્ઝ આજકાલ બધા પરિચિત હોય છે લેપટોપ અને ફોન અને જેમ. તેથી જો તમે અમલ કરીશું વેબ પેજ પર, અથવા વેબસાઇટ સે દીઠ, પરંતુ એક વાસ્તવિક વેબ સર્વર. તમે વેબ સર્વર બાકીના લખશે જેની હેતુ જીવનમાં સી, માં લખાયેલ એચટીટીપી વિનંતીઓ, તે પ્રાપ્ત કરવા માટે છે અમે વાત કરી રાખવા વર્ચ્યુઅલ પરબિડીયાઓમાં બીડી વિશે, અને ખરેખર ક્યાં જવાબ કોઈ HTML જેવા કેટલાક સ્થિર content-- ફાઇલ, અથવા કોઈ JPEG અથવા કોઈપણ ફાઈલો અન્ય નંબર, અથવા તો એક PHP, ફાઈલ જેમાં તમારા વેબ સર્વર છે કે જે PHP અર્થઘટન રહ્યું છે કોડ અને પરિણામો બહાર બોલે. હવે, અમે સાથે તમને પ્રદાન કર્યો છે માળખું ખૂબ થોડી ખરેખર તેને માટે સમસ્યા માટે વિતરણ કોડ છ 1,000 લાઇન્સ લાંબી છે સમૂહ, જે ઘણો ટિપ્પણીઓ, fair-- હોય છે પરંતુ આ ખરેખર અર્થ થાય છે તક હોઈ ડર્ટી ડ્રાઇવીંગ તમારા હાથ વિચાર એકદમ મોટી પ્રોજેક્ટ માં અમે ખૂબ જ ખાસ કર્યું કે તમારા માટે બહાર કોતરવામાં ટુકડાઓ, કે જેથી ખરેખર તમે CS50 બહાર નીકળવા અને જ્યારે પ્રોગ્રામિંગ વાસ્તવિક વિશ્વમાં દાખલ અને છબછબિયાં કરવાં માંગો છો પ્રોજેક્ટ કોઈપણ નંબર, તમે ઘણી મોટી પડશે આરામ કેટલાક સ્ત્રોત ડાઉનલોડ કોડ છે, કેટલાક ઓપન સોર્સ વેબ પર પ્રોજેક્ટ, અને ડાઇવિંગ અને બનાવવા તમે ફિટ જુઓ કે ફેરફારો. સમસ્યા સાત વિશે હોઈ ચાલે છે સુયોજિત તમારા પોતાના વેબ આધારિત એપ્લિકેશન બનાવે છે કે ગતિશીલ ઇનપુટ લે છે અને ફોર્મ ગતિશીલ આઉટપુટ પેદા એક etrade.com જેવી વેબસાઇટ છે. અને સમસ્યા આઠ હજુ સુધી પર ધ્યાન કેન્દ્રિત કરશે સુયોજિત જાવાસ્ક્રિપ્ટ તરીકે ઓળખાય અન્ય ભાષા. દરમિયાન, અંતિમ પ્રોજેક્ટ ક્ષિતિજ પર છે. કહેવાતા પૂર્વ દરખાસ્ત આજે એક સપ્તાહ કારણે છે. ચોક્કસ દર્શાવ્યા મુજબ પૂર્વ proposal--, માતાનો CS50 website-- પર જે એક સુંદર કેઝ્યુઅલ તક છે તમે એક સુંદર succinct ઇમેઇલ મોકલવા માટે તમારા શિક્ષણ સાથી માત્ર તેમને જાણ માટે અથવા તમે વિચારી રહ્યાં છો તે માટે તેના એક ભાસતા બોર્ડ તરીકે તેને અથવા તેણીને ઉપયોગ કરે છે. અને સેનીટી છે check-- તમે વિચારી રહ્યાં છો કે નહીં પણ તીક્ષ્ણ વિશે ખૂબ ઓછી ખૂબ અથવા કદાચ, અથવા કદાચ તમે કોઈ વિચાર હોય છે અને વાતચીત માં જોડાવવા માંગો છો. ત્યારબાદ દરખાસ્ત છે અને સ્થિતિ અહેવાલ અહીં કહેવાતા CS50 Hackathon હાર્વર્ડ અને યેલ વિદ્યાર્થીઓ માટે કેમ્બ્રિજ એકસરખું. અંતિમ પ્રોજેક્ટ અમલીકરણ પછી કારણે છે. અને પછી અહીં એક CS50 ફેર, કેમ્બ્રિજ, તેમજ ન્યૂ હેવન માં અન્ય તરીકે. દરખાસ્ત તેથી, પર એક નજર તે વિગતો માટે વેબસાઇટ. પરંતુ વધુ excitingly, પણ, એક તક તમારા હાથ ગંદા વિચાર કરવા માટે, અને સમગ્ર ઓપન તમારા મનમાં વિષયો અને સાધનો સમૂહ અને તકનીકો કે જે આનુષંગિક છે આ કોર્સ કોર અભ્યાસક્રમ માટે, પરંતુ તેમ છતાં સંબંધિત. અને પણ અદ્ભુત વેગ પત્થરો માટે ખરેખર ઠંડી અંતિમ પ્રોજેક્ટ કરી કે સારી સામગ્રી બિયોન્ડ અમે આવરી કર્યું જાઓ ઔપચારિક સમસ્યા સેટ્સ અથવા વ્યાખ્યાન. તેથી માટે CS50 વેબસાઈટ પર જાઓ પરિસંવાદો સમગ્ર રોસ્ટર. તમે હજુ સુધી રજીસ્ટર ન હોય તો, તે દંડ છે. આગળ જાઓ અને હજુ પણ સાઇન અપ કરો અને અમે જીવંત સ્ટ્રીમિંગ લિંક સાથે અનુસરો, દિવસ અને સમય વેબસાઈટ પર છે. અને બધું જ હશે રેકોર્ડ અને મૂકી તમે કરી શકતા નથી, તો ખાસ દિવસો અને સમય. ત્યારબાદ સારી રીતે આગળ આવેલું છે શું છે તે, અલબત્ત, આ CS50 Hackathon છે. લેવામાં સપ્તાહ શૂન્ય માંથી આ ફોટો, સ્મૃતિ, પાછલા વર્ષો દરમિયાન સાંજે એક છું 4 આસપાસ. આ CS50 ફેર, જે ફરીથી બંને શહેરોમાં સ્થાન લેશે. અને પછી, ફક્ત પ્લાન્ટ માટે બીજ, પણ હજી પણ છતાં અમે એક મહિના વત્તા, તો સત્ર છોડી તમે CS50 પોતાના શિક્ષણ જોડાવા માંગો છો, સ્ટાફ, અને તમે શરૂ કરવા માંગો છો એક CA બની વિશે વિચારવાનો છે, અથવા શિક્ષણ સાથી, ખબર છે કે અમે તે વિશે વધુ વાત શરૂ કરી શકશો પાછળથી આ સત્ર. પરંતુ અહીં ચિત્રમાં આ વર્ષે ટીમ મોટા ભાગના. અને તેથી, PHP-- અને હું તેથી ઉદાસી હતી છેલ્લા અઠવાડિયે [છે? Allyse?] માયાળુ મેળવવાની પ્રયાસ ગયા અમને આ અદ્ભુત પ્રોપ્સ હું ઉપયોગ અંત ન હતી કે, તેથી તે ખરેખર માત્ર પ્રકારની મૂર્ખ જોવામાં અમે બધા અહીં બેઠા એક પાવડો હતું કે દિવસ છેલ્લા બુધવાર, અને થોડી ચમચી. પરંતુ આ મારા અલંકારિક હતી ચિતરવાનો પ્રયાસ માર્ગ શા માટે આપણે સંક્રમણ કરી રહ્યા છીએ ચિત્ર સી માંથી PHP જેવા ભાષા છે. અને તે જ કોઇ કહી શકાય languages-- જાવા, પાયથોન, રૂબી સંખ્યા others-- પરંતુ જ્યારે અથવા જુમખું સી, દાખલા તરીકે, સી એક કાર્યક્રમ લખી સામાન્ય રીતે જેવી હોઇ શકે છે આ જેમ એક ચમચી લઈ અને એક છિદ્ર ખોદવું જમીન, રેતી અથવા ધૂળ. PHP, તમે ખૂબ લેવા માટે પરવાનગી આપે છે આ સમસ્યા બહાર મોટી કરડવાથી, ઘણી ઓછી કોડ લખી અત્યાર સુધી નાના સાધનની મદદથી, તેથી વધુ છે, કારણ કે વિધેય માં pieced. હવે, આપણે ખરેખર નાટકીય હતા, અમે પાવડો કંઈક હોય તો અહીં, પરંતુ તેથી તે છે. દરમિયાન, અન્ય રૂપક અમે સાથે આવ્યા અલબત્ત, તમે કરી શકે છે, એક સાધન કંઈક ઉપયોગ વિગતો દર્શાવતું કંઈક મહેનત. પરંતુ અલબત્ત, આ અધિકાર ઉપયોગ કરવા માટે સાધન રહ્યું છે નથી ખૂબ જ હોઈ ભાષા કહેવાય સી અને હવે હું માત્ર નારાજ [? સેન્ડર્સ,?] કદાચ, અમે આમ કે later-- ઠીક પડશે યોગ્ય સાધન વારંવાર વાપરવા માટે હોઈ જવા નથી છે આ નીચા સ્તરે સાધન. અને ખરેખર, સી ભાષા નથી કે તમે મોટા ભાગના ક્યારેય નો ઉપયોગ કરવા જઇ રહ્યા છે અથવા જરૂરી ફરીથી ઉપયોગ કરવો જોઈએ. અને હકીકતમાં, થોડી ફક્ત એક જ વખત secret-- હું સી મારી વચ્ચે ખૂબ ખૂબ છે ઉપયોગ દરેક પાનખરમાં સપ્ટેમ્બર અને ડિસેમ્બર સત્ર. અને તે છે કારણ કે અમે તક તરીકે ઉપયોગ ફંડામેન્ટલ્સ શીખવે પ્રોગ્રામિંગ, અને તે કમ્પ્યુટર સાથે વિજ્ઞાન ફંડામેન્ટલ્સ, માહિતી માળખાં, ગાણિતીક નિયમો અને જેવા પરંતુ ખૂબ જ ઝડપથી તમે કરશે વાક્યરચના કે હવે જુઓ અને વિચારો સી અંતર્ગત જેથી પરમેશ્વરે છે વધુ આધુનિક તબદીલીપાત્ર ઉચ્ચ કક્ષાની ભાષાઓ, જેમ PHP, અને Python અને Perl અને જાવા અને ઉદ્દેશ સી, ખૂબ જ નથી ખરેખર ઉદ્દેશ સી પરંતુ સ્વિફ્ટ, આ નવા ભાષાઓ છે કે જે તમને ઘણા ઇચ્છા પછી તમે અંતિમ પ્રોજેક્ટ સાથે છબછબિયાં કરવાં. વધુ મુસીબત વગર તેથી, ખરેખર ચાલો કેટલીક સમસ્યાઓ ઉકેલવા માટે PHP, ઉપયોગ કરે છે. છેલ્લા, કે શરૂઆતમાં યાદ અઠવાડિયે, અમે માત્ર ઉપયોગ CS50 IDE, અમે એક આકર્ષક થોડું કાર્યક્રમ લખ્યું કે જે હમણાં જ "હેલો વર્લ્ડ.", જણાવ્યું હતું કે અને પછી હું તેને સાચવી ફાઇલ hello.php કહેવાય છે. અને પછી હું આ આદેશ ચાલી હતી. અને શા માટે? ઇંગલિશ માં, અહીં શું થઈ રહ્યું છે? હું ત્યારે શું કરી હતી હું આ આદેશ ચાલી હતી? અરે વાહ? પ્રેક્ષક: અમુક કાર્ય PHP છે કે વાહ સમજે છે કે છે તે વાંચે છે. ડેવીડના MALAN: ગુડ, અમુક કાર્ય છે PHP-- અને મને વધુ ચોક્કસ હોય દો, PHP, કહેવાય કાર્યક્રમ એ.કે.એ., ત્યાં સમજે છે કે એક દુભાષિયો, hello.php સમાવિષ્ટો, અને ટોચની આઇટી અર્થઘટન નીચે, જમણે અને તે આદેશો શું કહે છે. Hello.php આદેશો, અલબત્ત, માત્ર code-- કાર્યો સ્ત્રોત છે અને ચલો અને આંટીઓ અને જેમ, આપણે આપણી જાતને કે PHP, માં લખવાનું શરૂ કર્યું છે. પરંતુ સી જેમ નહિં પણ, જે એક સંકલિત ભાષા, PHP, તમે માત્ર તેને લખી છે, અને તે ચલાવો. તમે કે દલાલ પગલું અવગણી zeros અને મુદ્દાઓ રૂપાંતરિત, અને પછી તે ચાલી રહ્યું છે. અને તેથી આ એક સાવ શું છે? આપણે શા માટે પગલું અવગણીને છે? શા માટે વધુ આધુનિક ભાષાઓમાં કરવું આ પગલું અવગણી હોય છે? લાભ શું હતું? અથવા માત્ર તર્ક? અમે કર્યું હોય તો પણ પહેલાં ખૂબ PHP લખાયેલ છે, શું નથી વિશે લાભદાયી છે તમારો કોડ કમ્પાઇલ તમે વિચારો છો? કોઈ? સંગ્રહવાથી નથી? તમારા માથા ખંજવાળ? યાહ. પ્રેક્ષક: વધુ ગતિશીલ. ડેવીડના MALAN: વધુ ગતિશીલ? તમે શું અર્થ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: ઠીક છે, સારુ, તેથી ઇનપુટ પર આધાર રાખીને, તમે તેને દરેક વખતે કમ્પાઇલ કરવાની જરૂર નથી. અને તે ખરેખર તરીકે છે that-- તરીકે સરળ શું ચાલુ બિંદુ છે તમારા કોડ કમ્પાઇલ કરવા માટે? આ છે કે જે હમણાં જ એક પગલું છે making-- આ જરૂરી છે છેલ્લા કેટલાક માટે અઠવાડિયા બે વખત ઘણા પગલાંઓ માત્ર તમારા કાર્યક્રમ ચાલી રહ્યું છે. તે કે જે તમને જોયા ઉપયોગી રહી છે તેથી આગળ કેટલાક ભૂલ સંદેશાઓ અને જુઓ પરંતુ તે હજુ પણ માત્ર એક નકામી પગલું છે. અને તેથી પ્રોગ્રામરો સમજાયું સમય જતાં, અમે શા માટે નથી નથી કે ભાષાઓ લખવાનું શરૂ , કે એકદમ યાંત્રિક પગલું જરૂર તેથી તે ફક્ત લખી શકો છો તમારો કોડ અને તે ચલાવો. પરંતુ ભાવ શું હતું અમે ચૂકવણી જોયું કે એક ચોક્કસ ઉદાહરણ સાથે સપ્તાહ છેલ્લા? હા? ઝડપ. તેથી [? ?] અનુવાદકો શું છે થોડી ધીમી, કે zeros અને મુદ્દાઓ છે સરસ અને કમ્પ્યુટર ઝડપી સમજવા માટે, કારણ કે ઇન્ટેલ CPU અથવા ગમે તે હોય, માત્ર શું થઈ રહ્યું છે સમજે છે બિટ્સ તે પેટર્ન સાથે. ઈન્ટરપ્રીટર જ્યારે એક કાર્યક્રમ છે કે જે ખરેખર છે તે ASCII સ્ત્રોત વાંચવા માટે છે તમે લખ્યું છે કે કોડ છે, અને તે કન્વર્ટ, તેથી વાત, અથવા તે આખરે ફેરવે બહાર આકૃતિ કેવી રીતે zeros અને મુદ્દાઓ છે. તેથી તે માત્ર થોડી લે પ્રભાવ હિટ બીટ. તેથી તે મડાગાંઠ એક બીટ છે. અમે અહીં પર આ નથી હવે તો મને દો આગળ વધો અને નીચે પ્રમાણે એક ઉદાહરણ નથી. હું અહીં જાઓ તો, નવી ફાઈલ, હું જાઉં છું ફરીથી આ સેવ hello.php છે. અને હવે હું આગળ જાઓ જાઉં છું અને "પ્રિન્ટ હેલ્લો વિશ્વ કહે છે," - અને હું પ્રિન્ટ ઉપયોગ કરી શકો છો કે યાદ, હું નથી પ્રિન્ટ એફ ઉપયોગ કરે છે. અને હવે અહીં નીચે, હું hello.php PHP, કરો તો, huh-- હું તે અર્થઘટન કરે છે તેમ લાગતું નથી. હું શું ખોટું શું હતી? પ્રેક્ષક: કોણ કડા. ડેવીડના MALAN: અરે વાહ, તમે જરૂર કે કોણ કૌંસ અપ ટોચ. તેથી તે નકામી પ્રકારની છે, પરંતુ તમે ઝડપથી તે વપરાય છે. હું PHP કોડ લખવા માટે હોય, તો હું સામાન્ય રીતે કાર્યક્રમને કહેવું જરૂર છે, અથવા અરે, ઈન્ટરપ્રીટર કહેવું PHP, અહીં કેટલાક PHP કોડ આવે છે. અને પછી સારા પગલા માટે, હું આ સાથે આ બંધ છે, પરંતુ તેના બદલે માત્ર પ્રશ્ન ચિહ્ન કોણ સાથે કૌંસ, હવે નીચે અહીં, કે જેથી હું આ ફરીથી ચલાવો તો, હવે હું ઇચ્છિત પરિણામ મળે છે. હવે થોડો ઓપ્ટિમાઇઝેશન કરવા દો, માત્ર તમે તે પહેલાં જોઇ છે કે જેથી. આ પ્રકારની હેરાન કરે છે મને લાગે છે કે PHP, જગ્યા hello.php ચલાવવા માટે હોય છે, કારણ કે ભૂતકાળમાં હું માત્ર કોઈ સ્લેશ લખી શકે છે સરસ પ્રકારની છે કે જે કાર્યક્રમ નામ. તે એક સારો વપરાશકર્તા અનુભવ પ્રકારની છે. તે બહાર વળે તેથી જો તમે આ કરી શકો છો નીચેના હું સાથે PHP, માં આ એકદમ ભેદી ઉપયોગ કરી શકો છો અહીં ટોચ પર મંત્ર, જે સામાન્ય રીતે એક shebang કહેવામાં આવે છે, આ તીવ્ર પ્રતીક છે જેમાં, તેથી વાત કરવા માટે, આ એક બેંગ છે અથવા ઉદ્ગારવાચક બિંદુ. આ હવે કાર્યક્રમ માટે પાથ છે એક લાક્ષણિક Linux સિસ્ટમ પર પર્યાવરણ, અથવા env કહેવાય છે. અને આ લાંબા વાર્તા વાક્ય short-- વાક્ય એક માત્ર કમ્પ્યુટર અરે, PHP, શોધવા કહે છે પર્યાવરણ મારા માટે દુભાષિયો, તેથી વાત કરવા માટે, તમારી મેમરી તે શોધો. અને, હવે સરસ શું છે છે કે હું અહીં નીચે જાઓ તો, હું કોઈ સ્લેશ કરી શકો છો હેલો dot php, or-- હમ્મ. પરવાનગી નકારી શકાય છે. વેલ, તમે આ પણ વધુ જોશો જો તમે સમસ્યા સાથે, સાત સુયોજિત પહેલાથી જ નથી, પરવાનગીઓ સાથે હોય છે. હું જરૂર છે કે જે બહાર વળે આ આદેશ ચલાવવા માટે [કહેવાય? chamod?] ફેરફાર માટે એક વત્તા એક્સ hello.php mode--. હું [અશ્રાવ્ય] વધારાના આ એક જરૂર મારું કમ્પ્યુટર કહેવાની છે, જે પગલું hello.php એક્ઝેક્યુટેબલ બનાવે છે. અને હવે ડોટ શું થાય તે જુઓ hello.php સ્લેશ, તે માત્ર ચાલે છે. હું સ્પષ્ટ કરવા માટે જરૂર નથી હવે ઈન્ટરપ્રીટર. અને હું તે પણ prettier કરી શકો છો, તેમ છતાં, જો હું આ વસ્તુ નામ બદલી. હું માત્ર hello.php જાય તો હેલ્લો, જેથી ટોચ ડાબી બાજુએ નોટિસ આ કાર્યક્રમ નામ છે ખરેખર હવે માત્ર હેલો. હવે હું તેને એક સી કાર્યક્રમ જેવો બનાવી શકો છો, તે PHP-- લખાયેલો છે, તેમ છતાં અથવા પ્રમાણિકપણે કોઈપણ નંબર અન્ય ભાષાઓમાં છે. તેથી સીમાંત વધારો, કોઈ વિધેયાત્મક તફાવત. પરંતુ તે માત્ર થોડી જિજ્ઞાસા છે હવે, તમે કાર્યક્રમો લખી શકો છો કે જેથી કોઇ પણ ભાષામાં, અને વપરાશકર્તા નથી ખબર હોય અથવા તે શું કાળજી હોય છે. ઠીક છે, ચાલો એક વધુ જોવા દો અનિવાર્ય ઉદાહરણ હવે હું અગાઉથી અપ ચાબૂક મારી છે. અને આ quote.php કહેવાય છે. અને તે ઉપલબ્ધ છે ઓનલાઇન. અને તે ખૂબ short-- છે કે નોટિસ પરંતુ તે છે કે આદેશ વાક્ય કાર્યક્રમ છે સ્ટોક કિંમતો જોવા જવાનું મારા માટે, જે ખરેખર રહ્યું છે સમસ્યા સાત સુયોજિત કરવા માટે સંગત હોય છે. તેથી હું શું કરી રહ્યો છું તે જોવા દો. ખૂબ જ ટોચ પર હું પુરો ઓપન કૌંસ પ્રશ્ન ચિહ્ન PHP. હું છું જેમાં પછી હું આ વાક્ય મળી છે functions.php-- તરીકે ઓળખાતી ફાઈલ જરૂરી અમે જોવા માટે જઈ રહ્યાં છો થોડી આ પર વધુ પરંતુ આ સી જેવી છે તીવ્ર આવૃત્તિ સમાવેશ થાય છે, તમે જ્યાં જવા માંગો છો બીજી ફાઇલ સમાવેશ થાય છે. PHP, તે છતાં, તે જરૂરી છે કહે છે પણ એક કાર્ય સમાવેશ થાય છે છે. અને તે function.php છે કે બહાર વળે કંઇક હું વર્ગ પહેલાં લખ્યું હતું. હું કારણ કે, એ જ ડિરેક્ટરીમાં મૂકી હું કેટલાક આઉટ કોડ પરિબળ માગે છે કે અમે અન્યત્ર ઉપયોગ કરવા માંગો છો શકે છે. દરમિયાન, તમે કદાચ કરી શકો છો અહીં શું થઈ રહ્યું છે અટકળ બાંધવી. આ સી પરંતુ પાસેથી થોડી અલગ છે હું દ્વારા અર્થ શું છે યોગ્ય વપરાશ ખાતરી? વધુ તકનિકી આ અનુવાદ. શું હેઠળ સંજોગોમાં હું છું આ કાર્યક્રમ છોડી, અથવા બહાર નીકળતા? અરે વાહ? પ્રેક્ષક: તમે નથી, ત્યારે બે આદેશ વાક્ય દલીલો. ડેવીડના MALAN: હું ન હોય ત્યારે વાક્ય દલીલો આદેશ. અને તે છે કે જે એક યાદ દલીલો કાર્યક્રમ નામ પોતે છે. અને બીજા પ્રયત્ન રહ્યું છે અન્ય શબ્દ હું પ્રોમ્પ્ટ પછી લખો. તેથી માત્ર જેમ કે C, આ ચકાસણી મારા માર્ગ છે, વપરાશકર્તાને સહકાર હતી અને હું હેતુપૂર્વક આ કાર્યક્રમ ચલાવો છો? હવે, કંઈક છે થોડી અલગ તમામ સી પ્રથમ સાથે અમે આ ડોલર સાઇન હોય છે, અને ડોલર શું કરે છે PHP, માં દર્શાવવા સાઇન ઇન? માત્ર એક ચલ. કે દ્વારા અનુસરવામાં all-- માત્ર એક ચલ છે ગમે તમે ખરેખર તેને કૉલ કરવા માંગો છો. કંઈક છે નોટિસ મારા PHP કાર્યક્રમ માંથી ગુમ, માત્ર તે છેલ્લા ગુમ હતી જેવી સપ્તાહ, સી વિરુદ્ધ શું છે? એક પ્રકારના છે, પણ બીજું કંઈક. કોઈ કંઈક છે મુખ્ય કાર્ય function--. કોઈ મુખ્ય કાર્ય છે. તમે માત્ર લખવાનું શરૂ કર્યા વગર તમારા કોડ એકદમ મનસ્વી વિશે ચિંતા કરવાની કેટલાક મૂળભૂત નામકરણ રુપાંતરણ કાર્ય મુખ્ય છે. તેથી ARG સી માત્ર ખરેખર છે વૈશ્વિક ચલ ઈન્ટરપ્રીટર કે મને માટે ઉપલબ્ધ બનાવે છે. હવે, આ રસપ્રદ છે. તેથી સામગ્રી જુઓ. ડોલર સાઇન સ્ટોક પર છે બાકી, કે મારા ચલ છે. જમણી બાજુ પર, દેખીતી રીતે છે PHP, એક કાર્ય લુકઅપ કહેવાય છે કે હું મારા છેલ્લા આદેશ વાક્ય પસાર છું દલીલ ગમે રહ્યો શબ્દ છે. અને અમે કેવી રીતે આ જોશો એક ક્ષણ કામ કરે છે. અને પછી છેલ્લે હું કિંમત જાણ કરું છું. હું એક બહાર છાપવા છું આવા અને આવા શેર કરો. અને આ છે, યાદ માં PHP-- PHP-- એક માર્ગ માર્ગ તમે શું કરવાની જરૂર નથી, જ્યાં હવે ડોલર નિશાની છે. તમે માત્ર સર્પાકાર કૌંસ ઉપયોગ કરી શકો છો અને કેટલાક ચલ માં પ્લગ. તમે ચિંતા કરવાની જરૂર નથી એ જ રીતે printf ઉપયોગ કરે છે. અને એક કોરે, કારણ કે તમે એક ચલ મૂકી ત્યારે આ જેમ ડબલ અવતરણચિહ્નો ની અંદર, તમે ફેન્સી ટેકનિક ઉપયોગ કરવામાં આવે છે ચલ પ્રક્ષેપ કહેવાય છે. તે માત્ર અહીં ચલ પ્લગ થાય છે. અને એક કોરે, કેટલાક તમે આવે છે જે તરીકે અન્ય પ્રોગ્રામિંગ પશ્ચાદભૂ, તમે એક જ અવતરણચિહ્નો ઉપયોગ ન કરી શકે આસપાસ શબ્દમાળાઓ આ કરવા માટે. તમે ડબલ નો ઉપયોગ જ જોઈએ ચલ પ્રક્ષેપ કામ કરવા માટે. અન્યથા તમે શાબ્દિક પડશે તે સર્પાકાર કૌંસ જુઓ. તેથી છેલ્લે, ચાલો આગળ વધો અને આ ચલાવો. મને મારી ટર્મિનલ થોડી મોટી બનાવવા દો. મને આગળ વધો અને ચલાવો મારા ભાવ ડિરેક્ટરી ની અંદર. [? CDsource?] [? AM?] [? ભાવ?] PHP ભાવ dot php, અને હું કંઈક શોધવા માટે જઇ રહ્યો છું તેના ટીકર પ્રતીક છે, જે GOOG, જેમ કે, અને તેના નવા નામ એક શેર, આલ્ફાબેટ ઇન્ક, આજે તરીકે, $ 717 ખર્ચ છે. બધા હક છે, અમે માંગો છો, તો આ ફરીથી ચલાવો, કોઈને અન્ય સ્ટોક ટીકર છે તેઓ જોવા માંગો છો? માઇક્રોસોફ્ટ મને લાગે છે આ એક MSFT-- $ 53. હું યાહૂ કદાચ કે લાગે છે. અને ફેસબુક છે. આમ કરવાથી આ કાર્યક્રમ શું છે? જાદુ એમ્બેડ કરી રહ્યું છે કે લુકઅપ કાર્ય છે. તેથી આપણે એક ઝડપી નજર કરીએ. કે ન કરવામાં આવે તો તે તારણ PHP, સાથે, તે functions.php માં છે. અને અમે મારફતે જાઓ નહીં મહાન વિગતવાર આ, પરંતુ અહીં ઓપરેટિવ શબ્દ છે નોટિસ કે functions.php-- વાક્ય છ પર હું શાબ્દિક કાર્ય કહે છે. હું મારા કાર્ય નું નામ સ્પષ્ટ કરો. હું પછી કોઇ સ્પષ્ટ દલીલો, અથવા પરિમાણો, મને લાગે છે કે કાર્ય કોઈ પ્રકારના take-- કરવા માંગો છો. અને પછી હું તેને અમલમાં. અને હું મારા હાથ મોજું પડશે અમલીકરણ પર, તે એકદમ અદ્યતન અધિકાર છે, કારણ કે હવે, પરંતુ અમે ખરેખર તેને ફરીથી જોશો એક સપ્તાહ સમસ્યા સાત સુયોજિત કરો. પરંતુ હું ખૂબ આ સાફ કરી શકો છો. હું પણ સમાવેશ થાય છે આજે કોડ આવૃત્તિ કોઈ dot php ફાઈલ છે જે ભાવ, ના. ખાતે કદાચ શું કારણ માત્ર ઉદ્ધત કહેવાય કાર્યક્રમ ટોચ? તે shebang-- કહેવાતા એકદમ ભેદી મંત્ર કે પછી PHP શોધવા અને કહે છે અહીં મારા કોડ પર ચાલે છે. બધા હક છે, કે જેથી લાવે અમે બોલ છોડી જ્યાં અમને જોકે છેલ્લા સમય કેટલાક વધુ અદ્યતન ઉદાહરણો. કોઈપણ પ્રશ્નો આમ અત્યાર સુધી વિશે PHP, અથવા 'અમે શું કરી રહ્યા છીએ? No-- બધા અધિકાર. અરે વાહ? પ્રેક્ષક: ઇનસાઇડ HTML ફાઇલો, તમારી પાસે શું [? તમે શું?] [? માત્ર કૉલ?] એક [અશ્રાવ્ય] PHP, ફાઈલ? ડેવીડના MALAN: સારા પ્રશ્ન. અમે છો, જે એક વેબ સંદર્ભમાં સંક્રમણ શાબ્દિક વિશે તમે કહેવાતા ઉપયોગ કરતા નથી ટોચ પર shebang, વેબ સર્વર ઘણીવાર કારણ કે કાર્યક્રમ અપાચે અથવા Microsoft કહેવાય IIS, ઇન્ટરનેટ જાણકારી સર્વર, અથવા અન્ય વેબ સર્વર સોફ્ટવેર કોઈપણ નંબર તે જુએ છે ત્યારે જાણે છે કે એક dot php ફાઈલ, તે તેના પર દુભાષિયો ચાલતી હોવી જોઈએ. તે પ્રથમ વાક્ય પર નથી જોવા નથી. આ પ્રથમ વાક્ય યુક્તિ તેથી તમે છો માત્ર ત્યારે છે લેખન આદેશ વાક્ય programs-- અમે સુપર ઘણી વાર નહીં જે, પરંતુ તે બ્રીજીંગ અમારી રીત છે હવે અમારી PHP, માટે અમારી સી ઉદાહરણો. તેથી આપણે ખરેખર આ વિશ્વમાં પુલ દો વેબ પર આદેશ વાક્ય વિશ્વમાં માંથી નીચેના કરવાથી. મને આગળ વધો અને ડ્રો દો અહીં માત્ર એક ક્ષણ માટે નહીં. અમે બદલે વેબ સર્વર હોય, અથવા તો તેથી અમે અહીં મારા લેપટોપ પર હોય તો, જે હું આ જેમ ડ્રો કરીશું. અને અહીં અમે છે કેટલાક સ્વરૂપ ઈન્ટરનેટ. અને પછી અહીં, અમે છે એક building-- એક સર્વર આ કેવી રીતે ઇન્ટરનેટ છે works-- અને અહીં કદાચ કેટલાક લાઇટ સાથે સર્વર છે. ખરેખર શું થઈ રહ્યું છે આ બે જોડાણો વચ્ચે? તેથી આ મકાન માં એક વેબ સર્વર છે. કે જે હમણાં જ એક કમ્પ્યુટર કે જે અમુક ઓપરેટિંગ ચાલી રહ્યું છે system-- કદાચ ફ્રી સોફ્ટવેર કહેવાય CS50 IDE ચાલી રહ્યું છે જે અપાચે. તેથી જો તમે ખરેખર કરી શકો છો આ મકાન લાગે છે મકાન હોવાથી જે CSt0 IDE સંગ્રહાય છે. તમે બધા હોય છે કે છે તમે એકાઉન્ટ્સ, જ્યાં બધા તમારા પોતાના વેબ સર્વર હોય તમે બધી ચાલી રહેલ તમારા પોતાના અનન્ય URL ને છે અમે ચર્ચા કરવા માટે શરૂ, પી છ સુયોજિત અને તમે વધુ જોવા મળશે. અહીં મારા લેપટોપ ક્યાંક છે જે ઇન્ટરનેટ પર અન્ય. હું એક URL ની મુલાકાત લો ત્યારે અને જેથી અનુસરે મારા માટે, કે ઈન્ટરનેટ ટ્રાફિક રહ્યું છે સર્વર, સર્વર પર પ્રાપ્ત એ HTTP request-- જેમ index.html વિચાર અને તે છે તેવા વેબ પૃષ્ઠ જવાબ આપવાનો. જેથી સામાન્ય નમૂનારૂપ છે. બધું જ્યારે હવે આજે, ત્યાં સુધી બધું આ જ બની રહ્યું હતું આ મકાન સિમા. હું મારા લેપટોપ વાપરી હતી, પરંતુ હું CS50 IDE સાથે જોડાયેલું હતું તેથી તે બધા જ કાર્યક્રમો હું ચાલી રહ્યું હતું તે સર્વર, પોતે અંદર હતી. પરંતુ હવે, PHP, વારંવાર ઉપયોગ શરૂ કરીએ કેટલાક વાસ્તવિક કાર્યક્રમો લખવા માટે વેબ સર્વર દ્વારા પીરસવામાં આવે છે. અને આ કરવા માટે, હું જવા માટે જઇ રહ્યો છું ઉદાહરણો સમગ્ર ટોળું માં કે અહીં આ વિચાર રજૂ કરે છે. તેથી આ એક ફેન્સી માર્ગ પ્રકારની છે પ્રોગ્રામિંગ નમૂનારૂપ વર્ણન. અને હકીકતમાં, કારણ કે તમે CS50 બહાર નીકળવા અથવા, અંતિમ પ્રોજેક્ટ પર કામ અથવા અમુક અનુસરો લેવા વર્ગ પર, તમે શરૂ કરી શકશો આ world-- એ જોવા માટે કે ખાસ કરીને ઉગાડવામાં કર્યા જેમ કે C ભાષા સાથે સુપર નીચા level-- છે કે સારી ખ્યાલ છે કે ત્યાં લેખન સોફ્ટવેર રીતે. ત્યાં અમુક ચોક્કસ છે તમે અનુસરી શકે છે પેટર્ન, તે તમારી ફાઇલોને આયોજન અમુક રીતે અને તમારા કાર્યો નામકરણ રીતે જેથી લાંબા વાર્તા ટૂંકા, વિશ્વમાં આવી છે મીતાક્ષરો સંપૂર્ણ સમૂહ સાથે અને પ્રોગ્રામિંગ રીતો માટે નામો. આ તમે ઉપયોગ કરી શકે છે માત્ર તરકીબો છે. અને તેમને એક, MVC કહેવાય છે મોડલ જુઓ કંટ્રોલર માટે. અને આ માટે માત્ર છે, હવે, એક પડતાં જટીલ તમે બહાર મૂકે છે કરીશું કેવી રીતે કહેતા માર્ગ એક PHP આધારિત વેબસાઇટ, અમારા કિસ્સામાં. તમે તમારી ફાઇલોને ગોઠવો કેવી રીતે, કેવી રીતે તમે તમારા તર્ક ગોઠવવા શકું તેને સરળ બનાવે છે કે જે રીતે વધુ જટિલ વેબસાઇટ્સ લખી? અને ખરેખર, અમે ઝડપથી પડશે સાત પી સેટ સાથે ત્યાં મળે છે. MVC વિશ્વમાં તેથી, તમે જઈ રહ્યાં છો જોવા માટે કે જે અમારા કોડ સામાન્ય રીતે કરી શકો છો ક્યાં મોડેલ કોડ તરીકે વર્ણવી શકાય, અથવા નિયંત્રક કોડ છે, અથવા દૃશ્ય કોડ. અને હું જાઉં છું નીચે પ્રમાણે તે સરળતા આ નિયંત્રક છે તમારા કાર્યક્રમ મગજ, તે જ્યાં બધા છે રસપ્રદ તર્કશાસ્ત્ર થાય છે. તેથી બધું અમે થયા છો આમ અત્યાર સુધી વર્ગ લેખન, પ્રકારની નિયંત્રક જેવી છે code-- તે નિયંત્રિત છે તમારા કાર્યક્રમ તમારા આંટીઓ, તમારા શરતો તમારા કાર્યો અને ચલો અને બધા છે. જોવાઈ, હવે, થોડી હોઈ ચાલે છે વેબ દુનિયામાં વધુ સ્પષ્ટ. એક દૃશ્ય સૌંદર્ય શાસ્ત્ર છે તમારી વેબસાઇટ. તે વપરાશકર્તા છબીઓ sees-- શું છે આ એચટીએમએલ કોષ્ટકો, HTML ટૅગ્સ, અને બધા કે, રુંવાટીવાળું સૌંદર્યલક્ષી તમામ લખવા માટે તે હાર્ડ નથી કે સામગ્રી, પરંતુ તમે પેદા કરી રહ્યાં છે તે માત્ર છે, કહેવાતા જુઓ, સૌંદર્ય શાસ્ત્ર છે. અને મોડેલ, છેવટે, રહ્યું છે ડેટાબેઝ stuff-- હોઈ જે અમે બધા માં ડાઇવિંગ શરૂ કરી શકશો વધુ આ બુધવાર. તેથી નિયંત્રક તર્ક છે, જુઓ, સૌંદર્યલક્ષી સામગ્રી છે અને મોડેલ જ્યાં હોઈ ચાલે છે અમે અમારા વાસ્તવિક માહિતી સ્ટોર કરે છે. તેથી વધુ concretely આ જોવા દો નીચેના ઉદાહરણમાં સાથે. હું અહીં મારા ડિરેક્ટરીમાં જાઓ જાઉં છું આજે સ્ત્રોત જે તમામ code-- ઓનલાઇન ઉપલબ્ધ છે. અને હું આવૃત્તિ શૂન્ય જાય જાઉં છું. અને અહીં તે કૉલ દો is-- CS50 વેબસાઈટ આવૃત્તિ શૂન્ય. બધા અંતે ખૂબ અહીં નથી. તે કે જે ખૂબ જ સરળ વેબ પાનું છે કદાચ ઉપયોગ શું HTML tags-- માત્ર છેલ્લા ઉદાહરણો પરથી અનુમાન? તે શું છે? કદાચ કે મોટા બોલ્ડ H1-- શીર્ષક, ઉપર કે લોગો, CS50. અને બીજું શું નાટક છે? અરે વાહ? પ્રેક્ષક: unordered યાદી. ડેવીડના MALAN: બિનક્રમાંકિત યાદી જેથી ઉલ ટૅગ અને લી ટૅગ્સ કદાચ એક દંપતિ. અને જો તમે આ યાદ નથી, તો તે પ્રામાણિકપણે કોઈ વાંધો નથી. તેમાં ફ્લફી સૉર્ટ છે HTML અમલીકરણ વિગતો તમે ઝડપથી ઉપર જુઓ કે અને તમે પાછા તમારી રીતે પર છો. અમે પ્રોગ્રામિંગ પર વધુ ધ્યાન કેન્દ્રિત પડશે આ juicier ટુકડાઓ છે કે વિચારો. તેથી આપણે માત્ર એક ઝડપી લેવા દો આ HTML-- જોવા અને ખરેખર હું ઓહ, અહીં સ્રોત જુઓ ખોલો તો, કે બરાબર રહ્યું છે તે અહીં છે શું. એક ઉલ ટેગ છે. કે અંદર નેસ્ટ LI ટૅગ્સ છે. અને પછી હું URL ઉધાર અહીં વાસ્તવિક અભ્યાસક્રમ. અને પછી lectures.php દેખીતી રીતે છે અન્ય ગતિશીલ પેદા પાનું કે, ચાલો આહ see-- દો, હોય ચાલી રહ્યું છે વ્યાખ્યાન પ્રથમ બે અઠવાડિયા. તેથી સપ્તાહ શૂન્ય અને સપ્તાહ એક, ચાલો હું પૃષ્ઠ સ્રોત જોવા તો છે આ જુઓ, પણ સુપર સરળ છે. આ બે પૃષ્ઠો માટે અગ્રણી છે કહેવાય week0.php, અને week1.php. તેથી શું થઈ રહ્યું છે હવે માને છે. હું week0.php પર ક્લિક કરો ત્યારે, મારા લેપટોપ week0.php માટે વિનંતી કરી રહી છે. વેબ સર્વર, એ.કે.એ., CS50 IDE, કે વર્ચ્યુઅલ પરબિડીયું પ્રાપ્ત થયેલ છે. તે સંદેશો જોઈ છે જેમ કે, week0.php મળે છે. ત્યાર બાદ તે ફાઇલને ઈન્ટરપ્રીટ છે, ટોચ નીચે, ફાઇલ ડાબેથી જમણે કહેવાય week0.php-- અને પરિણામો બહાર spitting. તેથી આ ફાઈલની અંદર, week0.php હોવા જ જોઈએ પેદા થાય છે કે આ નિયંત્રક તર્કશાસ્ત્ર આ એચટીએમએલ, અને અમે ટૂંક સમયમાં જોશો કે. પરંતુ હવે માટે, મને સપ્તાહ શૂન્ય પર ક્લિક કરો અને હવે અમે બુધવાર અને શુક્રવાર છે અને હવે અમે આ સ્લાઇડ્સ છે ધીમે ધીમે સપ્તાહ શૂન્ય છે. અને તમે યાદ શકે છે જ્યારે પાછા આ રીતે. જેથી આ વેબસાઇટ કરી છે બધા છે. તેથી તે આ શું કરી રહ્યો છે કે કેવી રીતે વિચાર કરીએ. હું માં પાછા જવા માટે જઇ રહ્યો છું CS50 IDE અહીં સ્રોત કોડ, અને હું index.php ખોલવા માટે જઇ રહ્યો છું. આ ફાઇલ ટોચ પર ટિપ્પણીઓ એક ટોળું છે. અને પછી આ ફાઈલની મધ્યમાં, તે તારણ બિલકુલ કોઈ PHP કોડ છે. તમે કોઈપણ ન હોય તો, કારણ કે ઓપન કૌંસ પ્રશ્ન ચિહ્ન PHP ટૅગ્સ, તમે માત્ર HTML મૂકી શકો છો. કારણ કે શું PHP, દુભાષિયો કરવા માટે માનવામાં આવે છે તે આ ફાઈલ વાંચે છે જ્યારે ઉપર થી નીચે, ડાબેથી જમણે તે માત્ર તે વચ્ચે જુએ કોડ અર્થઘટન તે કોણ કૌંસ માર્ક પ્રશ્ન. અને બીજું કંઈપણ તે નથી કે PHP, તરીકે ઓળખી, તે માત્ર બહાર spits. અને HTML સામગ્રી વચ્ચે છે તે માત્ર બહાર બોલે આવશે. તેથી આ ફાઈલની કરી શકે છે index.html કહેવામાં આવે, પરંતુ હું બધું નામકરણ છું એક આધાર પથ્થર તરીકે dot php. એ જ રીતે Lectures.php-- underwhelming છે, તે માત્ર કેટલાક એચટીએમએલ છે. Week0.php, એ જ રીતે માત્ર કેટલાક એચટીએમએલ. પરંતુ હવે આપણે પર મૂકી દો જાણીતું અને સર્વસંમત એન્જિનિયરિંગ ટોપી, અને અમે આ કેવી રીતે સુધારી શકે તે નક્કી કરો. આ કરવા માટે હાર્ડ નથી, પરંતુ હું પ્રકારની નકલ અને પેસ્ટ હસ્તાંતરિત. અને હકીકતમાં, હું અઠવાડિયામાં બે કરો તો, તમે હું કદાચ કરવા જઇ રહ્યો છું શું ખબર? હું છું, week1.php પર જવા માટે જઇ રહ્યો છું બધું પ્રકાશિત કરવા જઈ રહી છે. હું તેને નકલ કરવા જઇ રહ્યો છું, પેસ્ટ week2.php નામની એક નવી ફાઇલમાં, કેટલાક URL ઝટકો, અને મારા માર્ગ પર હોય છે. તેથી અમે છે તેના પર આધારિત છે પહેલેથી સી જોવા મળે છે, આ આસ્થાપૂર્વક, અધિકાર નથી લાગતું નથી. કૉપિ, પેસ્ટ ભાગ્યે જ યોગ્ય ઉકેલ. તેથી અમે શરૂ કરી શકો છો શું આ સુધારો કરવા માટે? જ્યાં તકો છે સારી ડિઝાઇન માટે? હું વિચાર આ સમય સુધીમાં સપ્તાહ આઠ, તે ચાલી રહ્યું છે ખરેખર હેરાન હું બદલવા માંગો છો, તો દરેક એક ફોન્ટ હું માંગો છો, અથવા જો મારા પાના લેઆઉટ માળખું બદલવા માટે. તેથી જ્યાં તક છે સારી ડિઝાઇન માટે? વેલ, શું વિચાર કરીએ આ બધી ફાઈલોને વહેંચી. અહીં અહીં સપ્તાહ છે, સપ્તાહ એક છે શૂન્ય, અહીં lectures.php છે, અહીં જ છે શું index.php-- છે અને અલગ, આશરે શું બોલે છે, આ ફાઈલો દરેક? અરે વાહ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: ઠીક છે, સારી. તેથી એક પેટર્ન ચોક્કસ, જેમાં છે દર વખતે હું વ્યાખ્યાન હું પસંદ હું પેદા થવી જોઈએ ખૂબ જ સમાન દેખાતા પાનું. અને તેથી કદાચ હું કરી શકો છો લાભ હકીકત એ છે કે ખરેખર, ઇરાદાપૂર્વક સંખ્યાની અમે અમારા lectures-- અનુક્રમિત હું પણ વધુ મૂકી શકો છો જો તમારા જવાબ શબ્દો. અને, ખરેખર, આ જ વસ્તુ શું છે કે સપ્તાહ વચ્ચે બદલાતી દાખલો અને તેથી તે મને નીચે સ્ક્રોલ દો લગભગ આ જ સ્થળ માં તેથી અહીં સપ્તાહ શૂન્ય છે, આશરે ટોચ પર. અહીં સપ્તાહ એક સપ્તાહ છે શૂન્ય, સપ્તાહ એક સપ્તાહ શૂન્ય. ઠીક છે, શાબ્દિક તમે જાણો છો, તો કોઈ કાર્યક્રમ, આ માત્ર એક જેમ હવે છે પેટર્ન મેચિંગ ગેમ. તેથી શું અલગ છે? અરે વાહ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: ગુડ, જેથી શીર્ષક અત્યાર સુધીમાં સહેજ બદલાતી રહે છે. શૂન્ય એક માટે, અલબત્ત, રહ્યું છે. જ વાત H1 ટેગ થઇ રહ્યું છે. અને અમે ખૂબ સરળતાથી તેને જોઈ નથી URL ને થોડો લાંબો હોય છે. પરંતુ તે URL ને સહેજ બદલાતા રહે છે. પરંતુ બદલાતી નથી છે તે, હું હિંમત કહે છે, પાનાંની સમાવિષ્ટો મોટા ભાગના એચટીએમએલ ટેગ જ છે, વડા છે એ જ શીર્ષક, લગભગ એ જ છે શરીર એ જ છે, અને લગભગ બાકીનું બધું સિવાય જ છે તે થોડી tweaks. તેથી અમે વિશે કેવી રીતે જઈ શકે છે આ અમુક બહાર ફેક્ટરિંગના? વેલ મને બરાબર પ્રસ્તાવ દો આગામી આવૃત્તિમાં છે. તેથી અહીં આવૃત્તિ એક, હું ચોક્કસ છે જ ફાઈલો, વત્તા અન્ય એક દંપતિ. અહીં index.php-- અને તો પણ છે તમે પહેલાં PHP ક્યારેય ન જોઈ કર્યું શું હું કદાચ આ ઉકેલવા માટે કરી રહ્યો છું તમે અહીં જોઈ છે તેના પર આધારિત problem--? અરે વાહ, થોડો પ્રતિબદ્ધતા છે? કોઈ? હા, પર જાઓ. AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: હા. AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: હું તમને જરૂર છે માત્ર થોડી મોટેથી બોલે છે. AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: ઠીક છે, સારી. અને હું તે think-- તમારી પાસે પણ હું સાંભળવા માટે હાર્ડ શું તમે ઓછામાં મળી રહ્યાં છે કે લાગે છે ઉપર સામાન્ય હતા કે ટેગ્સ, પર સામાન્ય હતી કે અને ટૅગ્સ નીચે, હવે, બહાર કારણભૂત કરવામાં આવી છે અથવા ફાઈલો શું ઉતારી દેવામાં? Header.php અને footer.php-- અને અમે જઈ રહ્યાં છો કેટલાક tweaks બનાવવા માટે ચિંતા તમે સંબોધવા માત્ર માટે, નંબરો બદલવા વિશે ઊભા હમણાં પૂરતું, હું યોગ્ય રીતે તમે સાંભળ્યું હોય. પરંતુ તે ભાવાર્થ હોય તેમ લાગે છે. એક વિશાળ જથ્થો હોય, તો પાનાંની ટોચ પર નિરર્થકતા, અને એક વિશાળ જથ્થો તળિયે નિરર્થકતા, માતાનો શાબ્દિક માત્ર પ્રકાશિત કરીએ અને તે સામગ્રી બહાર કાઢે છે, એક અલગ ફાઈલ જેમ માં મૂકી અમે બહાર કારણભૂત જ્યાં સીએસએસ, ના વિચાર મૂકી ખૂબ સમાન સૌંદર્ય શાસ્ત્ર, એક અલગ dot php ફાઈલ માં, આ mechanism-- જરૂર ઉપયોગ કરે છે C શાર્પ include-- જેવી છે જે અનિવાર્યપણે જાઓ કહીને જેવી છે , header.php સમાવિષ્ટો પડાવી લેવું અને નકલ કરો અને તેમને અહીં પેસ્ટ કરો. પરંતુ શું આ અર્થ એ છે કે હવે છે index.php, હું તે બે લીટીઓ છે. Lectures.php, હું પણ તે બે રેખાઓ હોય છે. Week0.php, હું પણ તે બે રેખાઓ હોય છે. તેથી હવે, હું બદલવા માંગો છો, તો મારા પાના તમામ શીર્ષક, અથવા હું બદલવા માંગો છો મૂળભૂત માળખું, હું માત્ર એક જ જગ્યાએ હવે તે બદલી શકો છો અથવા બે places-- હેડર અને ફૂટર, અનુક્રમે. હવે કોડ શરૂ જોવા માટે થોડી વધુ ભેદી, અધિકાર? પરંતુ જો તમે વિશે વિચારો શું પાનું હું week0.php વિનંતી કરું છું તો doing-- છે, માત્ર પર ચિત્રકામ પર જેમ અહીં week0.php વિનંતી છે ત્યારે, કે શું અર્થ છે? શાબ્દિક, આ ફાઈલ છે તેણે બ્રાઉઝર દ્વારા વિનંતી કરી. વેબ સર્વર એ.કે.એ. CS50 ID-- આ ખેંચે છે ફાઇલ, week0.php, અને વાંચે છે તે ઉપરથી નીચે સુધી, ડાબેથી જમણે. એક લીટી પર, તે તરત જ સામનો ઓપન કૌંસ પ્રશ્ન ચિહ્ન PHP, જરૂરી હેડર dot php, અને તેથી શું PHP દુભાષિયો કે વેબ માં સમાયેલ છે does-- સર્વર, અમે preconfigured કારણ કે તે આપમેળે જાય પાસે માટે header.php માં, નકલો સમાવિષ્ટો, અહીં તેમને pastes. પરંતુ પછી દુભાષિયો સામનો પ્રશ્ન ચિહ્ન બંધ કૌંસ, તેથી તે બધા વિચારી થાય છે. હવે તે માત્ર અકારણ spits લાઇન્સ સાત મારફતે બે, તે માત્ર કાચી HTML છે કારણ કે. આઠ લાઇન નહીં, અને તે કરે છે ફાઇલ ખોલી again-- જ જાદુ, સમાવિષ્ટો પડતો, અને તેઓની જરૂર અથવા તેમને પેસ્ટ અધિકાર પછી અથવા ત્યાં. પરંતુ હું માત્ર એક ભૂલ જશ આપ્યો હતો. આ પછાત આંશિક પગલું છે અમે header.php માં જોવા હોય તો, કારણ કે હું પ્રકારની એક ખૂણામાં કાપી છે. હું ક્રમમાં આપી શું લક્ષણ આ દલીલ વધુ સારી ડિઝાઇન મેળવવા માટે? અરે વાહ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: અરે વાહ, હું પ્રકારની એક nontrivial ખૂણે કાપી. તમે શું બદલાતી હતી કે નિર્દેશ શીર્ષક હતું, શીર્ષક સંખ્યા અને H1 નંબર. તેથી મારા ઉકેલ, બરાબર હતી, ચાલો માત્ર પાનાનું નામ દો, અને તે સાથે વ્યવહાર નથી બિલકુલ સમસ્યા નથી. તેથી કે જે આંશિક છે ખાતરી કરો કે માટે પાછળની પગલું. પરંતુ અહીં નોંધપાત્ર શું છે હું કર્યું છે શું છે કે અન્યથા કારણભૂત છે બધા સામાન્ય સામગ્રી. અને footer.php, હું કારણભૂત નોટિસ કે બધા બહાર, ઓછા યદ્યપિ, સામાન્ય સામગ્રી. તેથી હું અચાનક હવે સમક્ષ રજુ કરવાનો પ્રયત્ન કરવાની જરૂર છે આગળ અન્ય પગલું લેવા, અને સુધારવા કે શીર્ષક મુદ્દાઓ. તેથી આપણે તે કરવા દો. મારા બીજા આવૃત્તિ માં જવા દો અહીં, જે, ફરી, તે જ ફાઇલો ધરાવે છે એક નવી વધુમાં સિવાય. અને તે થોડી વધુ છે વર્બોઝ, પરંતુ જો તમે તે જોવા દો અમે અહીં શું થઈ રહ્યું છે સિવાય પીંજવું કરી શકો છો. તેથી તેના બદલે જરૂરી છે header.php, અને footer.php, હું માત્ર એક જરૂરી હોવાનું જણાય છે ફાઈલ helpers.php, અલબત્ત, કહેવાય છે. અને, મને હવે નિયત દો helpers.php ની અંદર શું છે કાર્યો માત્ર એક ટોળું છે કે હું પહેલાંની જેમ જ લખ્યું હતું. પરંતુ હું તે helpers.php કહેવાય છે. હવે દેખીતી રીતે, માં લીટી ત્રણ અને 10, હું છું બે કાર્યો ફોન હેડર રેન્ડર, ફૂટર રેન્ડર. સાથે આવતા નથી તે PHP, હું તે મારી લખ્યું હતું. અને હું helpers.php તેમને મૂકો. હવે, અમે માત્ર આ વાક્યરચના જોઇ એક વખત, અને તે સુપર સંક્ષિપ્ત હતો. પરંતુ આ દેખીતી રીતે એક દલીલ છે હેડર, કાર્ય રેન્ડર કરવા માટે. હું શા માટે ખબર છે કે નથી? વેલ અહીં એક બંધ કૌંસ છે, અહીં એક ઓપન કૌંસ છે. અને અલબત્ત, જસ્ટ સી માંગો, તે કૌંસ વચ્ચે કંઈપણ એક input-- અથવા છે આ કાર્ય કરવા માટે દલીલ. આ દલીલ માહિતી પ્રકાર શું છે, હું પ્રકાશિત કરી છે તેના પર આધારિત છે? તે ચોરસ કૌંસ શું છેલ્લા અઠવાડિયે પર આધારિત છે, સૂચવે છે? અરે વાહ, તે એરે છે ખાસ એક સમૂહનો એરે. અને આ વાક્યરચના એ સાચું છે થોડી ફંકી છે, પરંતુ આ માત્ર પસાર થાય છે એક કી કિંમતની જોડી છે. કી ભાવ અવતરણ ચિહ્નો પૂરાં કરવાં છે શીર્ષક, અને કિંમત CS50 છે. અમે કર્યું હોત તો આપણે આ સી, તે તેના બદલે કદાચ વધુ આ જેમ દેખાય છે, માત્ર ભાવ અવતરણ ચિહ્નો પૂરાં કરવાં CS50-- અથવા ખરેખર તે સર્પાકાર હશે કૌંસ, અથવા સી કે કંઈક છે, જ્યાં કી શૂન્ય છે, અને કિંમત CS50 છે. પરંતુ ફરીથી, PHP, માં, તેમ છતાં વાક્યરચના, ફરી, થોડી વિચિત્ર છે તે તમને પસાર કરવા માટે પરવાનગી આપે શબ્દો બદલે નંબરો કિંમતો સાથે કીઓ સાંકળવા માટે. તેથી આ બધી શું અર્થ છે? હું helpers.php જાય, તો ચાલો આ કાર્ય જુઓ. renderHeader.php બદલે renderHeader, મારા કાર્ય છે અને હું જુઓ, કારણ કે ખબર છે કે અહીં કાર્ય શબ્દ. આ દેખીતી રીતે તે સી ના નવા છે data-- કહેવાય દલીલ લે છે પરંતુ હું આ કહે છે શકે છે કંઈપણ છે, પરંતુ હું માહિતી તે કહે માત્ર થોડી clean-- હોઈ અને માત્ર ખાસ કરીને, એક અનુમાન લેવા તમે કેટલાક અન્ય પ્રોગ્રામ છે, તો પહેલાં ઉચ્ચ સ્તર ભાષા, કંઈક સી ઉપર, કલ્પનાત્મક. શું સમાન ઓપન કૌંસ કરે કદાચ ચોરસ કૌંસ અર્થ? અથવા તે શું અર્થ શકે? અમે અરે વાહ સી માં આ જોઇ ન કર્યા? એક ખાલી એરે. ખાસ કરીને, આ અર્થ એ થાય કે જો વપરાશકર્તા renderHeader કહી નથી એક દલીલ સાથે, હું હજુ પણ જાઉં છું માહિતી નામની એક દલીલ છે, પરંતુ તેના મૂળભૂત કિંમત છે એક ખાલી એરે હોઈ ચાલે. તેથી તે માત્ર એક સરસ સગવડ છે. હું વપરાશકર્તા અંતે કિકિયારી નથી અથવા તમે મારી કાર્ય ખોટું ઉપયોગ કહે છે. હું માત્ર વપરાશકર્તા ડિફૉલ્ટ આપી શકે છે કિંમત, હું ખાસ કરીને કાળજી ન હોય તો. હવે આ કાર્ય, હું છું મારા હાથ તરંગ જઈ રહી છે. પરંતુ આ અર્ક કાર્ય માટે પરવાનગી આપે છે યુએસ માહિતી આ ચલો પસાર કરવા માટે નીચેની રીતે header.php માં. અને આ છેલ્લા ભાગ છે, હું ફંકી વાક્યરચના, લાગે છે. અહીં મારી નવી આવૃત્તિ છે તે header.php-- શાબ્દિક કહે ઉપયોગ, ઓપન કૌંસ શીર્ષક CS50 છે, અને તે હતી. અને H1 માટે જ વસ્તુ. હવે તે દેખીતી રીતે કહે છે ખૂબ ફંકી કંઈક. અને મને આ સરળ દો એક ક્ષણ માટે અનુસરે છે. આ હું કર્યું શું છે હોઈ મારા શીર્ષક બદલ્યો છે. જો કે, તે થોડી કદરૂપી દર્શાશે PHP, સાથે સતત ઓપન કૌંસ કરવા માટે, અને પછી પ્રિન્ટ કાર્ય વાપરો. તે PHP એક લઘુલિપિ છે કે બહાર વળે માત્ર છે કે જે આ માટે સંકેત, ટેકનિકલી છે, જે એક સમાન સંકેત, કહેવાય કાર્ય છે, તેના બદલે પ્રિન્ટ ઇકો પરંતુ તે અસરકારક રીતે, એ જ વાત છે. કે જે હમણાં જ સારી દેખાય છે. તે માત્ર એક વાકયરચનામાં છે ખાંડ, જો તમે કરશે, કે મારા કોડ થોડી વધુ સારી રીતે જોવા બનાવે છે. પરંતુ તે બહાર વળે છે, અને અમે ફરી આ જોશો લાંબા પહેલાં, અમે આ કૉલ કરવા માટે હોય છે Annoyingly લાંબા કાર્ય કહેવાય HTML ખાસ અક્ષરો PHP, તે બહાર વળે છે, કારણ કે ચોક્કસ ઇનપુટ્સ છે , વપરાશકર્તા અમને આપી શકે છે અથવા વપરાશકર્તાઓ અમને આપી શકે છે, કે અમારી સાઇટ તોડી રહ્યું છે. પરંતુ અમે કે આગામી જોશો જાવાસ્ક્રિપ્ટ સાથે વીક. પરંતુ હવે માટે, માત્ર ખબર છે કે આ ફાઇલ, headers.php, ખાલી શીર્ષક લે છે હું પસાર, તે બનાવવા તે સુરક્ષિત છે તેની ખાતરી વેબ માં ઇન્જેક્ટ કરી પાનું, અને તે મારા શીર્ષક, કે બહાર spits અને મારા H1 છે. તેથી હવે હું આ આવૃત્તિ માં જાઓ તો, વ્યાખ્યાન તેના શીર્ષક પાછા છે કે નોટિસ, સપ્તાહ શૂન્ય પાછા તેના શીર્ષક છે, અને ખરેખર, HTML હું પેદા છું શું મારી પ્રથમ આવૃત્તિ સમાન છે મારા સફેદજગ્યાના સિવાય was--, હું ફોર્મેટિંગ શરૂ કર્યું, કારણ કે અલગ મારા કોડ થોડી. પરંતુ હું બધા પેદા કર્યું હું વિશે કાળજી કોડ. તેથી મારા માટે વિરામ દો માત્ર એક ક્ષણ અને જુઓ કોઇ પ્રશ્નો હોય તો અથવા મૂંઝવણ હું બનાવી છે. બધા હક છે, તેથી આપણે ટ્વિસ્ટ દો થોડો કઠિન અહીં એક હોય તો તે જોવા માટે સુધારણા માટે તક. Helpers.php પણ આ હતી કાર્ય, renderFooter કહેવાય છે. અને વિષે શું છે renderHeader, અને renderFooter? અને ફરી, આજે હેતુઓ માટે, ખબર ઉતારા કાર્ય માત્ર છે કે પસાર દલીલો મારા માર્ગ header.php અને footer.php માં. માફ કરશો? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: અરે વાહ, હું માત્ર લીટી જરૂર બદલાય છે. તેથી શાબ્દિક, હું પાપ કર્યું કૉપિ અને પેસ્ટ, હજુ સુધી ફરીથી. આ એક વિશાળ નંબર નથી લાઇન્સ, પરંતુ થઈ આવે છે હું નકલ અને બધું ચોંટાડીને છું તો માત્ર એક ઓછી શબ્દ બદલવા માટે, અને એક થોડો શબ્દ એલન નિર્દેશ કરે છે કે બહાર છે વિરુદ્ધ, અહીં ફૂટર અહીં હેડર. નહિંતર, બધું છે સમાન સિવાય, અલબત્ત, આ કાર્ય નામો. તેથી અમે વધુ સારી શું કરી શકે? વેલ મને આ આવૃત્તિ ખોલો દો અહીં, જેમાં helpers.php માં, શા માટે હું માત્ર એક મળી નથી આ વિશે સ્માર્ટ થોડું? થોડી વધારે જટિલ લખો કોડ છે, પરંતુ તે રેન્ડર કૉલ? તેથી હું મૂળભૂત શું બદલી? તે દલીલ લે છે now-- બે દલીલો, હજુ પણ માહિતી. અને પછી પ્રથમ શું છે કદાચ માટે ઉપયોગ થાય છે નામ, તમે અહીં વાંચી રહ્યા છો તેના પર આધારિત? પણ જો વાક્યરચના કેટલાક હજુ પણ નવું છે. ડોલર સાઇન નમૂનો શું છે? માફ કરશો? પ્રેક્ષક: હેડર અથવા ફૂટર. ડેવીડના MALAN: હેડર અથવા ફૂટર. તેથી દેખીતી રીતે, હું નક્કી કર્યું કે જો બદલાતી છે કે આ જ વસ્તુ હું શું કરવા માંગો નમૂનો છે print-- અને નમૂના દ્વારા હું આ માટે નકશા છે અર્થ હું આઉટપુટ કરવા માંગો છો કે કોડ છે, પરંતુ હું કેટલાક પ્લગ કરવા માંગો છો કિંમતો તેથી જો તે માત્ર હેડર અથવા ફૂટર, શા માટે હું parameterize નથી છે અને દલીલ ડોલર સાઇન કૉલ નમૂનો? અને તે પછી આ ફંકી વાક્યરચના મને પરવાનગી આપે છે અહીં એક ચલ એક પાથ બનાવવા માટે. તેથી ડોલર સાઇન પાથ ચલ છે. આ વાક્યરચના શું કરે છે તમે પરિચિત છો, તો? અરે વાહ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: ચોક્કસ. નમૂનો છે, તો અવતરણ ચિહ્નો પૂરાં કરવાં ભાવ, હેડર, અથવા નમૂનો છે, તો અવતરણ ચિહ્નો પૂરાં કરવાં ભાવ, ફૂટર, ત્યાં તે લીટી હું પ્રકાશિત કરી છે, રેખા આઠ, ખાલી હેડર, જેમ કે નામ લઈ રહ્યું છે, અને dot php સાથે concatenating. તેથી અમે આ ઓપરેટર ન હતી સી માં આ કોઈ ઓપરેટર છે તમે છો, તો PHP-- એક સુંદર વસ્તુ જાવાસ્ક્રિપ્ટ અથવા જાવા સાથે પરિચિત, તમે વત્તા ઉપયોગ કરી શકો છો શૃંખલીકરણ કરવા સાઇન ઇન કરો. સી, તે neck-- એક પીડા છે છ પી સેટ અને હું તેથી દિલગીર છું, તમારે શું કરવું છે જઈ રહ્યાં છો છે આ તે જે ગળામાં એક પીડા છે શબ્દમાળાઓ એકસાથે જોડવું. શા માટે? વેલ, તમે મળી છે, કારણ કે જો લાંબા સમય સુધી આ છે એક સ્ટ્રિંગ છે, અને લાંબા સમય સુધી આ છે કે અન્ય શબ્દમાળા તમે ફક્ત એક સાથે તેમને પ્લગ કરી શકો છો. શું તમે તેના બદલે સી શું છે? અરે વાહ? AUDIENCE: [અશ્રાવ્ય] ડેવીડના MALAN: તમે malloc છે મેમરી, અથવા સ્ટેક પર ઝાકઝમાળ ઉપયોગ કરે છે. અને તમે ખરેખર હોય છે પૂરતી છે કે જે એરે મોટું કરો આ વત્તા આ ફિટ, વત્તા બેકસ્લેશ શૂન્ય. પછી ઉપયોગ તેમને એકસાથે જોડી લૂપ માટે એક સાથે બિલાડી અથવા જાતે જગાડવો, અથવા યુકિતઓ કોઈપણ સંખ્યા. અને અમે તમને એક દંપતી બતાવવા પી સેટ છ. તે જે ગળામાં એક પીડા છે. અને આ હું વિશે શું અર્થ સાચી છે PHP, વિરુદ્ધ જેમ કે C છે આ વિરુદ્ધ આ. તમે માત્ર જેથી વધુ વિચાર મફત માટે વિધેય, તમે ધ્યાન કેન્દ્રિત કરી શકે, કે જેથી આદર્શ રીતે, મજા પર કોડિંગ ભાગ, તમે હલ કરવા માંગો છો પ્રોજેક્ટ, તેના બદલે નીચા સ્તર minutiae કરતાં. તેથી આ માત્ર પેદા header.php અથવા હું કૉલ જે એક પર આધારિત footer.php. અને ખરેખર હું જાઓ તો index.php માં, નોટિસ બધા છે કે તેના બદલે changed-- છે હેડર રેન્ડર અથવા ફૂટર રેન્ડર ફોન, હું અનુસરતા, રેન્ડર ફોન છું હું કરવા માંગો છો કે જે નમૂનો શાળાના નામ. અને તમે પણ, આ જોશો, સમસ્યા, સાત સેટ અમે તમને ઉપયોગ કરવા માટે પરવાનગી આપે છે, જેમાં એ જ કાર્ય જુમખું બનાવવા માટે અને વિવિધ વેબ પાનાંઓ જુમખું. તેથી તેના બદલે પણ રહેવું કરતાં તે details-- પર વધુ તમે ફરીથી જોશો જે સમસ્યા સેટ જોવા દો seven-- ઉકેલ હવે શરૂઆતમાં વધુ રસપ્રદ સમસ્યા છે. આમ અત્યાર સુધી, કંઇ અમે કર્યું પૂર્ણ સાચવવામાં માહિતી ધરાવે છે. હકીકતમાં, ફક્ત એક જ વખત અમે ક્યારેય સાચવી લીધો છે અમે આ વર્ગ કર્યું કંઈક અમે ક્ષણભર માટે ખૂબ સરળ ડેમો હતી આવે છે ત્યારે બેક, જેમાં અમે સી ફાઇલ IO ઉપયોગ અને હું મારા નામે લખ્યો લાગે છે, અને હેન્નાહ નામ, અને મારિયા નામ, અથવા કદાચ એન્ડી નામ, અને પછી અમે એક CSV ફાઈલ સાચવી અલ્પવિરામ કિંમતો ફાઈલ અલગ થયેલ છે. અને અમે મને લાગે છે fopen-- ઉપયોગ હું યાદ અમે fprintf ઉપયોગ અને અમે એક ફાઇલ સાચવી. હવે, કે સરળ છે ડેટાબેઝ સ્વરૂપ છે. તમે માટે વેબસાઇટ બનાવવા માંગો છો તો Frosh IM મોકલે કાર્યક્રમ, જેમાં નવા આદર્શ રીતે, એક રમત માટે તમે રજીસ્ટર કરી શકો છો કે માહિતી સાથે કંઈક કરવા માંગો છો. છેલ્લા અઠવાડિયે, અમે કંઇ કર્યું આ data-- સાથે અમે માત્ર જણાવ્યું હતું કે, તમે ખરેખર નથી, રજીસ્ટર કરવામાં આવે છે. અથવા કદાચ હું ઇમેઇલ આ પ્રોક્ટોર, અને તે હતી. હું કરી શકે છે પરંતુ જો તે સરસ હશે , કે પ્રોક્ટોર CSV ફાઈલ આપી એક એક્સેલ ફાઈલ જેવી. અથવા વધુ સારી હજુ સુધી, તે કરશે હું કરી શકે છે, તો સરસ હોઈ તે વપરાશકર્તાના નામ મૂકી અને નામો ડોર્મ અને તે તમામ ડેટાબેઝ માં કે માત્ર કાયમ રહે ત્યાં સુધી હું ડેટાને કાઢી નાંખવા પસંદ કરો. પરવાનગી આપે છે કે જે ડેટાબેઝ મને જાણકારી શોધો કરવા માટે. અને ખરેખર, કે જે ડેટાબેઝ શું છે. અમે આજે રજૂ, અને આગામી સપ્તાહ, પણ, ટેક્નોલોજી કહેવાય SQL-- એક સ્ટ્રક્ચર્ડ ક્વેરી અન્ય ભાષા છે કે જે ભાષા. તે આવશ્યકપણે એક પ્રોગ્રામિંગ છે ભાષા, પરંતુ ડેટાબેઝો માટે. અને હવે માટે ડેટાબેઝ માત્ર એક સુપર ફેન્સી આવૃત્તિ તરીકે લાગે છે માઈક્રોસોફ્ટ એક્સેલ, અથવા Google ના સ્પ્રેડશીટ્સ અથવા એપલ નંબર્સ. તે સામાન્ય રીતે પરવાનગી આપે છે કે કાર્યક્રમ છે તમે માહિતી સમગ્ર ટોળું સંગ્રહવા માટે પંક્તિઓ અને કૉલમ્સ માં, તદ્દન જેમ તમે Excel માં કદાચ. પરંતુ શું, ખાસ કરીને જો સરસ છે અમે એક્સેલ સાથે સુપર પરિચિત નથી, શું એસક્યુએલ તમે કરવા માટે પરવાનગી આપે ક્વેરી આ છે કોડ રેખાઓ લખીને માહિતી જ્યાં તમે કરી શકો છો, પણ જો તમારા ડેટાબેઝ, તે એક મિલિયન પંક્તિઓ છે તમે વસ્તુઓ સુપર ફાસ્ટ શોધી શકો છો. હકીકતમાં, એક્સેલ, ખાસ કરીને છે મોટા માહિતી સમૂહો પર ખરાબ. અને હકીકતમાં, થોડા ઉપર વર્ષ પહેલાં, બહાર આવ્યું એક્સેલ માત્ર તમે સંગ્રહ કરવા માટે પરવાનગી આપે છે કરશે data-- જે સુધી 65.535 પંક્તિઓ ખાતે, એક ઘણો જેવી લાગે છે સમય હું ગ્રાડ વિદ્યાર્થી હતા અને હું ઉપર tripping યાદ આ હું પેદા કરવામાં આવી હતી કારણ મારા સંશોધન અને હું CSV ફાઇલો ઝડપથી તેમને વિશ્લેષણ કરવા માગે છે માત્ર Excel માં ખોલ્યા દ્વારા. અલબત્ત, મારું કમ્પ્યુટર માત્ર ક્રેશ થયું છે, હું કરતાં વધુ 65,000 હરોળો હતી કારણ કે. પરંતુ 65.535 જ્યાં આવી હતી? માઇક્રોસોફ્ટ શું કરી હતી, કદાચ? તમે બે તમારા સત્તા સાથે સારી હોય તો શું? અરે વાહ, તેઓ 16-bit ઉપયોગ કરતા હતા કિંમત પંક્તિ સંખ્યા પ્રતિનિધિત્વ કરે છે. અને 16 બે છે 65,536-- ઓછા એક છે, કારણ કે જો તમે શૂન્ય ઇન્ડેક્સ કે હતી એનો અર્થ એ થાય હું કરી શકે છે પંક્તિઓ મોટા ભાગના સંખ્યા. અને તે માત્ર એક ડિઝાઈન નિર્ણય હતો. 16 બીટ્સ સાચવવાથી, તેઓ મને મર્યાદિત તેના બદલે 4 બિલિયન 16,000 પંક્તિઓ, માટે, જે હું આદર્શ હતી હોઈ શકે છે. પરંતુ હવે માટે, અમે જઈ રહ્યાં છો વેબ સંદર્ભમાં આ વધુ રજૂ કરે છે. અને શું SQL વિશે સરસ છે પણ છે તે ખૂબ શક્તિશાળી અને સુંદર છે છતાં વ્યવહારદક્ષ, તે ખરેખર ઉકળે નીચે ચાર ચાવીરૂપ ઓપરેશન્સ, ચાર કી કાર્યો, તમે પસંદ will-- તો, માહિતી પુનઃપ્રાપ્ત શોધ માટે માહિતી માટે; કાઢી નાખો અથવા માહિતી રદ્દ; ડેટાબેઝ પંક્તિઓ ઉમેરવા માટે દાખલ કરો; અને અપડેટ. તમે ક્યારેય Google વપરાય છે તેથી જો સ્પ્રેડશીટ્સ, એપલ નંબર્સ, માઇક્રોસોફ્ટ એક્સેલ, તમે ચલાવવામાં આવી છે, મોટે ભાગે, બધા માનવ તરીકે આ કામગીરી દ્વારા ફક્ત તમારા કીબોર્ડ અને mouse-- ઉપયોગ તમારી આંખો, માહિતી દાખલ ઉપયોગ પસંદ કરો અથવા ડેટા શોધવા માટે, અથવા માહિતી અપડેટ, અથવા કાઢી માહિતી. તેથી આ શું અર્થ છે? વેલ, CS50 માં પૂર્વ સ્થાપિત IDE MySQL કહેવાય કાર્યક્રમ છે. તે મફત, ઓપન સોર્સ છે સુપર લોકપ્રિય છે કે ડેટાબેઝ. ફેસબુક, દાખલા તરીકે, આ માટે તે વાપરે છે તેઓ ઉપયોગ કરે છે તે અન્ય સાધનો વચ્ચે દિવસ. અને ખૂબ જ લોકપ્રિય વેબસાઇટ્સ ઘણો ઉપયોગ તે મોટા ભાગ તે ઝડપી છે કારણ કે અને તે મફત છે, કારણ કે. ચોક્કસપણે છતાં વિકલ્પો અસ્તિત્વ ધરાવે છે. અને તમે કેટલાક સાથે છબછબિયાં કરવાં શકે અંતિમ પ્રોજેક્ટ માટે વિકલ્પો. આ કારણે, દરમિયાન, એક સ્ક્રીનશૉટ છે phpMyAdmin કહેવાય વેબ આધારિત સાધન. તે એક સંયોગ છે કે આ વેબ-આધારિત સાધન પણ છે એક ભાષા માં લખાયેલ છે, PHP, પરંતુ તે શું અર્થ છે તે અમને આપે છે વેબ આધારિત એક ડેટાબેઝ ઈન્ટરફેસ. MySQL સામાન્ય છે, કારણ કે કંઈક ઐતિહાસિક રીતે, તમે માત્ર સાથે વાર્તાલાપ કરશે આદેશ વાક્ય સાથે. અને તે સુપર હશે નકામી અને હોય Arcane પસંદ કરવા માટે શાબ્દિક આદેશો ટાઇપ કરવા માટે માહિતી, માહિતી દાખલ કરો, અને ડેટા કાઢી નાંખો. ઇન્ટરનેટ પર તેથી કેટલાક લોકો વેબ આધારિત કાર્યક્રમ લખ્યું માત્ર અમને મેનેજ કરો દો કે અમારા ડેટાબેઝમાં માહિતી. તે એક્સેલ પર ડબલ ક્લિક જેવું છે, અને તેના વેબ આધારિત આવૃત્તિ ચાલી રહ્યું છે. અને તમારા માટે આ ઉપયોગ જઈ રહ્યાં છો શું આખરે આગામી સપ્તાહ નથી, પી સેટ છ, પરંતુ કંઈક બિલ્ડ છે CS50 ફાયનાન્સ કહેવાય છે, જે એક ડેટાબેઝ હોય રહ્યું છે વપરાશકર્તા નામો અને પાસવર્ડો સાથે વપરાશકર્તાઓ, ડોલર જેટલી છે કે તેઓ તેમના બેંક ખાતાઓ હોય છે. તે હોઈ ચાલે છે તમે સંગ્રહ કરવા માટે ઉપયોગ કરી કંઈક પ્રતીકો અને જથ્થામાં શેરોમાં કે જે વપરાશકર્તાઓને વર્ચ્યુઅલ ઉપયોગ ખરીદી છે તમે તેમને આપવા પડશે કે ડોલર. અને તે વપરાશકર્તાઓ માટે પરવાનગી આપે છે ચાલી રહ્યું છે તમારી સાઇટ માટે રજીસ્ટર કરવા માટે, તેથી પણ તમારા મિત્રો કે તમારી વેબસાઇટ પર કરી શકો છો ટ્યુન અને ખરેખર રજીસ્ટર, પ્રવેશ અને આસપાસ રમવા અને તમારો કોડ દોષ શોધવા માટે પ્રયાસ કરો, અને તમારી વેબસાઇટ ભૂલો શોધવા પ્રયત્ન કરો. અને તેઓ માત્ર દ્વારા રજીસ્ટર પડશે અસરકારક રીતે પોતાને ઉમેરી રહ્યા છે, કોડ મારફતે તમે તમારા ડેટાબેઝ પર લખો. હમણાં પૂરતું, આ એક ઝડપી સ્ક્રીન છે શું ડેટાબેઝ જેમ દેખાય છે. આ એક હતો ગયા વર્ષે solutions-- આ એક મીની એક્સેલ જેવા છે અમારા ડેટાબેઝમાં સંગ્રહ, ફાઈલ, MySQL કહેવાય સોફ્ટવેર માં સંગ્રહાય છે. ડાબી બાજુ પર, હું દેખીતી રીતે કર્યું દરેક વપરાશકર્તા એક અનન્ય નંબર છે આપવામાં આવે છે. બીજા સ્તંભમાં, હું આપી છે દરેક વપરાશકર્તા મારી પોતાની name-- તેમની વચ્ચે. અને જમણી બાજુ પર, હું તેમને એક હેશ આપી છે. હવે આ ખરેખર એક પાસવર્ડ છે, પરંતુ તે એક સાદો લખાણ પાસવર્ડ નથી. તે હોય, તો એનક્રિપ્ટ થયેલ પાસવર્ડ છે તમે કરશે, અથવા હેશ પાસવર્ડ. જે અમે પહેલાં લાંબા પાછા આવો પડશે. પરંતુ તમે ક્યારેય વાંચી કર્યું છે, તો કેવી રીતે વિશે એક લેખ કેટલાક બેંક અથવા કેટલાક તમારો પાસવર્ડ વેબસાઇટ, સમાધાન કરવામાં આવી છે શકે છે તે સામાન્ય રીતે એક બે વસ્તુઓ અર્થ કરી શકો છો. તેથી આ છ વપરાશકર્તાઓ માત્ર એક ટૂંકસાર છે. તમે બધા હવે આકૃતિ કરી શકો છો હેકિંગ અથવા ક્રેકીંગ મારફતે બહાર અમારા છ લોકોના પાસવર્ડો શું છે. પરંતુ તમે ક્યારેય મેળવેલ હોય તો એક ચેતવણી અથવા માફી કંપની અથવા વેબસાઇટ કહેતા, માફ કરશો, હેકર, અમારા ડેટાબેઝમાં ઝળકી તમે કદાચ બદલવો જોઈએ તમારા પાસવર્ડ, કે શું અર્થ છે શકે છે? વેલ, એક અર્થ કરી શકે છે કંપની વધુ moronic રહી છે અને તમારો પાસવર્ડ સ્ટોર કરવામાં આવ્યું છે આ જેમ એક કોલમમાં, એનક્રિપ્ટ. જે વિરોધી અર્થ થાય છે, જે, ડેટાબેઝ ચોરી શાબ્દિક તમારા જાણે વપરાશકર્તા નામ અને પાસવર્ડ. તે સૌથી ખરાબ શક્ય દૃશ્ય છે. અને તમે પી સેટ જોશો સાત ટાળવા માટે ખૂબ સરળ. સંપૂર્ણપણે કોઈ બહાનું કે માટે છે આજે ઇન્ટરનેટ મૂર્ખતા સ્વરૂપ છે. Two-- અને અમે કેટલાક લેખો શોધી શકશો આ હજુ પણ હકીકત એ છે કે આપવું nonetheless-- થાય બે, કદાચ શત્રુ ડેટાબેઝ ની આ આવૃત્તિ ચોરી કરે છે. જે હજુ પણ પ્રકારની ખરાબ છે હવે કારણ કે તેઓ મને છ ગ્રાહકો હોય છે ખબર છે, હું વપરાશકર્તા નામ ખબર તે છ ગ્રાહકો, અને હું એનક્રિપ્ટ થયેલ ખબર આવૃત્તિઓ, અથવા hashed આવૃત્તિઓ, તે છ ગ્રાહકો 'પાસવર્ડ. તમે કોઈપણ પરંતુ જે કદાચ [કર્યું છે? હેકર 2?] તમે પાસવર્ડ્સને તિરાડ, અથવા લીધો છે એક સમસ્યા છે કે આવૃત્તિ જોવા સમૂહ, શા માટે હજુ પણ થોડી worrisome તે છે શત્રુ તમારા હેશ જાણે છે, જો પાસવર્ડો? પ્રેક્ષક: તેઓ કરી શકે છે કારણ કે સમગ્ર શબ્દકોશ દાખલ હેશ વિધેય માં. અને તમારો પાસવર્ડ એક શબ્દકોશ છે, તો શબ્દ, [? તેઓ માત્ર મેચમાં શકો છો?] ડેવીડના MALAN: બરાબર વિરોધી માત્ર તમે કેટલાક જેમ, કોડ લખી શકો છો [માટે કર્યું? હેકર?] 2, તમે ઉપર ફરી વળવું જેમાં શબ્દકોશમાંનાં બધા જ શબ્દો, એક અથવા તમામ શક્ય મિશ્રણોનો Z મારફતે અને nine-- દ્વારા એક જે ઘણો જેવી લાગે છે, અને તે છે. પરંતુ કમ્પ્યૂટર માટે, તે ખૂબ રફૂ ઝડપી છે. અને હકીકતમાં, કે જે હતી [બિંદુ? હેકર 2,?] હતી કે સામગ્રી લેવા માટે શાબ્દિક, આ જેવી લાગે છે અને રિવર્સ એન્જિનિયર તે શું ખરેખર હતી. અમે કેવી રીતે કરી શકો છો જેથી અમે જોવા મળશે વધુ અસરકારક રીતે આ સ્ટોર કરે છે. , Thankfully MySQL માં બહાર ફેંકે છે, ડેટા પ્રકારો હોય જતાં હોય છે. અને લગભગ મજા ભાગો એક ડેટાબેઝ ડિઝાઇન, પ્રમાણિક પ્રયત્ન ખરેખર તમારા માટે નક્કી છે તમે કેવી રીતે માહિતી પ્રતિનિધિત્વ જોઈએ? તમે એક ફોન નંબર પ્રતિનિધિત્વ જોઈએ એક મોટી નંબર, અથવા લાંબા જેવા પૂર્ણાંક? અથવા તમે ખરેખર તે કરવું અક્ષરો એક ક્રમ છે? અને ખૂબ જ હોઇ શકે છે આ નગણ્ય અસરો. આ હકીકત માં, એક પ્રારંભિક, આનંદ સંગત કથાઓ માર્ક ઝુકરબર્ગ મકાન કરવામાં આવી હતી જ્યારે છે ફેસબુક, તે મૂળભૂત માં લખવામાં આવ્યું હતું, અને હજુ પણ મોટા ભાગે PHP, માં લખાયેલ છે. અને સૌથી મોટા પડકારોમાંનો એક તેઓ પ્રારંભિક ઘટાડો કરવામાં આવ્યો હતો પર સામનો કરવો પડ્યો હતો. તેઓ પછી શાળા ઉમેરતા જઈએ ત્યારે SCHOOL શાળા પછી, મારા જ્ઞાન માટે, મૂળ ઉકેલો એક કૉપિ કરો અને પેસ્ટ કરવા માટે આવશ્યક હતી ડેટાબેઝો કેટલાક અને કોડ ઓફ કેટલાક હાર્વર્ડ હતી કે જેથી તેના પોતાના સર્વર પર ચાલી રહ્યું છે, અને એમઆઇટી તેના પોતાના સર્વર પર ચાલી રહ્યું હતું. અને આ હતી શા માટે કેટલાક તમે કોણ યાદ શકે છે, તમે મિત્રો ન હોય શકે અન્ય નેટવર્ક્સ. તમે કદાચ ઓછામાં મિત્રો ન હોય 10 અથવા તેથી વર્ષ પહેલાં એમઆઇટી અથવા હાર્વર્ડ, પરંતુ તમે નેટવર્ક્સ વિસ્તારતા ન કરી શકે આંશિક કારણોસર. અને માટે સૌથી મોટા પડકારોમાંનો એક માર્ક અને ફેસબુક જેવી કંપનીઓ માટે ખરેખર સેંકડો સંભાળવા છે અને હજારો અને લાખો સેકન્ડ પ્રતિ અરજીઓની. તેથી વસ્તુઓ અમે શરૂ કરી શકશો આ અઠવાડિયે વિશે વાત ખરેખર સંગત હોઈ ચાલે છે સારા સોફ્ટવેર, લેખન, અને લોકપ્રિય સફળ સાધનો કે જે વપરાશકર્તાઓ ઘણાં સંભાળી શકે છે. તેથી અમે વસ્તુઓ વિશે વાત કરીશું ઈન્ડેક્સીંગ અને શોધ જેમ, પરંતુ તે આજે તે છે. અમે બુધવારે વધુ માટે તમે જોશો. [સંગીત - "સિનફેલ્ડ" થીમ] ડેવીડના MALAN: તમે કરી શકો છો તે છે, અને તે બાદબાકી. અને તમારી સાથે વળગી નથી મેમરી કેટલાક પૂર્વનિર્ધારિત રકમ. ઠીક છે, શું છે કે કહેવાય રહ્યું છે? 1 વક્તા: ઠીક છે, શું થઈ રહ્યું છે? 2 વક્તા: તમે અર્થ શું છે? તેમણે પ્રવચન આપી છે. ડેવીડના MALAN: અને અમે ઉપયોગ કરી શકો છો કાર્ય મેમરી માટે malloc કહેવાય 1 વક્તા: શા માટે તેના હાથ ખસેડવાની નથી? 2 વક્તા: ઠીક છે that's-- તમે જાણો છો કે, સામાન્ય છે. તે માત્ર છે એવું માત્ર છે મોટા sausages ત્યાં અટકી. 1 વક્તા: કે જે સામાન્ય છે? 2 વક્તા: અરે વાહ, હું અમે લાગે છે માત્ર આકસ્મિક તેઓ ધારે superglue સાથે તેમના ગંધનાશક લીધું.