'개발자의 글쓰기'라는 책을 접하게 되었다.
'도대체 개발자와 글이 무슨 상관관계일까?' 라는 의문을 품고 읽기 시작했다.
내가 코드를 짤 때, 주석을 달거나 변수를 선언하거나 언제 어디서든 적용되는 상황이라는 생각이 들었다! 내 코드가 반드시 버그없이 실행이 되어야하는 것은 기본이고, 누군가 내 코드를 봤을 때 '오 이게 뭘 개발한거구나?'라고 한눈에 알아볼 수 있으면 더 효율적인 협업이 가능한 결과를 이끌어 줄 수 있을 것이기 때문이다.
개발자는 혼자 일하는게 아니니까!! 협업, 공존, 그리고 업무의 효율화를 위해서 내가 개발자의 길을 걸어갈 때, 밑바탕이 되어야하는 개념들!!
인간은 컴퓨터처럼 한눈에 내가 써낸 코드의 '부모'와 '자식'을 알아볼 수도 없고, 무엇이 어디에 속하는지 확연하게 구분할 수도 없다.
따라서, 들여쓰기와 코딩에서의 구조화는 필수적이다.
항상 위계가 잘 드러나도록! 그 관계가 잘 보이도록 써야한다!
(심지어 python은 블럭이 없어서 for문 등을 사용할 때, 들여쓰기 (위계)가 매우매우 중요!
사실 이 책을 읽으면서 내가 작성했던 코드의 띄어쓰기를 다시 떠올려보게 되었다.
생각해보니까 내 띄어쓰기에는 규칙이없었다.
책 속의 한 문구를 기억하자 '콤마(,)는 앞의 단어에 붙여쓰기'1. 나쁜예 wordSpacing( arg1 , arg2 ) 2. 좋은예 wordSpacing(arg1, arg2)
모든 언어에서 따옴표는 나에게 항상 혼란을 주는 부분이다.
어디서는 문자에 ''(작은 따옴표), 문자열에 ""(큰따옴표)를 쓰고
어디서는 구분없이 둘다 사용하고(교차는 불가)
도대체 나한테 왜그러나.. 하는 생각이 들기도 했다.
쓰다보면 익숙해지겠지ㅠ3ㅠ
진짜 이 책에서 오늘 읽은 부분 중 가장 공감가는 파트다.
이름짓기.
클래스, 변수 등등 수 많은 이름들 사이에서 매번 무슨이름을 지어야하나 고민한다😂
혹시 예약어와 겹칠까? 너무 길진 않을까? 무슨뜻인지 너무 혼란스럽지는 않을까?
수 많은 고민 끝에 결정하는데도 부족하다..
1. 나쁜예
int d
int m
int y
2. 좋은예
int someday
int today
int thisMonth
int finalYear
이렇게 알 수 없도록 줄여놓은 문자들 말고, 뜻은 유추할 수 있는 단어들로 이름을 지어보자
⭐️ 좋은 이름이 가진 5가지 특징
1. easy to Search : 검색하기 쉽고
2. easy to Mix : 조합하기 쉽고
3. easy to Agree : 수긍하기 쉽고
4. easy to Remember : 기억하기 쉽고
5. easy to Type : 입력하기 쉽고
사실 지금은 쉽게 위와 같은 좋은 네이밍이 익숙하지 않다.
다만, 계속 신경쓰고 고치고 노력하다보면 자연스럽게 이름이 지어지는 날도 오겠지ㅠㅠ
이름을 잘 지으면 주석을 줄일 수 있다고 한다.
그럴듯하다.
사실 혼자 코딩하고 혼자 실행할 때는 그다지 주석이 중요하지 않다.
나혼자 이해하고 보면 끝이니까~!
근데, 내가 현업에서 일하기를 원하고 있기 때문에 '주석'을 올바르게 이용하는 방법을 아는 것도 필요하다고 생각한다.
⭐️ '주석도 코드다.' 라는 문구가 마음에 들어왔다.
사실 혼자 공부하면서 주석에 크게 신경쓰지 않았다. 그러나 이렇게 습관이 되어버리면 그 습관을 현업에 들어간다고 쉽게 바꿀 수 있을까?
아니다. 습관은 바꾸기 힘들다. 애초에 지금, 배울때 적절한 곳에 적절하게 주석을 배치할 수 있도록 주석도 코드처럼 연습하자 :)
이번 게시글은 크게 문법적으로 필수적이고 무조건적인 공부는 아니다. 그래서 내 생각도 넣고 좀 더 편안한 마음으로 정리했다 ㅎㅎ
하지만, 그렇다고 쉽게 보고 넘어갈 부분도 아니라는 생각이 들었다.
함께 일하는 곳은 늘 '소통'이 중요하고
내가 보는 코드와 에러없는 개발도 좋지만 모두가 효율적으로 일할 수 있도록 '협업'하는 것도 중요하기 때문이다 😁
누군가에게 같이 일하고 싶은 '개발자'가 되기 위해서 조금씩 올바른 습관을 들여보자 :)