본문 바로가기

Tips

(11)
[IntelliJ] Quokka plugin 소개 및 사용법 Javascript 개발을 진행하다보면, 프로토 타입을 개발을 위한 격리된 공간이 필요할때가 있습니다. 특정 라이브러리의 함수가 어떤 결과를 출력하는지 확인하고 싶은 경우 JS를 강의하거나, 테스트로 실행 후 결과를 바로 확인하고 싶은 경우 보통 이런 이유로 온라인 편집기 (브라우저 개발자 도구의 Console)를 사용합니다. 하지만 이런 온라인 편집기의 최대 단점은 기존에 사용하던 개발환경이 아니라는 것입니다. 게다가 그간 사용하던 단축키와 다르니 매번 할때마다 버벅버벅 헤매여서 시간을 효율적으로 쓰기 어렵죠T.T.. 이 모든 단점을 해결해줄 Quokka 플러그인을 소개합니다! # 설치 방법 저는 주로 IntelliJ 프로그램에서 주로 사용하고 있어, 해당 프로그램에서 설치하지만 VS Code에서도 지..
[DBeaver] Access denied ‘test’@‘0.0.0.0’ Current charset is UTF-8 오류 해결 ⌗ 오류 현상 Access denied for user ‘test’@‘0.0.0.0’ (using password: YES) Current charset is UTF-8. If password has been set using other charset, consider using option 'passwordCharacterEncoding' ⌗ 해결 방법 password charset이 달라서 발생한 현상으로, session 설정할때 driver setting에서 User Properties에 charset을 추가해준다. [참고] https://k9e4h.tistory.com/351 [오류관리] Dbeaver Password Charset Current charset is UTF-8. If passwor..
[Git] 충돌 해결, Conflict solution 공동으로 작업하고 있는 origin에 연결된 브랜치(origin develop)에 충돌이 발생하는 경우 해결하는 방법을 작성했습니다. 1 ) git checkout feature/test 내가 작업하는 브랜치(feature/test)로 이동 2 ) git pull origin develop 공동으로 작업하고 있는 origin에 연결된 브랜치(origin develop)의 내용을 가져옴(pull) 3) 충돌 여부 확인 3-1) 충돌이 발생한 경우 : 충돌한 파일을 수정 3-2) 출돌이 발생하지 않은 경우 : 4번으로 진행 4) git add . 작업하고 있는 브랜치(feature/test)의 Untracked Files를 모두 한번에 stage(혹은 Index) 함 5) git status On branc..
[IntelliJ] Cannot resolve symbol ${className} 오류 해결 ⌗ 오류 현상 IntelliJ IDE에서 Gradle 기반의 프로젝트 작성시 가끔 Cannot resolve symbol ${className} 메시지가 등장할 때가 있다. 프로젝트 내 CLASSPATH에서 해당 클래스를 찾지 못하여 발생하는 것 ! External Libraries 탭을 보면 /build.gradle의 dependencies에 정의한 라이브러리들이 로드되지 않은 것을 확인할 수 있다. ⌗ 해결 방법 File → Invalidate Caches / Restart…를 실행하고, IntelliJ IDE를 재시작한다. 위 방법으로 해결이 안되면, Gradle → 프로젝트명 우클릭 → Refresh external project를 클릭한다.
[Git] 사용법 # Commit 메시지 수정 아래의 명령어를 실행하면 수정 할 메시지를 입력하는 방법입니다. -m 옵션을 사용하여 수정합니다. > git commit --amend -m "이슈 수정" 수정한 후에 Ctrl+ O 를 입력하여 저장한 후 Ctrl+ X를 사용하여 빠져나가면 됩니다. log 커맨드를 통해 커밋 메시지의 변경이 확인 가능합니다. -1은 이전 단계 하나의 커밋 내용을 출력합니다. > git log -1 # “.gitignore” 파일 내용 git에 올릴때 무시할 파일들의 내용을 서술하기 # package files #*.jar *.war *.ear # maven target .mvn/ # intellij *.iml .idea/ mvnw mvnw.cmd # gradle **/.gradle/ **/b..
MSA 아키텍쳐 MSA는 마이크로 서비스 아키텍쳐의 줄임말로, 아키텍쳐 스타일 중 하나다. 다시말해 마이크로 서비스로 기능 단위로 잘게 나누어 서비스 간이 연결을 뜻하고, 이는 전체 시스템이 커질수록 서비스가 많아져 연결이 복잡해지는 문제점을 낳게 된다. 따라서 서비스 간의 연결 구조를 파악하기 어려우며, 장애가 났을때 추적이 어렵고, 장애가 확산되면서 다른 서비스에 영향을 주는 문제가 생기곤 한다. 예를 들어 클라이언트→ 서비스 A → 서비스 B의 호출 구조가 있다고 하자. 만약 서비스 B가 느려지거나 응답이 없는 상태가 되어 버리면, 서비스 B를 호출 하는 서비스 A 안의 쓰레드는 서비스 B로 부터 응답을 기다리기 위해 대기 상태가 되고, 이 상태에서 클라이언트에서 호출이 계속 되면, 같은 원리로 서비스 A의 다른 ..
TDD/단위테스트 비교 분석 및 테스트 코드의 중요성 테스트 코드를 소개하기 앞서, 다들 이야기하는 TDD(테스트 주도하는 개발)에 대해 짚고 넘어가겠습니다. ⌗ TDD : 테스트 주도 개발 테스트 코드를 먼저 작성하는 것부터 시작합니다. 먼저, 항상 실패하는 테스트를 먼저 작성하고 테스트가 통과하는 프로덕션 코드를 작성하고 테스트가 통과하면 프로덕션 코드를 리팩토링합니다. 반면, 단위 테스트는 TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것입니다. ⌗ 단위 테스트 코드 TDD와 달리 테스트 코드를 꼭 먼저 작성해야하는 것도 아니고, 리팩토링도 포함되지 않습니다. 순수하게 테스트 코드만 작성하는 것입니다. 감이 오나요? 그러니 가능하다면 단위 테스트 코드를 먼저 배운 뒤 TDD를 배워보길 추천드립니다. ✦ TDD 관련 추천 서적 http:/..
[IDE] JetBrain의 IntelliJ 설치 : Java Develop Tool JetBrain(젯브레인)에서 제공하는 IntelliJ(인텔리제이)는 2가지 버전을 지원하는데, 유/무료가 나뉜다. 인텔리제이 얼티메이트 : 유료, 1년에 149달러(개인)/499달러(회사) 인텔리제이 커뮤니티 : 무료!! 나는 개인적으로 개발을 사용할 예정으로, '인텔리제이 커뮤니티' 버전을 쓰기로 했다. 커뮤니티 버전을 써도 문제가 없는게 아래에 제시된 내용처럼 Java 개발하는데 충분히 문제가 없기 때문입니다. 자바 개발에 대해 모든 기능 지원 빌드 도구(Maven, Gradle) 기능 지원 VCS(깃, 깃허브 등등) 기능 지원 스프링 부트의 경우 별도의 외장 서버(톰캣 등) 없이 실행 가능 회사에서 인텔리제이를 쓰고 있어 동일한 툴을 사용하기 위함 다만, HTML, CSS, 자바스크립트에 대한 지..

❥ CHATI Github