나는 2022년 08월 25일에 산업기능요원의 신분으로 취직을 했다. 코로나로 인해 학교를 가지 못 한 채 대학 생활이 끝나간다는 불안에 빠져, 도피성으로 선택한 산업기능요원이었다. 당시에 Spring이 뭔지도 모르는 채로 Java 개발자, 웹 개발자 공고 등에 이력서를 마구 넣었던 것이 엊그제 같은데 벌써 이렇게 2년이 지나 산업기능요원을 전역하게 되었다는 점이 굉장히 새삼스럽기도 하고 어벙벙하다. 나의 개발 생활에 많은 것들을 바꿔준 2년의 생활 중 나머지 절반의 회고 글을 써보려 한다. (앞쪽 절반은 여기에 https://octoping.tistory.com/15 ) 산업기능요원 1주년 회고 (2021.08.25 ~ 2022.08.25) 나는 2022년 08월 25일에 산업기능요원의 신분으로 취직을..
들어가기 앞서 해당 글은 Prisma의 공식 문서인 해당 글을 번역하였습니다. https://www.prisma.io/docs/concepts/more/comparisons/prisma-and-typeorm Prisma vs TypeORM Learn how Prisma compares to TypeORM. www.prisma.io TypeORM vs Prisma Prisma와 TypeORM은 비슷한 문제를 해결하지만, 작동하는 방식은 꽤 다릅니다. TypeORM은 테이블을 모델 클래스에 매핑하는 전통적인 ORM입니다. 이러한 모델 클래스는 SQL 마이그레이션을 생성하는 데 사용할 수 있습니다. 그런 다음 모델 클래스의 인스턴스는 런타임에 애플리케이션에 CRUD 쿼리를 위한 인터페이스를 제공합니다. Pri..
들어가기 전에 https://www.prisma.io/docs/concepts/overview/prisma-in-your-stack/is-prisma-an-orm Is Prisma an ORM? | What is an ORM? Learn about how Prisma implements the Data Mapper ORM pattern and how it achieves the same goal as traditional ORMs without requiring you to map classes to tables as traditional ORMs do. www.prisma.io 본 글은 Prisma 공식 문서의 해당 글 (Is Prisma an ORM?)을 번역한 문서입니다. Prisma는 ORM인가요..
개발자를 위한 시프트 레프트 테스트 | 다카하시 주이치 - 교보문고 개발자를 위한 시프트 레프트 테스트 | 소프트웨어 품질을 높이기 위한 개발자 테스트 프랙티스소프트웨어 품질은 조기에 결정되므로 개발 과정에서 테스트를 뒤로 미루지 않고 최대한 앞 단계 product.kyobobook.co.kr 들어가기 앞서 테스트 주도 개발 서평 이후로 처음 쓰는 서평인데, 사실 그 사이에 여러 책들을 더 읽긴 했지만, 이펙티브 자바 같이 이미 너무 많은 서평이 인터넷에 올라와있는 책들은 굳이 내가 또 서평을 더 올리는 의미가 별로 없을 것 같아서 올리지는 않았었다.. 책에 대한 생각 원 주제로 돌아와서, 개발자를 위한 시프트 레프트 테스트라는 책에 대해 이야기해보자. 책의 부제가 '단위 테스트, 리팩터링, 애자일 개발..
들어가기 앞서 지난 번에 작성했던 사내 세미나 - 테스트 코드에 대해 알아보자 세미나의 다음 편으로 진행한 세미나이다. Getter와 Setter의 사용을 금지하라 '리팩토링' 책의 저자로 유명한 Martin Fowler는 객체지향 생활체조 원칙을 소개하면서 다음과 같이 쓴 적이 있다. Getter, Setter의 사용을 금지하라 The ThoughtWorks Anthology 대체 왜 이런 얘기를 했을까? 이 이유에 대해 한번 알아보려고 한다. Getter와 Setter란? 들어가기 앞서, Getter와 Setter가 무엇인지부터 알아보면 좋을 것 같다. Getter와 Setter는 다른 객체가 자신의 속성에 직접 접근하는 것을 막기 위해 사용하는 메소드이다. Getter와 Setter를 통해 객체 안..
어떤 프로젝트는 yarn berry를 사용하고 있고, 어떤 프로젝트는 그냥 yarn 1.0을 이용해서 프로젝트를 진행하고 싶었다. 하지만 아무리 yarn set version classic, yarn set version berry, yarn set version stable 같은 명령어를 쳐봐도 yarn 버전이 변경은 전혀 되지 않고, 그냥 yarnyc.yml가 생기기만 해서 스트레스가 좀 많았다. 그래서 yarn 버전을 변경하는 방법을 찾아봤다. cd ~/ yarn set version classic (yarn berry 로 바꾸고 싶다면 yarn set version berry를 입력하면 된다) 이렇게 하니 잘 적용이 되었다. 하지만 전역적으로 적용이 되어서 그런지, 다른 프로젝트에서도 내가 설정한..
들어가기 앞서 산업기능요원으로 현재 회사에 입사한 지가 벌써 2년이 다 되어가고 있다. 하지만 회사 내 스택은 아직 낮은 수준에 있기 때문에, 내가 나가기 전에 회사에 내가 아는 것들을 좀 전파를 많이 해야겠다는 생각을 요새 참 많이 하고 있다. 그래서 세미나를 할 계획을 몇 개 세워놓았는데, 그 첫 번째 세미나는 테스트 코드에 대해 진행하게 되었다. 웹 개발은 프론트엔드와 백엔드로 나누어지며, 특히 우리 회사는 기괴하게도 프론트엔드에 많은 부분이 몰빵되어 있는 부분이 많다. (프론트엔드 쪽에 비즈니스 로직이 많다). 하지만 프론트엔드의 테스트 코드 작성에 대해 얘기하자니, 그에 필요한 사전 지식들이 너무나도 많았다. 그렇기 때문에 차라리 더 입문하기도 쉽고 설명하기도 좋을 것 같은 백엔드 테스트 전략에..
오픈 소스 첫 기여를 했다. 동기 회사에서 쓰고 있는 라이브러리였는데, 옛날에 만들어진 데다가 좀 하꼬 라이브러리인지라 Javascript와 리액트 클래스 컴포넌트로 구성된 라이브러리였다. 옛날에는 그냥 CRA로 구성된 자바스크립트 프로젝트만 구축해왔기 때문에 상관 없었지만, 이제 나의 주도로 Next.js와 Typescript 환경에서 코딩을 하다보니 이런 문제점이 눈에 들어오기 시작했다. Typescript 프로젝트 에서 타입스크립트를 지원하지 않는 라이브러리를 사용하려면 declare module 이런 거를 해서 직접 타입을 적어줘야 해서 조금 귀찮은 부분이 있다. 또, 클래스 컴포넌트에서 componentWillReceiveProps 같이 deprecated된 api를 사용하고 있어서 매번 켤 때..
우선.. 키노라이츠 앱 덕분에 매번 시사회도 다녀보고 굉장히 감사하기 그지 없습니다 #키노팝콘인증 #키노라이츠 일단 시사회 티켓은 보통 1인 2석을 제공해준다. 내가 영화를 좋아하는지라 용포디, 코돌비, 용아맥 등 여러 특별관들을 많이 돌아다녀보면서 우리 어머니도 이런 특별관을 경험시켜드리고 싶다는 생각을 평소에 한다. 그래서 용포디도 한번 체험시켜 드렸고 (비상선언. 영화는 망했지만 4DX 효과는 역대급이었는듯) 코돌비도 체험을 한번 시켜드렸다. (아바타 2. 이것도 키노 시사회 덕에 당첨되었는데 진짜 영광스러웠다) 하지만 용아맥은 한번도 데려다드리지 못해서 마음이 아팠건만. 이건 좋은 기회였다 용산 아이맥스는 열리자마자 자리가 휘리릭 나가서 좋은 자리 잡기가 참 어렵기로 유명한데, 특히 마블 영화는 ..
[원문: http://blog.cleancoder.com/uncle-bob/2014/11/24/FPvsOO.html ] Clean Coder Blog OO vs FP 24 November 2014 A friend of mine posted the following on facebook. He meant it as a troll; and it worked, because it irked me. There are many programmers who have said similar things over the years. They consider Object Orientation and Functional blog.cleancoder.com 들어가기 앞서 원문 작성일: 2014년 11월 24일 OO = Ob..