[Powered by Google Translate] NATE HARDISON: જ્યારે તમે મળ્યો છે બહુવિધ કાર્યક્રમો પર ખોલવા
કોમ્પ્યુટર, તે બધું જેવા લાગે છે
તે જ સમયે ચાલી રહ્યું છે.
ઉદાહરણ તરીકે, તમે જેવા વેબ બ્રાઉઝર કામ થઈ શકે છે
ફાયરફોક્સ અથવા Internet Explorer, આઇટ્યુન્સ પર સંગીત સાંભળીને
અને વર્ડ સાથે એક નિબંધ લખવા.
જોકે, હૂડ હેઠળ, વાસ્તવમાં કાર્યક્રમો
એક સમયે ચલાવો.
તે ઓપરેટિંગ સિસ્ટમ કામ છે, વિન્ડોસ, મેક OSX, અથવા
Linux, આ અલગ પ્રક્રિયાઓ દરેક મેનેજ કરવા માટે છે,
કાર્યક્રમો પણ જાણીતા છે, અને તેમની વચ્ચે સ્વિચ તેથી કે જે તમે જ્યારે
તમારા Facebook પૃષ્ઠ ચકાસણી પરથી તમારા નિબંધ પર કામ પર જાઓ
ફરીથી, વર્ડ એ છે કે જે ચાલી રહ્યું છે તે જ છે.
>> કેટલીકવાર, જોકે, અમે પોતાને કરવાનો પ્રયત્ન કરવા માટે કાર્યક્રમો કરવા માંગો છો
આ જેવી ઘણી વસ્તુઓ પણ કરવું.
જો તમે મારી જેમ છો, તો તમે કદાચ સમૂહ છે
વિવિધ ટેબો તમારા વેબ બ્રાઉઝર, એક ઇમેઇલ માટે ખોલો,
કૅલેન્ડર સાથે એક અને તેથી.
અમે એક અલગ કાર્યક્રમ અથવા પ્રક્રિયા તરીકે દરેક ટેબ સારવાર કરી શકે છે,
જેમ કે Google Chrome કરે છે, પરંતુ ઘણા પ્રોગ્રામો એક ઉપયોગ
પ્રક્રિયાને આવૃત્તિ હળવા વજનના એક થ્રેડ તરીકે ઓળખાય છે.
>> થ્રેડ માત્ર પ્રક્રિયા બીજા એકમ, સમૂહ છે
સૂચનો અથવા કોડ કે "ચલાવો" કરી શકો છો, ક્વોટ અવતરણ ચિહ્નો પૂરાં કરવાં,
વારાફરતી અન્ય સૂત્રો સાથે.
આ એ છે જે શક્ય તમે ફેસબુક બ્રાઉઝ કરવા માટે બનાવે છે
જ્યારે પૃષ્ઠભૂમિ મને સાંભળી અથવા બે હોય છે
YouTube વિડિઓઝ જ સમયે રમે છે.
તેથી, આ સામાન્ય વિષય, સમાંતર તરીકે ઓળખાય છે, ખાસ કરીને
કરતું નથી તેથી કમ્પ્યૂટર સાયન્સ કોર્સમાં શરૂઆતમાં આવો નથી
કારણ કે નીચલા સ્તરના વિગતો ચર્ચા જરૂર
ઓપરેટિંગ સિસ્ટમો અને જેમ.
જોકે, પ્રોગ્રામીંગ ભાષા અમે તેનો ઉપયોગ
શરૂઆત CS50 છે, સ્ક્રેચ, કેટલાક નિફ્ટી સાધનો પૂરા પાડે
તેને સરળ બહુવિધ વસ્તુઓ સાથે કાર્યક્રમો લખવા માટે બનાવવા
એકવાર પર જઈ રહી છે.
>> જ્યારે તમે સ્ક્રેચ કાર્યક્રમો બીલ્ડ કરવા, તમે સતત છો
સૂત્રો સાથે કામ કરે છે.
દરેક સ્ક્રેચ સ્ક્રિપ્ટ, જે કોડ બ્લોક સાથે શરૂ થાય છે
એક "જ્યારે" પઝલ ટુકડાઓ, પ્રયોજી શકાય છે
એક અલગ થ્રેડ તરીકે.
ચાલો એક સરળ સ્ક્રેચ કાર્યક્રમ જોવા માટે આ કેવી રીતે કામ કરે છે જુઓ.
>> અહીં, અમે એક માછલી પદાર્થ, અથવા સ્પ્રાઈટ મળી છે બે સ્ક્રિપ્ટો સાથે,
કે બંને શરૂઆત જ્યારે અમે લિટલ ગ્રીન ધ્વજ બટન ક્લિક કરો.
પ્રથમ સ્ક્રિપ્ટ એ માછલી ગતિ નિયંત્રિત કરે છે.
જ્યારે લીલો ધ્વજ ક્લિક કર્યું છે, માછલી મૂકવામાં નહીં
સ્ક્રીનની ડાબી બાજુ પર, સ્ટેજ કહેવાય છે,
જમણી સામનો.
અમે પછી સૂચનો કે કાયમ સ્કોર પડશે સમૂહ છે, ત્યાં સુધી
કાર્યક્રમ બંધ, માછલી જમણી બાજુએ ગ્લાઇડ્ઝને,
આસપાસ વળે છે, ડાબી બાજુ જાય છે, અને
આસપાસ ફરી વળે છે.
બીજા સ્ક્રિપ્ટ એ માછલી વિચાર પ્રક્રિયા નિયંત્રિત કરે છે.
તે તારણ છે કે આ એક ભૂખ્યા માછલી છે.
તેથી 3 સેકન્ડો માટે રાહ જોયા પછી, માછલી લાગે કરશે,
"હું ભૂખ્યા છું," ચોથા, બીજા માટે.
આ સ્ક્રિપ્ટ પણ કાયમ ચાલે છે.
અને અમે કાર્યક્રમ ચાલી રહ્યો છે, પર ક્લિક કરીને જુઓ
લીલો ધ્વજ, બંને સ્ક્રિપ્ટો ચલાવો દેખાશે
વારાફરતી.
માછલી ફરે છે અને તે જ સમયે વિચારે છે.
>> કારણ કે ગરીબ માછલી તેથી ભૂખ્યા લાગે છે, ચાલો કેટલાક ઉમેરો
તે ખાય માટે છટાદાર puffs.
આસ્થાપૂર્વક તેઓ પાણીમાં ન વિખંડન થવું પડશે.
જ્યારે અમે બીજા સ્પ્રાઈટ માં ઉમેરવા માટે, અમે પણ કરી શકશો
કે સ્પ્રાઈટ અનુરૂપ સ્ક્રિપ્ટો માં ઉમેરો.
અને, તેથી, ત્યાં બીજી સેટ હશો
થ્રેડો કે સ્કોર પડશે.
અમારા કાર્યક્રમ નિયંત્રણ વપરાશકર્તાને પર આપે છે જ્યારે
ભૂખ્યા માછલી ખોરાક મળે છે, ચાલો કહે છે કે જ્યારે પણ જગ્યા
બાર ફટકો છે, છટાદાર puffs માટે સ્ટેજ પર દેખાશે
માછલી ખાય છે.
પહેલાં અમે જગ્યા પટ્ટીને દબાવો, અમે છટાદાર રાખવા માંગો છો પડશે
puffs છુપાયેલ છે કે જેથી માછલી તેમને જોઈ શકે છે.
આ કરવા માટે, અમે માટે સ્ક્રિપ્ટો એક દંપતી જરૂર પડશે
છટાદાર સ્પ્રાઈટ puffs.
પ્રથમ સ્ક્રિપ્ટ, ગ્રીન ધ્વજ, માત્ર ખોરાક છુપાવશે.
અન્ય સ્ક્રિપ્ટો અમે તેવા પરચૂરણ ખર્ચ કર્યો છે જેમ નહિં પણ, આ એક નથી રાખશે
કાયમ ચાલી રહ્યું છે.
તે શરૂ કરો અને ખૂબ જ ઝડપથી સમાપ્ત થશે, અધિકાર જ્યારે અમે ક્લિક કરો
ગ્રીન ધ્વજ બટન.
>> આગામી સ્ક્રિપ્ટ અમે માટે જગ્યા પટ્ટી પ્રયત્ન રાહ કરશે
ચલાવવા પહેલાં દબાવવામાં.
અમે વપરાશકર્તા ઈનપુટ માટે "રાહ જોઈ" અથવા "સાંભળી" રાહ જોઈ કહી શકો છો
ઇવેન્ટ માટે.
અને તે કોડ ચલાવે છે જ્યારે ઘટના અથવા પ્રાપ્ત છે
સાંભળ્યું ઘટના હેન્ડલિંગ કોડ તરીકે ઓળખાય છે.
અમારી જગ્યા પટ્ટી ઘટના સંભાળનાર પર છટાદાર puffs બતાવશે
સ્ક્રીન જેથી માછલી તેમને ખાય કરી શકો છો.
આ બિંદુએ, બધું good looking છે.
>> આગામી વસ્તુ અમે જરૂર બહાર આકૃતિ કેવી રીતે છે
માછલી ખ્યાલ છે કે ત્યાં ખાવા માટે ખોરાક છે.
ચાલો માછલી બીજા થ્રેડ કે સતત ઉમેરો
તપાસમાં કે નહીં તે છટાદાર puffs સ્પર્શ છે.
અમે એક અલગ થ્રેડ કે આપણી કરી શકો છો કારણ કે આ કરવા
સતત ખોરાક માટે ચકાસો.
અન્યથા, અમે માત્ર સમયાંતરે ખોરાક માટે તપાસો કરવાનો પ્રયત્ન છો
ગ્લાઈડિંગ વચ્ચે, આસપાસ દેવાનો, રાહ અથવા વિચારવાનો.
>> ઠીક.
હવે આપણે આપણા સ્ક્રેચ કાર્યક્રમ ચલાવો.
ઈચ્છિત તરીકે, ખોરાક તરત જ છુપાવી દે છે અને
ભૂખ્યા માછલી ફરી swims અને આગળ પહેલા ગમશે.
જ્યારે આપણે સ્પેસ બાર ફટકો છે, છટાદાર puffs દૃશ્ય આવે છે,
અને ભૂખ્યા માછલી whoo કહે છે.
પરંતુ રાહ જુઓ, તે વિચિત્ર છે.
કેવી રીતે આવે છે તે માછલી વિચાર ઈન્ટ્રપ્ટો "હું ભૂખ્યા છું"
અન્ય સામગ્રી?
આ કારણ છે કે અમે કોઈ સંકલન નથી અધિષ્ઠાપિત કરી નહોતી
ત્રણ માછલી સ્ક્રિપ્ટો વચ્ચે.
દરેક તેના પોતાના થ્રેડ માં ચાલી રહ્યું છે શું oblivious
અન્ય કરવાનું છે.
ચાલો આ ઠીક પહેલાં આપણે પર ખસેડો.
>> થ્રેડો વચ્ચે સંકલન અમે કારણ કે મુશ્કેલ કાર્ય છે
નથી ત્યારે દરેક થ્રેડ સ્કોર પર સ્પષ્ટ નિયંત્રણ હોય અથવા ન હોય
સ્કોર નથી.
એક થ્રેડ બીજા સંદેશો મોકલો, અમે જરૂર પડશે
એક થ્રેડ એક ચલ કે અમે સેટ, અથવા લખી શકો છો, ઉપયોગ
અને અન્ય માં વાંચો.
ચાલો એક ચલ કહેવાય foodFound કે અમે સેટ કરી શકો છો બનાવો
સાચું જ્યારે માછલી છટાદાર puffs માં ચાલે છે.
વેલ, અલબત્ત, અમે ખાતરી કરવા માટે કે અમે તેને સુયોજિત કરવા માંગો છો
શરૂઆતમાં ખોટું.
પછી, આ માછલી વિચારસરણી સૂત્રમાં, અમે જોવા માટે ચકાસો પડશે જો
માછલી "હું ભૂખ્યા છું" પ્રદર્શિત કરતાં પહેલાં ખોરાક મળી છે
બબલ વિચાર્યું.
>> હવે, કાર્યક્રમ ચાલી ફરી, અમે જુઓ કે માછલી
નથી વિક્ષેપ ન મળી ભૂખ વિચારો સાથે જ્યારે
છટાદાર puffs ગઈ છે.
અંતિમ સમસ્યા અમારી પાસે છે કે છટાદાર puffs ન જાય તો
, તેમને માછલી દૂર, અવતરણ ચિહ્નો પૂરાં કરવાં ઉદ્ધત "ખાય છે".
માછલી સ્ક્રિપ્ટો પ્રતિ, કોઈ સરળ કરવા માટે છટાદાર છુપાવવા રીત છે
puffs, તેથી અમે છટાદાર puffs એક સંદેશ મોકલવાની જરૂર છે
પોતાને છુપાવવા સ્પ્રાઈટ.
અમે બીજા ચલ સાથે આવું કરી શકે છે કે છટાદાર puffs
સ્પ્રાઈટ વપરાશ, તેમજ માછલી સ્પ્રાઈટ છે.
>> જો કે, ત્યાં એક ક્લીનર આ કિસ્સામાં આવું માર્ગ છે,
તેના બદલે એક સ્ક્રિપ્ટ કે એક સંદેશ મોકલવાની થી
ક્યાંક ચલાવવા મધ્યમાં, અમે મોકલી શકો છો
એક સ્ક્રિપ્ટ કે શરૂ કરવા રાહ જોઈ છે સંદેશ.
અમે માછલી કર્યા દ્વારા આવું એક ઘટના, એક અમે પડશે પ્રસારણ
યોગ્ય જે પણ કહે છે.
પછી, અમે છટાદાર puffs કે જે માટે એક સ્ક્રિપ્ટ બનાવી પડશે
આ ઇવેન્ટ માટે રાહ જુઓ.
આ જગ્યા પટ્ટી ઘટના જેવી જ છે કે આ સિવાય છે
સમય, તો વપરાશકર્તા સીધા ઘટના સર્જાઈ એક નથી.
હવે અમે હોય તો અમારા foodFound ચલ પાછા સુયોજિત છે
ખોટા, અને અમે હવે ઘણી તરીકે ભૂખ્યા માછલી આપી શકે છે
છટાદાર puffs કારણ કે તે ઇચ્છે છે ઓફ પિરસવાનું.
>> તેથી ખૂબ ખરાબ નથી, અધિકાર?
સી માં, મલ્ટી થ્રેડેડ લખવાનું વધુ જટિલ હોય છે,
પરંતુ મૂળભૂત સમાન હોય છે.
કોઈપણ રીતે, હું આશા છે કે તમે એક મહાન કેટલાક મજા મકાન સમય છે
સ્ક્રેચ માં સહવર્તી કાર્યક્રમો.
મારું નામ Nate Hardison છે.
આ CS50 છે.