본문 바로가기

분류 전체보기266

[우테코 프리코스] 2주차 회고 이번주에는 자동차 경주 게임 미션을 수행하였다. 카트라이더나 마리오 카트 같은 복잡한 게임은 아니지만 확률적으로 자동차를 이동시키고 먼저 끝에 도달한 사람이 이기는 게임이었다. 경주 게임 미션을 수행하면서 저번주 리뷰에서 알게 된 사실과 개선 방향들을 참고해서 코드를 작성하였다. 이번에는 애플리케이션의 구조를 명확하게 해 보기 위해 MVC 패턴을 사용해 보았다. 뷰와 컨트롤러, 모델을 분리해 놓고 비즈니스 로직은 최대한 모델에서 수행하도록 하였다. 이렇게 하니 각각의 레이어가 가지는 책임이 좀 더 명확해진 것 같다. 다만, 이번에는 모델들이 갖는 책임들이 적절하게 분배가 되었는지 각 계층 간 의존도는 없거나 낮은지 좀 더 생각해보아야 할 것 같다. 이번 주 리뷰에서 나온 내용 1. 람다식 매개변수에도 불.. 2023. 11. 4.
[우테코 프리코스] 1주차 회고 이번 주에는 우아한테크코스의 첫 관문인 프리코스의 1주 차를 수행하였다. 총평을 해보자면, 좋은 코드를 만들기 위해 스스로 고민해 볼 수 있는 좋은 기회였고, 다수의 동료들로부터 코드 리뷰를 받는 엄청난 경험을 할 수 있어서 뜻깊었다. 프리코스의 주제 자체가 함께 성장하기이다보니 지원자들이 모인 디스코드에서는 1주 차임에도 불구하고 정보 공유와 토론이 매우 활발하게 이뤄졌다. 이런 정도면 주차가 지날수록 더 활발해질 것으로 보인다. 여기서 좋은 코드 작성을 위한 인사이트와 여러 꿀팁들을 얻을 수 있었다. 프리코스가 지나면 이런 기회가 사라질 것이라고 생각하니 아쉽기도 하면서 더 많이 가져가고 싶다는 욕심이 생겼다. 프리코스에서 기대했던 것 중 하나가 코드리뷰였다. 서로의 경험과 실력의 차이에 상관없이 서.. 2023. 10. 28.
Github는 main, Git은 master를 쓰는 이유 Git에서 저장소를 만들 경우 기본 브랜치 이름이 master가 되고, Github에서 저장소를 만들 경우 main이 된다. 나는 이게 단순히 개발 주체의 차이 때문에 다른 거라고 생각하고 있었는데 그 이유를 최근에 알게 되었다. 바로 미국에서 Black Lives Matter(BLM) 운동이 한창일 때, Github에서 master라는 용어가 '노예 제도'를 연상시킨다는 이유로 master라는 이름을 main으로 변경했기 때문이다. GitHub to replace "master" with alternative term to avoid slavery references GitHub getting on board legitimizes movement aimed at removing racially-char.. 2023. 10. 22.
캐시 전략 캐시는 자주 사용하면서 자주 변경되지 않는 데이터에 대해 캐시를 사용하면 좋음 캐시는 휘발성이 있다는 점을 기억할 것(중요한 정보는 저장해선 안 된다) 따라서, 장애 발생시 대응 방안도 대비해야 함 캐시 만료 정책도 필요(사용자가 시간이 지남에 따라 오래된 자료를 볼 수 있기 때문) 그에 따라 발생하는 cache stampede 현상 대비 필요 용어 정리 cache-hit: 캐시 스토어에 데이터가 있으면 로드 cache-miss: 캐시 스토어에 데이터가 없으면 DB에서 로드 캐시 스토어는 캐시, DB는 데이터베이스를 가리킴 읽기 전략 look-aside(cache-aside) 캐시 조회 후 있으면 가져오고 없으면 DB에서 가져옴 캐시 저장 주체가 애플리케이션 서버 가장 일반적인 캐시 전략 반복적인 읽기가.. 2023. 8. 12.
728x90