๊ทผ๋ณธ์ ์ง์คํ๊ธฐ
์ด๋ป๊ฒ ํน์ ํ ํ๋ซํผ์์, ํน์ ํ ์ธ์ด๋ก, ํ๋ฉด์ ๋นจ๋ฆฌ ๋ฆฌํ๋์ฌํ๋์ง ํ
ํฌ๋์ ๊ฐ๋ฅด์ณ์ฃผ๋ ์ฑ
์ ๊ด์ฌ์๋ ์ฌ๋์ ๋ง์๋ ๋ชจ๋ ํ๋ซํผ์์, ๋ชจ๋ ์ธ์ด๋ก, ํน์ ๋ฌธ์ ์ ์ด๋ค ํจ๋ฌ๋ค์์ ์ ์ฉํด์ผ ํ ์ง ๊ด์ฌ์๋ ์ฌ๋์ ๋๋ฌผ๋ค.
Software Engineering Education Can, And Must, Focus On Fundamentals.
์ํํธ์จ์ด ์์ง๋์ด๋ง ๊ต์ก์ ๊ทผ๋ณธ์ ์ง์คํ ์ ์์ผ๋ฉฐ, ๋ํ ๊ทธ๋ ๊ฒ ํด์ผ ํ๋ค.
์ํํธ์จ์ด ์์ง๋์ด๋ง ๊ต์ก์ ๊ทผ๋ณธ์ ์ง์คํ ์ ์์ผ๋ฉฐ, ๋ํ ๊ทธ๋ ๊ฒ ํด์ผ ํ๋ค.
When I began my EE education, I was surprised to find that my well-worn copy of the "RCA
Tube Manual" was of no use. None of my lecturers extolled the virtues of a particular tube or type
of tube. When I asked why, I was told that the devices and technologies that were popular then
would be of no interest in a decade. Instead, I learned fundamental physics, mathematics, and a
way of thinking that I still find useful today.
Tube Manual" was of no use. None of my lecturers extolled the virtues of a particular tube or type
of tube. When I asked why, I was told that the devices and technologies that were popular then
would be of no interest in a decade. Instead, I learned fundamental physics, mathematics, and a
way of thinking that I still find useful today.
๋ด๊ฐ EE ๊ต์ก์ ์์ํ์๋ ๋๋ ๋์ ๋ก์๋น ์ง 'RCA Tube Manual'์ด ์ธ๋ชจ์๋ ๊ฒ์์ ์๊ณ ๋๋ผ๊ฒ ๋์๋ค. ๋์ ๊ต์๋ค ๊ทธ ๋๊ตฌ๋ ํน์ tube ๋ tube ์ ํ์
์ ์ฅ์ ์ ๋ํด ์นญ์ฐฌํ ์ ์ด ์์๋ค. ๋ด๊ฐ ์ ๊ทธ๋ฌ๋์ง ์ง๋ฌธํ์๋ '์ ๋ช
ํ๋ ๋๋ฐ์ด์ค๋ ๊ธฐ์ ๋ค์ 10๋
๋ด์๋ ๋ณ๋ณผ์ผ ์์ด์ง๋ค'๋ ๊ฒ์ ์๊ฒ๋์๋ค. ๋์ , ๋๋ ๊ทผ๋ณธ์ ์ธ ๋ฌผ๋ฆฌ, ์ํ, ๊ทธ๋ฆฌ๊ณ ๋ด๊ฐ ์ค๋๋ ๊น์ง๋ ์ ์ฉํจ์ ๋ฐ๊ฒฌํ๋, ์ฌ๊ณ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ฐฐ์ ๋ค.
Clearly, practical experience is essential in every engineering education; it helps the students to
learn how to apply what they have been taught. I did learn a lot about the technology of that day in
laboratory assignments, in my hobby (amateur radio), as well as in summer jobs, but the lectures
taught concepts of more lasting value that, even today, help me to understand and use new
technologies.
learn how to apply what they have been taught. I did learn a lot about the technology of that day in
laboratory assignments, in my hobby (amateur radio), as well as in summer jobs, but the lectures
taught concepts of more lasting value that, even today, help me to understand and use new
technologies.
๋ช
๋ฐฑํ๊ฒ, ์ค์ฉ์ ์ธ ๊ฒฝํ์ ๋ชจ๋ ์์ง๋์ด๋ง ๊ต์ก์์ ํ์์ ์ด๋ค; ์ด๋ ํ์๋ค๋ก ํ์ฌ๊ธ ๊ทธ๋ค์ด ๋ฐฐ์์จ ๊ฒ์ ์ด๋ป๊ฒ ์ ์ฉํ ์ง์ ๋ํด ๋ฐฐ์ฐ๋๋ฐ ๋์์ ์ค๋ค. ๋๋ ์ฐ๊ตฌ์ค ์์ , ๋์ ์ทจ๋ฏธ (์๋ง์ธ์ด ๋ผ๋์ค) ์์ ๊ธฐ์ ๋ค์ ๋ํด ๋ง์ ๊ฒ์ ๋ฐฐ์ ๊ณ , ๋ํ ์ฌ๋ฆ๋ฐฉํ๋ ์๋ฅด๋ฐ์ดํธ ๋ฑ์์๋ ๋ฐฐ์ ๋ค. ํ์ง๋ง, ์์
๋ค์ ๋ ์ง์์ ์ธ ๊ฐ์น๋ค์ ๊ฐ๋
์ ๊ฐ๋ฅด์ณ์ฃผ๊ณ , ์ด๋ ์ค๋๋ ๊น์ง๋ ๋์๊ฒ ์๋ก์ด ๊ธฐ์ ๋ค์ ๋ํด ์ดํดํ๊ณ ์ด์ฉํ ์ ์๋๋ก ๋์์ ์ฃผ๊ณ ์๋ค.
Readers familiar with the software field will note that today's "important" topics are not
mentioned. "Java", "web technology", "component orientation", and "frameworks" do not appear.
The many good ideas that underlie these approaches and tools must be taught. Laboratory exercises
and other projects should provide students with the opportunity to use the most popular tools and
to experiment with some new ones. However, we must remember that these topics are today's
replacements for earlier fads and panaceas and will themselves be replaced. It is the responsibility
of educators to remember that today's students' careers could last four decades. We must identify
the fundamentals that will be valid and useful over that period and emphasise those principles in
the lectures. Many programmes lose sight of the fact that learning a particular system or language
is a means of learning something else, not an goal in itself.
mentioned. "Java", "web technology", "component orientation", and "frameworks" do not appear.
The many good ideas that underlie these approaches and tools must be taught. Laboratory exercises
and other projects should provide students with the opportunity to use the most popular tools and
to experiment with some new ones. However, we must remember that these topics are today's
replacements for earlier fads and panaceas and will themselves be replaced. It is the responsibility
of educators to remember that today's students' careers could last four decades. We must identify
the fundamentals that will be valid and useful over that period and emphasise those principles in
the lectures. Many programmes lose sight of the fact that learning a particular system or language
is a means of learning something else, not an goal in itself.
์ํํธ์จ์ด ํ๋์ ์ต์ํ ๋
์๋ค์ ์ค๋๋ ์ '์ค์ํ' ์ฃผ์ ๋ค์ ์ธ๊ธ๋์ง ์์์ ์ง์ ํ๋ค. Java, "์น ๊ธฐ์ ", "์ปดํฌ๋ํธ ์งํฅ", ๊ทธ๋ฆฌ๊ณ "ํ๋ ์์ํฌ" ๋ ๋ํ๋์ง ์์๋ค. ์ด๋ฌํ ์ ๊ทผ๋ฒ๊ณผ ํด๋ค์ ๊ธฐ๋ฐํ ๋ง์ ์ข์ ์์ด๋์ด๋ค์ ๋ฐ๋์ ๊ฐ๋ฅด์ณ์ผ ํ๋ค. ์ฐ๊ตฌ์ค ์์ ๋ค๊ณผ ๋ค๋ฅธ ํ๋ก์ ํธ๋ค์ ํ์๋ค์๊ฒ ๊ฐ์ฅ ๋์ค์ ์ด๊ณ ์ ๋ช
ํ ํด๋ค์ ์ด์ฉํ ๊ธฐํ๋ฅผ ์ ๊ณตํด์ผ ํ๋ฉฐ, ๋ํ ๋ญ๊ฐ ์๋ก์ด ๊ฒ์ ๊ฒฝํํ ๊ธฐํธ๋ฅผ ์ ๊ณตํด์ผ ํ๋ค. ํ์ง๋ง, ์ฐ๋ฆฌ๋ ์ด๋ฌํ ์ฃผ์ ๋ค์ ์ค๋๋ ์ ์ด๋ฅธ ๋ณ๋์ ์ํ ๊ต์ฒดํ๋ค ์ด๋ฉฐ ๋ง๋ณํต์น์ฝ์ด๋ฉฐ ๊ณง ๊ต์ฒด๋ ๊ฒ๋ค์์ ๊ธฐ์ตํด์ผ ํ๋ค. ๊ต์ก์๋ค์๊ฒ๋ ์ค๋๋ ์ ํ์๋ค์ ์ฑ๊ณต์ด 40๋
์ ์ง์ํ ์ ์์ด์ผ ํจ์ ๊ธฐ์ตํด์ผ ํ ์ฑ
์์ด ์๋ค. ์ฐ๋ฆฌ๋ ์ด ๊ธฐ๊ฐ๋์ํจ๊ณผ์ ์ด๊ณ ์ ์ฉํ ๊ทผ๋ณธ๋ค์ ์๊ณ , ๊ทธ๋ฆฌ๊ณ ์์
์๊ฐ์ ์ด ์๋ฆฌ๋ค์ ๊ฐ์กฐํด์ผ ํ๋ค. ๋ง์ ํ๋ก๊ทธ๋๋จธ๋ค์ ํน์ ์์คํ
์ด๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ๋ฐฐ์ฐ๋ ๊ฒ์ด ๋ญ๊ฐ ๋ค๋ฅธ ๊ฒ์ ๋ฐฐ์ฐ๋ ๊ฒ์ผ ๋ฟ, ๊ทธ ๊ทธ๊ฑฐ ์์ฒด์ ๋ชฉํ๊ฐ ์๋๋ผ๋ ์ฌ์ค์ ๋ํด ์์ผ๋ฅผ ์๊ณค ํ๋ค.
--David Parnas from Software Engineering Programmes Are Not Computer Science Programmes
Students usually demand to be taught the language that they are most likely to use in the world outside (FORTRAN or C). This is a mistake. A well taught student (viz. one who has been taught a clean language) can easily pick up the languages of the world, and he or she will be in a far better position to recognize their bad features as he or she encounters them.
ํ์๋ค์ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ์ฅ ๋ง์ด ์ด์ฉ๋ ๊ฒ ๊ฐ์ ์ธ์ด๋ค (FORTRAN ์ด๋ C)์ ๊ฐ๋ฅด์น๊ธฐ๋ฅผ ์๊ตฌํ๋ค. ์ด๋ ์๋ชป์ด๋ค. ํ๋ฅญํ๊ฒ ํ์ต๋ฐ์ ํ์๋ค (์ฆ, ๋ฐ๊ฟ ๋งํ๋ฉด, clean language(?)๋ฅผ ๊ฐ๋ฅด์นจ๋ฐ์ ํ์)์ ์ฝ๊ฒ ์ธ์ด๋ฅผ ์ ํํ ์ ์๊ณ , ๋ ์ข์ ์์น์ ์๊ฑฐ๋, ๊ทธ๋ค์ด ๋ถ๋ช์น๊ฒ ๋๋ ํด๋น ์ธ์ด๋ค์ ์๋ชป๋ ํน์ง๋ค์ ๋ํด ๋ ์ ์ธ์ํ๋ค.
-- C. H. Lindsey, History of Algol 68. ACM SIGPLAN Notices, 28(3):126, March 1993.
์ง๊ธ ๊ณต๋ถํ๊ณ ์ ํ๋ ๊ฒ์ด ์ฌ์ฅ๋ ๊ธฐ์ ์ผ๊น ๊ฑฑ์ ๋ฉ๋๊น? ์ ๋ง ๋ฐ ์ ์์๊น ์์ฌ์ด ๊ฐ๋๊น? ๋ง์ ์ฌ๋๋ค์ ์๋ฐ๊ฐ ์ฌ์ฅ๋ ๊ฒ์ด๋ผ๊ณ ๋งํ์ต๋๋ค. ๋ง์ ์ฌ๋๋ค์ ๋ธ๋ฃจํฌ์ค๊ฐ ๋ฐ ๊ฒ์ด๋ผ๊ณ ๋งํ์ต๋๋ค. ์ด๋ป๊ฒ ํด์ผ ํ๋์? FocusOnFundamentals. ์ค๋ผํด๋ง ํ๋ฒผํ๊ธฐ๋ณด๋ค RDB์ ๊ทผ๋ณธ์ ํ๋ฒผํ๋ฉด, ์๋ฐ๋ง ํ๋ฒผํ๊ธฐ๋ณด๋ค OOP์ ๊ทผ๋ณธ์ ํ๋ฒผํ๋ฉด ์ ์ด๋ ํฅํ 5๋
๊ฐ์ ๋ ๋ ํ ๊ฒ์
๋๋ค. ์ด๋ฐ ๊ทผ๋ณธ์ ํ๋ฒผํ๋ ๊ฒ์ ์ธ์ ํ ์ ์๋์? ํ์ ๋ ํ ์ ์์ต๋๋ค. ์ฌํ์ ๋๊ฐ๋ฉด ํ๊ธฐ ์ด๋ ต๋์? ๊ทธ๋ ์ต๋๋ค. ๋ฏธ๋ฆฌ ์ง์ฝ์๋ง ๋งค๋ฌ๋ฆด ํ์๋ ์์ต๋๋ค. ๋จ, ์์ธ๋ ์์ต๋๋ค. ๊ณต๋ถํ๊ณ ์ถ์ด์ ๋ฐค์ ์๋ค๊ฐ๋ ๊ฐ์ด์ด ๋ด๋ค๋ฉด ๊ทธ๊ฒ์ด ์ง์ฝ์ด๊ฑด ๊ทผ๋ณธ์ด๊ฑด ๋งค์ง ํ์ญ์์ค. ํํํ์ง ์์ ๊ฒ๋๋ค. ํ์ง๋ง ๋ง๋ฅ ํด์ผํ ๊ฒ ๊ฐ์์, ๋์ค์ ์ทจ์ง์ ๋์์ด ๋ ๊ฒ ๊ฐ์์, ๋จ๋ค ๋ค ํ๋๊น ๋ฑ๋ฑ์ ์ก๋คํ ๊ธฐ์ ์ ์ฃผ์๋ด๋ ์ด๋ฆฌ์์์ ๋ฒํ์ง ๋ง์ญ์์ค.
์ ๋ ์ฃผ๋ณ์์ ์๋ฐ๋ง ๊ณต๋ถํ ์ฌ๋์ ๋ดค์ต๋๋ค. ๊ทธ ์ฌ๋์ ์๋ฐ๊ฐ ์๋ ๋ค๋ฅธ ์ธ์ด๋ฅผ ๋ณด๋ฉด ์ด๊ฑด ๋๋ ์๊ด์๋ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋ฉฐ ๊ณ ๊ฐ๋ฅผ ๋๋ฆฝ๋๋ค. ์ด๋ ํ๋์ OOP ์ธ์ด์ ํ๊ณ๋ฅผ ๋์ง ์๊ณ ๊ณต๋ถํ๋ ์ฌ๋์ ๋ดค์ต๋๋ค. ๊ทธ ์ฌ๋์ ๋ค๋ฅธ ๊ฒ๊ฐ์ ๊ด๊ณ๋ฅผ ์ฐพ๊ณ ์ฐ๊ฒฐ์ง๊ณ , ๋ ํฐ ๊ทธ๋ฆผ์ ๋ง๋ค์ด ๋๊ฐ๋๋ค. ๋ ์ค์ ํ์๊ฐ OOP(์ฌ์ง์ด๋ ์๋ฐ ์์ฒด)์ ๋ํ ์ดํด๊ฐ ๋ ๊น๊ณ ๋ณธ์ง์ ์ด์์ต๋๋ค. ์ ๋ ์ ์ ๋ ์ด์ ๋น์ทํ ์ฌ๋ก๋ฅผ ์ ํ๊ฒ ๋ฉ๋๋ค.
์๋ฐ๋ฅผ ํ๋ฒผํ๋ ๊ฒ์ ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ ๋์์ OOP๋ ํ๋ฒผํ์ผ ํฉ๋๋ค -- ์ฌ์ค OOP๋ฅผ ํ๋ฒผํ๋ฉด์ ์๋ฐ๋ฅผ ๋ฑํ์ ํ๊ธฐ๋ ์ด๋ ค์ธ ๊ฒ์
๋๋ค. ํ์ง๋ง ์๋ฐ๋ง ํ๋ฒผํ๋ ๊ฒ์ ๋ค์ ํ๋ฒ ์๊ฐํด ๋ณด์ญ์์ค(๊ทธ๋ฌ๋ ์ ๊ฐ ์์ ๋งํ๋ฏ์ด ์ ์๋ค๊ฐ๋ ์๋ฐ ๋๋ฌธ์ ๊ฐ์ด์ด ๋ด๋ค๋ฉด ๊ณต๋ถํ์ญ์์ค). ๋ฏธ๋ฆฌ ๋ฐฐ์์ ํ๊ณ๋ฅผ ๊ธ์ง ๋ง์ญ์์ค. ๊ทธ๋ฆฌ๊ณ ์ข ์ถ์์ ์ธ ์ด์ผ๊ธฐ๊ฐ ๋ ์ง๋ ๋ชจ๋ฅด๊ฒ ๋๋ฐ, ์ฐ๋ฆฌ๋ "์ํฌ๋ผํ
์ค๊ฐ ์ฃฝ๋๋ค"๋ ๊ฒ์ ๋ฐฐ์ฐ๋ ๊ฒ์์ ๊ทธ์น๊ธธ ์ํ์ง ์์ต๋๋ค. ์ฐ๋ฆฌ๋ "์ฌ๋์ ์ฃฝ๋๋ค"๋ ๊ฒ์ ๋ฐฐ์ฐ๊ณ ์ถ์ดํฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ ๋ฐฐ์์ ์ง์ ์ ์ธ ์ฌ์ค์ ์ฒดํ ์ดํ์ ๊ฐ๋ฅํฉ๋๋ค. ๊ณ ๋ก ๋ชจ๋ ๊ณต๋ถ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ท๋ฉ์ ๋ฐํ์ผ๋ก ํฉ๋๋ค(์ด๊ฒ์ด ์ ๊ฐ ๋งํ๋ "๋ชธ ๊ณต๋ถ"์
๋๋ค). ๊ท๋ฉ์, ์ฐ์ญ์ ๊ณต๋ถ๋ผ๊ณ , ๋ ๊ทธ๊ฒ์ ๊ฐ์ฑ์ด๋ผ๊ณ ๊ตฌ๋ถํ๋ ๊ฒ์ ๋ฌด์๋ฏธํฉ๋๋ค. see also
์ตํ๊ธฐ์ ์ถ์ธก๋ก

์ฐ๋ฆฌ๊ฐ ์กฐ์ฌํด์ผ ํ ๊ฒ์ ์ด๋ ํ ๋ฐฉ๋ฒ์ด ์ ๋์ ์ด๋ผ๊ณ ํ๋ ๊ฒ๊ณผ, ๋ฐ๋๋ก ์๋์ฃผ์์ ๋งค๋ชฐ๋๋ ๊ฒ ๋๊ฐ์ง ์
๋๋ค. ๋ฌด์์ด๊ฑด ๊ด์ฐฎ๋ค(anything goes)์ ์ด๊ฒ๋ง์ด ์ ์ผํ๋ค ์ค ํ๋๋ง ๊ณจ๋ผ์ผ ํ๋ ๊ฒ์ ์๋๋๋ค.
์ฌ์ค ์ ์ด์ผ๊ธฐ๋ ์์ฌ์ ์ธ ์ฐจ์์์ ์ฝ๊ฐ ๊ณผ์ฅ๋ ๊ฒ์ผ์ง๋ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. FocusOnFundamentals๊ฐ ์ ์ฉ๋๋ ๋ฒ์๋ฅผ ๊ผญ ํ๊ณ์ง์ ํ์๋ ์์ ๋ฏ ์ถ์ต๋๋ค. ์๋ฐ๋ฅผ ๊ณต๋ถํ๋ค๋ฉด ์๋ฐ์ "fundamentals"์ ๋ ์ง์ค์ ํ ์๋ ์๊ฒ ์ฃ . ํ์ง๋ง ๋ "ํฐ ๊ทธ๋ฆผ"์ ๋ณด๋๋ก ๋
ธ๋ ฅํด์ผ ํ ๊ฒ์
๋๋ค. ๋ด๊ฐ ๊ณต๋ถํ๋ ๊ฒ ์์์ "fundamentals"๋ ๋ฌด์์ด๊ณ , ๋ด๊ฐ ๊ณต๋ถํ๋ ๊ฒ์ด ์ํ ๋ฒ์ฃผ์์ "fundamentals"๋ ๋ฌด์์ธ์ง.
๋ง์ ๊ธธ๊ฒ ํ์ง๋ง ๊ฒฐ๊ตญ DavidParnas๊ฐ ํ ๋ง๊ณผ ๊ฐ์ ์ ์์ ์๋ค๊ณ ๋ณด๋ฉด ๋๊ฒ ์ต๋๋ค.
์ธ์์๋ ์ฐธ ๋ค์ํ ์ฌ๋์ด ์์ต๋๋ค. ๊ท๋ฉ์์ ๊ณต๋ถ๋ฅผ ํด์ผ ์๋๋ ์ฌ๋, ์ฐ์ญ์์ ๊ณต๋ถ๋ฅผ ํด์ผ ์๋๋ ์ฌ๋.. ์๋ฐ๋ฅผ ์ฃฝ๋๋ก ๊ณต๋ถํ๋๋ OOP์ ๊ทผ๋ณธ๋ง์ ํ๋ฒผํ ์ฌ๋๋ณด๋ค ๋ OOP๋ฅผ ์ ๊ฟฐ๋ ์ฌ๋๋ ์์ ์ ์์ต๋๋ค. RDB๊ฐ ์๋ ์ค๋ผํด๋ง์ด RDB์ ์ ๋ถ๋ผ๊ณ ์๊ฐํ๋ ์ฌ๋์ด ์คํ๋ ค ๋ ๋นจ๋ฆฌ RDB์ ๊ทผ๋ณธ์ ๊นจ์น ์๋ ์์ต๋๋ค. ์ปดํ์ผ๋ฌํ๋ฌธ์ด ๋์ค๊ณ ํฌํธ๋ ์ธ์ด๊ฐ ๋์จ ๊ฒ์ ์๋๋๋ค. ์ด๋ ํ๋์ ๋ฐฉ๋ฒ๋ง์ด ์ณ๋ค๊ณ ์๊ฐํ์ง๋ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ด๋ค ๊ฒ๋ ์ก๋คํ์ง๋ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ฌ๋๋ง๋ค ๋๋ฌด๋ ๋ค์ํ ๊ฐ์ฑ์ด ์๊ฒ ์ง์. --์๋ฌด๊ฐ
์ฐ์ , ์ ๊ฐ OOP๋ RDB ๋ฑ ๊ทผ๋ณธ์ ๊ณต๋ถํ๋ผ๊ณ ํ ๋ง์ OOP, RDB ์ด๋ก ์๋ง ๋ถ์ก๊ณ ๋์ด์ ธ๋ผ๋ ์๋ฏธ๋ก ๊ณกํดํ์ ๋ฏ ํฉ๋๋ค. ์๋ฐ ๋ง๊ณ OOP๋ฅผ ๊ณต๋ถํด๋ผ๋ ๋ง์ด ๋ถ๋ ์๋ฐ์ฑ
์ ๋ณด์ง๋ง๊ณ OOP ์ด๋ก ์๋ง ๋ณด๋ผ๋ ๋ง๋ก ์คํด๋์ง ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค(์ ๋ ์์ฆ๋ค์ด OOP ๊ณต๋ถ๋ ์ค๋ชฐํ ํฌ์์ ์์ํ๋ ๊ฒ์ด ์ข์ง ์์๊น ์๊ฐํ๊ณ ์์ต๋๋ค). ๊ทธ๋ฆฌ๊ณ ์ก๋คํ๋ค๋ ๊ฒ์ ์ฌ๋ฌ๊ฐ์ง ๋์ ๋ถํ๊ฒ ์์ฌ์์ด ์ฒด๊ณ๊ฐ ์๋ค๋ ๊ฒ์
๋๋ค. "X๊ฐ ์ก๋คํ๋ค"๊ณ ํ๋ ๊ฒ์ X ์์ ์๋ ๋ด์ฉ๋ฌผ์ด ์ฒด๊ณ๊ฐ ์๋ค๋ ์ด์ผ๊ธฐ๊ฐ ๋ฉ๋๋ค. ์ก๋คํ๋ค๋ ๊ฒ์ ์กด์ฌ ์งํฅ์ด ์๋๊ณ ๊ด๊ณ ์งํฅ์ ํํ์
๋๋ค. --๊น์ฐฝ์ค
{{|
Q: What advice do you have for computer science/software engineering students?
Q: What advice do you have for computer science/software engineering students?
A: Most students who are studying computer science really want to study software engineering but they don't have that choice. There are very few programs that are designed as engineering programs but specialize in software.
I would advise students to pay more attention to the fundamental ideas rather than the latest technology. The technology will be out-of-date before they graduate. Fundamental ideas never get out of date. However, what worries me about what I just said is that some people would think of Turing machines and Goedel's theorem as fundamentals. I think those things are fundamental but they are also nearly irrelevant. I think there are fundamental design principles, for example structured programming principles, the good ideas in "Object Oriented" programming, etc.