ํ์ด์ฌ ํํฐ๋ผ๋ ์ฌ์ดํธ๋ฅผ ์๊ณ ๊ณ์ ๊ฐ์? ํ๋ฒ ์ฌ์ฉํด๋ดค๋๋ฐ ๋ณต์กํ ์ฝ๋ ๋ด์ฉ์ ํ์ค์ฉ ์คํ์์ผ ์ฝ๋์ ๋ด์ฉ์ ์๊ฐํํด์ ๋ณด์ฌ์ฃผ๋ ํธ๋ฆฌํ ํด๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฌ๋ฌ ๋ชจ๋๋ค์ ์ฌ์ฉํ์ฌ ์ด๋ค ํ๋ก์ ํธ์ ์ ๋ฐ์ ์ธ ํ๋ฆ์ ํ์ธํ๊ธฐ๋ณด๋ค๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ๋์ผ๋ก ํ๋ฆ์ ํ์ธํ ์ ์๋ ์ฉ๋๋ก ์ฌ์ฉํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋๋ค์.
์ฌ๊ทํจ์ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋ณดํต ๋จธ๋ฆฌ์์ผ๋ก ์๊ฐํด์ ํ๋ฆ์ ํ์ ํ๊ธฐ ์ฝ์ง ์์๋์? ์๋๋ฉด ๋งค์ฐ ๋ณต์กํ ๋ค์ค ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋... ์ด๋ฐ ๋ก์ง ๋ถ๋ถ์์ ์ดํด๊ฐ ํ์ํ ๋ ์ ๋ง ์ ์ฉํ ์ฌ์ดํธ ์ธ๊ฒ ๊ฐ์ต๋๋ค.
ํ์ด์ฌ ํํฐ
Visualize your code and get live help now ๋งํฌ๋ฅผ ํด๋ฆญํ๋ฉด ์ง์ ํ์ด์ฌ ์ฝ๋๋ฅผ ์ ๋ ฅํ๋ฉด์ ํ์ค ํ์ค ํ์ธ์ด ๊ฐ๋ฅํฉ๋๋ค.
ํ์ด์ฌ ์ฌ๊ทํจ์ ํ๋ฆ ์์
def listSum(numbers):
if not numbers:
return 0
else:
(f, rest) = numbers
return f + listSum(rest)
myList = (1, (2, (3, None)))
total = listSum(myList)
ํํ์ด์ง์ ๋์์๋ ๊ฐ๋จํ ์ฌ๊ทํจ์ ์์์ ๋๋ค.
์ด๋ฐ ์์ผ๋ก ๋ณต์กํ์ง ์๋๋ฐ ์๊ฐ๋ณด๋ค ๋จธ๋ฆฌ๋ฅผ ์กฐ๊ธ ์จ์ผํ๋ ์ฝ๋๋ค!์ ์๊ฐํํด์ ํ์ธ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋ ํ์ด์ฌ ํํฐ์ ๋๋ค.
Visualize Execution ๋ฒํผ์ ๋๋ฅด๋ฉด ํด๋น ์ฝ๋๋ก ํ๋ฆ์ ํ๋จ๊ณ์ฉ ์๊ฐํํด์๋ณผ ์ ์๊ณ
Live Programming Mode๋ฅผ ํด๋ฆญํ๋ฉด ์ฝ๋๋ฅผ ์์ ํ๋ฉด์ ํ์ธํ ์ ์์ต๋๋ค.
ํ์ด์ฌ ํํฐ ์ฝ๋ ์๊ฐํ ํ๋ฆ
์ด๋ฐ์์ผ๋ก ํ์ค์ฉ ๋ก์ง์ด ์ด๋ป๊ฒ ๋ณํ๊ณ ์๋์ง, ํ์์ ์์ ์๋ฃํ์ ์ํ๊ฐ ์ด๋ป๊ฒ ๋์ด ์๋์ง...
๋ฑ ๋ณด์๋ง์ ์๊ณ ๋ฆฌ์ฆ์์ ์ดํด ์๋๋ ๋ถ๋ถ์ ํ์ธํ๊ธฐ ์ํด ์ฐธ ์ฌ์ฉํ๊ธฐ ์ข์๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์์ต๋๋ค.
๊ฐ ์ค๋ง๋ค ์คํ์ ํด์ฃผ๊ณ ๋ฌด์๋ณด๋ค ๋ฐ๋ณต๋ฌธ์ ๋์๊ฒ ๋๊ฑฐ๋ ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๊ฐ ๋ก์ง์์ผ๋ก ๋ค์ ๋ค์ด๊ฐ ๋ฐ๋ณตํ์ฌ ์งํ ์ํ๋ฅผ ์ผ์ผํ ํ๋์ฉ ๋ค ๋ณด์ฌ์ค๋๋ค.
ํนํ ์ด๋ฐ ์ฌ๊ทํจ์๊ฐ์ ๋ถ๋ถ์์๋ ์์ผ๋ก ๊ทธ๋ฆฌ๋ฉด์ ํ์ค์ฉ ํ์ธํด๋ ๋ง์ด ํท๊ฐ๋ฆฌ๋๋ฐ ์ ๋ง ์ดํดํ๊ธฐ ์ฝ๊ฒ ์๊ฐํํด์ ๋ณด์ฌ์ฃผ๋๊ฒ์ด ํ์ด์ฌ ํํฐ์ ์ต๋ ์ฅ์ ์ธ ๊ฒ ๊ฐ์ต๋๋ค.
์ด ์ฌ์ดํธ๋ UC San Diego์ Philip Guo ๊ต์๋์ด ๊ฐ๋ฐํ์ ๊ฒ์ ๋๋ค. ์ ์ ๊ณผ์ ์ ๋ํ ๋ด์ฉ์ ์๋ ๋งํฌ์์ ํ์ธ ๊ฐ๋ฅํฉ๋๋ค.
http://pgbovine.net/publications.htm#Online_Python_Tutor_web_based_program_visualization_SIGCSE_2013
์ ๋ ์์ง ๋ง์ด ์ฌ์ฉํด๋ณด์ง๋ ์์์ง๋ง, ์ ๋ง ์ ์ฉํ๊ฒ ์ ์ฌ์ฉํ ์ ์์ ๊ฒ ๊ฐ์ ์ฌ์ดํธ์ ๋๋ค. ํ์ด์ฌ ํํฐ๋ง์ ๋๋ค๋ฅธ ๊ฐ์ ์ ํ์ด์ฌ ๋ง๊ณ ๋ Java, C, C++, Javascript, TypeScript, Ruby์ ๊ฐ์ ์ธ์ด๋ก๋ ๋๊ฐ์ด ์ฝ๋์ ์๊ฐํ๋ก ํ๋ฆ์ ํ์ธํ ์ ์์ต๋๋ค.
๋๊ธ