전체 글
-
(일기) 코드를 어떻게 잘 짜볼까?카테고리 없음 2023. 5. 26. 02:54
회사라는 곳에서 개발을 대략 2016년부터 했으니까, 벌써 개발자로 7-8년은 일한 것 같다. 처음 코딩을 배울때는 Visual Studio를 열어서 hello world 치는 것도 버벅였는데, 다뤄본 언어도 몇 개 되는 것 같고 프론트엔드니 백엔드니 회사에서 필요로 하는건 가리지 않고 해본 것 같다. 물론 아직 더 경험해야 할게 많지만... 그런데 아직도 어떻게 하면 더 코드를 잘 짤까? 라던지, 어떤 코드가 좋은 코드일까? 같은 기본적인 질문을 해보곤 한다. 물론 답은 구하지 못했고, 앞으로도 구할 수 있을지는 모르겠지만 적어도 아 이런걸 하면 좋구나 하는 것들을 쌓이는 것 같다. 어떤게 있을까, 사람들에게 잘 짠 코드는 어떤거에요? 물어보면 엄청 다양한 답이 나올 것 같다. 그 사람의 개발 영역에 ..
-
k8s + git-action-argocd로 간단하게 GitOps 구축하기Infrastructure 2023. 4. 22. 02:06
팔자에도 없을 거라고 생각했던 쿠버네티스를 시작한지 어언 1년, 이제는 그래도 나름 한 서비스 배포 프로세스를 구축할 정도로는 올라온 것 같다. 회사 홈페이지의 백엔드 배포 프로세스를 재정립하려고 뜯어보니, 나름 프로세스가 잡혀있었으나 여전히 손이 가는 부분이 여럿 있었다. 예를 들어 template ec2에 ssh로 직접 접속하여 AMI를 만들고 올라간 버전을 직접 오토 스케일링 그룹에 적용 시키는 부분들. 사실 정석?(인프라 바닥부터 배우는 중이라...)이라고 생각하지만 우선 나는 아마존 콘솔에 OTP치고 로그인하는것도 귀찮은 사람이라 조금 더 자동화 해보기로 했다. 우선 목표는 최대한 자동화 하는 것, 물론 자동화가 만능은 아니라지만 branch 전략으로 많이 잡을 수 있을 것이라고 생각하고 기존에..
-
Compound를 분석해보자 (3) - 컨트랙트 3편, Liquidation블록체인 2021. 5. 30. 07:38
이번에는 컴파운드 컨트랙트 중 청산과 관련된 코드를 보기로 했다. 컴파운드는 담보 대출 플랫폼이고, 담보 가치가 하락하면 담보를 청산시키는 시스템이 필요하다. 왜냐하면 대출로 나간 자산보다 담보의 가치가 작다는 것은 시스템에 부실이 발생했다는 뜻이기 때문이다. 그럼 바로 코드를 보면서 하나씩 뜯어보자. 컨트랙트는 아래 주소를 보면 되겠다. https://github.com/compound-finance/compound-protocol/blob/master/contracts/CToken.sol /** * @notice The liquidator liquidates the borrowers collateral. * The collateral seized is transferred to the liquidat..
-
Compound를 분석해보자 (2) - 컨트랙트 1편, Borrowing블록체인 2021. 5. 2. 06:44
이번 글에서는 컴파운드에 있는 컨트랙트를 살펴보고 분석해보려고 한다. 컴파운드 컨트랙트는 아래 Github에서 확인해 볼 수 있다. github.com/compound-finance/compound-protocol compound-finance/compound-protocol The Compound On-Chain Protocol. Contribute to compound-finance/compound-protocol development by creating an account on GitHub. github.com 먼저 본격적으로 분석해보기 전에, Read me를 보고 어떤 컨트랙트가 있는지 간단하게 정리해보자. CToken, CErc20, CEther cToken은 컴파운드의 대출 서비스에 사용되는..
-
Compound를 분석해보자 (1) - 컨셉블록체인 2021. 4. 11. 05:06
이번 학기도 디사이퍼 팀플을 한다! 회장님께서 멘토로 앉혀주셨지만 아직 한참 모자라기에 그냥 열심히 연구해보려고 하는 중.. 주제는 DeFi 리스크 분석, 평소에 DeFi에서 열심히 이자 농사를 짓고 있지만 사실 어떤 리스크가 있고 어떤 문제가 발생할지 아직 감이 전혀 안 잡히는 상태이다. 그래서 이번 학기에 한번 DeFi 시장에 어떤 사건 사고들이 있었고, 앞으로 어떤 일들이 벌어질 수 있는지에 대해 좀 더 생각해보기로 했다. 그 중, 먼저 Lending DeFi들에 대해 알아보기로 했다. Lending하면 가장 유명한 플랫폼 중 하나가 컴파운드 아니겠는가? 컴파운드의 컨셉에 대해 간단하게 알아보고, 컨트랙트를 까보기로 결심했다. (요즘 너무 바빠서 블로그 글을 잘 못 쓰고 있었는데, 이번 기회에 다시..
-
[Flutter] 유닛테스트Flutter 2021. 3. 26. 22:14
처음 유닛테스트를 접했을 때는 이거 왜하지? 라는 생각이 들었다. 그런데 지금은 테스트 코드 짱짱맨을 외치며 열심히 TC를 작성하고, 더 나아가서 구현 테스트, 테스트 자동화, 몽키 테스트 같은 다양한 영역을 경험해봤다. 한창 회사에서 안드로이드 앱을 개발하면서 몽키테스트로 아니 무슨 이런곳에서 에러가나냐 싶은 경험도 했었고, 다른 사람이 수정한 코드로 인해 내 TC가 깨지거나, 반대인 상황을 겪으며 테스트 코드의 유용함에 대해 많이 깨달았다. 그런데 그 뿐 만이 아니라, 레거시 코드에 유닛 테스트를 도입하면서 정말 말그대로 개고생을 했고, 테스트 하기 좋은 코드에 대해 관심을 갖게 됐다. 그리고 테스트하기 좋은 코드를 짜면 자연스럽게 조금 더 깔끔한 구현이 된다고도 느꼈다. 아직 아쉬운 부분은 TDD까..