CodeGym /Java Blog /Random /Code to Success and Vital Skill para sa 21st Century Work...
John Squirrels
Antas
San Francisco

Code to Success and Vital Skill para sa 21st Century Workers. Ano ang Computational Thinking?

Nai-publish sa grupo
Ang ilang mga bagay ay gumagawa ng CodeGym na pinakamahusay na online na kurso upang matutunan kung paano mag-code sa Java mula sa simula (sa aming mga mata man lang): maingat na binalak na istraktura ng kurso, diskarte-unang diskarte , napakalaking bilang ng mga gawain (mahigit sa 1200), kapana-panabik at nakakatawang pagkukuwento , mga social feature , atbp. Ngunit gusto naming isipin na ang paggawa namin ng dagdag na milya upang matulungan ang aming mga mag-aaral na magtagumpay ay kung bakit ang CodeGym ang pinakamahusay. Ang aming misyon ay hindi lamang upang tulungan kang matuto ng Java at makahanap ng isang coding na trabaho pagkatapos (o habang nasa kalagitnaan pa ng kurso), ngunit upang suportahan ang iyong pag-unlad, parehong personal at propesyonal, na may naaangkop na kaalaman at impormasyon. 'Code to Success' at 'Vital Skill for 21st Century Workers'.  Ano ang Computational Thinking?  - 1

Ano ang Computational Thinking?

Ang Computational Thinking (CT) ay isang konsepto na tinatawag ng mga eksperto sa industriya bilang 'code to success' at 'vital skill'. Kahit na ito ay medyo simple, ang CT ay maaaring makatulong na higit pa sa software programming. Ang termino ay unang iminungkahi noong 1980 ni Seymour Papert, isang mathematician at computer scientist, bilang isang paraan upang mas mahusay na malutas ang iba't ibang mga problema at gawain na nauugnay sa programming. Ang pag-iisip ng computational ay isang hanay ng mga pamamaraan na nagsasangkot ng pagkuha ng isang kumplikadong problema at paghahati-hati nito sa isang serye ng mga mas maliliit na problema na mas madaling pamahalaan, pati na rin ang pagpapahayag ng kakanyahan ng isang problema at ang solusyon sa mga paraan na maaaring isagawa ng isang computer. Sa madaling salita, bago ka magsimulang mag-coding upang turuan ang isang computer na lutasin ang isang partikular na problema, karaniwang kailangan mong unawain ang problema sa iyong sarili, maghanap ng solusyon, at pagkatapos lamang magturo sa isang computer na harapin ito. Ang computational thinking ay isang paraan upang gawing mas mabilis at mas madali ang prosesong ito, ngunit hindi ito limitado lamang sa programming at maaaring ilapat sa iba't ibang bahagi ng ating buhay. Kahit na ang konseptong ito ay ipinakilala noong 1980, ang pag-iisip ng computational ay nagsimulang makakuha ng pansin ng masa matapos iminungkahi ni Jeannette Wing, isang propesor ng computer science sa Columbia University, na gawing bahagi ng kurikulum ng paaralan ang CT bilang isa sa mga pangunahing kasanayan na dapat taglayin ng lahat ng tao. .

Paano gumagana ang Computational Thinking?

Ang Computational Thinking bilang isang pamamaraan ay binubuo ng apat na pangunahing pamamaraan, na ang decomposition, generalization/abstraction, pattern recognition / data representation, at algorithm. Ang mga ito ay pantay na mahalaga at epektibo kapag inilapat (sa isang problema) sa tamang pagkakasunud-sunod.

  • Pagkabulok.

Magsisimula ka sa decomposition, na naghihiwalay sa isang problema sa ilang mas maliliit na problema na mas madaling lutasin nang paisa-isa.

  • Abstraction (paglalahat).

Pagkatapos ay magpapatuloy ka sa isang partikular na gawain/problema, na eksklusibong nakatuon sa impormasyon na mahalaga upang malutas ito at binabalewala ang lahat ng iba pa.

  • Pagkilala sa pattern (representasyon ng data).

Ang susunod na hakbang ay naghahanap ng mga pagkakatulad sa pagitan ng problemang kasalukuyan mong ginagawa at iba pang mga problema na nalutas na dati (na may magagamit na solusyon). Ang layunin ay makahanap ng mga pattern na maaaring ilapat sa iyong kasalukuyang gawain.

  • Mga algorithm.

At sa wakas, pagkakaroon ng mga resulta ng paglalapat ng mga nakaraang hakbang sa lugar, bumuo ka ng isang algorithm para sa isang hakbang-hakbang na solusyon sa problema. Ang isang algorithm pagkatapos ay maaaring isagawa ng isang computer (o ang iyong utak, na siyang pinakahuling gawain sa paglutas ng computer sa iyong buhay).

Paggamit ng Computational Thinking

Ang pag-alam kung paano gamitin ang CT kapag nakikitungo sa mga isyu at gawain na regular na kinakaharap ng karamihan ng mga developer ng software ay maaaring maging lubhang kapaki-pakinabang sa iyong karera sa coding. "Ang computer science ay hindi computer programming. Ang pag-iisip tulad ng isang computer scientist ay nangangahulugan ng higit pa sa kakayahang mag-program ng isang computer. Nangangailangan ito ng pag-iisip sa maraming antas ng abstraction. Ang pag-iisip ng computational ay pag-iisip nang paulit-ulit. Ito ay parallel processing. Ito ay pagbibigay kahulugan sa code bilang data at data bilang code. Ito ay type checking bilang generalization ng dimensional analysis. Ito ay pagkilala sa parehong mga kabutihan at mga panganib ng pag-alyas, o pagbibigay sa isang tao o isang bagay ng higit sa isang pangalan. Ito ay pagkilala sa parehong gastos at kapangyarihan ng hindi direktang pagtugon at tawag sa pamamaraan. Ito ay paghusga sa isang programa hindi lamang para sa kawastuhan at kahusayan ngunit para sa aesthetics,paliwanag ni Jeannette Wing sa 2006 na papel sa kahalagahan ng pag-aaral ng computational thinking at pagtuturo nito sa lahat ng freshmen sa kolehiyo. Tulad ng nakikita mo, ang pag-iisip ng computational ay hindi para lamang sa mga programmer at computer scientist. Ginagamit ito ng mga tao (kadalasang walang kamalayan) sa lahat ng uri ng propesyon kapwa upang malutas ang mga problemang may kinalaman sa trabaho at sa pang-araw-araw na buhay. Narito ang isang mabilis na gabay sa kung paano simulan ang paglalapat ng computational na pag-iisip sa alinman sa mga gawain sa pag-coding o halos anumang mga seryosong problema na maaari mong harapin sa iyong personal na buhay.

  • Paglalapat ng agnas.

Ang decomposition ay medyo simple ngunit makapangyarihang pamamaraan, na makakatulong sa iyo na harapin ang mga problema/gawain na tila masyadong kumplikado sa unang tingin, at sa gayon ay kadalasang nagiging sanhi ng pagpapaliban at iba pang kahirapan. Ang susi dito ay upang sanayin ang iyong utak na gumamit ng decomposition sa isang regular na batayan, paghahati ng isang gawain sa ilang mas maliliit na gawain na mas madaling lutasin. Kahit na ang agnas ay maaaring mukhang isang napaka-simple at kahit na malinaw na paraan, magugulat ka kung gaano karaming mga tao ang hindi nakakaalam nito, na ginagawang mas mahirap para sa kanila na magsimulang magtrabaho sa malalaking, pandaigdigang mga gawain (tulad ng pag-aaral ng Java, Halimbawa).

  • Paglalapat ng abstraction.

Ang pag-alam kung paano mag-apply ng abstraction ay isang malakas na kakayahan kung alam mo ang pamamaraan at sinanay ang iyong utak na gamitin ito nang walang kamalayan. Ang abstraction ay tungkol sa eksklusibong pagtuon sa impormasyong kinakailangan upang malutas ang gawain habang binabalewala ang lahat ng iba pa. Ginagamit sa kumbinasyon ng agnas, ito ay karaniwang paraan upang lapitan ang halos anumang problema o isyu sa iyong buhay. Kapag nakikitungo sa mahigpit na mga gawain sa pagprograma, ang abstraction ay nakakatulong upang tumutok at maiwasan ang iyong utak na maubos nang masyadong mabilis.

  • Paglalapat ng pattern recognition.

Ang pagkilala sa pattern ay isang mahalagang kasanayan sa coding, dahil pinapayagan ka nitong malutas ang mga gawain nang mas mabilis sa pamamagitan ng paglalapat ng mga pattern ng pag-iisip na pamilyar at komportableng gamitin ng iyong utak. Ito rin ay isang makapangyarihang pamamaraan upang magamit sa mga pangkalahatang problema sa buhay: subukan lamang na suriin ang anumang mga isyu na kinakaharap mo sa iyong buhay at hanapin (at humiram) ng mga pattern mula sa mga bahagi ng iyong buhay na gumagana nang kasiya-siya, na inilipat ang mga ito sa kasalukuyang problema.

  • Paglalapat ng mga algorithm.

Kung iisipin mo, ang buhay natin ay tungkol sa pagbuo ng mga algorithm. Tinatawag natin silang mga gawi. Ang aming utak ay may posibilidad na umasa sa mga gawi sa bawat solong araw, dahil lamang ito ay mas mahusay at sa gayon, praktikal. Ang tanging problema ay karamihan sa atin ay may posibilidad na gawin ito nang hindi sinasadya, na kadalasang nagreresulta sa pagbuo ng mga mali at nakakapinsalang algorithm (tinatawag natin silang masamang gawi o pagkagumon). Ang pag-alam kung paano bumuo ng mga kapaki-pakinabang na algorithm nang sinasadya ay maaaring maging lubhang kapaki-pakinabang na kasanayan sa buhay, na nagbibigay-daan sa iyong makamit ang iyong mga layunin at maging matagumpay. Pagdating sa programming, ang pag-alam kung paano bumuo ng isang algorithm upang malutas ang isang partikular na problema sa pinakamabilis at mahusay na paraan ay kung ano ang pagkakaiba ng isang tao na alam lang kung paano mag-code mula sa isang may karanasan na propesyonal na computer programmer.

Ano ang sinasabi ng mga eksperto?

Bilang konklusyon, narito ang sinabi ng ilang kinikilalang eksperto sa computer science tungkol sa Computational Thinking. Ayon kina James Lockwood at Aidan Mooney, mga propesor sa Unibersidad ng Maynooth sa Ireland at mga may-akda ng 'Computational Thinking in Education: Where does it fit?'ulat, ang pag-iisip ng computational "ay isang mahalagang kasanayan para sa mga manggagawa sa ika-21 siglo." "Bagaman maraming pananaliksik ang isinasagawa sa pagtuturo ng parehong CT at CS [computer science] sa mga paaralan, maraming mga mag-aaral sa ikatlong antas ang hindi kailanman nalantad sa mga konseptong ito. Mahalaga na ang mga mag-aaral na CS at hindi CS ay may mahusay na mga kasanayan sa paglutas ng problema at maaaring makinabang ito nang husto ng CT. Maraming iba't ibang pamamaraan ang iminungkahi at tila ang isang hindi sapilitan na kurso sa CT para sa parehong CS at hindi CS na mga mag-aaral ay isang partikular na epektibo at kapaki-pakinabang na pamamaraan. Nangangailangan ito ng suporta mula sa parehong mga kawani ng administrasyon at pagtuturo ngunit ang mga benepisyong nakalista pareho sa seksyong ito at sa Seksyon 7 ay nagpapakita na maaari itong maging kapaki-pakinabang sa lahat ng kasangkot. Mayroon ding isang malaking hanay ng mga paraan upang magturo ng CT sa mga konteksto ng kolehiyo, kahit na ang karamihan ay may karaniwan ay isang mas praktikal, mga kursong pinangunahan ng talakayan, at karamihan sa mga pamamaraang ito ay tila matagumpay. Iniisip na, marahil, ang mga mag-aaral ng CS ay makikinabang mula dito dahil ginagawang mas madali para sa kanila ang paglipat sa "tradisyonal na programming"," sabi ng mga eksperto. Si Conrad Wolfram, isang kilalang British techno expert at entrepreneur, ay nagtataguyod din para sa pagtuturo ng computational thinking sa mga kolehiyo, atkahit na tinatawag itong 'kodigo sa tagumpay': “Ang pag-iisip sa computational ay ang code sa tagumpay. Napakalakas ng proseso ng paglutas ng problema na nakabatay sa computer sa pagtugon sa mga hamon sa totoong buhay na dapat itong maging pangunahing paksang pang-edukasyon. Hindi bababa sa kung ikaw, tulad ko, ay sumasang-ayon na ang pangunahing layunin ng edukasyon ay dapat na pagyamanin ang ating buhay sa pamamagitan ng paghahanap ng pinakamabisang solusyon sa anumang uri ng mga problema.” Ano sa tingin mo? Ang Computational Thinking ba ay parang gusto mo ng isang bagay na dapat mong gawin nang higit pa sa iyong buhay? Ibahagi ang iyong mga saloobin sa amin sa seksyon ng mga komento sa ibaba!
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION