생각정리 74

[프로젝트 회고] 4개월 단기 프로젝트를 마치고...

기간 : 2023.12.18~ 2024.4.17 요약 : 내적 성장이 이루어졌던 1년 같은 4개월 프로젝트, 목표가 생겼다. 시작 시스템환경 전자정부프레임워크, jsp, jquery 으로 알고 갔지만 프로젝트 구축을 직접했다. 스타트업 회사와 유사한 분위기. 업무 프로세스라는 것은 기대할 수 없고 오로지 경험을 통해서 '일'을 해야만 했다. 주니어 개발자때 꼼꼼하지 못해서 욕먹었던 것들이 지금에서야 빛을 발하는 기이한 경험을 했다. 중간 예상은 했지만 노마드코더 리액트 스터디를 중단할 수 밖에 없었다. WBS의 재정비와 동시에 재택근무가 가능해졌다. 코로나 이후로 처음이다. 일정의 빡빡함보다 부족한 지식때문에 심적부담을 많이 느꼈다. 끝 계획에 없던 요구사항이 들어왔는데 거절할까 말까 수십번 고민했다...

생각정리/회고 2024.04.20

노마드스터디 [리액트 4기 3주차] 주간회고

기간 : 2024.2.28~ 2024.3.5 요약 : 학습은 첫번째로 강의를 보고, 두번째 시청하면서 코드를 작성해야 효과적이다. 지난 주 목표 하루 2~3시간 스터디 스켸쥴 지키기 결과 : 2시간까지는 무리였다. 회사 프로젝트 막바지라 엄청 정신없다. 이번 주 목표 하루 2~3시간 스터디 스켸쥴 지키기 업무시간과 쉬는시간 철저히 지키기 새롭게 알게 된 것 : 하나도 이해 안됐던 타입스크립트가 예전보다 익숙해졌다. 타입스크립트를 잘쓴다는 것은 프로그램을 견고하게 설계하고 만든다는 것으로 이해했다. 프로그래밍의 본질에 다가가는 문법인 것 같다. 리액트 스터디끝나고 러닝스크립트 정독해봐야겠다. 어쩌다보니 풀 재택근무환경이 갖춰졌다. 처음엔 출퇴근 3시간이 절약되서 너무 좋았다. 그만큼 본질적인 게으름이 더욱..

노마드스터디 [리액트 4기 2주차] 주간회고

기간 : 2024.2.21 ~ 2024.2.27 요약 : 루틴이 답이다. 이번 주 목표 하루 2~3시간 스터디 스켸쥴 지키기 결과 : 매일 평균적으로 1.5시간의 공부시간을 지켰다. 새롭게 알게 된 것 : 리액트 10주 스터디 챌린지가 예전에 참여했을 때 보다 수월함을 느낀다. 재택근무를 하고있어서 그런지 출퇴근할 때보다 시간적 여유가 있어서 그럴 것이다. 그럼에도 불구하고 일찍자고 일찍 일어나는 것이 참 안된다. 이 상태로 출퇴근하게되면 루틴 개박날나는 것이 불보듯 뻔한데 큰일이다... 그런데 재택근무를 하면서 새롭게 알게 된 것이 하나 있다. "일찍자는 것"은 생각처럼 행동하기 어려운 능력이라는 것이다. 늦게자는 이유는 "과제를 못해서", "일이 아직 안끝나서", "게임하려고", "영화보려고" 등의 ..

노마드스터디 [리액트 4기 1주차] 주간회고

기간 : 2024.2.19 ~ 2024.2.21 요약 : 리액트강의를 처음듣는 것이 아닌데 새로운 느낌이 든다... 이번 주 목표 하루 2~3시간 스터디 스켸쥴 지키기 결과 : 이틀 지켰다. 새롭게 알게 된 것 : 이번 리액트 10주 스터디 4기는 3번째 도전이다. 2번째 도전은 스켸쥴링 실패로 어쩔 수 없이 포기했지만 이번 기수에는 복습겸, 확실하게 공부해서 제대로 된 결과를 낼 것이다. 강의를 처음 들었을때와 지금의 학습효율의 차이는 체감의 정도가 다르다. 일단 이틀동안 useState의 개념을 확실히 이해했고, 앞으로 업무에 써먹을 생각을하니 흥미가 생겼다. 지금까지 백앤드개발자로써 일을 했지만 프론트엔드쪽을 완전 무시할 수는 없었다. 리액트나 뷰 2개중 하나는 확실하게 알고 있어야 협업과 1인창업..

노마드 개발자 북클럽 (클린코드: 클래스)

책에서 기억하고 싶은 내용. 클래스는 작아야 한다. 클래스가 맡은 책임은 하나여야한다. 클래스는 확장에 용이하고 수정에 폐쇄적으로 만들어야한다. 읽고난 후의 생각. 매우 따분하고 지루한 파트다. 애초에 지저분하게 코딩하는 것을 싫어해서인지 소개된 글의 내용은 너무 당연하게 느껴졌다. 사실, 기술적인 부분이 있을 줄 알았으나 그저 원론적인 내용이라 생각이 들었고 시간 아깝다고 느꼈다. 클래스라는 것 자체가 왜 존재하는지 조금만 생각해보면 지저분하게 코딩 할 이유도 없다. 자바를 처음 배울 때 클래스부분에서 강조됐던 내용이 결합도와 응집력이다. 하지만 따분하고 지루하지만 똑같은 얘기를 계속 하는 것은 그만큼 중요하기 때문이니 항상 인지하고 있어야 한다고 생각한다. 결론은 영어를 공부하면 웬만한 문제는 전부 ..

노마드 개발자 북클럽 (클린코드: 단위테스트)

책에서 기억하고 싶은 내용. 학습 테스트에 드는 비용은 없다. 어쩄든 API를 배워야 하므로...... 오히려 필요한 지식만 확보하는 손쉬운 방법이다. 학습 테스트는 이해도를 높여주는 정확한 실험이다. 깨끗한 테스트 코드를 만들려면? 세 가지가 필요하다. 가독성, 가독성, 가독성. 어쩌면 가독성은 실제 코드보다 테스트 코드에 더더욱 중요하다. 이런 테스트 API는 처음부터 설계된 API가 아니다. 잡다하고 세세한 사항으로 범벋괸 코드를 계속 리팩터링하다가 진화된 API다. 실제 코드를 점검하는 자동화된 단위 테스트 슈트는 설계와 아키텍처를 최대한 깨끗하게 보존하는 열쇠다. 테스트는 유연성, 유지보수성, 재사용성을 제공한다. 테스트 케이스가 있으면 변경이 쉬워지기 때문이다. 읽고난 후의 생각. TDD에 대..

노마드 개발자 북클럽 (클린코드: 오류처리)

책에서 기억하고 싶은 내용. 오류 코드보다 예외를 사용하라. Try-Catch-Finally 문부터 작성하라. 미확인 예외를 사용하라. 예외에 의미를 제공하라. 호출자를 고려해 예외 클래스를 정의하라. 정상 흐름의 정의하라. null을 반환하지 마라. null을 전달하지 마라. 읽고난 후의 생각. Try-Catch-Finally 문은 에디터가 오류라고 알려줘서 써야한다고 하기 전까지는 직접 써본 적이 없었다. 그리고 오류를 '던진다'라는 말이 감으로는 알았지만 왜 그렇게 표현을 하는지는 알지 못했다. 메소드 명에 throw를 쓰면 어떤 처리가 되는건지 원론적인 이유만 알고 있었다. 개발할 때는 의식하지못하고 그려려니 썼던 코드들에 대한 궁금증이 드는 파트였던 것 같다. 그러나 이 궁금증도 지금 연차가 ..

노마드 개발자 북클럽 (클린코드: 객체와 자료구조)

책에서 기억하고 싶은 내용. 활성 레코드는 자료구조로 취급한다. 비즈니스 규칙을 담으면서 내부 자료를 숨기는 객체는 따로 생성한다. 객체는 동작을 공개하고 자료를 숨긴다. 자료구조는 별다른 동작 없이 자료를 노출한다. 읽고난 후의 생각. SI로 자바개발을 메인 기술로 일하고있는데도 이번 파트는 제대로 이해가 되지 않았다. 그저 막연하게 개발만 해왔고 깊이있는 공부를 하지 않은 것이 원인이라고 생각한다. 나는 기술에 대해 깊이있는 공부를 하지 않은채로 경력이 쌓여가는 현상을 '물경력' 이라고 말하기로 했다. 1~3년차에 끝냈어야할 JAVA 심화과정(?)을 늦은 지금에서야 공부를 시작한다. 궁금한 내용 또는 이해되지 않는 내용 메모. 없음.

노마드 개발자 북클럽 (클린코드: 형식 맞추기)

책에서 기억하고 싶은 내용.맹목적인 형식 맞추기 보다는 형식을 맞추는 목적에 초점 코드 형식은 의사소통의 일환으로 생각하고 이에 맞는 형식을 가지고 적용 오늘 구현한 기능이 다음 버전에서 바뀔 확률은 아주 높음읽고난 후의 생각.형식 맞추기는 다른사람 편하게 보라고 지키기보단 내가 편할려고 지키는 경우가 더 많았다. 특히 '형식맞추기'는 HTML의 태그관계를 파악할 때 정말 중요하게 적용된다. 가로세로 줄정리가 되어있지 않다면 눈으로 일일이 태그들을 점검하는 수 밖에 없다. 이 작업은 단순하지만 매우 피곤한 작업임을 해보면 안다. 문장중에 가장 눈에 들어오는 문장은 '오늘 구현한 기능이 다음 버전에서 바뀔 확률이 아주 높음' 이다. 레거시코드를 읽다보면 과거에는 어떻게 개발을 해왔는지 알 수 있는데 근래의..

노마드 개발자 북클럽 (클린코드: 주석)

책에서 기억하고 싶은 내용.주석은 기껏해야 필요악이다. 코드를 잘 짜면 주석은 거의 필요 없다 부정확한 주석은 아예 없는 주석보다 훨씬 더 나쁘다. 주석은 함수나 변수로 표현할 수 있다면 달지 않는 것이 원칙이다.읽고난 후의 생각.주석에 대한 나의 생각은 연차별로 다르다. 1~3년차정도에는 주석을 쓰지 않아서 많은 문제가 발생했었는데 5년차 이후부터는 오히려 주석을 줄이고 있다. 그래서 요즘은 크게 3단계로 나눠서 코딩을한다. 1단계는 생각이 나는대로 코딩을하고 주석을 다는 것 2단계는 적어둔 주석을 보고 코드를 줄이는 것 3단계는 함수명이나 변수명으로 코드를 설명하도록 명칭을 수정하는 것. 물론 급하면 3단계는 종종 생략한다. 하지만 이 단계별 습관이 몸에 익혀질수록 전체 흐름이 기억에 더 잘 남게되고..