무모한 도전... 조언 부탁드립니다

jejudo의 이미지

안녕하세요
종종 이곳에서 좋은 글을 읽곤 했었는데 오늘은 처음으로 가입하고 글을 씁니다.

저는 컴퓨터와 관련이 없는 분야에서 일하는 평범한 직장인입니다. 타블렛이나 스마트폰 등의 교육용 어플리케이션에 관심이 항상 많았었는데, 작년에는 프로그래밍을 배워보고 직접 만들어보고 싶어서 7개월 쯤 전에 무턱대로 독학을 시작했습니다. 딴에는 열심히 했습니다. 주로 동영상 강의와 인터넷에 돌아다니는 교재를 이용해서 C, C++, Objective-C를 공부했고 지금은 xcode의아이폰/아이패드 프로그래밍을 배우고 있습니다. 첫번째 목표는 아이패드용으로 간단한 단어외우는 어플리케이션을 만드는 것인데요, 이곳에 계신 전문가 선배님들께서 보시기엔 참 무모한 도전이었을지도 모르겠습니다. (아마추어리즘을 용서하시기 바랍니다)

언어를 공부할때는 그리 큰 막힘은 없었고 재미있게 배웠습니다. 그런데 그 언어를 갖고 실제로 하드웨어에서 구동되는 것을 만드는 것은 매우 큰 어려움을 느낍니다. 현재는 xcode에서 실습을 하고 있는데 정말 이해가 잘 안되는 부분이 많습니다. 예를 들면, objective-c나 c++ 등의 기본적인 문법을 이용해서 수학이나 논리적인 계산을 하는 것은 할 수 있는데, 이미지나 버튼이 들어가고 서로 메시지를 보내는 부분이 되면 정말 헷갈리기 시작하네요. (Windows API도 잠깐 배워볼 기회가 있었는데 xcode와 마찬가지로 이해하기 힘들었습니다) 그러한 한계가 계속 느껴지다 보니 지금은 조금 지쳐 버렸네요.
(머리 나쁜 것 제외하고) 제 원인이 뭘까 생각해 보았는데 혹 OS 및 컴퓨터구조와 같은 computer science의 기초를 공부하지 않아서 그런 것은 아닐까 하는 생각이 들었습니다. 이리저리 알아보니 국내 디지털 대학교의 컴퓨터 과학과에 편입해서 직장 끝나고 학과과정을 따라가면 어떨까 생각해 보았는데 어떻게 생각하세요? 물론 아이폰 어플 만드는 것은 결국 몇년 미뤄지겠지만 그 길이 올바른 길이라면 늦어도 상관없습니다.
혹 그게 효과적인 길이 아니라면 저에게 주실 수 있는 조언이 있으신지요?
읽어주셔서 감사합니다.

jejudo의 이미지

잘못해서 글이 두번 올라갔네요. 혹시 올려진 포럼 글을 어떻게 지울 수 있나요?

snowall의 이미지

버튼 눌러서 상호작용하게 하는건 OS나 컴퓨터 구조랑 별 관련 없습니다. GUI로 뭔가 하는걸 원하신다면, 그런게 나와있는 강의에서 예제를 그대로 따라가서 만들어 보시고, 거기서 조금씩 바꿔가면서 이해하면 됩니다.

그런 기능들이 어떤 언어에서든지 결국은 어차피 어떤 함수를 호출하는 것인데, 그걸 호출하면 화면에서 뭔가가 바뀌게 되죠. 화면에서 뭘 하면 함수가 호출되거나 하기도 하고요.

화면 디자인은 요새는 UI디자이너 프로그램이 다 알아서 해주니까 거기서 막힌거라면 그냥 디자이너 프로그램을 쓰세요. GTK라면 Glade가 있고, wxWidget이라면 wxGlade가 있고, 비주얼 스튜디오라면 내장되어 있고, 아마 xcode도 뭔가 있을거예요. 안해봐서 모르지만.

따라서, 당장은 밑바닥은 몰라도 됩니다.

피할 수 있을때 즐겨라! http://melotopia.net/b

bt의 이미지

지금 경험하시는 문제는 프로그래밍 관련으로 보이네요.

대학에서 다양한 것을 배울 수 있으나 지금 겪으시는 문제를 직접 해결해주지는 않을 거에요.

지치는 것이 느껴지면 잠시 다른 주제의 프로그래밍을 해보거나 좀 더 쉬운 것을 손대 보시는 것은 어떨지요?

이응준의 이미지

기초를 공부하는 것은 많은 경우 큰 도움이 되지만, 지금 어려움을 겪고 계시는 원인이 그것인지 확실치가 않습니다.

이해가 잘 안되는 기능에 대해, 코드나(공개되어 있다면) 문서를 잘 읽어보시고, 그래도 이해가 안되시면 구체적으로 어디가 이해가 안되는지 다시 질문해보시는 것이 좋겠습니다.

jejudo의 이미지

조언에 감사드립니다. 한동안 길을 잃은 듯 했는데,, 정말 큰 도움이 되었습니다.
제시해주신 방향에 동의합니다. 다시 힘을 내서 열심히 해보겠습니다.

감사합니다!

jw8704의 이미지

저도 처음에 WINAPI 를 공부할때 그랬습니다..

저도 독학으로 C언어부터 공부했는데 , WINAPI 를 처음배울때 솔직히 함수 이름부터도 너무 길고 프로그래밍 방식이나 , Visual studio 를 사용해서 프로그래밍 하는것도 뭔가 classic 해 보이지않고 , 많은것이 했갈렸죠.

윈도우 프로그래밍은 windows.h 헤더파일을 포함하기만 하면 winapi 를 사용할수있으므로 메모장으로도 코딩해서 컴파일하는것은 가능하나 그 절차가 복잡하기에 visual studio 를 사용해서 편하게 합니다.

여러가지 궁금하신것이 많겠지만..

GUI 형태의 프로그래밍이 익숙하지않으셔서 그럴테니.. 예제 코드를 많이 작성해보시면서 분석해보시고 하면 도움이되실것같네요..

시간은 좀 걸립니다.. 열심히한다고했을때 2년~3년정도요..

아 , 그리고 위에 댓글 달아주셨지만.. 컴퓨터 구조론이나 운영체제론,, 대학교의 교과과정을 공부하시면 도움이야되겠지만 , 지금 갖고계신 궁금증들을 해결하는데에는 그런것을 공부하시지않으셔도됩니다만.. 책 목차정도는 한번 쭉읽어보시는것도.. 좋겠네요

shint의 이미지

맥부기 카페' 공개 강좌나 질문 답변들 보시면 도움 되실겁니다.
http://cafe.naver.com/mcbugi/

xcode 의 device 별 이미지 자동 인식
http://blog.daum.net/jiin_k/30
최신 Xcode 4.2 이상에서 구형 iPod Touch (iOS4.2 이하) 를 이용하여 iOS4.2 이하 버전 디바이스 디버깅하는 방법
http://blog.saltfactory.net/93

xcode를 모르지만.
- 디버깅'을 통해 값을 충실히 확인' 하시는게 중요합니다.
- UI 리소스와 코드의 생성과정을 통해 각각 그룹 짓는 그림을 그려보시는게 좋습니다. 아마 책에 나올겁니다.

하드웨어는
당근이의 AVR 갖고놀기
cafe.naver.com/carroty
여기 가보세요.

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com