전체 글
-
코딩 사고법 : 문제를 흐름으로 풀어내기, 잘게 쪼게서 흐름을 따라.알라딘 코딩 2025. 3. 21. 11:26
사람은 어떤 문제를 해결하고자 생각할 때 입체적(전체적, 종합적)으로 하는 것 같습니다.어떤 해결해야 하는 문제가 있을 경우, 이를 전체 덩어리의 형태로 생각하는 것 같습니다. 마치 그림을 보는 것 같이, 전체의 모습을 보는 듯이 사고를 하는 것 같습니다. 프로그램 코딩은 한 번에 전체를 보는 그림이 아니라, 음악과 같이 흐름이 있는 방식으로 접근을 해야 합니다. 또는 마치, 글의 흐름으로 생각을 적는 것과 같다고 생각합니다. 프로그램 코딩은 그림을 그리는 것이 아니라, 흐름을 만드는 음악을 작곡하거나 글을 쓰는 것과 더 유사한 것 같습니다. 이런 습관이 안되어 있어서 처음 코딩을 할 때는 어려움을 느끼는 것 같습니다. 컴퓨는 전자적으로 숫자를 다루는 기능을 하는 기계이며. 다음의 특징을 가지고 ..
-
코딩 사고법 : 프로그램은 Function(함수) 부품의 조립알라딘 코딩 2025. 3. 20. 13:22
같은말을 여러번 하는건 귀찮은 일입니다. 퇴근 후 한잔하는 맥주집에서 화장실 비밀번호는 종이에 적어서 잘 보이는 곳에 두지요, 매번 물어볼때 마다 말을 하기 귀찮으니까요. 책도 마찬가지 입니다. 이전의 XXX Page 의 내용을 참고하세요, 라고 적지 매번 같은 설명을 적지는 않지요. 프로그램에서의 함수도 마찬가지 역할을 합니다. 저쪽에 있는 이미 만들어 놓은 이러이러한 일을 하라고 지시하는 것이 함수를 호출하는 것 입니다. 매번 같은 코드를 여러번 적지 않아서 코드의 중복(사람으로 치면 같은 말 여러번 하지 않는것) 과 같습니다. 함수를 이용하면 코드의 중복을 없앨 수 있습니다. 그리고, 함수를 이용하면 프로그램의 기능들을 부품들로 만들고 그 부품들을 조립하는 식으로 만들 수 있습니다. 아..
-
Variable(변수)와 데이터 종류알라딘 코딩 2025. 3. 19. 09:58
프로그래밍 언어는 크게 "High Level 언어"와 "Low Level 언어"가 있습니다. 이중 "High Level 언어"중 대표적인 게 Python이며, "Low Level 언어"는 C 언어입니다. Low Level 언어는 저수준이라고 번역되는 경우가 많은데, 이는 수준이 낮다는 의미가 아닙니다.상세하고, 세부적인 사항을 다를 수 있다는 의미입니다. 컴퓨터에 더 가깝다는 의미로 봐야 합니다.사람이 프로그램을 작성하려면 세세한 부분을 지정해줘야 하며, 대신 더 실행 속도가 빠르고 OS 관련 세부 사항들을 처리할 수 있습니다.컴퓨터에 가깝다는 말은 컴퓨터가 알아듣는 숫자로 변환하기가 더 용이하다는 의미(컴파일)도 됩니다. High Level 언어는 반대로 사람에 더 가깝기 때문에 코딩을 하기 편하지만..
-
어떤 프로그래밍 언어를 배우는 것이 좋을지 ?알라딘 코딩 2025. 3. 16. 16:31
많은 종류의 프로그래밍 언어가 있습니다. C , C++JavaPythonJavaScriptRustSwiftKotlinDartGo 등등이중 어떤 언어를 배우는 것이 좋을까요? 프로그래밍 언어는 인간의 언어와는 달리 , 사람이 어떤 목적에 의해서 만든 언어입니다. 앞의 글에서 적었듯이, 컴퓨터는 숫자로만 동작하고, 어떤 일을 시키는 것도 숫자로만 할 수 있습니다. 아래의 이미지는 맥용 Power Point 실행 프로그램 파일의 내용입니다. PPT 파일을 열은 것이 아니고, Power Point 실행 프로그램의 내용입니다. 그림에 나와 있는 것과 같이 사람으로서는 알아볼 수 없는 숫자들로 이루어져 있습니다. 아주 초기에는 컴퓨터 프로그래밍을 이렇게 컴퓨터가 실행해야 할 일들을 이렇게 "숫자들"로 ..
-
코드(Code) , 코드 블록(Block), 블록내의 Variable알라딘 코딩 2025. 3. 16. 13:14
이번글에서는 코드블록에 대해서 적어 보겠습니다.실이 모여서, 천이 되고, 천으로 옷을 만듭니다.여러 개의 톱니바퀴들이 모여서 시계가 됩니다.하나의 서랍장 안에는 여러 개의 서랍이 있습니다. 프로그램도 마찬가지입니다.한 줄의 코드 라인이 있고, 여러 라인이 모여서 블록이 되고, 여러 개의 블록들이 프로그램이 됩니다. 프로그램 코딩의 최소 단위는 라인이며, 라인이 모여 블록이 되고 이 블록들이 상호작용을 하면서 프로그램이 됩니다. 블록은 여러 라인의 코딩 라인이 모여 어떤 기능을 하는 덩어리라고 생각할 수도 있습니다. 상자 안에 여러 개의 물건이 있는 것처럼 코드 블록에는 여러 개의 코드 라인이 있습니다. 또, 블록 안에는 또 다른 블록을 넣을 수도 있습니다. 이 블록은 왜 필요할까요.? 프로그램 코딩을..
-
variable : 변수 -> 상태값알라딘 코딩 2025. 3. 13. 09:47
프로그래밍에서 어떤 값을 기지고 있는 작은 저장소를 우리말로는 '변수'라고 부릅니다.수학용어, 영어의 variable 을 직역한 것으로 보입니다. 프로그래밍 언어를 공부하다 접하는 여러가지 낯설은 용어중 하나는 '변수'란 단어입니다. 변수는 수학용어의 '변수' 영어 variable 이니 , 어떤 값을 가질 수 있다는 의미이지만, 우리는 일상에서 변수를 보통 , '어떤 일은 이런 변수가 있어...' 와 같이 예견되지 않은 어떤 상황을 지칭할 때 많이 사용합니다. 그래서 프로그래밍 언어에서 '변수'라는 단어를 만나면 낯설고 어렵게 느껴집니다. 저는 프로그래밍에서 영어 variable 을 '변수'라기 보다는 '상태값 저장소' 라고 번역하는게 어떤가 합니다.좀 길기는 하지만, '상태값 저장소'가 varia..
-
코딩은 컴퓨터가 해야할 일의 목록알라딘 코딩 2025. 3. 12. 10:21
"...가라." "... 먹어라." "... 해라." 위의 문장은 모호하지요. 명령어는 있는데 목적어가 없습니다. 컴퓨터는 전자적으로 수를 다루는 기게이며, 지시한 대로만 수행하는 아주 융통성 없는 물건입니다.사람처럼 유추를 할 수 없으며, 유추를 해서도 안됩니다. 요즘 나오는 AI 는 마치 컴퓨터가 생각을 하는 것 처럼 느끼게 하지만, 사실은 통계와 확률을 기반으로생각하는 것 처럼 보이는 것이고, 이 또한 사실은 지시된 대로만 움직이는 동작을 하는 것입니다. 융통성이 없는 컴퓨터에게 지시를 내릴때는 항상 정확히 무엇을 어떻게 하라고 지시를 해야 합니다. 그래고 그 해석이 확실해야 합니다. 모호성이 있으면 안됩니다. 모호성이 있다는 것은, 우리가 코딩에 사용하는 프로그래밍 언어에서 주어진 명..
-
숫자 단위의 의미 , 숫자에 대한 정의알라딘 코딩 2025. 3. 10. 18:01
위의 숫자 1은 무엇을 의미할까요 ? 온도가 1도 이다 ?한국돈 1원 이다, 1 달러다 ?한달의 첫번째 일인 1일이다 ? 첫번째 달인 1월이다 ?각도 1도라는 얘기인가 ?1 이라는 부호인가 ?학교 성적 1등이다 ? ... 숫자 만으로는 하나의 물리량만을 나타냅니다. 단위가 없으면 그 의미를 모르게 됩니다. 그래서, 숫자에는 단위를 적어서 그 의미를 정확하게 합니다. 섭씨 1도, 1원 , 1등 당연하지만, 1 이라는 부호만을 적어서는 그 의미가 정해지지 않습니다. 코딩에서도 마찬가지 입니다. 숫자를 명시할 때, 그 의미가 무엇인지를 알려 줘야 합니다. 컴퓨터는 모호한것 , 불분명한 것에 대해서는 처리를 하지 못합니다. 수를 바탕으로 움직이는 기계이다 보니, 항상 정확하게 어떤 것을 해야 ..