기사를 읽어보고 20년간 IT 개발 실무를 하면서 유사하게 느낀 점이 있어서 정리해봅니다
Step 1. 불필요한 개발을 하지 말 것
Step 2. 테스트를 자동화 할 것
Step 3. 설정 정보는 코드에서 분리 할 것
Step 4. 코드 가독성을 확보 할 것
Step 5. 동료 코드와 충돌나지 않게 자주 체크인 할 것
Step 1. 불필요한 개발을 하지 말 것
개발한 코드가 많아진 다는 건 관리해야 할 대상이 많아지는 것입니다
재사용이 가능한 기능이 조직내에 있는지 확인해서 있다면 보강해서 사용할 것
아무리 오픈소스를 사용한다고 해도 쉴새없이 버전업 되는 라이브러리를 관리할 수는 없으니
개발은 최소한으로 해야 나중에 고생하지 않습니다
Step 2. 테스트를 자동화 할 것
복잡한 요구사항을 해결하기 위해서 기능을 만들었는데 점점 기능이 많아질 수록 관리가 안됩니다
10만개의 기능이 현재 돌아가고 있다고 가정하면 10만개의 기능이 정상적으로 돌아가고 있는지 확인을 할 수 있는가?
최대한 테스트를 자동화 하고 품질 확인을 반복적으로 해서 서비스의 안정성을 지켜야 합니다
Step 3. 설정 정보는 코드에서 분리 할 것
예전 같이 폐쇄형으로 개발하지 않고 github 나 클라우드에 소스를 올리다 보면
개발/테스트/운영 같이 시스템이 설정 정보 하나로 다른 곳에 배포된다면
사고가 날 가능성이 굉장히 높습니다.
최대한 중요한 정보들은 코드에서 전부 분리해서 관리해서 나중에 보안사고 또는 클라우드 비용 폭탄 맞지 않길 바랍니다
운영환경에 잘 못 업데이트 해서 장애나는 경우도 부지기수로 봤습니다
Step 4. 코드 가독성을 확보 할 것
로버트 마틴 가라사대
코드를 읽는데 90%, 쓰는 데 10% 의 시간을 사용합니다
내가 나중에 다시 읽던지, 동료가 다시 읽고 유지보수를 하던지
코드 작성이 중심이 되면 안되고 추후 가독성이 중심이 되도록 작성해야 합니다
개발자 필독서 클린코드
https://book.naver.com/bookdb/book_detail.nhn?bid=7390287
Step 5. 동료 코드와 충돌나지 않게 자주 체크인 할 것
svn 이나 git 을 사용하는 게 아주 당연시 되는 시기 이니
혼자 개발할 거 아니면 자주 자주 체크인 해서 동료와 소스 버전 충돌나지 않도록 관리해야 합니다
누가 개발한게 잘 못 올라갔네요 라는 것도 배포 작업 할 때마다 나오는 소리입니다
참고자료
http://www.itworld.co.kr/news/134294
'IT > Programing Tip' 카테고리의 다른 글
소나큐브 비용 (소나클라우드) 청구 방식 (0) | 2022.07.25 |
---|---|
Hexo 로 github pages 에 블로그 만들기 (0) | 2020.02.18 |
마이크로 프론트앤드 개발 (0) | 2020.01.07 |
개발자 필수 기술 (0) | 2019.10.23 |
마크다운 문법 Markdown (0) | 2019.10.02 |
웹 개발 프레임워크 홍수 (0) | 2019.08.16 |
OOP 프로그래밍의 함정 (0) | 2019.08.16 |
소스코드를 이미지로 만들기 polacode (0) | 2019.08.13 |