헬조선

교착상태2016.03.15 19:37

이건 본인의 수준을 봐야 하는건데..., 일단은 윤성우 씨 책이 전채적으로 다 괜찮습니다.

기초책들을 보려고 한다면 그 사람 책으로 공부를 시작하는것도 좋은 방법입니다.

그리고 아직 나이가 어리면 차라리 직훈학원에서 실습 한 6개월 하는게 더 낫기는 할겁니다. 한번 생각해보세요.


일단 무조건 읽어야 하는 책은 마틴파울로의 리팩토링 책이죠.
그리고 컴퓨터 프로그램의 구조와 해석 이라는 책도 나중에 읽으면 좋습니다. 지금으로는 무리죠.



일단 내 경험만 말해보면, c, c++, java 배웠을때 진짜 아무런 개념이 없었어요.
for, if function class interface를 배우기는 했는데 그걸 언제 써야 하는지는 전혀 대학 강사들이 알려주지를 않거든요.
그래서 배워놓고도 멍~ 했죠. 대부분의 대학생 애들이 이런 상태일거구요.


그러다가 자료구조가 꽤 도움이 됬습니다. 레포트를 교수가 2주마다 한번씩 손코딩으로 내라고 말하는 교수님이라서..
지금 생각해보면 그럴수 밖에 없는게 어떠한 의미가 있는 코드를 보는건 그게 처음이었죠

내가 배운걸 말해보는게 좋을것 같네요.
자료구조에서는 내가 생각하는 무엇을 어떤 자료형으로 표현하는게 좋을지 생각할 정도의 개념이 있으면 충분하고
알고리즘의 경우 기계적으로 처리하기 위한 방법? 정도를 알면 될거 같습니다.
뭐 알고리즘이야 자료구조랑 연결되는 분야이니, 자료구조에서 기계적 루틴 개념을 배울수도 있쬬.
나는 자료구조때 배웠습니다.

알고리즘은 최적화라고 지껄이는데 그건아니고, 그냥 하나의 기능을 처리하기 위한, 여러가지 기술수준이 있다는 것정도와
문제의 패턴을 잘 파악하면 상당히 범용적인 코드를 만들수 있다는 것 정도이지요.

1+2+3+4..... 10 이것을 코드로 나열하느냐 함수를 사용하느냐 정도로 재 사용율이 달라지고
이것을 수학식으로 풀으면 계산시간이 말도 안되게 빨라질수 있다는 것이니까요
(계산시간 = n시간에서 상수시간으로 줄어듬,
또 nn, log2n 등 기능에 대한 계산시간을 유추할수 있을 능력을 얻으면
개넘적으로는 알고리즘이라는 수업에서 배울수 있는거 다 배웠다고 보면 됩니다)

네트웤은 교수새끼가 너무 쓰레기에다가 엉망이라 내가 배운건 별로 없네요.
1:1, 1:n n:n 통신정도?

운영체제는 공부하지 마세요. 학부수준의 병신같은 교수새끼들이 가르친건 아무짝에 쓸모가 없습니다.
컴파일러는 정규표현식 만 배워도 성동한겁니다.
소프트웨어 공학은 알면 괜찮기는 한데 사실 그게
개발자가 개발하기 위해서 하는 행동들을 개념적으로 모은 방법론 같은거라
그거 암만 많이 배워봐야 실제적으로 도움되는건 없습니다.

데이터베이스는 sql 한번 배웠다가 까먹는 정도면 충분합니다. 몰라도 되요. 이거때문에 나도 막연히 두려웠는데
그냥 학부생이 데이터베이스를 제대로 접하기가 쉽지 않아서 그런거일 뿐입니다.

ui는 배울수 있으면 배우면 좋아요. ui관련된 책들 훓어보면서 화면구성 방법에 대해 최소한의 지식 정도만 있으면 됩니다.
인공지능은 배울수 있으면 배우면 좋죠. 단 컴파일러에 대한 지식이 어느정도 필요함

어느정도 궤를 같이 하는 경향이 있어 같이 하는것도 방법이기는 하겠죠.

컴퓨터 그래픽은 교수가 역시 개새끼가 날로 말아먹어서 그냥 수업을 넘겼고요.
책에 있는 것만 그대로 가르치는 교수는 그냥 병신이고 개새낍니다.
원래 그래픽으로는 컴퓨터 그래픽의 구성원리? 표현방식에 대한 개념? 이런걸 같이 가르켜야 하는데
뭐 병신들이 그게 될리가 있겠습니까.


뭐 이건 내가 생각하는 각 과목에 대한 평가이고요.



나는 3학년때 코딩이 잡지식은 늘었는데 코딩이 괭장히 두려웠어요.
어떻게 해야 잘 짜는지를 도무지 모르겠었거든요.

그때 도움이 된게 TDD 라는 책이었습니다. 테스트 주도개발 이죠.
거기에 있는 것들 그대로 따라 코드 파이핑 해보기도 하고 하면서 배웠죠.

이건 극단적인 test 우선 개발방식이기는 하지만 개념 자체는 도움이 됩니다.

내가 만들 기능에 대해서 먼저 생각한다-> 코드를 짜고 테스트를 한다는 간단한 걸 실습하게 해주거든요.

현업에 들어가면 test를 잘할수록 좋아요. 초보의 경우 자기 불안감을 극복하는데 엄청난 도움을 줍니다.

초보 개발자의 강박적 불안감은 자기 실력을 잘 모르기 때문이거든요. 자기 지식을 스스로 검증하지를 않았기 때문에 불안한거죠.
test를 통해 코드를 쌓아가며 규모있는 코드를 만들어 본적이 없으니까, 자신이 어느정도까지 할수 있을지를 모르기 때문에 불안한거에요.


암튼, 단위테스트 프레임웤을 써서 test 하는데 그렇게 안해도 되고
그냥 윈도우에 버튼하나 만들고서 버튼 누르면 해당코드를 test해서 msg박스에 결과 표시하는 정도부터 해도 충분합니다.
예를들어 int a에 1-10까지 더하는 코드 만들고 버튼 눌러서 값나오는지 확인해보는거죠.
그정도만 확인하면서 코드를 만들어 나아가도 불안감은 상당히 극복할수 있구요.


뭐 말이 자꾸 앞뒤 없이 말하게 되는데, 책을 살려면 먼저 서평있나 보고, 목차도 한번보고,
해서 사면됩니다.

보통 바이블이라고 말하는 것들은 다 괜찮아요.

아 그리고 stl 안배워도 됩니다. dll도 안배워도 되요.
다 기본응용능력이 있으면 그런거 안배워도 같이 일할때 배우면서 다 할수 있음.



흠... 내가 글은 잘 못써서 요지가 없는데

본인이 뭐가 부족하고 뭐가 필요한지를 내가 전혀 모르기 때문에 뭐라고 말해줘야 할지가 애메해요.

그리고 사실 반드시 배워야 하는건 대학교에서 가르키는게 아니라 먼저 코딩법부터 배워야 하지요.

변수 이름을 어떻게 만들고, 함수이름을 어떻게 짓고, 변수를 언제쓰고 상수들을 어떻게 모으고 하는걸 배워야 하는데

이걸 못하는 사람들이 개발에 대해 많이 어려워 하는거 같더군요.

마틴파울로의 리팩토링이라는 책이 사실 이런거의 핵심을 담고 있기는 한데

리팩토링 자체는 디자인패턴이랑 연관이 되어 있는 부분이라 처음에는 이에 왜? 필요한지를 전혀 이해를 못할 가능성이 있어요.

그러니 먼저 명명법 부터 보는 방법도 좋습니다.


흠,..... 이 부분에 대한 좋은 책은 잘 모르겠고 일단

"좋은 코드를 작성하는 기술" 이라는 책도 초보자가 보기에는 괜찮아요.

나는 더 좋은 방법있나 봤다가 기본적인 것 위주로 나와서 책도 읽다가 말았지만
책 자체는 괜찮죠.

흠....

지금 정신이 내가 하나도 없네요.


일단 "좋은 코드를 작성하는 기술" 이라는 책 먼저 보세요.

그 다음에 구체적으로 질문을 주면 좋을것 같습니다.

일단 책은 그거 확인해서 보면 될거 같구요.

 

사진 및 파일 첨부

여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

파일 용량 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )