본문 바로가기

주간 회고6

[주간 회고] 22.04. 1주차 - "안드로이드 팀과 협업, 의사결정 문서화, Restful API, ATDD" 👾 회고 22.04.04 ~ 04.15(2주) 간 안드로이드 팀과 간단한(?) 협업 프로젝트(Todo App)를 시작했다. 클라이언트 개발자 / 서버 개발자를 나누어 개발을 시작하게 된 것이다. 가장 재밌고 많이 배운 점은 바로 협업이었다. 팀원 모두 같은 목표를 가지기 위해 프로젝트 기획서, 요구사항을 세밀히 분석했다. 그라운드 룰을 정하여 업무의 통일성(스크럼, 브랜치 전략, 커밋 컨밴션, 프로젝트 관리(Github의 Projects 사용, Issues, PR 관리 등)를 두었고 백엔드 기술적으로 Rest API와 DB 설계를 해보았고 제공할 수 있는 한 주였다. 무지성으로 기술을 선택하지 않으려 했고 왜 이런 의사결정('기술 선택')을 했는지 문서화하려 했다. 또한 배운것을 나눌 수 있었다.(아예 .. 2022. 4. 10.
[주간 회고] 22.03. 4주차 - "DIY : WAS 개발해보기" 22.03월 4 ~ 5주에는 2명이서 페어 프로그래밍으로 Java를 활용해 WAS를 밑바닥부터 구현하는 프로젝트를 시작했다. 전에 C++을 활용해 멀티 플렉싱 Web Server를 구현했는데 Java를 활용해 WAS 구현은 비슷하면서도 다른 느낌이었다. 먼저 Java에서 소켓 프로그래밍이 상당히 간단하다는 것에 놀랐다. C++에서 소켓 프로그래밍을 위해 socket() 생성하고 Setsocketopt()으로 소켓 옵션 설정하고 Bind() 한 다음 Listen() 대기한다. 클라이언트 connect에 따라 Accpet()하고, 클라이언트와 연결된 통신용 Socket의 입, 출력을 fd(파일 디스크립터)로 관리하여 Send, Recv 했었다. 자바에선 아주 간단히 ServerSocket()을 만들고 acc.. 2022. 3. 27.
[주간 회고] 22.03. 1주차 - "스프링 시작" 🍃 📚 배운 것 월요일 (02.28) - 김영한님의 스프링 부트 입문 : 3 ~ 8 완강 (소스코드) 화요일 (03.01) - 2월 4주 차 주간 회고 작성 - 휴식 수요일 (03.02) - 사다리 게임 프로젝트 회고 작성 - 로또 게임 프로젝트 회고 작성 - 김영한님의 스프링 핵심 원리 기본편 : 0 ~ 3 수강 (소스코드) 목요일 (03.03) - 김영한님의 스프링 핵심 원리 기본편 : 4 수강 (소스코드) - [프로젝트] 스프링 카페 step 1 리포지토리 구현 (2H) (소스코드) 금요일 (03.04) - 김영한님의 스프링 핵심 원리 기본편 : 4 ~ 6수강 (소스코드) - [프로젝트] 스프링 카페 step 1 서비스 구현 (2H) (소스코드) 토요일 (03.05) - 백기선 더 자바 코드를 조장하는.. 2022. 3. 7.
[주간 회고] 22.02. 4주차 🔢 월, 화요일 일주일 간의 페어 프로그래밍이 시작됐다. 팀원과 함께 프로그래밍을 하기 위해선 상호 간 그라운드 룰과 배려하는 커뮤니케이션이 중요하다. [일일 회고] 22.02.21~22 페어 프로그래밍(아이엠 그라운드 자기소개하기도 좋지만 그라운드 룰(Ground Rule)!) & 일급 컬렉션 🤝 🥇 수요일 첫 번째 코드 리뷰를 코드에 적용했다. 피드백은 빠른 성장을 돕는다. 기존 코드의 고칠점과 새로운 기술 도입은 어떤지 알 수 있다. 구현하며 발생한 작은 문제들도 기록으로 꾸준히 남겨야겠다. [📝 회고] - [일일 회고] 22.02.23 - 여전히 Java 연습 중 IntelliJ + Gradle + Junit5 환경에서 테스트 실행 시 @DisplayName 이 테스트 결과에 나오지 않는 경우, 해결.. 2022. 2. 28.
[주간 회고] 22.01. 3주차 🥕 🍳 일기 형태로 작성되었습니다. 월요일 오늘은 프로세스 메모리 구조 중 스택 프레임과 힙 메모리를 논리적인 관점에서 자바로 구현했다. 보통 사용자가 프로그램을 실행하면 프로세스가 생성되고 이에 따른 프로세스 메모리가 생긴다. 이 과정은 OS가 관리하는데 이를 직접 프로세스의 컴파일된 어셈블리 코드가 있다고 가정하고 프로세스의 시작점(e.g. main 함수)부터 시작하여 여러 함수들이 스택에 쌓이고 사라지며 그 안에 동적 할당이 있다면 힙에 할당하고 해제하는 시나리오대로 구현했다. 생각하지 못했던 점은 C언어를 사용할 때 malloc()에 메모리 크기만 정해주면 동적 할당이 쉽게 사용했지만 이를 실제로 구현하기엔 상당히 어려운 일이라는 것을 알았다. 동적 할당된 메모리의 위치는 어디에 두어야 하며 해제된 위치.. 2022. 1. 23.