이렇게 보면 이해하기 쉬울거임. 너가 지금 A라는 문제를 해결해야 함. 이 문제를 해결하기 위해서는 B라는 문제를 먼저 해결하고 그 결과물로 C라는 문제를 이어서 해결해야함. 만약 너가 a라는 함수 하나만 만들어서 그 안에 몽땅 코드를 담아 A라는 문제를 해결하는데 쓴다면 지금 당장은 괜찮음. 하지만 개발하다보면 뭐 C를 먼저 해결하고 그 결과물로 B를 이어서 해결한다거나 아니면 뭐 다른거 하는 와중에 B나 C를 중간에 해결해야한다거나 뭐 이럴 때가 되게 자주 발생하거든. 그러면 너는 이미 a라는 함수 안에서 B와 C를 해결했음에도 B나 C를 해결해야 할 다른 상황에 a를 전혀 재활용할 수 없게 됨. 그러니 b라는 함수에 B를 해결하는 코드를 담고 c라는 함수에 C를 해결하는 코드를 담은 다음
익명(125.137)2021-10-14 11:56
답글
a에서는 그냥 b와 c를 호출하기만 한다면 나중에 전혀 연관 없는 쌩뚱맞은 곳에서도 여전히 b와 c를 재활용할 수 있게 되겠지.
익명(125.137)2021-10-14 11:56
답글
제대로 된 프로젝트 하나 하는거랑 그냥 백준 같은 곳에서 알고리즘 문제 하나 푸는거랑은 그냥 영역이 다름. 알고리즘 문제야 한두시간 코드 백몇줄 쓰면 끝나겠지만 제대로 된 프로젝트는 몇개월, 길게는 몇년간 심지어 혼자서도 아니라 여럿이서 협업해서 무수히 많은 코드를 짜야함. 알고리즘 문제는 문제 하나 풀고 끝나는거라면, 프로젝트는 그런 문제가 무수히 많아서 하나 풀고나면 다음게 나오고 그 다음에 또 다른거 나오고 그게 무수히 반복되는 식이지. 그 과정에서 생산성이 중요하니 효율적으로 코드를 짜야 할 필요가 생기고 이미 예전에 쓴걸 다시 재활용하기 쉽게 디자인 패턴을 사용하는거지 뭐.
익명(125.137)2021-10-14 12:00
답글
오.. 감사합니다 공부를 하면 할수록 배워야 할게 산더미같고 제 자신이 부족함을 많이 느끼네요..
익명(223.39)2021-10-14 12:04
답글
:)
익명(125.137)2021-10-14 12:06
그건 성능과 유지보수 두마리 토끼를 다 놓치는 훌륭한 선택임
익명(150.207)2021-10-14 11:57
답글
유지보수는 다른애가 이야기했으니 난 성능얘기할게
함수 하나에 변수를 다 설정하는건 사실상 전역변수랑 다를게 없음.
그 변수들은 프로그램이 끝날때까지 메모리에 계속 있는거야. 더이상 안쓰여도 말이야.
프로그램이 엄청 무거워짐.
전역변수를 최소한으로 써야되는 이유 같은거 찾아보ㅓ
함수는 변수 저장 목적이 아니야
이렇게 보면 이해하기 쉬울거임. 너가 지금 A라는 문제를 해결해야 함. 이 문제를 해결하기 위해서는 B라는 문제를 먼저 해결하고 그 결과물로 C라는 문제를 이어서 해결해야함. 만약 너가 a라는 함수 하나만 만들어서 그 안에 몽땅 코드를 담아 A라는 문제를 해결하는데 쓴다면 지금 당장은 괜찮음. 하지만 개발하다보면 뭐 C를 먼저 해결하고 그 결과물로 B를 이어서 해결한다거나 아니면 뭐 다른거 하는 와중에 B나 C를 중간에 해결해야한다거나 뭐 이럴 때가 되게 자주 발생하거든. 그러면 너는 이미 a라는 함수 안에서 B와 C를 해결했음에도 B나 C를 해결해야 할 다른 상황에 a를 전혀 재활용할 수 없게 됨. 그러니 b라는 함수에 B를 해결하는 코드를 담고 c라는 함수에 C를 해결하는 코드를 담은 다음
a에서는 그냥 b와 c를 호출하기만 한다면 나중에 전혀 연관 없는 쌩뚱맞은 곳에서도 여전히 b와 c를 재활용할 수 있게 되겠지.
제대로 된 프로젝트 하나 하는거랑 그냥 백준 같은 곳에서 알고리즘 문제 하나 푸는거랑은 그냥 영역이 다름. 알고리즘 문제야 한두시간 코드 백몇줄 쓰면 끝나겠지만 제대로 된 프로젝트는 몇개월, 길게는 몇년간 심지어 혼자서도 아니라 여럿이서 협업해서 무수히 많은 코드를 짜야함. 알고리즘 문제는 문제 하나 풀고 끝나는거라면, 프로젝트는 그런 문제가 무수히 많아서 하나 풀고나면 다음게 나오고 그 다음에 또 다른거 나오고 그게 무수히 반복되는 식이지. 그 과정에서 생산성이 중요하니 효율적으로 코드를 짜야 할 필요가 생기고 이미 예전에 쓴걸 다시 재활용하기 쉽게 디자인 패턴을 사용하는거지 뭐.
오.. 감사합니다 공부를 하면 할수록 배워야 할게 산더미같고 제 자신이 부족함을 많이 느끼네요..
:)
그건 성능과 유지보수 두마리 토끼를 다 놓치는 훌륭한 선택임
유지보수는 다른애가 이야기했으니 난 성능얘기할게 함수 하나에 변수를 다 설정하는건 사실상 전역변수랑 다를게 없음. 그 변수들은 프로그램이 끝날때까지 메모리에 계속 있는거야. 더이상 안쓰여도 말이야. 프로그램이 엄청 무거워짐. 전역변수를 최소한으로 써야되는 이유 같은거 찾아보ㅓ
재활용이 안됨