티스토리 뷰

목차

    반응형

    번역 출처는 오늘의유머 프로그래머 게시판이며, 제가 글을 다듬어 이 블로그에 소개합니다. Technical Coach인 Kent Beck이 쓴 글이며, 주제는 프로그래밍 고수들이 업무 처리하는 패턴입니다.




    수년간 노련한 프로그래머들을 지켜보며 그들의 작업 흐름에서 공통된 패턴을 발견했다. 반면, 내가 가르치던 (실력 좋다고 소문난) 프로그래머들에게선 그런 패턴을 발견하지 못했다.


    지금은 노련한 개발자들의 작업 흐름 패턴(프로그래밍 방법)이 종국에 무슨 차이를 만드는지 알게 되었다. 귀한 시간을 소비하여 최고의 아웃풋을 얻는 방법을 소개한다.


    아래에 소개할 4가지 주제는 개발자인 당신의 사고를 확장시킬 것이다.


    • 일반 프로그래머 : 많은 문제를 해결하여 더 큰 문제 해결하는 방법을 알고 있다.
    • 고수 프로그래머 : 많은 문제를 세분화한 뒤 해결한다. 일반 프로그래머 보다 더 큰 문제 해결하는 방법을 알고 있다.

    현명한 개발자는 업무를 세분화한다. 하나의 솔루션을 분할하는 건, 업무를 잘게 쪼개어 문제를 작게 만든 후 해결하도록 돕는 장점이 있다.


    ▷ 프로그래밍 시간

    ■ 얇게 썰기 (잘게 쪼개기)

    • 큰 프로젝트를 맡아라
    • 큰 프로젝트를 쪼개라
    • 쪼갠 업무를 상황에 맞게 재배열하라

    나는 프로젝트를 세분화한다. 때때로 다른 업무에서 필요한 조각들과 치환하기도 한다. (모듈화?)


    ■ 한 번에 하나만 (프로그래밍 합리적으로?)

    피드백 주기를 줄이려 무리하게 업무를 늘려면 안 된다. 예상보다 업무 처리 시간이 길어지면 디버깅 조차 어려운 상황이 생긴다.


    프로그래밍 마스터 방법, 개발자 고수 되는법 4가지신입 , 경력자 태도


    ■ 수정이 쉽도록

    (소스 코드) 수정은 쉽도록 작성하라. 업무 세분화가 잘 될수록 수정이 쉬운 소스 코드가 만들어진다.


    ■ 집중

    한 가지 요소를 통해서 여러 요소를 변화할 수 있도록 코드를 작성하는 개발자가 되어라 (OOP 강조?)


    ■ 고립

    다수의 하위 요소에 적용되도록 핵심 부분을 추출하라. 한 가지 요소를 통해 전체를 통제하라. (설계를 잘해라?)


    ■ 상황 파악

    프로젝트 상황을 파악하라. 수정 / 추가 구현을 명확히 하여 불필요한 수정을 최소화하라.


    ▷ 개발자 학습

    ■ Call your shot (당신 차례라면)

    작업 이전, 이후를 생각하라 (인풋 아웃풋 고민을 많이 하라는 뜻?)


    ■ 자세한 검증

    의도치 않은 방향으로 프로그램이 작동한다면, 수정 전후를 살펴 잘못된 점을 정확하게 인지하라. 수정 / 진단 방법이 여러 개라면 프로그래밍 해결책 또한 여러 가지가 될 수 있다.



    프로그래머 고수 한국신입 , 경력자 태도



    ■ 효율적으로 작업하라 (프로그래머 일하는 방법)

    • 버그 추적할 때, 이상 지점부터 거슬러 올라가라
    • 버그 분석할 때, 테스트 케이스는 짧게 작성하라
    • 새로운 API를 사용할 때, 작은 것 (기초) 부터 시작하라

    "모든 것이 중요할 순 없다"라는 말은 잘못된 상황에서 많은 댓가를 요구한다


    (사소하게 넘기는 것을 지적하는 듯)




    여기까지 인용한 내용입니다.



    관련 글

    ▷ [블랙유머] 엔지니어 vs 기획자, 어쨌든 실무자 잘못?

    ▷ 스택오버플로우 방문하는 개발자 직업 종류 TOP 17

    ▷ 과거 일들을 어떻게 받아들일까? 프로그래머 성장에 대하여




    ⓒ written by vicddory

    반응형