profile
세상에 도움이 되고, 동료에게 도움이 되고, 나에게 도움이 되는 코드를 만들고 싶습니다.
post-thumbnail

MongoDB 스키마 디자인 (concise guide)

MongoDB 데이터베이스를 사용할때엔티티 간의 관계에 따라서 어떤식으로 스키마를 구성하면 좋을지 직관적으로 따르기 좋은 가이드를 정리해본다.MongoDB 스키마 디자인에서 첫번째 가이드는 다음과 같다.mongodb-schema-design-rule-01mongodb

2023년 1월 8일
·
2개의 댓글
·
post-thumbnail

자바스크립트(javascript)에서 "function" 키워드의 대안을 선택하자

!youtubeLPEwb5plEoU다음과 같은 함수가 있다고 생각해보자.이 함수를 사용하는 방법은 크게 세 가지 방법이 있다.일반적인 함수로 사용하기생성자 함수로 사용하기객체 메서드로 할당하기실행 결과는 이렇다.function-keyword-case-1-resultFo

2022년 11월 5일
·
0개의 댓글
·

생각보다 더 작은 단위로 나눠야 한다

테스트 코드를 편하게 작성하고 싶다면클래스, 모듈, 메소드를 내가 생각하는 것보다 훨씬 더 작은 단위로 쪼개야 한다.물론 실무에서 요구하는 작업 속도에 맞추려면 분리할 수 있는 만큼 분리하는 게 쉽지는 않겠지만코드 덩어리를 정말 잘 나눠보면 테스트 코드 작성이 상당히

2022년 10월 5일
·
0개의 댓글
·

private 메소드를 주의깊게 살펴보자

테스트 코드 작성과 연관성있는 명언 중에 "공개 API 를 테스트하라" 라는 말이 있다.실제 사용자 관점에 가깝게 테스트 코드를 작성하라는 의미인데하나 클래스, 하나의 모듈에 선언된 모든 메소드에 대해서 테스트 코드를 작성하기 보다는해당 API 가 실제로 사용되는 것과

2022년 10월 5일
·
0개의 댓글
·
post-thumbnail

구글 엔지니어는 이렇게 일한다: 11장 테스트 개요

구글 초창기에는 엔지니어 주도 테스트를 그다지 중요하게 여기지 않았다. 똑똑한 엔지니어들이 소프트웨어를 알아서 올바르게 만들어줄 것이라 기대했기 때문이다. 대규모 통합 테스트를 수행하는 시스템도 일부 있었지만 대규모 통합 테스트를 수행하는 시스템도 일부 있었지만 대부분

2022년 9월 18일
·
0개의 댓글
·
post-thumbnail

02 이상한 나라의 객체

사실 컴퓨터 관련해서 무언가를 설명하기 위해서 비유나 은유를 사용하는 것을 그다지 좋아하지 않는다. 정확한 의사소통을 방해하기 때문이다. 그러나 객체지향을 설명하기 위해서 이상한 나라의 앨리스 스토리를 고른 것은 아주 현명한 선택인 것 같다. 왜 객체지향이 단순히 현실

2022년 9월 18일
·
0개의 댓글
·

훌륭한 팀장님

훌륭한 팀장님과 함께하는 것은 생각보다 멋진 일이다.첫째로 훌륭한 팀장님과 함께하면 덜 불안하다.왜 그런지는 아래의 여러가지 장점을 먼저 이야기하고 나서 다시 언급해보겠다.둘째로 나쁜 결정을 피할 수 있게 된다.리더는 언제나 결정을 내리는 사람이다.회사 대표의 결정이

2022년 9월 18일
·
0개의 댓글
·

훌륭한 개발자의 조건

훌륭한 팀장님과 함께하는 것은 생각보다 멋진 일이다.훌륭한 팀장님에 대해서 말하기 전에개인적으로 생각하는 훌륭한 개발자란 무엇인가에 대해서 말해보고 싶다.회사 소속으로서 월급을 받으며 근무를 하거나프리랜서로서 계약을 맺고 근무를 하는 모든 개발자들은개발자이기에 앞서 직

2022년 9월 18일
·
0개의 댓글
·
post-thumbnail

01 협력하는 객체들의 공동체

표지이 책은 첫 장부터 굉장히 아프게 때린다.<객체지향의 사실과 오해>를 읽기 전까지는 아는 객체지향 소프트웨어가 실세계의 투영이고, 객체는 현실 세계에 존재하는 사물에 대한 추상화라고 착각해왔다.그러나 노련한 객체지향 전문가들은 본능적으로 위의 문장이 틀렸다는

2022년 4월 26일
·
0개의 댓글
·
post-thumbnail

객체지향이 뭔지 잘 모르는 사람

표지컴퓨터공학이라는 분야를 걷기 시작한지 벌써 N년, 참 오래됐다.어떤 식으로든 소프트웨어 엔지니어링을 계속 하다보면기존의 방식에서 한계를 느끼고 새로운 시작이 필요하다고 느끼는 순간이 몇 번 온다.이런 상황을 극복하려고 다방면으로 내가 가진 능력을 갈고 닦다보면 자주

2022년 4월 26일
·
0개의 댓글
·
post-thumbnail

<Modern Software Engineering> by. Dave Farley 읽기 시작

평소에 관심을 갖고 보던 유튜브 채널 주인이 책을 출판했다고 하기에 큰 맘 먹고 구매를 했다.역시 원서는 비싸다.개발 또는 코딩을 잘 하는 사람이 되고 싶은 욕심도 많지만훨씬 더 본질적인 이슈, 소프트웨어 엔지니어링이란 무엇인지에 대해서도 고민이 많은 요즘이다.비싼 돈

2022년 4월 19일
·
1개의 댓글
·

믿음

앞이 보이지 않는 곳을 가고 있을 때 가장 중요한건 나에 대한 믿음이다.

2022년 4월 14일
·
0개의 댓글
·

패턴을 활용한 리팩터링 2, 3, 4, 5장

책 <패턴을 활용한 리팩터링> 의 2, 3, 4, 5장은 리팩터링의 당위성에 대해서 서술하는 부분이다. 저자의 경험과 경험에서 얻은 교훈을 복합해서 자신만의 리팩터링 기준점을 만들었고 이걸 독자들과 공유하고 있다. 리팩터링을 잘 하기 위한 방법도 많이 말하지만 저자는

2022년 1월 16일
·
0개의 댓글
·

TDD 006: 테스트 코드는 왜 필요할까?

이 포스트는 더 많이 조사하고 학습한 후에 수정해야 한다.아래에는 지금 당장의 생각을 기록해 둔다.(개인적인 생각)테스트 코드의 장점개발 단계에서 보다 빠르게 현재 구현의 오류를 발견할 수 있게 도와준다.테스트 코드는 QA, staging 단계까지 가기 전에 현재 작성

2022년 1월 15일
·
0개의 댓글
·
post-thumbnail

TDD 005: 테스트 커버리지 확인

테스트 코드가 얼마나 견고하게 작성되어 있고, 어느 부분이 부족한지한 눈에 쉽게 확인하는 방법이 있다.소스코드 링크nyc 는 테스트 커버리지를 시각화해주는 툴이다. 단순히 시각화에서 그치지 않고 실제 코드에 대한 진단까지 보여주는 아주 유용한 툴이다.터미널을 열고 다음

2022년 1월 15일
·
0개의 댓글
·
post-thumbnail

TDD 004: 유닛테스트 작성하기 - API

API 를 테스트하는 유닛테스트를 작성해보자.소스코드 링크REST API 를 작성하면서 사용하는 라이브러리, 테스트 코드에 사용하는 라이브러리를 추가한다.express 는 Http(또는 Https)서버를 실행할 수 있는 가장 인기있고, 가장 가벼운 nodejs 라이브러

2022년 1월 15일
·
0개의 댓글
·
post-thumbnail

TDD 003: 유닛테스트 작성하기 - 클래스

이번에는 클래스에 대한 유닛테스트를 작성해보자.소스코드 링크클래스에서 사용하는 라이브러리, 테스트 중에 사용하는 라이브러리를 설치한다.axios 는 User 클래스에서 사용하는 네트워크 통신 라이브러리이다.sinon 은 유닛테스트를 용이하게 하기 위해서 가짜 객체를

2022년 1월 15일
·
0개의 댓글
·

TDD 002: 용어 정리

가장 작은 테스트의 단위는 테스트 케이스(Test Case) 이고여러 개의 테스트 케이스가 모여서 하나의 테스트 슈트(Test Suite)를 이룬다.참조 링크: https&#x3A;//www.testim.io/blog/test-suites-test-cases-hiera

2022년 1월 15일
·
0개의 댓글
·
post-thumbnail

TDD 001: 유닛테스트 작성하기 - 함수

자바스크립트에서 테스트 코드 작성하는 방법을 알아보자.소스코드 링크명령어를 이용해서 nodejs 프로젝트를 초기화한하고.gitignore 파일을 생성해서 node_modules/ 를 추가한다.이후에테스트 라이브러리 mochaassertion 라이브러리 chai두 가지를

2022년 1월 15일
·
0개의 댓글
·
post-thumbnail

리팩터링 체크리스트

같은 기능이라서 똑같은 코드를 복붙해서 구현해놨지만 그 똑같은 코드 N개 중에서 1, 2군데에만 변경 사항이 있는 경우, 이 같은 기능 같은 코드를 모두 똑같이(또는 최대한 서로 비슷한 구조로) 개선하기이 경우는 백엔드보다는 UI 쪽에서 자주 발견할 수 있을 것 같다.

2022년 1월 12일
·
0개의 댓글
·