210202
코드 루틴 본문
지금까지 프로그래밍을 하는 방식을 생각해보니 내가 과연 체계적으로 프로그래밍하고 있는지 궁금했다.
차근차근 생각해보니 최근에 알고리즘 문제들을 풀어보고, 안드로이드 프로젝트를 계속 진행하면서도 그때그때 떠오르는 생각들로 코드를 짜고있었다.
그리고 매번 어제했던 일들이 무엇인지 바로바로 파악하기도 어렵고 코드를 정리하면서 논리적으로 설명하기 굉장히 어려웠다. 그래서 조금이라도 빠르게 집중하여 내가 구현하려는 것들에 대해 정확히 인지하고 완성도를 높일 수 있는 방법을 만들고 싶었다.
그래서 코드 루틴이라는 것을 만들어보게 되었다.
내가 생각한 코드 루틴이란 코드를 짜기전 규칙적으로 일의 순서를 정해놓고 정해진 순서를 따르면서 코드를 짜는 것을 말한다.
내가 생각한 루틴은 다음과 같다.
1. 설계
- 문제에서 주어진 구현해야하는 것들을 나열
- 그것들을 구하기 위한 최선의 로직을 생각
2. 구현
- 구현해야하는 것들중 가장 쉬운것을 구현
- 생각한 최선의 로직을 세부화하고 가장 쉬운 로직부터 구현
- 테스트 케이스를 미리 생각해보면서 빠진 로직이 있는지 확인
3. 검증
- 주어진 테스트 케이스로 테스트(없을 경우 임의로 테스트 케이스 제작)
- 생각지 못한 테스트 케이스가 있는지 확인
4. 기록/삭제
- 통과하지 못한경우 어떤 부분이 문제가 되는지
- 통과했을 경우 구현해야할 것들에서 삭제
방식은 1, 2, 3, 4 단계를 먼저 한번 거친뒤 다시 2단계로 돌아가서 2, 3, 4단계를 계속 반복하여 구현해야하는 것들을 모두 구현하면 끝나는 것이다.
이전에는 이런 단계들을 생각하지않고 구현만 집중했는데 프로젝트를 많이해보고, 규모가 커지고, 구현해야할 것들이 많아질수록 다음과 같은 체계적인 단계가 있어야 현재 내가 해야하는것이 무엇인지 빠르게 인지할 수 있다고 생각했다.
앞으로 프로그래밍을 하면서 계속해서 루틴을 사용해보고 고칠 부분이 있으면 계속 고쳐나가려고 한다.
'메모장' 카테고리의 다른 글
DataBinding와 BindingAdapter 사용 시 조심해야할 사소한 것 (0) | 2021.06.11 |
---|---|
코드의 퀄리티에 대한 생각 (0) | 2021.06.07 |
2021년 개발계획 (0) | 2021.01.12 |
나와 반대의 의견을 가진사람의 의견을 집중해서 들어야하는 이유 (0) | 2020.07.21 |
중간지점 찾기 앱 [더치 - 더 완벽한 위치찾기] 새로운 버전 업데이트 (1) | 2020.07.16 |