일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- JAVA 개발 환경 설정
- !doctype html
- HTML정의
- select
- ::first-line
- img
- BR
- ::before
- ::first-letter
- Li
- table
- Border
- BODY
- textarea
- tag
- 속성 선택자
- 인라인 레벨 요소
- rowspan
- 전체 선택자
- Ol
- ul
- :active
- Python
- JavaScript
- option
- 한정수 강사님
- Head
- Form
- colspan
- Title
- Today
- Total
개발 공부 기록하기
개발자가 되려면 문과생 사고 방식을 버려라? 본문
이번 강의 제목을 보고,
'나.. 비록 자연계열이긴 하지만 나름 이과 전공인데, 문과생 사고 방식이 과연 있을까....?'
라고 생각했다.
그런데,
ㅇㅇ...있더라....(충격)
전공 떠난지 너무 오래 됐나봐.....🤣
대체적으로 문과생과 엔지니어(이과생 포함)의
'문제 해결'을 위한 사고 방식이 다르더라!
문과생의 사고 방식 배경
1. 문과생이 배운 학문은 사실 논술에 가깝다.
2. 정해진 답이 없다. (코에 걸면 코걸이, 귀에 걸면 귀걸이)
3. 문제의 해결책이 하나의 유일한 해결책이 아니어서 두루뭉술하게 표현된다.
→ 이것이 개발자에게는 치명적인 단점으로 다가올 수 있다!
이렇게 문제 해결 하지 말자!!
1. 문제를 하나의 큰 덩어리로 보는 습관
A코드, B코드, C코드 작성했을 때, 문제가 발생하면
각각의 코드에서 문제를 해결하려고 해야 한다!
A, B, C 코드 전체가 잘못됐다고 생각한다 (×)
A와 B, B와 C 간의 조합이 잘못됐다고 생각한다 (×)
2. 문제를 한 방에 해결해 주는 해결책을 찾으려는 태도
나와 똑같은 문제 상황에 봉착한 사람의 질문과 그에 대한 답변을 찾아 헤맨다 (×)
3. 해결책을 빨리 찾지 못하면, 내가 해결할 수 있는 수준이 아니라고 판단
내가 해결할 수 없는 수준의 문제라고 생각하고 바로 선배 개발자한테 물어보러 간다 (×)
엔지니어(이과생 포함)의 사고 방식 배경
1. 문제의 답이 정해져 있는 경우가 많다.
2. 정답이 없는 문제더라도 단계별 과정이 중요하다.
3. 문제의 원인과 해결책이 명확하게 표현된다.
이렇게 문제 해결 하자!!
1. 문제를 여러 단계로 쪼개보기
이 방식만 쓰더라도 문제 해결이 되는 경우가 70% 이상이다.
결국 알고 보니 엄청 단순한 문제인 경우도 많다.
2. 여러 단계로 쪼개어 작아진 문제의 해결책을 하나씩 구글링하기
내가 맞닥뜨린 문제와 정확하게 일치하는 해결책을 찾기 힘들다.
3. 문제의 해결책을 못 찾으면, 오히려 그것을 즐기기
내가 어떤 방식으로 문제에 접근하는지 곰곰이 생각해보자.
오랜 시간 나에게 학습된 '문제 해결 방식'을 고수하지 말자.
개발 공부는 수학처럼,
1. 공식 암기보다는 문제 풀이와 오답 분석에 focus!
Java 문법을 배웠으면, 그걸로 직접 코드를 작성해 보자.
2. 직접 작성한 코드에 문제가 발생하면, 문제의 원인을 분석하자!
3. 수학 문제 오답 분석 = 개발의 디버깅(debugging)
4. 개발자로 일할 때, 업무 시간의 50% 정도는 이미 작성된 코드에서 발생한 문제를 찾고 해결하는 일(디버깅)이다.
5. 개발자의 실력 차이는 디버깅 능력 차이에서 확연히 드러난다.
누구나 코드를 작성하는 것은 할 수 있으나,
남이 작성한 코드에서 문제를 찾거나 해결하는 것은 더 많은 경험과 지식을 필요로 한다.
6. 개발 공부 시작부터, 엔지니어처럼 문제를 해결하는 연습을 하자!
★★ 훌륭한 개발자들의 학습법을 참고하되, 이후에는 나만의 개발 방식을 만들어 나가는 것이 중요하다.
'프밍 > [인강] 비전공자를 위한 개발자 취업 올인원 가이드' 카테고리의 다른 글
반드시 읽어봐야 할 개발 학습법 19가지(2) (0) | 2022.10.22 |
---|---|
반드시 읽어봐야 할 개발 학습법 19가지(1) (0) | 2022.10.20 |
개발 분야별 주요 언어의 특징 - 앱 개발 (0) | 2022.10.12 |
개발 분야별 주요 언어와 특징 - 웹 프론트엔드 (0) | 2022.10.12 |
개발 분야별 주요 언어와 특징 - 웹 백엔드 (0) | 2022.10.12 |