화음을 좋아하는

우아한테크코스 4기

다중 행 Insert 최적화 (Level 1 체스 미션 초기 체스판 구성)

Level 1 체스 미션 중, 반복 수행되는 DB 여러 행의 삽입을 최적화하기 위해 고민한 내용을 적어봤습니다. 1. Console 버전 체스 초기판 구성 private static final Map INITIAL_BOARD = new HashMap(); static { setupOthersPieces(RANK_EIGHT, Color.BLACK); setupPawns(RANK_SEVEN, Color.BLACK); setupPawns(RANK_TWO, Color.WHITE); setupOthersPieces(RANK_ONE, Color.WHITE); } 초기 콘솔 버전은 단순 Map 자료구조에 좌표값과 좌표에 해당하는 기물만 저장하는 방식이었습니다. 따라서 static 블럭에서 모든 것이 해결 가능했죠. ..

우아한테크코스 4기

🤔 도메인(domain)은 무슨 뜻일까?!

정확히 알지 못하며 사용하고 있는 도메인이라는 표현에 대해 나름대로의 정의를 이해하고, 정리해보고 싶었습니다! domain의 어원과 사전적 정의 정확히 domain 이라는 단어는 16세기 말 최초에 기록되었으나 비슷한 의미의 다른 형태로 아주 오래전부터 사용되었습니다 군주의 소유물, 영토의 의미로 비슷한 형태의 단어가 아주 오래전부터 사용되어 왔습니다. 16세기 말 최초로 domain이라는 단어의 기록이 발견되었구요. 메리엄 웹스터 사전의 주요 해석을 보자면, 현대의 domain은 지방 정부의 관할, 학문 영역, 활동 영역, 인터넷 주소 하위 구분 등의 의미로 사용되고 있습니다. 군주의 소유물, 영토를 의미하던 단어가, 현대에 들어서는 보다 넓은 문맥에서 영역을 구분하는 의미로 사용됨을 알 수 있었네요!..

우아한테크코스 4기

객체의 행동으로 표현되는 책임과 역할 (객체지향의 사실과 오해)

우아한테크코스 레벨1 백엔드 필독서, 객체지향의 사실과 오해를 읽고 이해한 내용을 저의 언어로 표현해보는 포스팅입니다. 객체지향 프로그래밍 현실 세계 은유로 구조화된 도메인 모델을 자율적 객체들의 협력으로 재창조해내는 것 프로그램을 명령어의 집합이 아니라, 협력하는 객체들의 모임으로 보는 프로그래밍 기법입니다. 사람의 인지 능력에는 한계가 있습니다. 프로그램이 거대해지고 요구사항이 많아질 수록, 내부복잡도는 높아질 수밖에 없고, 이를 개발자가 모두 명령어로 제어하려면 한계가 발생합니다. 이 지점에서 객체들의 책임, 역할, 협력 이라는 개념이 부상합니다. 책임 한 객체가 어떤 메시지를 받을 수 있다면, 그 객체는 그 메시지를 수행할 책임이 있다. A라는 객체에게 doSomething라는 메시지를 보낼 수 ..

우아한테크코스 4기

💻 코딩을 지탱하는 기술을 읽었습니당 !

우아한테크코스 웹 백엔드 4기 레벨 1 필독 도서 중 하나인 코딩을 지탱하는 기술을 읽었습니다. 감상 전반적인 감상 다른 필독서와 달리 이 책은 발췌독이 아닌 전체를 읽은 뒤 내용을 정리할 것을 권장하고 있어요. 양이 많지 않고, 비교적 가볍게 읽을 수 있는 내용들이었어요. 책 자체에서 챕터마다 적절한 분할과 요약을 해주셔서 읽고 정리하는 데 아주 수월했습니다. 프로그래밍 언어가 어떻게 발전해와서 현재의 모습을 갖추게 되었는지 이해하는 데 도움이 되었습니다. 또한 제 주력 언어인 Java가 아닌 다른 언어들은 왜 다른 형태를 갖추게 되었는지 등도 조금 더 알 수 있었어요. 이 책의 제목 대로 코딩을 지탱하는 기술을 전달해주는 책이었습니다. 프로그래밍 언어의 역사, 언어 간의 발전 과정에서 목표한 것의 차..

우아한테크코스 4기

🏎️자동차 경주와 💸로또에서 배운 것들

우아한테크코스를 시작한지 벌써 1달이 됐습니다! 어느새 과정 10%를 지나고 있네요! 1레벨의 절반이 지났고, 자동차 경주와 로또 미션을 진행했습니다. 지난 두 가지 미션에서 배운 것들을 요약해봅니다. 🏎️ 자동차 경주 - TDD https://github.com/woowacourse/java-racingcar/tree/hj-rich 제목에서 알 수 있듯, 자동차 경주는 TDD에 익숙해지는 과정입니다. 우테코에서 처음으로 하게되는 미션이자, 첫 페어 프로그래밍을 경험하는 미션이기도 했어요. 그리고 본격적으로 TDD를 처음으로 경험하는 시간이기도 했습니다. 간단히 돌아보자면.. 미션 제목대로 TDD에 상당히 많이 익숙해지는 시간이었던 것 같아요. 요구사항 분석 -> 도메인을 설계 -> 테스트코드 작성 ->..

리차드
'화음을 좋아하는' 태그의 글 목록 (12 Page)