Pinned
-
삶의 지도 - 과거부터 현재까지
이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...나는 이 세상에 37주 미만에 태어난 미숙아임과 동시에 2.2kg인 저출생체중아로 태어났다인큐베이터에 꽤 오랜 시간을 있었다고 한다...ㅠ약하게 태어난 탓일까... 어머니가 말씀하시길 나는 3살 초까지 먹는것들 대부분을 게워내기 일쑤였고, 말하는 것도 늦었다고 했다이러나저러나 애기였던 나는 그래도 태어난 김에 살고싶었나보다..ㅎ 그래도 조금씩은 건강을 회복해 나아갔다하지만 태어날 때 미숙아여서 그런진 몰라도 위 사진에 첨부한 안 좋은 특성중에 몇개가 있는 것 ..
2024.09.22
-
Primitive type의 Call By Value 살펴보기(feat. JNI)
최근에 다시 자바공부를 하다가 이런 면접 질문이 있는 것을 봤다 Java는 Call by Value 일까요? 아님 Call by Reference 일까요?사실 이 질문 자체로는 틀린 질문이라 생각한다일단 맞는 질문으로 변환해보면Call by Value 와 Call by Reference 의 차이점에 대해서 말해주세요그럼, Java는 Call by Reference 방식을 지원할까요?라는 꼬리질문식 질의문이 되어야 맞는다고 생각한다 다른 글에서 쓴 내용이긴 하지만 영어 자체를 하나하나 짤라서 해석해보자 Call 이란 무엇일까?내가 vba다음으로 배운 언어인.. C언어를 예로 들어본다C언어를 배울때 나오는 것은 함수의 선언/호출/정의부 용어가 나온다영어로는 Declaration/Call/Definition라..
2024.08.20
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
Java/Kotlin Spring 진영에서 테스트코드 혹은 실제와 비슷한 더미데이터를 생성할때 쓰는 라이브러리가 있다[ 보통 테스트 코드에서 사용하는 Fixture나 대표/운영진분들이 투자자분들한테 실제와 같은 데이터로 시연화면을 보여주고 싶을때 사용 ] 그것은 아마 자바 대상혁(Java-Faker) 라이브러리일것이다..(너..롤하냐? 왜 기습숭배를..)이 라이브러리의 시초는 루비이며, 거기서 파생되어 나온 프로젝트이다( Maven Repository에서 무려 1833위인 라이브러리 )인터넷에 몇몇 글들 혹은 개발 강의를 보면 이 라이브러리를 가져다 쓰는 곳을 볼 수 있다나름 버전관리도 꽤 한 모습이다(0.18에서 왜 갑자기 1.0으로..?)하지만 가장 최근 버전을 눌러보면9개의 취약성을 갖고 있다는 것..
2024.09.17
-
MySQL Select 쿼리 실행 순서 알아보기(feat. EXPLAIN, ANALYZE)
조금은 쉬운 Q&A일수도 있다하지만 종종 면접에도 나오는 질문이기때문에 손으로 직접 실행해보면서 알아보기로 한다 Q. SELECT 쿼리문 실행 순서일단 개발자의 숙명: 검색을 이용하면 결과는 이렇게 나온다(요즘엔 구글링에서 프롬프팅으로 넘어가는 추세이지만...) FROM AND JOIN🔽WHERE🔽GROUP BY🔽HAVING🔽SELECT🔽ORDER BY🔽LIMIT 테스트 테이블 & 데이터 준비일단 이걸 검증하기 위한 employee, department_info 테이블 2개를 만들었다예제 쿼리이런 느낌들로 쭉 쿼리를 실행해볼 예정이다/* FROM */SELECT *FROM employee;일단 employee 테이블의 전체 데이터가 출력되는 쿼리를 실행시켰다* 쿼리 실행결과가 에디터 내부에 나..
2024.11.21
-
it, 그것을 찾아서
코틀린에서 람다식을 사용할때 인자가 하나인 경우에 it으로 사용할 수 있다 2024년 11월 19일 기준 코틀린 최신버전인 2.021문서를 살펴보면 위의 내용이 나와있다it: implicit name of a single parameter-> 번역: 단일 매개변수의 암시적 이름 it의 활용 예시를 들기 위해.. 간단한 코드를 만들어봤다* 간단한 포스팅용 코드이므로, Assertion이 없다고 불편해하지 마시라!ㅠ. 학습용 테스트도 테스트의 일부일 수 있는것처럼package bokiimport org.junit.jupiter.api.Testclass ItTest { data class Person( val name: String, val age: Int, ) @Te..
2024.11.19
-
코루틴 개념 정리, 디버깅 or 출력해보기(feat. IntelliJ Configuration Template)
2023년 회사에서 코틀린을 썼지만, 쓰자마자 코루틴을 바로 사용하지는 않았었다2024년쯤 코루틴을 공부하고 백엔드 코드에 조금씩 사용하는 영역을 넓혀갔다간단하게 코루틴 기본 개념과 활용까지 블로깅을 조금씩 해보려고 한다로니콜먼도 아마 코루틴을 사용해본 경험이 있는 것 같다. 왜냐하면 "Light Weight Baby!!"라고 외치며 헬스를 했으니 말이다 코루틴(Coroutine)이란?코루틴이란 Light-Weight Thread(경랑스레드)라고도 불리며, 스레드와는 독립적으로 실행되는 비동기 작업의 단위이다 내부적으로는 Continuation이라는 객체에 현재 작업(Job)의 진행 상태를 저장하고, suspend와 resume을 통해 작업을 일시 중단하거나 재개할 수 있다이 특성 때문에 코루틴은 스레드..
2024.12.02
-
JPA 특징 + 1차 캐시(feat. EntityManager.clear())
먼저 JPA를 사용할때의 장/단점, 특징, 용어 등을 알아야 한다 JPA란?JPA: 데이터베이스와 객체지향 프로그래밍 간의 매핑을 제공하는 ORM(Object-Relational Mapping) 기술특징데이터베이스를 객체로 매핑하여 SQL을 직접 작성하지 않아도 데이터베이스 작업이 가능영속성 컨텍스트를 통해 엔티티의 상태를 관리트랜잭션 범위 내에서 1차 캐시를 통해 데이터베이스 부하를 줄이고 엔티티의 동일성을 보장. 이 글에서는 JPA의 1차 캐시(First Level Cache)를 중심으로 다룬다 캐시, 캐싱이란?캐시(Cache): 데이터나 값을 미리 복사해 놓는 임시 장소캐싱(Caching): 캐시된 영역에서 데이터를 저장하거나 조회하는 접근 방식 1차 캐시란?1차 캐시(First Level Cach..
2024.11.23
-
Hibernate(JPA) 탐구 - 1편(feat. FlushEvent와 Action Queue)
일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음 코드의 성공/실패 결과를 예측해보자 문제1테스트코드라 사실 뭐..given , when, then// given...// when & thenval exception = assertThrows { ...}테스트코드라 사실 뭐..given , when, then 그리고 예외를 잡는부분까지 있어야하지만 간단하게 저 테스트가 초록불이 뜰지 주황/빨간불이 뜰지 정도만 예측해보자 답은?답은.. ActionQueue로 혼동을 주긴 했지만, 이건 delete로 인해 준영속화된 엔티티(id가 nu..
2024.11.25
-
Hibernate(JPA) 탐구 - 2편(feat. save() 메서드 분석)
서론지난 1편https://code-boki.tistory.com/266 FlushEvent와 Action Queue의 동작 방식으로 알아보는 Hibernate(JPA) 1편일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음code-boki.tistory.com에 이은 2편이다이번에는 save() 메서드를 깊이 파보면서 JPA의 동작방식을 이해해보자ㅋㅋ 진짜 삽질 엄청 많이했다...참고로 이 글은 불친절하게 작성되어 있다나는.. Internet Explorer의 호환성은 싫어했지만, Explorer라는 뜻은 좋아한다탐험가라는 뜻이다...
2024.12.11
인기글
-
IntelliJ 내가쓰는 25가지 플러그인 목록
IDE의 첫글로 어떤게 좋을까 하다가... 남들도 다 썼긴 하겠지만, 그래도 혹시나 이 중에서 모르는 사람도 있을 수 있으니 나도 플러그인을 써보려고한다! 일단 쓰는 목록을 적어보면 Atom Meterial Icons (필) Code Screenshots (선택) CodeGlance (필) Codota AI Autocomplete for Java and Javascript (필) GitToolBox (필) Indent Rainbow (선택) JWT(JSON Web Token) Analyzer (선택) Key Promoter X (선택) Korean Lanugage Pack / 한국어 언어 팩 (선택) Nyan Progress Bar (필) / Pokemon Progress / Mario Progress ..
2021.06.09
-
2023 플러터 앱 핸드폰에 설치해서 실행해보기(iOS)
아이폰은 안드로이드보다 많이 복잡하다..ㅎ 1. 아이폰 직접 연결 우선 아이폰을 컴퓨터에 직접 연결한다 이 표시가 뜨면 신뢰를 누른다 그럼 맥북의 Finder→위치에 본인의 아이폰이 보일 것이다 이 기기에 한번도 연결한 적이 없다면, iPhone 백업을 암호화하라는 창이 뜬다. 이 부분은 백업에 관한 설정인데, 암호화를 하지 않으면 중요 데이터는 빼고 백업이 되고, 백업 암호화를 하면 중요데이터를 포함한다 연결된 상태에서 Finder의 일반 탭에서 아래로 내려서 Wi-Fi에 연결되어 있을 때 이 아이폰 보기를 체크해준다 2. 아이폰 개발자 도구 활성화 핸드폰에서 개인정보 보호 및 보안으로 들어간다 아래의 개발자 도구를 끔→켬으로 바꿔준다 (재부팅) 재시동 3. iOS Dev 계정 - team(개인) 등록..
2023.01.12
-
VSCode Project단위 Settings & Extensions
JetBrains 계열을 주로 써온 내가 요즘에는 VScode를 쓰게 되었다 VScode에서 프로젝트를 시작할때는 다른 팀원들과의 VSCode IDE 설정, Extensions 설정, Prettier/ESLint(Frontend) 설정 등을 Sync해줘야 한다 - Settings VSCode의 전역설정(Global Settings) 말고 작업공간별 설정(WorkSpace Settgins)를 설정해주면 된다 일단 VScode를 열어서 code command를 시스템에 설치를 하자(현재 위치를 Root Working Directory로 만들어서 VScode를 열게 해준다) code command는 VSCode에서 시스템에 설치가 가능하다 (cmd + shift + P 를 누르고 code를 검색해서 설치하자)..
2023.05.17
-
원격 서버 접속하기(6) - Termius를 이용해서 원격 서버 접속하기
https://code-boki.tistory.com/143 원격 서버 접속하기(5) - telnet, ssh 차이점(feat. wireshark) https://code-boki.tistory.com/135 원격 서버 접속하기(1) - telnet/ssh입사를 해서 회사 일을 해보면, 이런 단어들을 들어볼 수 있을 것이다 로컬 서버, 개발 서버, 스테이징 서버, 배포 서버, 테스트 서버 등 code-boki.tistory.com 앞선 글에 이어서 ssh 접속을 다른 방법으로 해본다 바로 Termius라는 MacOS전용 프로그램을 사용하는 것이다 언제 지원하는 플랫폼이 늘었지!? 2022년 기준으로는 MacOS에서밖에 사용을 못했던거같은데... 회사가 커졌나부다 대체품: MobaXterm, PuTTY(W..
2024.01.04
-
UTM Virtual Machine으로 M1 Mac에서 Windows 11 설치하기(2023.06)
목차 1. UTM Install 2. Windows 11 ISO Image Download 3. UTM에 인스턴스 만들기 4. 윈도우 설치 5. 마우스 스크롤 반대 설정 6. 한글 키보드 입력 설정 7. 디스플레이 크기 변경 8. 다크 테마(옵션) 9. 공유폴더 설정 1. UTM Install https://mac.getutm.app/ UTM Securely run operating systems on your Mac mac.getutm.app dmg파일을 download 받는다 열어서 설치한다 2. Windows 11 ISO Image Download https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 Download..
2023.06.03
-
24년, 인프런과 함께하며 성숙해진 해(no 찐 회고, with 인프런)
현재 24년의 마지막 날인 12월 31일 새벽인 시점이다..21, 22, 23, 24년의 내 인프런 강의 대시보드를 보며 비교를 해봤다혹시..... 샤크's in 삭스라는 언어유희를 기대하기 위한 인프런의 아재개그인가..? # 21년 인프런 대시보드(강의 수강 기록)총 47개 수업을 완료하고, 2개의 강의를 완강했다Off The Record로 말하자면 다른 계정에서도 강의를 1개쯤 수강했던 기억이 있어서 총 3개정도를 완강했을 것이다 # 22년 인프런 대시보드(강의 수강 기록)21년과 비교하면 60개나 더 들었고, 4개나 완강했다완료수업률 127%, 총 학습시간 44% 상승! # 23년 인프런 대시보드(강의 수강 기록)나름 열심히(?) 했다. 총 164 완료 수업 및 2개를 완강했다. 약 18시간이면 ..
2024.12.31
-
2023 플러터 앱 핸드폰에 설치해서 실행해보기(Android)
1. 안드로이드 개발자 모드 활성화 설정 → 휴대전화 정보 → 소프트웨어 정보 로 들어간다 빌드번호를 여러번 클릭한다 xx 1단계 전입니다에서 한번 더 클릭하면 비밀번호를 입력하라고 나온다 비밀번호를 입력하면 ‘개발자 모드를 켰습니다’ 메시지가 나온다 그리고 다시 설정으로 가보면 맨 아래에 개발자 옵션 메뉴가 생긴 것을 볼 수 있다 클릭을 해서 들어가자 아래에 디버깅 탭에서 USB 디버깅을 활성화해주자 2. 핸드폰 연결 Mac 유저의 경우 허용 핸드폰에서 뜨는 메세지 USB 디버깅 항상 허용을 체크하고 확인을 한다 3. Android Studio 핸드폰을 연결한 채로 안드로이드를 켜준다 우측 상단 타겟에서 안드로이드 기기를 선택한다 그리고 오른쪽의 Run을 누른다 Running Gradle task 'a..
2023.01.12
-
인텔리제이 프로젝트명 수정하기
1. 파일 - Project Structure(맥 기준: Cmd + ;) 프로젝트 이름 수정 2. settings.gradle안에서 rootProject.name = 수정 3. 새로 고침
2022.01.16
-
M1 Mac Flutter 앱 만들어보기(feat. homebrew)
Cross Platform Dev(IOS, Android) - Flutter의 장점 Flutter는 실제 Native Code로 컴파일하며 크롬이 사용하는 렌더링 엔진(스키아-Skia)을 사용하므로 실행 시 다트를 변환하지 않는다. 즉 사용자의 디바이스에서 플러터 앱을 실행하면 성능이나 생산성이 저하되지 않는다 Flutter는 JavaScript가 아닌 디버깅이 용이하고 컴파일 타임이 빠르다 brew 설치는 생략 [brew로 설치를 하지 않으면 bash shell 실행 PATH를 등록해줘야 하기때문에 귀찮다] 윈도우의 PATH 설정과 비슷한 개념이다. 리눅스나 맥도 터미널 전역에서 명령어를 입력해서 실행하려면 bin 폴더를 경로로 잡아줘야 한다 - 기본G식 brew install flutter 난 이전에..
2023.01.09
-
프로젝트 파일 구조 명령어 - tree
기본적으로 mac에는 tree명령어가 없다 그래서 homebrew가 설치되었다는 가정하에 brew install tree 로 tree를 설치해준다 tree 설치 brew install tree 이제는 tree명령어를 사용할 수 있다 사용하기 전에 앞서서 도움말을 보자 tree 도움말 tree -help 또는 man tree 참고로 man(manual) 명령어를 이용한다면 q를 입력해서 나가야한다 tree 사용 cd(change directiory) 명령어로 위치를 옮겨서 실행하자 왜나하면 엄청..많이 나오기 때문에! 현재 경로의 폴더들은 이런 상황이다 tree 기본적으로 tree는 폴더를 만나면 recur(재귀)를 진행해서 가장 내부의 파일까지 출력한다 그럴때는 위에 tree -help 에서 봤었던 -L..
2023.03.03
-
1줄 팁 맥에서 IntelliJ 자동완성 되게 하기
윈도우 분들은 아마 Ctrl + Space누르면 자동완성을 아주 잘 해줄것이다 근데 맥 사용자들은 Ctrl + Space누르면 아무 동작도 안한다 왜냐? OS단축키랑 충돌이 나기때문이지.. 결론은 이 사용하지도 않는 친구 때문에 인텔리제이 자동완성이 되지 않고 있었다는 것!! 첫번째를 Uncheck 하도록하자 Ctrl + Space의 결과 매우 잘된다^^
2022.07.27
-
Spring boot 3.x.x(Spring 6.x.x)의 API 호출방법 with openFeign
Node.js 환경에서는 fetch, ajax, axios를 활용해서 비동기로 특정 api의 경로를 호출할 수 있다back: express, nest / front: react, vue, angular 등에서 필요한 의존성을 추가하면 사용할 수 있다 Spring에서는 전통적으로 RestTemplate를 사용했고(동기 호출만 지원), Reactive한 처리 또는 비동기 처리가 필요한 경우 WebClient를 사용했다RestTemplate는 Spring 3.x.x 버전부터 도입되었고(스프링 부트 아님), spring-boot-starter-web 패키지에 포함되어 있었다WebClient는 Spring 5.x.x(다시 한번, 스프링 부트 아님), spring-boot-starter-web 패키지가 아닌 spr..
2024.10.13
-
MacOS 터미널 좀 더 잘쓰기(feat. 단축키)
개발용으로 macOS를 사용중이라면 터미널을 한번쯤은 사용할 것이다! 보통 기능이 많은 iTerm 등을 쓴다지만, 나는 기본 터미널을 zsh를 다운받아서 바꿔서 쓰고 있다 지금부터 터미널 단축키에 대해 조금 더 알아본다 최대한 iTerm과 기본터미널 둘 다 호환되는 단축키로 포스팅하려고 한다 ps명령어와 tty명령어로 현재 두개의 프로세스(터미널 2개)를 띄워둔 상태이다 내가 무슨 키를 누르는지 모르기 때문에 keyboard viewer를 이용해서 입력되는 키를 보이게 해준다 윈도우(창) 및 작업 탭 아래의 단축키중에서 새 창 열기/창 닫기, 창 이동, 새 탭 열기/탭 닫기, 탭 이동은 크롬, VScode, IntelliJ 등 다 적용되는 전역적인 MacOS 단축키이다 폰트 키우기: cmd + plus(..
2023.11.15
-
원격 서버 접속하기(4) - ssh 접속(feat. 개인키/공개키로 접속)
먼저 https://code-boki.tistory.com/141 원격 서버 접속하기(3) - ssh 접속(feat. 개인키/공개키 파일 생성) 먼저 https://code-boki.tistory.com/140 원격 서버 접속하기(2) - ssh 접속(feat. ID/PW) https://code-boki.tistory.com/135 원격 서버 접속하기(1) - telnet/ssh 입사를 해서 회사 일을 해보면, 이런 단어들을 들어볼 수 있을 code-boki.tistory.com 이 글을 보고 오면 좋을 것 같다 일전의 테스트와 같이 내 개인 맥북 2개로 SSH를 실습하며 동작과정을 알아볼 것이다 현재 맥북(SSH 클라이언트) - 192.168.123.101 whoami ifconfig | grep i..
2023.12.01
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
Java/Kotlin Spring 진영에서 테스트코드 혹은 실제와 비슷한 더미데이터를 생성할때 쓰는 라이브러리가 있다[ 보통 테스트 코드에서 사용하는 Fixture나 대표/운영진분들이 투자자분들한테 실제와 같은 데이터로 시연화면을 보여주고 싶을때 사용 ] 그것은 아마 자바 대상혁(Java-Faker) 라이브러리일것이다..(너..롤하냐? 왜 기습숭배를..)이 라이브러리의 시초는 루비이며, 거기서 파생되어 나온 프로젝트이다( Maven Repository에서 무려 1833위인 라이브러리 )인터넷에 몇몇 글들 혹은 개발 강의를 보면 이 라이브러리를 가져다 쓰는 곳을 볼 수 있다나름 버전관리도 꽤 한 모습이다(0.18에서 왜 갑자기 1.0으로..?)하지만 가장 최근 버전을 눌러보면9개의 취약성을 갖고 있다는 것..
2024.09.17
-
IntelliJ로 코딩테스트를 하는 분들을 위한 플러그인
보이시나요!? 왼쪽에 코드 치는 부분과 별개로 우측에 문제 부분이 나온것을... Embedded Web Browser라는 플러그인입니다 집에서 듀얼 모니터로 한다면 상관이 없지만, 카페에 노트북 하나 들고가서 코딩하시는분들은 알트탭이 월마나 귀찮은지, 특히 코테문제같은거를 풀때 아실거에요 인텔리제이 설정창에서 플러그인 탭을 누르시고 web browser를 검색하시면 embedded web browser가 나옵니다! 이거를 설치하면 우측 탭에 embedded web browser라는게 생깁니다 주소를 적는 쪽에 붙여넣기를 하고 Go를 누르면 이동됩니다 참고로 아쉬운점은 브라우저 내부에서 뒤로가기가 안된다는 점입니다 저는 혹시라도 보안을 생각해서 백준 비밀번호를 쉬운거로 바꾸고 저쪽에서 로그인 해서 제출한다..
2021.08.08
-
Mac Node.js, Npm(Node Package Manager) 버전 LTS로 업데이트 하기
LTS:(Long Term Support) 긴 시간동안 업데이트도 하며 지원하는 버전이다 version 확인 npm -v node -v n 모듈 설치 sudo npm install -g n Node.js LTS 버전으로 업데이트 sudo n lts 다시 버전 확인 NPM 재설치 sudo npm install -g n 결과 Node.js v.16.16.0 → v.18.13.0 NPM v8.11.0 → v.8.19.3
2023.01.11
-
Github에서 코드리뷰하기(feat. 멘티분들의 프로젝트 Live Review)
Q. 여러분들은 코드리뷰 어떻게 하시나요?A. - 회의실 들어가서 해요 -> you out1번) git clone받아서 개발툴(IntelliJ/VScode)에서 합니다!회사에서 사용하는 개발도구인 IntelliJ나 WebStorm, VSCode 등에서 프로젝트를 열어서 특정 버전의 파일 히스토리를 클릭해서수정/추가/삭제된 부분이 있는지 비교하고, 이 커밋의 수정담당자한테 왜 이렇게 바뀌었는지 설명해달라고 요청하는 방식(이슈트래킹이 잘 되고 작은 팀 단위로 소통이 잘되면 예상가능한 커밋들은 skip하는경우도 있다) 2번) gitlab이나 github의 commits 클릭하고 날짜 Range를 선택 후(datepicker) 해당 기간(ex:1주일)의 커밋들을 모아서 어느 부분이 삭제됐고, 추가됐는지에 대한..
2024.09.29
-
2023년 개발 회고
벌써 2024년 1월1일이 훌쩍 지난 중순이다티스토리는 2021년에 만들었고, 벌써 3번째 회고글이다!2022년도 중반에 내 개발자 커리어 ~ 2022.09까지의 첫번째 글을 썼고, 2023년 1월에 2021~2022년도의 두번째 회고글을 작성했었다돌아보면 2023년 한 해는 정말 많은 발전이 있었다!!찍먹을 지각에 비유해본다면,, 여러 영역들에 있어서 지각~맨틀 사이정도의 그 어딘가쯤 지식을 쌓았던 것 같다(맨틀은 엄청 깊다(?)) 프론트엔드/데이터베이스/프로그래밍 언어/백엔드/아키텍처/Ops/기타(취미)에 대해서 느낀점, 배운 점을 작성을 해보려고 한다 - FrontEnd -상반기에 이직을 해서 Vue를 최신 문법으로 접해봤다남들은 React로 시작을 해서 쭉 쓰는데..난 Angular로 시작해서 V..
2024.01.19
-
IntelliJ에서 Vue.js프로젝트 만들기
사실 프론트엔드분들은 VScode -> WebStorm 순으로 IDEA를 많이 쓸 것 같지만 나는...쪼렙 초보이기때문에 IntelliJ로 프론트를 개발한다(사실은 회사에서 인텔리제이 라이센스만 줘서.. + 내 돈으로 웹스톰 결제하기 싫..ㅋㅋ) 그래서 인텔리제이로 뷰를 공부해보려고 한다 내 인텔리제이 버전은 2022.4 Ultimate Edition이다 기본적으로 인텔리제이에서 새 프로젝트를 만들면 뷰 프로젝트가 안보인다 아마 내 기억으로 WebStorm은 뷰 프로젝트가 있던 것 같다 그럼 인텔리제이는 어떻게 해야하나..? 일단 플러그인에서 Vue.js 플러그인을 검색해서 설치하자 그리고 새 프로젝트를 만들어보면... 아래 Vue.js를 만드는 프로젝트가 보일것이다 이거로 새 프로젝트를 만들자..! 일..
2022.12.08
-
맥은 리눅스인가요?
차라리 질문을 유닉스인가요?라고 말했으면 맞았을텐데 아쉽다 맥과 리눅스는 형제도 아니고 먼 친척쯤이다 잠시 Unix의 역사에 대해서 짧막하게 쓰겠다 Unix는 Bell 연구소의 AT&T에서 만들어졌다 시간이 지남에 따라 캘리포니아 대학교 버클리 캠퍼스의 빌 조이가 유닉스 소스코드를 기반으로 BSD의 최초 버전을 배포하였다 BSD는 Berkeley Software Distribution에서 앞글자를 따서 불리게 된다 그리고 Linux는 Linux is not Unix라는 뜻으로 시작했다(이 이름을 따서 NoSQL도 Not only SQL같은 재귀적인 이름이 나오지 않았나 한다) 리눅스 코드는 그 유명한 리누스 토발즈 형님이 개발했고 어떤 유닉스 코드도 포함하지 않았다고 한다 참고로 리눅스가 더 먼저 만들어..
2022.09.03
-
협업을 위한 - 커밋 규칙과 이슈번호 사용 그리고 템플릿 만들기
Git conventional commits with issue numberGit Commit메시지 작성시에는 Convention을 정해놓고 지켰었다구글에 git conventional commit라고 검색을 해보면 나오는 몇개의 Top 링크 결과물이다1. https://www.conventionalcommits.org/en/v1.0.0/ Conventional CommitsA specification for adding human and machine readable meaning to commit messageswww.conventionalcommits.org 2. https://gist.github.com/qoomon/5dfcdf8eec66a051ecd85625518cfd13 Convention..
2024.07.25
-
Github repository 이쁘게 그룹화하기
취준생 시절을 벗어나... 혼자 사이드 프로젝트나, POC(Proof Of Concept) 등을 한다던지 등등 작업을 하다보니 어느덧.. Github Repo가 50개정도가 되어버렸다..! 이정도는 적은편에 속한다 근데 아래의 내 레포들을 보면... 참 다양한 언어들로 프로젝트들을 만들었다... 키키 근데 왜 Flutter프로젝트도 있는데 Dart가 없는가..!! 이정도로 너무 다양해지니깐, 이게 PoC를 위한 프로젝트였는지, Side프로젝트였는지, 그냥 재미삼아 만든거였는지, 백엔드/프론트엔드/데브옵스 등에 관련한 프로젝트였는지 모르게되어버렸다 위처럼 최근에 활동내역이 있는 프로젝트부터 보인다고 하더라도 관련 프로젝트들을 모아보기는 어렵다 그럴때 깃허브에서 제공하는 Star를 이용할 수 있다 보통 St..
2023.11.21
-
Whitespace Characters 제거하기 + 여러가지
Whitespace Characters는 공백문자 그리고 이 WhiteSpace Character의 종류에는 1. 가로 크기를 차지하는 공백 문자(눈에 보임) 2. 세로 크기를 차지하는 공백 문자(눈에 보임) 3. 1 또는 2지만 눈에 보이지 않는 공백 문자가 있다 특히 3번의 경우는 일부러 사용하는 경우도 있고(화면에 보여줄 때), 일부러 제거하는 경우도 있다(서버에서 받을 때) 아니 3번같은게 어디 있어~? 라고 말씀하시는 분들은 아래에 더블클릭으로 보라돌이 뚜비 나나 뽀를 선택해보자 NORMAL의 경우는 전체가 블록으로 지정되고, SPACE의 경우는 공백마다 블록 지정, ZERO_WIDTH_SPACE의 경우에는 눈에는 NORMAL이랑 비슷하지만 [보라돌이]를 누르면 보라돌이만 선택되고 [뚜비]쪽을 ..
2022.11.26
-
Kotlin IN ACTION 2nd : 원서를 읽어보자
Kotlin In Action 2nd 원서를 구입했다 from. Yes24무려 82,390원이나 주고 구매했다Kotlin In Action 2판은 2024년 4월에 해외에 출판됐다 현재 국내에 있는 번역서인 Kotlin In Action은 2017년 10월 31일에 나온 1판이다 그동안 코틀린은 많은 업데이트를 거쳐 2024년 9월 29일 현재 2.0.20까지 나온 상태이다그렇기때문에 변한 것도 많을것이다!나는 항상 궁금했다.번역된 해외 IT책을 읽으면서 공부하는 몇몇 개발자들은 "해석이 잘못됐네", "의역이 너무 심하다" 등등 몇몇 불만이 있는 개발자들을 봤다그럴거면 원서 사서 보면 되잖아... 역자도 물론 무료로 봉사한건 아니지만..!! 나도 원서는 대학교때 전공서적빼고는 직접 처음으로 구매해본다영..
2024.09.29
-
1주차 스터디 노트
아래의 질문들에 대해 학생/취준생/이직 준비자 등등 다 답해보자자바 기본 Java의 특징에 대해서 설명해주세요. Java의 단점에 대해서 설명해주세요. Java 실행 과정에 대해서 설명해주세요. Java Bytecode에 대해서 설명해주세요. Java의 인터프리터(interpreter) 방식과 JIT 컴파일(compile) 방식에 대해서 설명해주세요. 사용해본 Java 버전과 특징 그리고 왜 그 버전을 사용했는지 설명해주세요. Java 8, 11, 17 버전에 대해 아는대로 설명해주세요. JDK와 JRE에 대해서 설명해주세요. 동일성과 동등성에 대해 설명해 주세요. equals()와 ==의 차이점은 무엇일까요? HashCode를 설명하고, equals() 와 hashCode() 의 차..
2024.08.16
-
협업을 위한 - Gitmoji 도입해보기
왜 도입을..?항상 팀단위(모르는 사람끼리 하는 프로젝트, 학교 선후배간, 회사에서)에서의 프로젝트에서 무언가를 도입하거나 바꾸려고 할때는 Why?를 먼저 생각해봐야한다그래서 왜 도입을 하려고 하는지에 대해서 생각해보면... 장점글자를 읽을 필요 없이 어떤 커밋을 했는지 이모지를 보고 파악이 가능하다커밋 기록이 아이콘으로 남게 되어서 귀엽다ㅋ단점은 맨 밑에서 다룰 예정이다일단 이건 기술적으로 스택이나 아키텍처나 바뀌는게 아닌 거기때문에 일단 도입해보고 나중에 회고해보자 Gitmoji란?Gitmoji는 눈치채신 분들도 있겠지만 Git + Emoji의 합성어이다모든 커밋 앞에 이모지를 붙이는 행위를 뜻한다깃모지를 사용하면 커밋의 목적이나 의도를 쉽게 파악 가능하다고 한다그리고 이모지가 이모티콘이 아닌가? 라..
2024.07.25
-
JSCODE 스터디 후기(자바 1기)
JSCODE라는 채널을 구독하고 보고 있었고, 커뮤니티에 스터디를 모집한다는 글을 보게 됐다그리고 여러 과목들이 있었지만, 자바가 1기란 소식을 듣고 스터디를 신청했다 JSCODE 스터디 신청https://code-boki.tistory.com/192 JSCODE 스터디 신청Youtube - JSCODE종종 영상이 올라오면 즐겨보는 IT 유튜브 채널이다네이버, 채널톡 등의 회사에서 지인들에게 인터뷰를 하는 영상이 눈길이 갔고최근에는 인프런에서 비전공자나 취준생들을 위한code-boki.tistory.com그리고 총 5주간의 스터디를 진행했다(매주 금요일 오후 8~10시 + a)스터디 과정은 1주씩 개인블로그에 공부해서 올리고, 이 내용을 토대로 온라인으로 모의면접을 하는 방식이었다모르는 사람들과 화상으로..
2024.09.17
-
블로그 왜 하세요? 왜 티스토리 블로그 하세요? 수익은요?
2021년 6월부터 2024년 8월까지 3년 2개월동안 블로그를 개설하고 운영해오고 있다요즈음 행사들을 많이 다니고있다. 그리고 부끄럽지만 내 블로그 주소를 공유하면, 간혹 받는 질문들이 있다 Q. 블로그 왜 하세요? 장점이 있나요? Q. 왜 티스토리 블로그로 시작하셨어요? 벨로그나 미디엄같은 곳도 있을텐데.. Q. 와 개설하신지 3년정도면 수익 많이 나셨겠어요! 얼마정도 버세요? A. 일단, 나는 버디버디 개인홈페이지부터 싸이월드까지 내 공간을 가꾸고 내 생각을 스피킹하는 장소를 항상 갖고 싶어왔고 실제로 있었다. 그 곳에서 내 생각을 말하면서 동시에, 한 편의 글쓰기를 할 수 있어서 좋았다 A. github.io 라는 기존 깃허브 블로그에서 티스토리로 넘어왔는데, 티스토리로 넘어온 이유는 딱히 없다...
2024.08.13
-
원격 서버 접속하기(1) - telnet/ssh
입사를 해서 회사 일을 해보면, 이런 단어들을 들어볼 수 있을 것이다 로컬 서버, 개발 서버, 스테이징 서버, 배포 서버, 테스트 서버 등등 큰 기업에 가면 xx서버에 접속해서, 변화점이 있는 파일들을 수집하고, 자동으로 배포하는 등등.. 이런 과정들이 원클릭으로 구성되어 있을 것이다 그리고 회사에서는 이런 서버에 접속하기 위해 특정 IP만을 허용하는 허용리스트(AllowList)를 만들어서 VPN 프로그램을 사용하는 등의 방법으로 접속을 허용/제한한다 (UFW, IPTables, Firewalld, ZeroTier, WireGuard, pfSense 사용) 이 글에서는 방화벽에 대한 내용보다는 원격 서버에 접속하는 방법, 내가 사용하는 방법에 대해서 포스팅해보려고 한다 Telnet 로컬 네트워크에서 리..
2023.11.20
-
볼트 X 커피챗 참여 후기(feat. 토스증권 서버 리드분과의 슈퍼커피챗)
행사 안내 문자 수신8/19일에 볼트X에서 행사 안내 문자를 수신받았다3개 기업이 참여하고, 테크리드분들을 만나뵙고 슈퍼커피챗 기회도 얻을 수 있다는 행사라고 한다관심이 있었기에 아래의 이벤터스 링크로 들어가서 신청했다행사 소개행사 신청이벤터스를 통해 행사를 신청했다항상 추첨 방식 또는 선착순으로만 행사를 참여했었는데 이번에는 이력서를 제출하고 3개 기업이 수락한 사람들 중에서 총 100명만 행사를 참여할 수 있었다또한 토스증권, 라포랩스, 스윙에서 제출된 이력서들을 미리 보고 관심가는 단 20명을 뽑아서 테크 리드와의 슈퍼커피챗 기회를 주는 선발형 이벤트도 있었다행사 3일 전까지만 해도 참가대기 상태였다가, 참가확정이 되었다. 확정이 되었다는 안내 메일 또한 받았다 토스증권 서버 리드분과의 슈퍼커피챗 ..
2024.08.30
-
이제 막 Web을 공부하는 학생, 취준생들에게... (feat. Spring)
어떤 Developer 개발자 방에서의 대화A분: jsp 혐 나: 전 jsp쓰는 회사를 다녀보진 않았지만, 서블릿 컨테이너부터 jsp, 스프링, 스프링부트 순으로 공부했었는데현재처럼 server, client side로 분리된게 XMLHttpRequest가 나오면서 부터였어요 페이지를 전체깜빡임에서 부분리프레시만 가능하게하는 기능이 나온거죠. 이후에 ajax라는 이름을 갖게 됐죠.이때는 JSP(java servlet page), ASP(Active Server Pages), PHP등이 힘을 얻었어요그리고 이후에 AngularJS로 출현으로 CSR이 도입되면서 client, server side의 구분이 명확해지며 이후에 React.js, Vue.js, Angular2가 나오게 됐어요.어떤 기술의 출현으로..
2024.07.22
-
NEXT-STEP 도메인 주도 설계의 사실과 오해 수강 후기
강의 정보도메인 주도 설계의 사실과 오해 6기 수강벌써 1달정도가 지났지만, 약간의 거금(?)을 들여 Next Step의 코스 중 도메인 주도 설계의 사실과 오해 6기를 수강한 후기를 풀어본다10/27(일), 11/3(일) 2주. 2회. 각 오후2시~6시(4시간) 총 8시간에 걸쳐서 우아한형제들 테크살롱에서 오프라인으로 조영호님의 강의를 들었다NEXT STEP에서 유명한 강의는 자바지기, 큰 박재성님의 TDD 강의가 아닐까한다! 난 이 강의는 안 들어봤고, 이번에 처음 수강신청했다조영호님은 , 책을 만드신 저자분이시다!!강의 결제를 하고나서, Next Step으로 로그인을 하고 개인계정으로 들어가면 이렇게 강의 자료가 있는 모습을 볼 수 있다YouthCon때 왔었던 테크살롱을 또 와보니 신기했다 강의장..
2024.11.26
-
당근 테크 밋업 참여 후기
2024 당근 테크 밋업 세션 목록FRONTEND 밋업🥕 프레임워크부터 플랫폼까지: 당근 웹뷰 플랫폼 - 원지혁(프론트엔드코어)🥕 프론트엔드에게 배포플랫폼이란 - nothing or everything - 안현석(프론트엔드코어)🥕 내 타입스크립트 코드가 이렇게 느릴 리 없어! - 김은수(광고)🥕 아이콘, 브랜딩 에셋까지 디자인시스템으로 - 정현수(디자인코어)🥕 Graphql Schema 기반으로 협업하고 생산성 높이기 - 김승욱(당근알바)🥕 웹/웹뷰 코드 합치면 개발 2배 빨라지는거 아니었어요? - 김성현(광고) & 김유진(광고)🥕 아니, 이것도 웹뷰였어요? - 김태희(동네생활)SERVER 밋업🥕 당근 알바 초기 엔지니어링 전략: 빠르게, 빠르게, 더 빠르게 - 박용진(당근알바)🥕 우리..
2024.10.14
-
자바에서의 다양한 문자열 포맷팅 방법(feat. MessageFormat)
복잡한 거 아니니깐 빠르게 알아보자!1. String 더하기단순하지만 강력한 방법이다다만.. 복잡시럽게 보일 수 있다는 단점 존재2. printfC언어를 배웠다면 익숙한 그 printf문법당연히 패딩넣기도 된다.다만 %p, %x등의 메모리 관련 포맷형식을 사용하면 UnknownFormatConversion 예외가 발생한다자바만의 특이점으로는 %h를 통해 메모리해시값을 얻을 수 있다. 슬프지만 당연하게도 Primitive type은 메모리주소를 알 수 없다3. String.format()printf와 비슷하게 형식을 지정할 수 있다그럼 차이점이 뭐야? 할 수 있는데, printf는 포맷팅 동시에 출력이 되는 방식이고, String.format은 반환형인 String으로 만들어서 재사용한다던지, 좀 더 가공..
2024.08.29
-
2주차 스터디 노트
문자열, 예외, 제네릭 String literal과 new String(””)의 차이를 설명해 주세요. String, StringBuilder, StringBuffer의 차이점에 대해서 설명해주세요. Exception과 Error의 차이는 무엇인가요? Exception 클래스의 예시를 말해주세요. Checked Exception과 Unchecked Exception의 차이는 무엇인가요? throw와 throws의 차이는 무엇인가요? try~catch~finally 구문에서 finally은 어떠한 역할을 하나요? Throwable과 Exception의 차이는 무엇인가요? 제네릭이란 무엇이고, 왜 사용할까요? 제네릭을 사용한 경험을 소개해 주세요.람다, 스트림, 어노테이션, 리플렉션 람다..
2024.08.22
-
Kotlin에서 기존 객체를 다른 객체로 변환하는 다양한 방법
백엔드를 개발하다 보면 기존 객체를 DTO(Data Transfer Object)로 변환하거나 다른 클래스 형태로 매핑해야 하는 일이 자주 발생한다예를 들어, 클라이언트 요청에 맞춘 데이터 포맷 변경, API 응답을 위한 직렬화 객체 변환, 또는 엔티티와 DTO 간 데이터 매핑 등...이 글에서는 Kotlin에서 객체를 변환하는 다양한 방법을 소개하고, 각 방법의 장단점을 비교해 보려한다목표Person -> PersonDto기본적으로 동일한 필드 구조를 가진 클래스 간 변환Person -> PersonExtraDto추가 필드가 포함된 클래스에 데이터를 매핑PrivatePerson(private 필드) -> PersonDto접근제어자가 설정된 필드를 매핑성능 테스트예제 클래스먼저, 예제에서 사용할 간단한 ..
2024.11.27
-
혼공네트 4주차 - 전송 계층(Port, NAPT, ICMP, TCP, UDP, 3-way handshake, 오류/흐름/혼잡 제어)
시작하기 전에..이 책에서 정의한 TCP/IP 모델중 전송계층을 공부한다! 이제 응용계층만 남았다~~!전송계층은 참고로 면접때 자주 등장하는 TCP와 UDP의 차이점. 그리고 TCP 특징이 중요하다 독서 & 스터디 패드로 시작해서... 집에서는 컴퓨터로 보고, 이동시에는 폰으로 보다가 결국 노트북으로 이번 챕터도 정독했다그리고 또 한빛미디어의 도메인 주도 개발 - 최범균 책에 꽂혀서 보고 있다 2년전에 나온 책인데 이것도 정말 좋은 내용을 담고있다백엔드로 개발하시는 분들은 한번쯤 읽어보면 좋겠다. 대신 DDD, 아키텍처, 멀티모듈 이런거에 너무 파묻히지만 않으면 베스트다 네트워크 계층의 IP 한계 -> 전송 계층 필요네트워크 계층의 IP 한계신뢰할 수 없는 통신비연결성 통신전송 계층 역할신뢰할 수 있는 ..
2024.07.28
-
DSL이란?
자바로 백엔드개발을 해본 사람들은 queryDSL이란 걸 들어봤을 것이고, Spring Data JPA를 사용하면서 타입세이프하게 쿼리를 동적으로 만들어주며 컴파일 시점에 오류를 미리 알 수 있게 도와주는 라이브러리라고 알고 있을 것이다.또한 코틀린 안드로이드나 코틀린 스프링을 해본 사람들은 Kotlin DSL이란 말 또한 들어봤을 것이다.그럼, 이제 질문을 던져볼 수 있다.queryDSL/KotlinDSL을 사용하셨군요? 그럼 DSL에 대해서 설명해주실래요?답: ㄱ..그게..뭐죠? DSLR은 아는데..헤헿라고 답하면 망한거다ㅋ나는 옛날사람이라서... 어떤 도구를 잘 사용하는것도 중요하다고 생각하면서 동시에 그 도구에 붙여진 이름의 뜻을 아는 것도 중요하다고 생각한다. 정의DSL(Domain Specif..
2024.06.06
-
면접관 참여 후기
상황최근에 회사에서 경력직 개발자를 구인하는 중이다내가 다니고 있는 곳은 스타트업이다스타트업 특성상 Frontend, Backend, DevOps, MLOps, DataOps, DataEngineer 의 경계가 크게 없고 각자 최소 2가지 이상은 할 줄 아는 사람들로 구성되어 있다 인재상그렇기 때문에 우리 회사는 단순히 하나만 할줄 아는 사람보다는 이것저것을 할 줄 알고, 앞으로 더 발전할 가능성이 있고 커뮤니케이션이 원활한 분을 채용하기를 원한다 나는(필자)나는 주니어~미들 레벨 개발자이다 면접관으로 참여해본다면..?현재 면접관으로 여러 직책의 사람들이 참여하는 프로세스가 있다( N : 1 면접 )여기에 나는 없었다나는 "어떠한 분이 지원을 하셨었는데, 아쉽게 못 모시게 되었다" 하는 결과정도만 들으면..
2024.03.22
-
Kill -9(SIGINT) vs Kill -15(SIGTERM) 테스트(feat.graceful kill)
UNIX계열 OS인 Linux(ex. ubuntu, macOS-BSD, Darwin)는 커널단에서 시그널을 사용하여 프로세스에 다양한 명령을 내릴 수가 있다 macOS에서 테스트해보려고 한다 일단 macOS에서 가능한 kill 옵션(인자)를 확인해보자 kill -l 손으로 일일이 세도 되지만 깔쌈하게 몇개의 인자를 갖고 있는지 아래의 명령어로 확인해보자 kill -l | tr ' ' '\n' | tee /dev/tty | wc -l | xargs echo "total command count:" macOS에서는 kill 관련 31개의 인자를 쓸 수 있다 이중 프로세스 종료와 관련된 것은 1(HUP), 2(INT), 3(QUIT), 6(ABRT), 9(KILL), TERM(15) 이렇게 있다 SIG라는 것..
2023.10.27
-
Slack 채널에 메세지 보내기 2023년 (Spring, Js)
1. 슬랙에 가서 자신만의 워크스페이스를 만든다 2. 메세지를 보내고 싶은 채널을 만든다(optional) - 기본 채널로 써도 됨 난 로그인을 하면 로그인한 사용자의 간단한 정보를 슬랙으로 보내고 싶기때문에 채널 이름을 auth로 설정함 사용자 추가는 건너뛰기를 하였다 3. 채널 이름(# 채널이름)에서 아래를 가리키는 화살표 토글 버튼을 누른다 4. 통합 탭으로 눌러서 앱 -> 앱 추가를 누른다 5. 수신 웹훅(Incoming WebHooks)를 추가한다(보기->슬랙에 추가) [ 웹으로 열린다 ] 6. 전송 보낼 채널을 선택한다 7. 웹후크 URL을 복사한다 아래에 메세지전송, 링크추가, 사용자 지정 아이콘, 채널 재정의, curl 요청 등 어떻게 보내는지에 대해 자세히 적혀있다 8. 알림 올 이름을 ..
2023.01.08
-
모바일 환경 테스트하기(기기로 접속)
보통 npm install serve로 해서 내부적으로 서버환경을 만들어서 오픈된 포트를 모바일로 들어가곤 한다 근데 기왕 인텔리제이를 쓰는 김에 인텔리제이가 제공해주는 built-in 옵션으로 이용해보자! @media 쿼리를 쓰는 반응형 테스트 말고, 모바일 기기로 접속했을 때 어떤 기능을 disable 하거나 동작을 다르게 하고싶은 경우 이용하면 된다 일단 프로젝트에 resources 아래에 test할 html 파일을 만들자 나같은 경우 그냥 index.html로... vanilla js code로 돔이 준비된 경우 함수가 실행되도록 했다 웹 환경일때 result Division element에 web이라고 파란색으로 표시하고, 모바일 환경일때는 mobile로 표시하고 빨간색으로 표시하는 거다 인텔리..
2022.10.23
-
Mixed Content:
Let's Encrypt! 등으로 Https를 적용 후 api요청을 http로 보내면 발생하는 브라우저 보안 에러이다 HTTS는 HTTP의 TCP/IP 통신에 SSL(Secure Socket Layer)를 한층 더 위에 얹은 것이다 공개키알고리즘으로 CA(인증 기관)과 암/복호화를 통해 본인인증이 맞는지 검증을 한다 브라우저 내의 자물쇠 모양을 클릭하면 알수있다 우선 이 Mixed Content에러는 https에서 http로 요청을 보낼때 발생한다 해결방법은 4가지가 있다 1. API 요청을 http://~~~ 가 아닌 https://~~~ 로 요청해서 처리하기 2. 페이지의 meta 태그에 내용 추가 -> 아래의 의미는 안전하지 않은 요청들을 https로 업그레이드 해서 요청하겠다는 뜻이다 1번은 하나..
2022.06.27
-
IntelliJ Honey Tips
1. 멀티모듈) 프로젝트의 정보들이 너무 길 때 나는 이 프로젝트의 - ~/ 같은 경로도 보고 싶지 않고, 실제로 개발하다보면 깔끔함을 추구하고싶다 그럴때에는 여기 화살표를 눌러주자 그리고 패키지를 선택해주면! 난 이정도도 깔끔해진거같다! 또 다른 옵션으로는 프로덕션 / 테스트로도 볼 수 있다 실제로 테스트 코드만 볼 수 있다! 매우 좋음 짱짱 2. 멀티모듈, MSA 방식일때 내가 쓰고 있는 DTO가 어디에 있는건지 찾고 싶을 때가 있다. 파일은 열려잇는데, 이게 어느 모듈, 위치에 있는지 알고 싶을때가 있다. 이럴때 이 옵션을 체크하면 된다 이걸 체크해주면 현재 열려있는 파일이 어느 위치에 있는지 열리게 된다 현재 열려있는 AuthController를 프로젝트 경로에서 어디있는지 바로 열어준다 현재 C..
2022.03.06
-
Springboot local 환경에서 https 적용하기
라 말하고 사실 CA에서 인증받지 않은 짜가 인증서로...ㅎ 보통은 간단하게 하면 배포 전에 직접 인스턴스 서버에 들어가서 let's encrypt을 쓰던가 zeroSSL등 다른곳을 이용해서 인증서를 받을것이다 나는 keytool을 이용할것이다 자바폴더에 있기 때문에 윈도우는 bin 폴더에 환경 변수설정만, 맥은 기본적으로 잡혀있거나 아니면 .bashrc에다 추가해주면 된다 $> keytool -genkey -alias spring -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 4000 이름과 성을 입력하십시오. [Boki]: Boki 조직 단위 이름을 입력하십시오. [Boki]: Boki 조직 이름을 입력하십시오..
2022.03.03
-
항해99 2025 Commit Calendar 수령 후기
현재(12월 중순 이후)는 사라진 것 같지만.... 11월 초에 항해99에서 2025 커밋 캘린더를 1,000부 한정으로 선착순 이벤트를 열었었다나는 냉큼 가서 신청을 했었다!이후에 여기에서 큰맘먹고 10,000부로 늘려서 다시 배포(?)를 했나보다이 커밋 캘린더에 무슨 기능(?)이 있냐 하면..위와 같은 기능들이 있다! ㅋㅋ 귀염뽀쨕....찐 개발자들이 좋아할것같은... 이런거 싫어하는 사람 눈감아....ㅎ 뭐 결국.... 손이 빨랐기때문에 당첨 완료 So Easy~ # 배송 도착구글에서 인터넷 안되면 게임뜨는거잖아...?ㅋ 귀엽긴열어보니....잔디 마스킹 테이프 버릴뻔..;; 없는줄 알았다달력을 좀 넘겨봤다 올해 파이콘 가서 샀던 파이썬 반팔티랑 후드집업처럼 이 달력도 먼가 찐~개발자같잖아~~맘에드는..
2024.12.19
-
Hibernate(JPA) 탐구 - 2편(feat. save() 메서드 분석)
서론지난 1편https://code-boki.tistory.com/266 FlushEvent와 Action Queue의 동작 방식으로 알아보는 Hibernate(JPA) 1편일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음code-boki.tistory.com에 이은 2편이다이번에는 save() 메서드를 깊이 파보면서 JPA의 동작방식을 이해해보자ㅋㅋ 진짜 삽질 엄청 많이했다...참고로 이 글은 불친절하게 작성되어 있다나는.. Internet Explorer의 호환성은 싫어했지만, Explorer라는 뜻은 좋아한다탐험가라는 뜻이다...
2024.12.11
-
10월 볼트 X 커피챗 참여 후기(feat. 볼트커피챗)
10월 볼트 X 커피챗 참여기업저번 8월 이후로 이번 10월에 또 한번 쟁쟁한 기업들이 참여했다!! 행사 참여(10/24)강남에 있는 스타트업 성지인 MARU 180 / 저녁 7시행사가 열린 지하1층으로 내려가기 전에 행사 입간판을, 지하로 내려가는 엘리베이터에서 행사 포스터를 볼 수 있었다 지하로 내려가봤다오른쪽 테이블에서 참가자 확인 후 목걸이 명찰을 받을 수 있었고, 왼쪽 테이블에서는 제로콜라와 서브웨이 쿠키 및 샌드위치를 받아갈 수 있다!(갯수 제한 X.. 👀)덕분에 나도 쿠키 쫌 많이 챙겼다..헷 개발직군 & 비개발직군 모두 놓치지 않을꺼에요세션1: 비개발 + 개발직군 (픽소 CEO, 챌린저스 Lead, 하이퍼커넥트 PM Leader, AI Head)휴식 & 네트워킹세션2: 개발 직군 (오픈엣..
2024.11.02
-
삶의 지도 - 과거부터 현재까지
이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...나는 이 세상에 37주 미만에 태어난 미숙아임과 동시에 2.2kg인 저출생체중아로 태어났다인큐베이터에 꽤 오랜 시간을 있었다고 한다...ㅠ약하게 태어난 탓일까... 어머니가 말씀하시길 나는 3살 초까지 먹는것들 대부분을 게워내기 일쑤였고, 말하는 것도 늦었다고 했다이러나저러나 애기였던 나는 그래도 태어난 김에 살고싶었나보다..ㅎ 그래도 조금씩은 건강을 회복해 나아갔다하지만 태어날 때 미숙아여서 그런진 몰라도 위 사진에 첨부한 안 좋은 특성중에 몇개가 있는 것 ..
2024.09.22
최신 글
-
24년, 인프런과 함께하며 성숙해진 해(no 찐 회고, with 인프런)
현재 24년의 마지막 날인 12월 31일 새벽인 시점이다..21, 22, 23, 24년의 내 인프런 강의 대시보드를 보며 비교를 해봤다혹시..... 샤크's in 삭스라는 언어유희를 기대하기 위한 인프런의 아재개그인가..? # 21년 인프런 대시보드(강의 수강 기록)총 47개 수업을 완료하고, 2개의 강의를 완강했다Off The Record로 말하자면 다른 계정에서도 강의를 1개쯤 수강했던 기억이 있어서 총 3개정도를 완강했을 것이다 # 22년 인프런 대시보드(강의 수강 기록)21년과 비교하면 60개나 더 들었고, 4개나 완강했다완료수업률 127%, 총 학습시간 44% 상승! # 23년 인프런 대시보드(강의 수강 기록)나름 열심히(?) 했다. 총 164 완료 수업 및 2개를 완강했다. 약 18시간이면 ..
2024.12.31
-
김영한님 40만 수강생 달성 기념 이벤트: 멘토링권 당첨
인프런 이벤트24년 1월에 30만 수강생 이벤트를 하신 것 같은 기분....이 드는데11월에 벌써 40만 수강생 이벤트가 오픈됐었다1번: 해당 이벤트 페이지 응원 댓글 + 2번: 로드맵에 취업or이직 후기를 올리면 김영한님께서 직접 식사권을 받을 1명, 멘토링을 받을 3명을 선정해주신다고 하셨다!나머지는 40만 포인트 10명, 4만 포인트 100명!!나도 영한님의 온라인 제자로서 정성을 들여서 댓글을 달았다..!!! 결과는...........3등 멘토링권 당첨!!! 인가...?? 하지만....ㅠㅠ 이메일이 거의 다 * 처리가 돼서 내 이메일이 맞나 확신이 안들었다ㅠㅠ 그래서 인프런쪽에 문의를 드린 결과.....!!3등 멘토링권 찐 당첨!!!그리고 거짓말같게도 몇일 뒤에 영한님의 이메일이 도착했다.......
2024.12.19
-
인프런 워밍업 클럽 네트워킹 데이 참여 후기
24년 12월 13일 인프랩에서 열린 에 참여했다 나는 이번 2기 기수에 참여했었다박우빈님이 코치로 계신 백엔드 클린코드+테스트코드 코스였다1달동안 열심히 한 결과.....내 기억이 맞다면 200명이 넘게 신청한 이 인프런 스터디에서 Top6에 들었다는 사실! 칭찬해이번 2기때는 박우빈님의 클린코드+테스트코드 말고도 정보근님의 백엔드 프로젝트 코스, John Ahn님의 프론트엔드 코스, 볼드UX님의 프로덕트 디자인이렇게 총 4개 코스가 있었다 다시 돌아와서 인프런 워밍업 클럽 네트워킹 데이에 대해서 말하자면올해 2월에 처음 시작된 워밍업 클럽에서 10개월동안 총 3개 기수, 10개 스터디. 누적 1,781명의 러너분들과 함께 성장해왔다고 한다기수 무관, 완주여부 무관! 인프런 워밍업 클럽 러너라면 누구나..
2024.12.19
-
NAVER CLOUD CAMP 2024 특별 커리어 성장 세미나 참여 후기
# 네이버클라우드캠프 유명한 다른 교육기관도 있지만 네이버에서 네부캠 말고 클라우드캠프에서 이런 행사를 열어서 신청했다무료 + 클라우드/AI 관련 기술 강연 + 현직 개발자 성공 스토리 + 교육과정 소개 강북구에서 머나먼 성남시에 위치한 네이버 그린팩토리로 찾아갔다..ㅎ딱딱한 의자같지만, 앉으면 엄청 푹신하단 사실!! 2층으로 올라올라뭔가 영화를 보러가는 듯한...? 기분이 드는 좌석배치도까지 있는 큰 곳이었다 # 기술강연오호..... 나는 AI 에이전트까진 알았는데, 소버린 AI는 처음들어봤다!! 신기신기 점점 발전하는 NAVER CLOVA...... 시각과 청각까지....초록집의 무서운 AI 투자... 꼭 잘됐으면 좋겠다!! # 네클캠(네이버클라우드캠프) 소개참고로 유튜브로 실시간 동시송출도 이뤄..
2024.12.19
-
항해99 2025 Commit Calendar 수령 후기
현재(12월 중순 이후)는 사라진 것 같지만.... 11월 초에 항해99에서 2025 커밋 캘린더를 1,000부 한정으로 선착순 이벤트를 열었었다나는 냉큼 가서 신청을 했었다!이후에 여기에서 큰맘먹고 10,000부로 늘려서 다시 배포(?)를 했나보다이 커밋 캘린더에 무슨 기능(?)이 있냐 하면..위와 같은 기능들이 있다! ㅋㅋ 귀염뽀쨕....찐 개발자들이 좋아할것같은... 이런거 싫어하는 사람 눈감아....ㅎ 뭐 결국.... 손이 빨랐기때문에 당첨 완료 So Easy~ # 배송 도착구글에서 인터넷 안되면 게임뜨는거잖아...?ㅋ 귀엽긴열어보니....잔디 마스킹 테이프 버릴뻔..;; 없는줄 알았다달력을 좀 넘겨봤다 올해 파이콘 가서 샀던 파이썬 반팔티랑 후드집업처럼 이 달력도 먼가 찐~개발자같잖아~~맘에드는..
2024.12.19
-
글또 백엔드&인프라 빌리지 반상회 참여 후기
꽤 지났지만.... 12월 5일에 참여했었던 글또 10기의 백엔드&인프라 빌리지 반상회에 참여했던 후기를 이제 올려본다ㅎ # 참여자 모집12/5 목요일 오후7시에 선릉역 근처에 위치한 우아한형제들 테크살롱(우테코 교육장)에서 글또 10기의 백엔드&인프라 반상회가 열렸다 # 행사장 도착아직 12월 초인데도 불구하고, 건물 1층에는 벌써 크리스마스를 위한 준비를 마친 모습ㅋㅋ올해 YouthCon, 조영호님의 도메인 주도 설계의 사실과 오해 6기 수강때문에 총 3회 왔었는데.. 이번까지 4번 방문한 우아한형제들 테크살롱이다!!살짝 늦게 도착했는데... 나를 찾는 몇몇분들이 계셨다..후후(지각이라 안오는줄 아셨...ㅠ) 13층에 위치한 우형 테크살롱으로 올라갔다입구에서 이름이 적힌 목걸이와 초초 귀여운!!! 글..
2024.12.19
-
항해99 잔디 기부 캠페인 참여!!
항해99에서 잔디1개=100원 으로 환산해서 모아진 총 금액을 저소득층 아동을 위한 코딩교육 지원 단체에 기부하는 잔디 기부 캠페인을 열었다개발자의 성장을 진심으로 도모하는 부트캠프인 모습이었다!!그리고 기부하는 취지와 방식, 그리고 결과까지 연말에 정말 따뜻했다...ㅎ 2024년 12월 18일 오전10시쯤에는트리의 37%정도가 채워진 모습이었다하.지.만......같은날 오후10시에 다시 보니89%나 채워진 모습을 볼 수 있었다!! 내 기부증서구글처럼 오프라인이 됐을 때 공룡게임을 할 수 있는 귀여운 크롬 다이노 인형을 받았다아쉬운 점은 public repo의 개수만 체크했단 것이었는데..ㅠ 인증 당시 private repo가 30개정도였기때문에...... 몇개정도 public으로 만들면 Lv. 10?..
2024.12.18
-
Hibernate(JPA) 탐구 - 2편(feat. save() 메서드 분석)
서론지난 1편https://code-boki.tistory.com/266 FlushEvent와 Action Queue의 동작 방식으로 알아보는 Hibernate(JPA) 1편일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음code-boki.tistory.com에 이은 2편이다이번에는 save() 메서드를 깊이 파보면서 JPA의 동작방식을 이해해보자ㅋㅋ 진짜 삽질 엄청 많이했다...참고로 이 글은 불친절하게 작성되어 있다나는.. Internet Explorer의 호환성은 싫어했지만, Explorer라는 뜻은 좋아한다탐험가라는 뜻이다...
2024.12.11
-
코루틴 개념 정리, 디버깅 or 출력해보기(feat. IntelliJ Configuration Template)
2023년 회사에서 코틀린을 썼지만, 쓰자마자 코루틴을 바로 사용하지는 않았었다2024년쯤 코루틴을 공부하고 백엔드 코드에 조금씩 사용하는 영역을 넓혀갔다간단하게 코루틴 기본 개념과 활용까지 블로깅을 조금씩 해보려고 한다로니콜먼도 아마 코루틴을 사용해본 경험이 있는 것 같다. 왜냐하면 "Light Weight Baby!!"라고 외치며 헬스를 했으니 말이다 코루틴(Coroutine)이란?코루틴이란 Light-Weight Thread(경랑스레드)라고도 불리며, 스레드와는 독립적으로 실행되는 비동기 작업의 단위이다 내부적으로는 Continuation이라는 객체에 현재 작업(Job)의 진행 상태를 저장하고, suspend와 resume을 통해 작업을 일시 중단하거나 재개할 수 있다이 특성 때문에 코루틴은 스레드..
2024.12.02
-
작심삼주 오블완 챌린지 끗
작심삼주 #오블완 챌린지 끝!!3주동안 하루도 안빼먹고 블로그 포스팅을 했다ㅎㅎㅎ이제... 스마트모니터 M7, 애플워치10, 아이폰16 Pro 중 1개를 받는 일만 남았군!!
2024.11.28
-
Kotlin에서 기존 객체를 다른 객체로 변환하는 다양한 방법
백엔드를 개발하다 보면 기존 객체를 DTO(Data Transfer Object)로 변환하거나 다른 클래스 형태로 매핑해야 하는 일이 자주 발생한다예를 들어, 클라이언트 요청에 맞춘 데이터 포맷 변경, API 응답을 위한 직렬화 객체 변환, 또는 엔티티와 DTO 간 데이터 매핑 등...이 글에서는 Kotlin에서 객체를 변환하는 다양한 방법을 소개하고, 각 방법의 장단점을 비교해 보려한다목표Person -> PersonDto기본적으로 동일한 필드 구조를 가진 클래스 간 변환Person -> PersonExtraDto추가 필드가 포함된 클래스에 데이터를 매핑PrivatePerson(private 필드) -> PersonDto접근제어자가 설정된 필드를 매핑성능 테스트예제 클래스먼저, 예제에서 사용할 간단한 ..
2024.11.27
-
NEXT-STEP 도메인 주도 설계의 사실과 오해 수강 후기
강의 정보도메인 주도 설계의 사실과 오해 6기 수강벌써 1달정도가 지났지만, 약간의 거금(?)을 들여 Next Step의 코스 중 도메인 주도 설계의 사실과 오해 6기를 수강한 후기를 풀어본다10/27(일), 11/3(일) 2주. 2회. 각 오후2시~6시(4시간) 총 8시간에 걸쳐서 우아한형제들 테크살롱에서 오프라인으로 조영호님의 강의를 들었다NEXT STEP에서 유명한 강의는 자바지기, 큰 박재성님의 TDD 강의가 아닐까한다! 난 이 강의는 안 들어봤고, 이번에 처음 수강신청했다조영호님은 , 책을 만드신 저자분이시다!!강의 결제를 하고나서, Next Step으로 로그인을 하고 개인계정으로 들어가면 이렇게 강의 자료가 있는 모습을 볼 수 있다YouthCon때 왔었던 테크살롱을 또 와보니 신기했다 강의장..
2024.11.26
-
Hibernate(JPA) 탐구 - 1편(feat. FlushEvent와 Action Queue)
일단 문제를 함께 풀어보자ㅎㅎUser엔티티부터!(사실 서적에서는 엔터티라고 부르던데..난 엔티티가 편하다)QuizGivenJPA를 공부하셨고 구현체인 Hibernate의 ActionQueue에 대해서 들어보셨다면.. 다음 코드의 성공/실패 결과를 예측해보자 문제1테스트코드라 사실 뭐..given , when, then// given...// when & thenval exception = assertThrows { ...}테스트코드라 사실 뭐..given , when, then 그리고 예외를 잡는부분까지 있어야하지만 간단하게 저 테스트가 초록불이 뜰지 주황/빨간불이 뜰지 정도만 예측해보자 답은?답은.. ActionQueue로 혼동을 주긴 했지만, 이건 delete로 인해 준영속화된 엔티티(id가 nu..
2024.11.25
-
Follow the procedure - 과정을 지켜라(feat. 5whys)
몇몇 신입 개발자들을 보면 쿠버네티스, 레디스 분산락을 활용한 동시성 제어, ArgoCD를 이용한 무중단배포, Spring Batch 사용 등 뭔가 "용어"에 취해있다는 느낌을 받을 때가 있다쿠버네티스를 하기에 앞서 리눅스/도커는 깊게 아는가? 분산락에 레디스를 적용했다면 Redisson, Lettuce중에 어떤 방식으로 사용했는지, 락이라면 MonitorLock/ReentrantLock이란 것도 아는지/쓰면 장점이 뭔지 왜 레디스 분산락이어야만 하는지, ArgoCD를 사용했다면 어느 환경에서 사용했는지 어떤 배포방법을 사용했는지, Spring Batch를 사용했다면 실패하는 것들은 어떻게 처리했는지 재시도 방법은 있는지 OOM같은 이슈는 없었는지 등등..부트캠프에서 하는 발표를 들어도 동시성 제어 ->..
2024.11.24
-
JPA 특징 + 1차 캐시(feat. EntityManager.clear())
먼저 JPA를 사용할때의 장/단점, 특징, 용어 등을 알아야 한다 JPA란?JPA: 데이터베이스와 객체지향 프로그래밍 간의 매핑을 제공하는 ORM(Object-Relational Mapping) 기술특징데이터베이스를 객체로 매핑하여 SQL을 직접 작성하지 않아도 데이터베이스 작업이 가능영속성 컨텍스트를 통해 엔티티의 상태를 관리트랜잭션 범위 내에서 1차 캐시를 통해 데이터베이스 부하를 줄이고 엔티티의 동일성을 보장. 이 글에서는 JPA의 1차 캐시(First Level Cache)를 중심으로 다룬다 캐시, 캐싱이란?캐시(Cache): 데이터나 값을 미리 복사해 놓는 임시 장소캐싱(Caching): 캐시된 영역에서 데이터를 저장하거나 조회하는 접근 방식 1차 캐시란?1차 캐시(First Level Cach..
2024.11.23
-
KafkaKRU(Kafka 한국사용자 모임) 2024 2nd Meet-up 후기
행사 모집글행사 모집글을 페이스북의 KAFKA 한국 사용자 모임 그룹에서 먼저 봤다냉큼 들어가서 신청을 했다. 참가비는 5000원이었다*고승범님은 위의 2018년에 [카프카, 데이터 플랫폼의 최강자], 2021년에 [실전 카프카 개발부터 운영까지]라는 책을 쓰신 저자님이시다 추후에 보니 토비님도 잠시 오시기로 했나보다원래 20:00시까지였었던 행사가 20:20으로 늘어나면서 토비님이 잠시 마이크를 잡는 시간이 추가됐다요번 밋업 참가를 계기로 토비님께 잠시 인사드리러 가기로 마음먹었다놀라시지 않게 Toby님이 운영중이신 디스코드방에 하루 전날 말씀을 드렸다!행사당일(24.11.21)을지로입구역을 나와서 조금 걷다보니 어느새 행사장소에 도착했다조금 늦어서 오프닝때가 지나서 들어왔다..😂행사관련 직원분께서 ..
2024.11.22
-
MySQL Select 쿼리 실행 순서 알아보기(feat. EXPLAIN, ANALYZE)
조금은 쉬운 Q&A일수도 있다하지만 종종 면접에도 나오는 질문이기때문에 손으로 직접 실행해보면서 알아보기로 한다 Q. SELECT 쿼리문 실행 순서일단 개발자의 숙명: 검색을 이용하면 결과는 이렇게 나온다(요즘엔 구글링에서 프롬프팅으로 넘어가는 추세이지만...) FROM AND JOIN🔽WHERE🔽GROUP BY🔽HAVING🔽SELECT🔽ORDER BY🔽LIMIT 테스트 테이블 & 데이터 준비일단 이걸 검증하기 위한 employee, department_info 테이블 2개를 만들었다예제 쿼리이런 느낌들로 쭉 쿼리를 실행해볼 예정이다/* FROM */SELECT *FROM employee;일단 employee 테이블의 전체 데이터가 출력되는 쿼리를 실행시켰다* 쿼리 실행결과가 에디터 내부에 나..
2024.11.21
-
올해는 Lucky Boki의 해 🍀
뭔가 IT 블로그이기때문에 여러 사람들에게 양질의 IT 지식을 전파해야하지만... 이번 글은 뭔가 쉬어가면서 최근에 운이 좋았던 순간들을 적어볼까 한다 참고로 운도 운이지만 내가 한가지를 시작하면 진짜 오랫동안 꾸준~~~~히 하기때문에 이런 행운들이 따라주는거 아닌가 싶다 - 오쏘콘 행사 추첨 3등 당첨 -> Devfest 2024 Songdo VIP 티켓(2인) - 항해99 커밋 캘린더 증정 이벤트 당첨 - 내 블로그를 꾸준히 보고 계신다는 팬(??)분과의 대화E-mail과 linkedin DM으로 각각 다른분이 연락을 주셨다 아직 주니어에 불과하고, 모르는것 투성인데....ㅠ 내가 백엔드 -> 풀스택 -> 백엔드&데봅스 커리어를 왔다갔다하느라 카테고리에 하나에 대해 A-Z까지 다룬게 없는데도 불구하고..
2024.11.20
-
it, 그것을 찾아서
코틀린에서 람다식을 사용할때 인자가 하나인 경우에 it으로 사용할 수 있다 2024년 11월 19일 기준 코틀린 최신버전인 2.021문서를 살펴보면 위의 내용이 나와있다it: implicit name of a single parameter-> 번역: 단일 매개변수의 암시적 이름 it의 활용 예시를 들기 위해.. 간단한 코드를 만들어봤다* 간단한 포스팅용 코드이므로, Assertion이 없다고 불편해하지 마시라!ㅠ. 학습용 테스트도 테스트의 일부일 수 있는것처럼package bokiimport org.junit.jupiter.api.Testclass ItTest { data class Person( val name: String, val age: Int, ) @Te..
2024.11.19
-
오쏘콘(Open Source Conference) 참여 후기(feat. Pay it forward)
잘 지내셨나요? 이번에는 2024년 11월 16일 토요일에 다녀왔던 오픈소스 관련 개발행사에 다녀온 후기를 올려봅니다!여기서부터는 음슴체 반말체로 진행할 예정입니다..ㅎㅎ 지난주 토요일에 인천스타트업파크 6층 커넥트홀에서 열린 오픈소스 컨퍼런스에 참여했다Festa라는 플랫폼을 통해 행사를 신청했고, 입장권은 3만원이었고, 139명이나 신청한 중 규모의 행사였다!!판교에 위치한 스타트업캠퍼스의 인프랩은 가봤는데, 인천에도 스타트업파크가 있는지 처음 알았다!한분한분 너무 대단하신 분들의 발표를 들을 수 있다 대략 내가 사는 강북구에서 행사장까지 소요되는 시간은 약 2시간 30분...!!No Car, So Sad..🥺 어쨌든 환승을 포함해 약 2시간 40분정도 걸려서 도착한 이곳...!!건물이름이 인스타였는..
2024.11.18
-
Naver DAN24 행사 후기
올해 대형 기업들의 컨퍼런스들이 연달아 이어지고 있다나는 그 중 네이버의 DAN24 행사에 선착순으로 신청을 했었는데 운좋게 Day1, Day2 둘 다 당첨되게 되어 이번에 월요일, 화요일에 네이버 행사를 다녀온 이야기를 풀어볼까한다 What is DAN?행사기간: 2024.11.11~2024.11.12 Day1코엑스에 도착해서 네이버페이 월렛에 있는 NFT로 인증을 하고 입장을 했다등록을 마치면서 제공해주는 담요를 받았다위치는 Coex Grand Ballroom등록을 끝내고 돌아오니 대형 디스플레이가 반겨줬다로켓..단! 아니지 네이버..단!일단 급하게 세션에 참여하는 것보다, 1/2/3F를 다 가보고 부스를 방문해보는 것을 먼저 하기로 했다나중에 알고보니 2층에도 있었지만, 3층에서 먼저 발견하게 된 ..
2024.11.17
-
Redis란?
RedisRemote Dictionary ServerOpenSource, In-memory Data Storemade by ANSI-C * ANSI C(C언어)ANSI C, ISO C, 표준 C(Standard C)는 미국 국립 표준 협회(ANSI)와 국제 표준화 기구(ISO)가 출판한 C 프로그래밍 언어의 이후 표준들을 가리킨다. 역사적으로 이 이름들은 오리지널의 가장 잘 지원되는 버전의 표준(C89 또는 C90)을 가리켰다 C (프로그래밍 언어) - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전. C패러다임명령형 프로그래밍 (절차적 프로그래밍), 구조적 프로그래밍설계자데니스 리치개발자데니스 리치, 벨 연구소발표일1972년최근 버전C17최근 버전 출시ko.wikipedia.org 특징K..
2024.11.16
-
JPA Query 로그 출력(feat. 물고기를 주지말고, 물고기 잡는 법좀 알려줘라..)
블로그에 텍스트 복사/붙여넣기를 막은 이유가 있다내가 정성들여 쓴 IntelliJ 플러그인 25가지 추천 글을 문자 그대로 토씨 하나 안바꾸고 크롤링을 해서 자기 블로그에 그대로 올리는 사람이 있는가하면, 그대로 복붙해서 출처없이 올리는 걸 봤다그때 충격이었다 또한 블로그를 하는 사람들을 무시하는 사람들의 말을 들어보면, 블로그를 한다고 유세떤다, 남의꺼 복붙해서 가져다 쓰는 것이라 말한다나도 어느정도는 동의한다. 양질저질 품질로 따졌을 때 단순히 에러를 해결하는 방법 1줄, 2줄 이정도만 올리는 저질글들이 많다 하지만....시간이 지나감에 따라 21년에 쓴 글이 25년에 될때는 버전 업이 돼서 정답이 아닐지라도 최대한 보는 사람들을 위해서 간단한 프로젝트를 만들어보거나 개인프로젝트에 적용시켜서 테스트를..
2024.11.15
-
SDF: Seoul Design Festival 2024 나들이
본업은 개발자이고, 개발일을 좋아하긴 하지만...개발자는 코딩, 프로그래밍만 하지 않는다먹고 자고 쉬고... 뇌도 휴식을 취해야 기억력도 더 좋아지고 치매도 예방되고 그렇다고 한다! 뭐, 위에 말한건 그냥 겉치레용이고.. 개발과 비슷한 열정변태들이 모인 디자이너들의 영역을 체험해보기 위해 Seoul 코엑스에서 열린 Design Festival 2024에 다녀온 이야기를 써보려고 한다(사실 2023년에도 갔다온.....ㅎㅎ)2024.11.13(수) ~ 2024.11.17(일)까지 열린 행사였는데, 첫 날인 수요일에 다녀왔다! SDF: Seoul Design Festival 20241층에서 QR코드로 입장체크를 하고 손목에 차는 팔찌를 받고, 3층 입구에서 팜플렛을 받아서 입장했다 귀엽고, 요상한 조형물도 ..
2024.11.14
-
RDB라고 해서 FK가 꼭 필요할까?
퇴사를 하면서 Off-Boarding 당시 받은 백엔드 피드백들이 있다오늘은 그 중 하나인 외래키에 대해서 작성해보려고 한다 나는 그 당시 1인 백엔드 - 코틀린 스프링부트 개발자로 스키마설계까지도 참여를 했었다간단한 프로젝트였기때문에 테이블은 10개정도 나왔었다그 중 현실화를 하면서 모델링거쳐 1:N 이런 관계가 들어간다면 당연하게도 외래키도 있는 형태로 설계를 했었다 단순히 "A가 만들어지기 위해서는 B도 존재해야 한다"는 건 진리일 수 있다"Order(주문)이 만들어지기 위해서는 User(사용자)가 필요하다"는 사실이다로그인한 유저가 없으면 주문을 할 수 없는 것은 당연하기 때문.. 그러면 수 많은 기업들이 정말 외래키를 사용하고 있을까? 확답은 못하겠지만 No쪽에 가깝지 않을까 싶다소위 네카라쿠배..
2024.11.13
-
11월 가평 가족 여행
아버지의 건강 이슈 등으로 인해 주말에 가족 여행을 다녀오기로 했다추천 장소는 가평, 양평!!1박 2일. 5인그 중 좋은 숙소를 예약한 가평으로 정했다! 숙소청평호 뷰가 보이는스위티안 호텔&리조트참고: 차량 없이는 이동이 어려움 식사출발지 - 강북점심 식사 - 강마을다람쥐 덕소점저녁 - 호텔 레스토랑 다음날 아침 - 컵라면점심 - 설렁탕&소고기무국저녁 - 도착 출발 진짜 대존맛!!최애: 도토리 전 샐러드, 2순위: 도토리 해물파전너무 맛있었다..ㅠ 침쥬륵 방2개를 예약했었다숙소는 복층으로 되어있고, 변기가 있는 화장실 1/2층, 샤워실 2층. 침대 2층1층은 TV및 발코니, 의자, 화장대, 침구류 등이 있었다8월까지만 바베큐장을 운영하고 현재는 운영하고 있지 않다고 했다바로 옆에 바다는 아니지만 큰 강이..
2024.11.12
-
인프런 멘토링 후기
한참 전에 있었던 일이지만...인프런 멘토링을 신청해서 받아본 경험을 짧막하게 공유하려고 한다네이버에 재직중이신 분이셨고, 경력은 미들급이셨다! 비용은 1시간에 35,000원이었던걸로 기억한다! 상담신청한 했던 내용1. 주니어->미들 백엔드 개발자로서 갖춰야 할 역량2. 네카라 라인의 회사에서 경력직을 뽑을 때 중요시하는 부분이 있는지3. 이력서에 대한 피드백카메라는 off, 마이크는 on인 상태로 상담을 해주셨고 상담을 시작하기 이전에 카카오톡으로 제가 현재 처한 상황, 제 이력서 링크, 상담받고 싶은 내용을 매우매우 상세하게 전달드렸다 정말 상세하게 답변해주시고 공감도 해주시고 냉정한 조언도 해주셨었던 기억이 난다노션에 엄청 많은 내용들을 적었지만.. 공개할 수 있는 부분만 말해보면.. 지금까지의 얘..
2024.11.11
-
네이버 행사 D-1 [DAN 24]
TEAM NAVER CONFERENCE `DAN 24`왜 이름이 DAN인가 궁금했었는데... 플랫폼을 순 우리말로 하면 DAN이라고 표현한단다 이번 해에 여러 행사들에 참여했지만 TOSS의 SLASH24, KAKAO의 IF KAKAO 2024, 우아한형제들의 WOOWACON 2024에는 참가하지 못했었다 그래도 팀 네이버 행사에 Day 1, 2 둘 다 참가하고 기술워크샵까지 참석하게 되어서 매우 기쁘다 두근두근...!! 다녀와서 또 이런저런 재미난 이야기 보따리를 올릴 예정이다! 가보자고!
2024.11.10
-
주말운전 - 네카넥 가보기(네이버,카카오,넥슨)
주말에 운전연습도 할겸, 미래에 판교에 있는 회사에 재직하면 집에서 어떻게 운전해 가야할지.. 미리 길을 익혀놓기 위해 판교로 드라이빙을 하러 나왔다 넥슨먼저 넥슨부터 들려봤다킹슨, 갓슨, 돈슨... 등 몇개의 별명을 갖고 있는 NEXON이다주차장은 되게 깔끔했으며, 회사로 올라가는 입구에 LOGIN이라는 게임회사다운 문구를 볼 수 있었다!ㅋㅋㅋ넥슨 직원이 아니므로... 회사로 들어가보진 못했고, 유료주차장이었지만 회차가 있었기에 비용을 지불하지 않고 나올 수 있었다!!다른 큰 회사도 이렇게 무료회차를 지원해주는건가 싶었다 카카오 그 다음으로는 카카오AGIT(카카오아지트)를 방문해봤다가는길에 아디다스를 패러디한 아이타스를 뒤에 붙이고 다니는 차를 볼 수 있었다 ㅋㅋ; 피식한 내가 밉다카카오아지트는 실 근..
2024.11.09
-
원티드 오프로드 스테이션 참여!할 예정
초대권 개발자로 일을 하게 해준 원티드에서, 내가 합격했던 과거 전적이 있어서그런지.. 오프로드 스테이션에 무료로 참여할 수 있는 초대권을 줬다 오프로드 스테이션 1일차면접왕 이형! 강수진 성우님! 김계란! 자취남! 김창완 밴드!!개인적으로 전부 다 알지는 못하지만 엄청난 라인업이다... 2일차 장사천재 조사장! 사내뷰공업! 긱블! 실리카겔!이번에도 다 알지는 못하지만 정말 Crazy 라인업이다ㅠㅠ 테마가 2가지로 나뉜다1. FILL UP DAY: 재테크부터 건강까지 직장인을 위한 지식 충전 DAY2. BOOST UP NIGHT: 개척자들의 이야기와 밴드 공연으로 영감 충전 NIGHT 원래 구매 가격Day 1, 2를 전부 구매하면 무려 20만원짜리 행사... 초대 - 선택권2일 모두 FILL UP DA..
2024.11.08
-
자꾸 까먹는 깃허브 토큰 등록해놓고 사용하자(MacOS)
문제상황종종 git clone / pull / push 등을 할때 아래와 같은 에러를 마주할 때가 있다(특히 private repo)remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.fatal: unable to access 'https://github.com ... ': The requested URL returned er..
2024.11.07
-
인프런 워밍업 스터디 클럽 2기 백엔드(클린코드/테스트코드) 수료식 참여 및 후기(feat. 우수러너 선정 😎)
인프런 워밍업 클럽 스터디 2기 오프라인 수료식 신청 🌱1달 동안 이어진 인프런 스터디에서 오프라인으로 수료식에 참여할 사람들을 모집하고 있길래, 냉큼 신청했다스터디원들이 있는 디스코드 채팅방에서 만났던 분들, 내 블로그를 보고 수료식때 꼭 만나고 싶다는 분도 있었고 인프랩 사무실 안에 방문해볼 기회가 얼마나 있을까 싶었다가는길에 저번 판교 퇴근길 밋업 - HTTP에서 후기를 올려서 당첨받은 스벅 아아쿠폰으로 목마름을 달래고 갔다..!!인프랩 직원분들 정말 감사합니다 :) 인프랩 도착 & 수료식 참여(11/01)판교테크노밸리스타트업캠퍼스 3동 5F에 있는 인프랩으로 갔다저번에 왔던 퇴근길 밋업은 1동 2층 더링크에서 열렸었다오픈되어 있는 인프랩 회사 문으로 당당하게 입장!!입구부터 초록초록한게 이뻤다...
2024.11.03
-
파이콘 Korea 2024 / KSUG 2024 가을 세미나 참여 후기
PYCON KOREA 2024한빛미디어에서 8명, 인프런에서 7명을 추첨해서 파이콘에 무료로 갈 수 있는 이벤트를 열었다! 파이콘 2024 무료 초대 이벤트그 중 인프런 스터디원 대상으로 하는 이벤트에는 떨어지고, 한빛미디어에서 파이콘 무료 초대 이벤트에는 당첨됐다행사 참여강북구 -> 수원 광교 너무 멀었다...ㅠ 수원컨벤션센터 3층으로 향했다크다 커...!! 입장 체크를 하러 갔다이세계에선 한빛미디어...? 사전에 파이썬 티셔츠도 구매하겠다는 의사를 밝혔기 때문에 티셔츠 구매권도 함께 받았다(선입금)인포메이션 부스에서 티셔츠를 수령할 수 있었다 그리고 파란색 옷을 입고 계신 분은 현재 당근에 계신 Subin Kim님!! 2023년에 열린 GopherCon에서 토스에 재직중일 당시 발표도 했었다 수빈님을..
2024.11.03
-
10월 볼트 X 커피챗 참여 후기(feat. 볼트커피챗)
10월 볼트 X 커피챗 참여기업저번 8월 이후로 이번 10월에 또 한번 쟁쟁한 기업들이 참여했다!! 행사 참여(10/24)강남에 있는 스타트업 성지인 MARU 180 / 저녁 7시행사가 열린 지하1층으로 내려가기 전에 행사 입간판을, 지하로 내려가는 엘리베이터에서 행사 포스터를 볼 수 있었다 지하로 내려가봤다오른쪽 테이블에서 참가자 확인 후 목걸이 명찰을 받을 수 있었고, 왼쪽 테이블에서는 제로콜라와 서브웨이 쿠키 및 샌드위치를 받아갈 수 있다!(갯수 제한 X.. 👀)덕분에 나도 쿠키 쫌 많이 챙겼다..헷 개발직군 & 비개발직군 모두 놓치지 않을꺼에요세션1: 비개발 + 개발직군 (픽소 CEO, 챌린저스 Lead, 하이퍼커넥트 PM Leader, AI Head)휴식 & 네트워킹세션2: 개발 직군 (오픈엣..
2024.11.02
-
<만들면서 배우는 클린 아키텍처 X 도메인 주도 개발 시작하기> 책 리뷰
먼저 이 두 책이 말하고 있는 바는 다르다아래에 나올 용어들을 처음 접하는 분이 있다면 공부해봐도 좋을 것 같다이 지식들을 알고있더라도 크게 대단한 개발자가 되는 것은 아니지만, 비즈니스 문제를 조금 더 높은 영역에서 해결하는 여러 방법론들 중 몇가지를 배우는 것이다그리고 DDD, MSA, 클린아키텍처 이런 용어에 매몰되지 않도록 하자!! 언제(어느 시점에) 도입하면 좋을지, 왜(다른 방법은 없는지?)를 고민해보고, 적용or사용하고 있는 시점에는 빠른 시점의 회고를 통해 잘못된 부분은 없는지 판단하고 수정해 나갈 수 있는 생각과 능력을 갖추어야 한다고 생각한다 먼저 두 책을 리뷰하기에 앞서, 나는 책에 나오는 모든 내용을 요약해서 큰제목/소제목/내용 등으로 나누어 올릴 생각은 없다!내가 이 두 책을 읽..
2024.10.27
-
4주차 회고 발자국 🐾
드디어 인프런 워밍업 클럽 BE 2기 스터디가 끝났다~!Keep강의를 보고 내용을 정리한 것도 좋았지만, 더 좋았던 점은 중간점검과 특별점검때 우빈님이 다른분들의 코드리뷰를 해주는 시간이었다다른분들이 Readme.md에 자신의 고민을 적어놨었는데, 같은 문제에 대해 정말 다양한 생각들과 해결법들이 나올 수 있다는 걸 보여줬다토론. 그것은 참 멋진 것 같다! Problem사실 되게 다양한 스케줄때문에 너무 바빴어서, 내가 정말 200% 못 쏟았구나 하는 점들이 몇 부분 있다집에 있을때는 온 집안일을 혼자 다하고 종종 요리도 하면서 암환자이신 아버지를 돌봤고, 몇몇 개발 행사들도 참여했고, 글또10기에 참여해서 그쪽 글도 구상하고 쓰느라 바쁘고, 취업준비중이라 코테, 기업과제, 면접 등을 치르느라 눈코뜰새없..
2024.10.27
-
판교 퇴근길 밋업 with 인프런 #08 HTTP 참여 후기
판교 퇴근길 밋업 참여자 선정 탈락 -> 선정(!?!?)기존 행사를 신청했을 때는 퇴근길 밋업에 아쉽게(?) 선정되지 않았다인프런과 함께 같이 성장을 도모하는 분들에게 제공되는 인프런 라운지의 혜택에서 추첨을 통해 당첨되어서 판교 퇴근길 밋업 행사에 참여할 수 있게 됐다그동안 인프콘 2024빼고는 모든 인프런 관련 행사에서 티켓팅을 성공한 적이 없었다..ㅠ (특히 판교 퇴근길 밋업..!!)하지만 이번에 좋은 기회로 참여할 수 있게 됐다!ㅎㅎ 행사 당일(10/23): 가는길집이 강북구라서 멀리 있는 판교로 가기 위해 조금 일찍 나왔다!미리 근처 카페가서 할일하다가 여유롭게 들어가려고 했다인프랩에 방문하는 기념으로 인프콘에서 받은 양말과 티셔츠를 안에 입고 위에 후드티를 입어줬다 ㅋㅋㅋ노트북에도 인프런 스티..
2024.10.26
-
Mission - Day 18
Q-1. @Mock, @MockBean, @Spy, @SpyBean, @InjectMocks 의 차이를 한번 정리해 봅시다.AnnotationPackageTargetActionMockorg.mockitoObject(PlainOldJavaObject, Java Bean)Mocking - 가짜 객체MockBeanorg.springframework.bootSpring Bean(ApplicationContext)Mocking - 가짜 스프링 빈Spyorg.mockitoObject(PlainOldJavaObject, Java Bean)Real - 실제 객체(부분 모킹)SpyBeanorg.springframework.bootSpring Bean(ApplicationContext)Real - 실제 빈(부분 모킹)In..
2024.10.25
-
두근두근 2024년
오랜만에 그냥 잡담느낌으로 글 써본다 02년 10살에 컴퓨터학원에 가서 원장선생님한테 Visual Basic을 짧게 배웠고 07년 중학교에서 IT꿈나무가 돼서 C언어를 배웠다 11년 컴공으로 입학해서 이런저런 공부를 했고 14년 비트컴퓨터학원에 들어가 Java, JSP를 배웠고 21년 자바의정석 저자 남궁성 저자님께 국비수업을 듣게됐고 22년 열심히 일하다가.. MongoDB행사에서 향로님을 먼 발치에서나마 뵀었고 23년은 열심히 일함..ㅋ no 컨퍼런스 24년은 정말 여러 일들이 있었다 골든래빗에서 만든 책의 베타리더에 당첨돼서 알고리즘 책 베타리딩을 하게되고 책 맨 뒤에 내 이름이 쓰이는 영광을 겪었고 골든래빗 편집자분과 인연이 생기게 됐다 이후에 다녔던 여러 개발행사들에서 정말 닮고싶은 대단한 분들..
2024.10.25
-
DEVCON 2024 at 한빛앤 사옥
https://festa.io/events/5916 DEVCON 2024 | Festa!Festa에서 당신이 찾는 이벤트를 만나보세요.festa.io그동안 삶이 바빴던 관계로 13일이나 지났지만, 이제야 후기를 올려본다10/7 월요일에 당근 테크밋업을 다녀오고, 10/12 토요일에는 한빛앤 사옥에서 열린 DEVCON 2024에 참여했다 Festa 플랫폼에서 결제해서 참여했고, 총 300명이나 지원할 정도로 꽤 큰 행사였다! K-DEVCON나는 한빛미디어 내부에서 열린 개발자 행사인줄 알았다! 하지만 K-DEVCON은 대전, 세종을 중심으로 운영중인 개발자 커뮤니티다 실제로 홈페이지에 들어가보면 꽤 괜찮은 개발 책 추천 글도 볼 수 있다! Time Table 다 듣고 싶었지만, 내 체력과 시간과 타협해서 ..
2024.10.25
-
3주차 회고 발자국 🐾
2주차와 마찬가지로 KPT 회고법으로 작성한다Keep테스트코드가 많아지고 Positive(Happy)/Boundary/Negative 계층도 테스트에 녹아있다면 과감하게 프로덕션 코드를 바꿀 수 있다테스트코드는 [문서]다나는 테스트코드에 도메인 지식이 녹아있다고 생각한다만약에 신규입사자가 들어왔다고 치자. 이분한테 "테스트코드 한번 차근차근 보세요!"라고 하면 내(우리) 프로젝트에서 중요하게 생각하는 부분이 다 이 코드 안에 녹아있다성공하는 경우, 예외가 발생하는 조건, 어떤 예외가 발생하는지 등..그런점에서 강의를 보면서 단위(유닛)테스트, Persistence Layer, Business Layer 등에 테스트를 작성하는 법을 배운 게 좋았다!Problem강의에서나 내 프로그래밍에서의 문제점은 없어보..
2024.10.23
-
Mission - Day 15
Layered Architecture 구조의 레이어별 테스트 작성법을 알아보았습니다.레이어별로 1) 어떤 특징이 있고, 2) 어떻게 테스트를 하면 좋을지, 자기만의 언어로 다시 한번 정리해 볼까요?Persistence Layerpersist라는 뜻은 "지속하다"라는 뜻을 갖고 있다프로그램에서 데이터의 persistence는 영속성을 뜻하며 프로그램이 종료되더라도 사라지지 않는 데이터의 성질을 의미한다이 개념을 살려서 JPA에서는 영속성, 영속화라는 특징을 갖고 있고, 편리하게 만든 hibernate의 data jpa가 아닌 순수 JPA에서도 EntityManager가 persist해서 엔티티를 데이터베이스에 저장하는 책임을 갖고 있다말이 길었지만, JDBC를 사용하던, Mybatis를 사용하던, JPA를..
2024.10.22
-
당근 테크 밋업 참여 후기
2024 당근 테크 밋업 세션 목록FRONTEND 밋업🥕 프레임워크부터 플랫폼까지: 당근 웹뷰 플랫폼 - 원지혁(프론트엔드코어)🥕 프론트엔드에게 배포플랫폼이란 - nothing or everything - 안현석(프론트엔드코어)🥕 내 타입스크립트 코드가 이렇게 느릴 리 없어! - 김은수(광고)🥕 아이콘, 브랜딩 에셋까지 디자인시스템으로 - 정현수(디자인코어)🥕 Graphql Schema 기반으로 협업하고 생산성 높이기 - 김승욱(당근알바)🥕 웹/웹뷰 코드 합치면 개발 2배 빨라지는거 아니었어요? - 김성현(광고) & 김유진(광고)🥕 아니, 이것도 웹뷰였어요? - 김태희(동네생활)SERVER 밋업🥕 당근 알바 초기 엔지니어링 전략: 빠르게, 빠르게, 더 빠르게 - 박용진(당근알바)🥕 우리..
2024.10.14
-
Spring boot 3.x.x(Spring 6.x.x)의 API 호출방법 with openFeign
Node.js 환경에서는 fetch, ajax, axios를 활용해서 비동기로 특정 api의 경로를 호출할 수 있다back: express, nest / front: react, vue, angular 등에서 필요한 의존성을 추가하면 사용할 수 있다 Spring에서는 전통적으로 RestTemplate를 사용했고(동기 호출만 지원), Reactive한 처리 또는 비동기 처리가 필요한 경우 WebClient를 사용했다RestTemplate는 Spring 3.x.x 버전부터 도입되었고(스프링 부트 아님), spring-boot-starter-web 패키지에 포함되어 있었다WebClient는 Spring 5.x.x(다시 한번, 스프링 부트 아님), spring-boot-starter-web 패키지가 아닌 spr..
2024.10.13
-
2주차 회고 발자국 🐾
1주차와는 다르게 KPT 방법으로 회고를 해본다 Keep강의 목차섹션1 - Intro강의 소개강의 구성강의에서 사용할 용어들예시 프로젝트 소개섹션 2- 추상(抽象)우리가 클린 코드를 추구하는 이유프로그램의 정의추상과 구체이름 짓기메서드와 추상화메서드 선언부추상화 레벨매직 넘버, 매직 스트링키워드 정리섹션 3 - 논리, 사고의 흐름뇌 메모리 적게 쓰기Early return사고의 depth 줄이기공백 라인을 대하는 자세부정어를 대하는 자세해피 케이스와 예외 처리키워드 정리섹션 4 - 객체 지향 패러다임추상의 관점으로 바라보는 객체 지향객체 설계하기 (1)객체 설계하기 (2)SOLIDSRP: Single Responsibility PrincipleOCP: Open-Closed PrincipleLSP: Lisk..
2024.10.13
-
1주차 회고 발자국 🐾
https://code-boki.tistory.com/231 좋은 회고란? (feat. 인프랩's SOL)좋은 회고란 무엇인가에 글을 작성하기에 앞서 인사이트를 주신인프랩의 직원이신 솔(Sol)이라는 닉네임을 사용하시고 솔퓨터라는 별명을 갖고 계신 소현님의 글을 먼저 공유하고 싶다!!이 글의code-boki.tistory.com지식공유자 박우빈님이 공유해주신 인프랩 에디터분의 글을 통해 알게된 좋은 회고에 대한 링크를 토대로 회고템플릿 중 하나를 선택해 이번주의 회고를 작성해본다 PMI 방식을 택해서 회고를 작성해본다 P - Plus. 좋았던 점일단 이번 스터디를 참여하기 전의 박우빈님의 Practical Testing 강의를 들었기때문에 우빈님의 점진적 학습방법이 정말 마음에 들었다영한님도 V0, V1..
2024.10.06
-
좋은 회고란? (feat. 인프랩's SOL)
좋은 회고란 무엇인가에 글을 작성하기에 앞서 인사이트를 주신인프랩의 직원이신 솔(Sol)이라는 닉네임을 사용하시고 솔퓨터라는 별명을 갖고 계신 소현님의 글을 먼저 공유하고 싶다!!이 글의 내용은 아래의 링크를 참고해서 내 생각을 덧붙이기도 하고, 그대로 발췌해온 내용도 있다!https://www.inflearn.com/pages/weekly-inflearn-41-20220215 개발자의 공유 문화 이모저모 (2) 회고 문화 - 인프런 | 스토리기록도 점검도 셀프! 개발자는 왜 회고를 할까요? #오픈소스 #기술블로그 #회고문화 바쁘게 일하고 공부하다 보면 시간이 훌쩍 지나있기 마련이죠. 그렇지만 모든 일을 다 기억할 수는 없는www.inflearn.com들어가서 잘 살펴보면 좋겠지만 클릭을 하지 않는 분들..
2024.10.06
-
에어팟 맥스: DLCA Tech-Tree CON 스탬프 이벤트 당첨!!
두근두근!!에어팟 맥스!!!!!!!!!!! 2등!!!!!!! AirPods Max ❤️1등인 맥북프로도 당연히 좋은 상품이지만, 아무래도 상품이다 보니까 맥북CTO(Configure To Order)를 통해서 RAM이나 SSD 업그레이드를 요청하지 못할 가능성도 있기 때문에 에어팟 맥스는 좋은 상품이라고 생각한다 나도 이제 절대 음질을 경험해볼 수 있는건가!?여러 개발 행사에 참여했더니 이런 좋은 상품도 받아볼 수 있는 것 같다DLCA 테크트리콘 행사에서 7개 스탬프를 얻기 위해 2일 연속 참여한게 정말 신의 한 수라고 생각한다올해는 인프콘행사때 25명만 무료로 갈 수 있는 이벤트에 당첨되기도 했고, 에어팟 맥스도 받았는데.. 원하는 회사로 취업같은 더 좋은 일이 있으면 좋겠다!!크큭내일은 당근테크밋업을..
2024.10.06
-
Mission - Day 4
1. 아래 코드와 설명을 보고, [섹션 3. 논리, 사고의 흐름]에서 이야기하는 내용을 중심으로 읽기 좋은 코드로 리팩토링해 봅시다.public boolean validateOrder(Order order) { if (order.getItems().size() == 0) { log.info("주문 항목이 없습니다."); return false; } else { if (order.getTotalPrice() > 0) { if (!order.hasCustomerInfo()) { log.info("사용자 정보가 없습니다."); return false; } else ..
2024.10.04
-
Mission - Day 2
"추상과 구체" 강의를 듣고, 생각나는 추상과 구체의 예시가 있다면 한번 3~5문장 정도로 적어봅시다.일상 생활, 자연 현상, 혹은 알고 있는 개발 지식 등 어느 것이든 상관 없습니다. 추상에서 구체로, 또는 구체에서 추상으로 방향은 상관 없으나, 어떤 것이 추상이고 어떤 것이 구체 레벨인지 잘 드러나게 작성해 보아요 :) ex) 우리가 상대방에게 소리를 내어 말을 하고 듣는 과정을 구체 레벨에서 표현한다면? - 폐에서 나온 공기가 성대를 통과한다. - 이는 나의 입술을 통해 외부로 방출되고, 상대방과 나 사이에 있는 공기를 진동시킨다. - 공기를 통해 전달된 진동은 고막, 달팽이관 등을 거쳐 청각세포, 청신경을 통해 뇌로 전달된다. 추상: 어떤 이미지(형상)에서 그것을 뽑아낸다 (구체적인 정보들에서..
2024.10.04
전체 글
-
24년, 인프런과 함께하며 성숙해진 해(no 찐 회고, with 인프런)
-
김영한님 40만 수강생 달성 기념 이벤트: 멘토링권 당첨
-
인프런 워밍업 클럽 네트워킹 데이 참여 후기
-
NAVER CLOUD CAMP 2024 특별 커리어 성장 세미나 참여 후기
-
항해99 2025 Commit Calendar 수령 후기
-
글또 백엔드&인프라 빌리지 반상회 참여 후기
-
항해99 잔디 기부 캠페인 참여!!
-
Hibernate(JPA) 탐구 - 2편(feat. save() 메서드 분석)
-
코루틴 개념 정리, 디버깅 or 출력해보기(feat. IntelliJ Configuration Template)
-
작심삼주 오블완 챌린지 끗
-
Kotlin에서 기존 객체를 다른 객체로 변환하는 다양한 방법
-
NEXT-STEP 도메인 주도 설계의 사실과 오해 수강 후기
-
Hibernate(JPA) 탐구 - 1편(feat. FlushEvent와 Action Queue)
-
Follow the procedure - 과정을 지켜라(feat. 5whys)
-
JPA 특징 + 1차 캐시(feat. EntityManager.clear())
-
KafkaKRU(Kafka 한국사용자 모임) 2024 2nd Meet-up 후기
-
MySQL Select 쿼리 실행 순서 알아보기(feat. EXPLAIN, ANALYZE)
-
올해는 Lucky Boki의 해 🍀
-
it, 그것을 찾아서
-
오쏘콘(Open Source Conference) 참여 후기(feat. Pay it forward)
-
Naver DAN24 행사 후기
-
Redis란?
-
JPA Query 로그 출력(feat. 물고기를 주지말고, 물고기 잡는 법좀 알려줘라..)
-
SDF: Seoul Design Festival 2024 나들이
-
RDB라고 해서 FK가 꼭 필요할까?
-
11월 가평 가족 여행
-
인프런 멘토링 후기
-
네이버 행사 D-1 [DAN 24]
-
주말운전 - 네카넥 가보기(네이버,카카오,넥슨)
-
원티드 오프로드 스테이션 참여!할 예정
-
자꾸 까먹는 깃허브 토큰 등록해놓고 사용하자(MacOS)
-
인프런 워밍업 스터디 클럽 2기 백엔드(클린코드/테스트코드) 수료식 참여 및 후기(feat. 우수러너 선정 😎)
-
파이콘 Korea 2024 / KSUG 2024 가을 세미나 참여 후기
-
10월 볼트 X 커피챗 참여 후기(feat. 볼트커피챗)
-
<만들면서 배우는 클린 아키텍처 X 도메인 주도 개발 시작하기> 책 리뷰
-
4주차 회고 발자국 🐾
-
판교 퇴근길 밋업 with 인프런 #08 HTTP 참여 후기
-
Mission - Day 18
-
두근두근 2024년
-
DEVCON 2024 at 한빛앤 사옥
-
3주차 회고 발자국 🐾
-
Mission - Day 15
-
당근 테크 밋업 참여 후기
-
Spring boot 3.x.x(Spring 6.x.x)의 API 호출방법 with openFeign
-
2주차 회고 발자국 🐾
-
1주차 회고 발자국 🐾
-
좋은 회고란? (feat. 인프랩's SOL)
-
에어팟 맥스: DLCA Tech-Tree CON 스탬프 이벤트 당첨!!
-
Mission - Day 4
-
Mission - Day 2
-
Kotlin IN ACTION 2nd : 원서를 읽어보자
-
Github에서 코드리뷰하기(feat. 멘티분들의 프로젝트 Live Review)
-
DLCA Tech-Tree Con 행사 참여 후기
-
Wanted 프리온보딩 BE 챌린지 8월
-
인프런 스터디(백엔드 클린 코드, 테스트 코드) OT
-
인프런 워밍업 클럽 스터디 2기(백엔드 클린 코드, 테스트 코드) 신청
-
[F-Lab 플러그인] IT 인프라, 얼마나 알아야 하나요? (feat. 우아한 형제들 이동규님)
-
KKCD(Kubernetes Korea Community Day) 2024 참여 후기
-
글또 10기(마지막 기수) 합격
-
삶의 지도 - 과거부터 현재까지
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
-
JSCODE 스터디 후기(자바 1기)
-
5주차 스터디 노트
-
4주차 스터디 노트
-
8/31 유스콘(YouthCon24) 참여 후기
-
8/27 캠프콘 참여 후기(feat. 토비의 스프링 책 판매자님과의 만남)
-
볼트 X 커피챗 참여 후기(feat. 토스증권 서버 리드분과의 슈퍼커피챗)
-
3주차 스터디 노트
-
자바에서의 다양한 문자열 포맷팅 방법(feat. MessageFormat)
-
Mutable/Immutable Object의 Value를 계속 변경하면 무슨 일이 발생할까? (feat. VisualVM, GC)
-
서평-한빛미디어) 실무로 통하는 클린 코드 책 리뷰
-
자바에서 두 변수 값 바꾸기(Swap, Generic, Wrapper)
-
Reference type(Mutable Object)의 Call By Value 살펴보기 2
-
Chat GPT 좀 더 잘 사용하기
-
2주차 스터디 노트
-
Reference type의 Call By Value 살펴보기(feat. JNI, Immutable/Mutable)
-
Primitive type의 Call By Value 살펴보기(feat. JNI)
-
DEVOCEAN 제6회 테크 데이 (OpenLab 성장 스토리) 행사 참여 후기
-
새로운 버전이 나오면..? 무언가를 도입하려고 할때 (feat. maturity level)
-
혼공학습단 12기 활동회고록 - [혼공네트]
-
혼공네트 6주차 - 실습, 네트워크 심화(Wireshark 패킷/프로토콜 분석, 다중화, 로드밸런싱, 암호화, 무선 네트워크)
-
1주차 스터디 노트
-
JSCODE 스터디 신청
-
블로그 왜 하세요? 왜 티스토리 블로그 하세요? 수익은요?
-
블로그 글 쓰기를 작성할 때 순서
-
혼공네트 5주차 - 응용 계층(DNS, URI/URL, HTTP Message, HTTP Header, 캐시, 쿠키, 콘텐츠 협상)
-
Google I/O Extended 2024 Incheon 후기
-
INFCON 2024 참여 후기
-
<켄트 벡의 Tidy First?>를 번역하며 알게 된 것들 역자 북토크 참여 후기
-
혼공네트 4주차 - 전송 계층(Port, NAPT, ICMP, TCP, UDP, 3-way handshake, 오류/흐름/혼잡 제어)
-
협업을 위한 - Gitmoji 도입해보기
-
협업을 위한 - 커밋 규칙과 이슈번호 사용 그리고 템플릿 만들기
-
오픈소스 공식홈페이지의 비교 테이블을 곧이곧대로 믿지말자
-
Frontend Logging System PoC 공유(23년 12월에 진행)
-
코딩이랑 무관합니다만 2분기 Meet Up(AWS Hero, Google GDE, MS MVP) at Microsoft Korea
-
이제 막 Web을 공부하는 학생, 취준생들에게... (feat. Spring)
-
혼공네트 3주차 - 네트워크 계층(IP, ARP, 서브넷 마스크, NAT, DHCP, Router, Routing Table)
-
한빛미디어) 제로베이스에서 유능한 QA로 성장하는 소프트웨어 테스트의 모든 것 강연 참여
-
인프콘 2024 [골든티켓] 당첨 (25명의 주인공 나야 나!!)
-
혼공네트 2주차 - 물리 계층과 데이터 링크 계층(이더넷, NIC, 허브/스위치)