안녕하세요. 프로그램 언어 어떻게 접근해야 할지 막막 하시다구요. 저는 IT업계에서 10년 정도 종사한 프로그래머 입니다. 프로그램 업계에서 일한지 10년 정도 된 개발자입니다. 제가 해왔던 업무는 방산 업체에서 펌웨어(C언어) 개발 경험이 있고 자동화 업계에서 비전 프로그램 개발(C#) 경험이 있습니다. 업계에서 일을 하면서 느낀 것은 개발업계에서 코딩을 할 줄 아는 사람 모르는 사람으로 나뉘는 것입니다. 마치 예전 같으면 영어를 아는 사람과 모르는 사람으로 나뉘는 것과 같다고 할 수 있겠습니다. 요즘 자라나는 아이들은 코딩도 교과목으로 자리 잡는 시대라서 이제는 예전 영어공부와 마찬가지로 필수인 시대가 되었습니다. 이제는 인간의 언어를 넘어 기계와 대화해야하는 세상이 된 것입니다.
프로그래머하면 떠오르는 이미지는 밤샘작업, 과도한 업무량 물론 현업에 종사하는 사람으로써 부정하지는 못하겠습니다. 하지만 취미로 접근한다면 이야기가 달라질 것입니다. 요즘 같은 시대에 코딩을 할 줄 아는 것은 많은 장점을 가지고 있다고 생각합니다. 온라인으로 부업을 할 수도 있고 저처럼 강의 자료를 만들어 판매도 할 수 있으며 앱을 개발하여 자기만의 상품을 만들어 판매 할 수도 있습니다. 특히 좋은 것은 PC 한 대만 있으면 실현 가능하다는 것입니다. 무자본으로 돈을 벌 수 있는 파이프라인을 구축 할 수 있는 강력한 무기가 될 수 있습니다.
C언어 기초 개념이라는 책을 찾아보면 대부분 아키텍쳐, 메모리 구조 등을 가장 먼저 이야기 합니다. 물론 중요합니다. 당장에 그런 것을 몰라도 코딩을 할 수 없는 것은 아닙니다. 저도 처음 코딩을 할 때 그런 지식이 전무한 상태에서 프로그램을 했습니다. 그래도 이상 없이 잘 동작합니다. 왜 일까요? 그건 바로 남들이 이미 작성한 코드를 바탕으로 조금씩 수정해서 프로그램 했기 때문입니다. 프로그램을 배우는 가장 빠른 길은 남이 작성한 코드를 분석해서 그것을 바탕으로 자신이 원하는 기능을 구현 해보는 것입니다.
옛날 일본 전설의 검객 미야모토 무사시가 남긴 유명한 어록이 있습니다. 그는 생사를 가르는 싸움에서 단 한 번도 패한 적이 없는 무사 중의 무사인데 그의 어록 중에 ‘백가지 기술 중에서 사람을 죽일 수 있는 기술은 단 한 가지 기술 이다’ 라는 어록을 남겼습니다. 실전에는 화려한 기술보다는 실제 살인을 할 수 있는 기술은 단순하고 직관적인 기술이라는 것을 강조 한 말입니다.
사실 위와 같은 미야모토 무사시의 말처럼 코딩을 하다보면 실제로 코딩을 간결하고 아름답게 하기위해 노력하지만 실전에는 원하는대로 동작이 되기만 하면 됩니다. 코드의 수를 줄이고 간결하게 만들려고 노력하기보다 처음에는 1줄짜리 코드를 10줄로 짜게 되더라도 동작성을 최우선으로 생각하고 프로그램을 하기를 권장 드립니다. 프로그램을 완성 시키는 힘은 바로 긍정적인 기억의 축적, 사소한 것이라도 해냈다는 긍정적인 기억의 축적이 많을수록 포기하지 않고 끝까지 프로그램을 하게 만들어 줍니다. 프로그램이라는 영역은 특히 그런 요소가 필요합니다. 포기하지 않고 프로그램을 하기 위해서는 자신이 하고 있는 프로그램이 제대로 동작 된다는 경험을 계속 쌓는 것을 최우선으로 해주세요. 작지만 성공했다는 경험이 여러분을 프로그래머로써 성장시켜 줍니다.
1. C언어 프로그램 형태
출력 결과
- 헤더파일: 헤더파일은 코딩에 필요한 재료가 미리 정의되어 있는 것이라고 생각하시면 됩니다. 김치찌개를 만들 때 김치를 얻기 위해 김장을 하지 않듯이 미리 담가둔 김치를 꺼내서 쓰는 김치냉장고 같은 존재라고 보시면 됩니다. 코딩을 할 때에도 이와 같은 기능을 하는 코드 저장소가 있고 그것을 불러와서 쓰는 것입니다. 현재 코드에 사용된 ‘cout’ 함수는 iostream.h에 구현 되어 있습니다.
- 변수: 변수는 변하는 수입니다. 여러 가지 타입이 있습니다. 변수 선언은 김치찌개를 끓이기 위해 돼지고기와 김치가 필요하듯이 가공 할 식재료를 준비하는 것과 같습니다.
- 함수: 함수는 변수를 입력 받아 결과를 출력하는 기능을 합니다. 김치찌개를 예로 들면 돼지고기(변수)를 어떤 방법으로 조리(함수)할 것인지 조리방법을 정의 하는 것과 같습니다.
- 프로그램 메인: 프로그램 메인은 실제 프로그램이 시작하는 시작점입니다. 실제로 변수에서 선언된 변수와 함수가 동작을 시작하는 부분입니다. 김치찌개를 예로 들면 준비한 식재료(변수)와 조리방법(함수)대로 요리를 실행하는 부분입니다.
2강에서 계속 됩니다.
'프로그래밍 > C언어 기초 강좌' 카테고리의 다른 글
C언어 기초강좌6 (break, return문) (12) | 2020.12.08 |
---|---|
C언어 기초 강좌5 (Switch~Case 문) (2) | 2020.12.07 |
C언어 기초 강좌4(if문, if~else문) (2) | 2020.11.26 |
C언어 기초강좌3(연산자) (0) | 2020.11.20 |
C언어 기초강좌2 (2) | 2020.09.19 |
댓글