본문 바로가기

개발관련

(124)
효과적인 코드 리뷰 방법에 대한 가이드 💡 해당 문서에서는 효과적인 코드리뷰 방법에 대한 가이드를 제공합니다. 개요 효과적인 코드리뷰 방법을 습득하여 나와 내 팀, 그리고 기술 조직이 더 잘 성장할 수 있도록 노력해봅시다. 코드 리뷰의 이점 코드 리뷰를 통해 소프트웨어 버그를 예방할 수 있습니다. 코드 리뷰는 작성자 외의 누군가가 변경을 살펴볼 수 있는 첫 번째 기회입니다. 코드 리뷰를 통해 일관된 코드베이스를 갖출 수 있습니다. 코드 리뷰는 소프트웨어 엔지니어에게 코드는 ‘자신의 것’이 아니라 협업을 통해 만들어지는 ‘조직의 공동 소유물’임을 인식시켜 줍니다. 코드 리뷰를 통해 지식을 공유할 수 있습니다. 코드 리뷰 모범 사례 공손하고 전문가답게 리뷰어 리뷰어들은 작성자가 선택한 방식을 존중하고 오직 그 방식에 결함이 있을 때만 대안을 제시..
코틀린 변성 정리 (불공변성, 공변성, 반공변성) 개요 이펙티브 코틀린 책을 보는 도중, 아이템 24번(제네릭 타입과 variance 한정자를 활용하라)을 보고 잘 이해가 가지 않아서 코틀린의 가변성에 대해서 정리합니다. 공부하면서 정리한 내용이기 때문에 잘못된 내용이 있을 수 있습니다. 잘못된 내용에 대해 피드백 해주시면 즉시 수정 & 반영하도록 하겠습니다. 변성(Variance)이란? 변성(Variance) 이란 기저 타입(base type)이 같으면서 타입 인자(type argument)가 다른 경우 서로 어떤 관계에 있는지 설명하는 개념입니다. 참고로 기저 타입(base type)은 원시 타입이라고도 부르며, 타입 인자(type argument)는 제네릭 타입이라고도 부릅니다. List List // 여기서 기저 타입(base type)은 Lis..
역사 관점으로 Git을 사용하는 방법 Git 사용법 개요 www.notion.so
Tistory 랜덤 버튼 만들기 개요 Tistory 블로그에 랜덤 버튼을 만들어 게시글을 랜덤하게 볼 수 있도록 하는 방법을 공유한다. 방법 Tistory 스킨 편집 페이지로 이동하여 아래 스크린샷을 따라 진행한다. (Tistory 스킨 편집 방법 참고 : https://www.jbfactory.net/10287) 랜덤 버튼을 위한 Tag를 삽입한다. 본인이 랜덤 버튼을 배치하고 싶은 곳에 원하는 방식으로 Tag를 삽입한다. 필자는 div 태그를 이용하였다. 그리고 Tag에는 onclick 이벤트를 꼭 넣어주어야 한다. 그리고 onclick 이벤트 실행 시 random() 이라는 함수가 실행되도록 작성해야 한다. 태그가 위치한 곳에서 값을 가진 Tag를 찾아 수정한다. 값은 Tistory에서 라는 태그 하위에 있으면 총 게시글 수로 치..
객체 지향 원리와 이해 개요 객체 지향의 원리와 이해에 대해서 알아보자. 기계어 인류 최초의 프로그래머들은 꺼진 상태와 켜진 상태를 각각 0과 1로 해석할 수 있는 백열전구(혹은 진공관)를 이용해 프로그램을 작성했다. 애드삭(EDSAC) 01010101 00000001 00001001 유니박(UNIVAC) 11011100 00011000 10011000 특징 이기종 간의 명령어(기계어)가 달랐음. 이유는 CPU가 다르기 때문. CPU가 해석하는 2진수가 달랐다. 어셈블리어 기계어의 명령들을 일상 용어로 표현하고 이걸 기계가 알 수 있는 기계어로 변역하게 하면 어떨까? 어셈블리어 니모닉(Mnemonic)과 기계어의 일대일 대칭 코드표 CPU마다 기계어가 다르기 때문에 CPU별로 각자의 어셈블리어도 달랐음. 즉, 이기종 간 어셈블..
Fluentd로 Elastic Search 로그를 수집할 때 특정 로그가 수집이 안되는 이슈 원인 파악 및 해결 Fluentd를 이용하여 Elastic Search에 로그를 수집할 때, 정상적으로 로그 수집이 안되는 것 같아 보이는 현상 발견. Fluentd의 td-agent 로그에서 특이사항 발견되지 않음.(에러 로그 없음) Elastic Search의 로그에서도 특이사항 발견되지 않음.(에러 로그 없음) 하지만 키바나에서 특정 index가 수집이 안되고 있는 것을 확인 따라서 아래 순서대로 문제의 원인 파악을 진행함. : Elastic Search에 직접 수집이 안되고 있는 index로 데이터를 입력해봄 # 예시 $ curl -XPUT "http://localhost:9200/my_index/_doc/1" -H 'Content-Type: application/json' -d' { "name": "Jongmin ..
private한 container registry 만들기(docker registry) registry는 Docker 이미지를 저장하고 배포 할 수있는 확장성이 뛰어난 상태 비 저장 서버 애플리케이션입니다. registry는 Apache 라이선스에 따라 오픈 소스 입니다. 다음과 같은 경우 registry를 사용하는 것이 적절합니다. 이미지가 저장되는 위치를 엄격하게 제어해야 하는 경우 이미지 배포 파이프 라인을 완전히 소유하고 싶은 경우 이미지 저장 및 배포를 사내 개발 워크 플로에 긴밀하게 통합하고 싶은 경우 아래 명령어를 통해 docker 를 이용하여 간단하게 registry 서비스를 배포할 수 있습니다. : #!/bin/bash CUR_PATH=`pwd` docker run --detach \ --publish 5000:5000 \ --restart always \ --volume ..
AWS EKS 클러스터 인증 및 kubectl RBAC 설정 방법 외부 호스트에서 새로운 IAM 정보로 AWS EKS의 kubernetes API로 kubectl 명령을 날릴 수 있는 방법을 안내한다. 기본적인 AWS 사용법 및 IAM 서비스에 대한 이해도가 있다는 것을 바탕으로 안내한다. STEP 1 : IAM 사용자에게 할당할 정책 생성 및 할당 아래의 json 내용으로 RBAC을 설정할 IAM 계정에 할당할 정책을 생성한 후 할당한다. { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "eks:ListFargateProfiles", "eks:UpdateClusterVersion", "eks:ListNodegroups", "eks:Descr..