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
-
Reference type의 Call By Value 살펴보기(feat. JNI, Immutable/Mutable)
저번 Primitive type글에 이어서 작성한다저번 글을 못봤다면, 여기 Java 카테고리에 있는 이전 글을 살펴보면 된다 이전 글의 서두를 옮겨와봤다최근에 다시 자바공부를 하다가 이런 면접 질문이 있는 것을 봤다Java는 Call by Value 일까요? 아님 Call by Reference 일까요?사실 이 질문 자체로는 틀린 질문이라 생각한다일단 맞는 질문으로 변환해보면Call by Value 와 Call by Reference 의 차이점에 대해서 말해주세요그럼, Java는 Call by Reference 방식을 지원할까요?라는 꼬리질문식 질의문이 되어야 맞는다고 생각한다 자, 그럼 왜 저런 질문을 하는걸까?일단 질문의 의도는 2가지이다1. 헷갈리게 만들기2. Java의 기본 동작과정을 잘 이..
2024.08.21
-
Reference type(Mutable Object)의 Call By Value 살펴보기 2
이전 글에서는 Reference Type 인자로 전달될때 Call By Value의 동작에 관해서 JNI로 살펴보면서 Integer, AtomicInterger를 통해 객체 타입이 불변/가변으로 나뉠 수 있다는 것을 배웠다 이번 글에서는 Reference Type으로 전달 가능한 가변 객체에는 어떤 것들이 있는지 살펴본다 Call By Value와 가변 객체를 활용해서 객체를 넘기고 외부의 메서드에서 객체의 상태(값)을 변경하는 예시코드를 더 살펴보자 - Array- List- Map- Set - Custom Object(Custom Wrapper Class)이건 내부 구현 로직에 따라 가변or불변으로 구현할 수 있다. 여기서는 가변객체로 만들어본다 > 가변 Custom Object값이 변한 것을 볼 수..
2024.08.23
-
Mutable/Immutable Object의 Value를 계속 변경하면 무슨 일이 발생할까? (feat. VisualVM, GC)
이번 포스팅으로 Immutable 객체의 상태(값)을 반복해서 변경하면 무슨 일이 발생하는지 알아보자 관찰점: 힙 메모리가 어떻게 변하는지, 힙 메모리에 올라온 객체를 재사용하는지, GC가 몇 번 발생하는지Visual VMHeap 메모리를 관찰하는 Tool로 VisualVM을 사용할 것이다 이 프로그램은 몇몇 플러그인을 설치할 수 있는데, 나는 GC를 보기 위해 Visual GC 플러그인을 설치했다 예제 코드Immutable(Integer)실행결과를 예상해보자이전 포스팅 글들을 봤다면 Integer를 이런 식으로 더하다보면 새로운 힙 메모리가 할당된다고 예상할 수 있을 것이다x += 10; // 이 코드는 아래 코드로 변환되어서 실행x = Integer.valueOf(x.intValue() + 10); ..
2024.08.27
-
자바에서 두 변수 값 바꾸기(Swap, Generic, Wrapper)
앞의 글들을 보고 왔다면 자바에서의 Call By Value때문에 특정 메서드 내에서 지지고 볶아도 값이 바뀌지 않는다는 것을 알 수 있을 것이다Call by Value with primitive type - 잘못된 사용- 실행결과두 값이 바뀔 수 있도록 해보자!! Custom Wrapper Class 사용(Call by Value with mutable reference type)임시로 값을 담을(Wrapping) 클래스를 정의하자잘 바꼈다!!근데 뭔가 좀 아쉽다.. 더 개선할 수 있는 부분이 없을까?? IntegerWrapper를 GenericWrapper로 변환자바의 Generic을 활용해 어떤것이든 담을 수 있게 해보자Generic으로 담았기 때문에 Integer, Long타입 둘 다 값이 바뀌는..
2024.08.24
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
Java/Kotlin Spring 진영에서 테스트코드 혹은 실제와 비슷한 더미데이터를 생성할때 쓰는 라이브러리가 있다[ 보통 테스트 코드에서 사용하는 Fixture나 대표/운영진분들이 투자자분들한테 실제와 같은 데이터로 시연화면을 보여주고 싶을때 사용 ] 그것은 아마 자바 대상혁(Java-Faker) 라이브러리일것이다..(너..롤하냐? 왜 기습숭배를..)이 라이브러리의 시초는 루비이며, 거기서 파생되어 나온 프로젝트이다( Maven Repository에서 무려 1833위인 라이브러리 )인터넷에 몇몇 글들 혹은 개발 강의를 보면 이 라이브러리를 가져다 쓰는 곳을 볼 수 있다나름 버전관리도 꽤 한 모습이다(0.18에서 왜 갑자기 1.0으로..?)하지만 가장 최근 버전을 눌러보면9개의 취약성을 갖고 있다는 것..
2024.09.17
인기글
-
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
-
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
-
볼트 X 커피챗 참여 후기(feat. 토스증권 서버 리드분과의 슈퍼커피챗)
행사 안내 문자 수신8/19일에 볼트X에서 행사 안내 문자를 수신받았다3개 기업이 참여하고, 테크리드분들을 만나뵙고 슈퍼커피챗 기회도 얻을 수 있다는 행사라고 한다관심이 있었기에 아래의 이벤터스 링크로 들어가서 신청했다행사 소개행사 신청이벤터스를 통해 행사를 신청했다항상 추첨 방식 또는 선착순으로만 행사를 참여했었는데 이번에는 이력서를 제출하고 3개 기업이 수락한 사람들 중에서 총 100명만 행사를 참여할 수 있었다또한 토스증권, 라포랩스, 스윙에서 제출된 이력서들을 미리 보고 관심가는 단 20명을 뽑아서 테크 리드와의 슈퍼커피챗 기회를 주는 선발형 이벤트도 있었다행사 3일 전까지만 해도 참가대기 상태였다가, 참가확정이 되었다. 확정이 되었다는 안내 메일 또한 받았다 토스증권 서버 리드분과의 슈퍼커피챗 ..
2024.08.30
-
원격 서버 접속하기(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
-
Whitespace Characters 제거하기 + 여러가지
Whitespace Characters는 공백문자 그리고 이 WhiteSpace Character의 종류에는 1. 가로 크기를 차지하는 공백 문자(눈에 보임) 2. 세로 크기를 차지하는 공백 문자(눈에 보임) 3. 1 또는 2지만 눈에 보이지 않는 공백 문자가 있다 특히 3번의 경우는 일부러 사용하는 경우도 있고(화면에 보여줄 때), 일부러 제거하는 경우도 있다(서버에서 받을 때) 아니 3번같은게 어디 있어~? 라고 말씀하시는 분들은 아래에 더블클릭으로 보라돌이 뚜비 나나 뽀를 선택해보자 NORMAL의 경우는 전체가 블록으로 지정되고, SPACE의 경우는 공백마다 블록 지정, ZERO_WIDTH_SPACE의 경우에는 눈에는 NORMAL이랑 비슷하지만 [보라돌이]를 누르면 보라돌이만 선택되고 [뚜비]쪽을 ..
2022.11.26
-
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
-
맥은 리눅스인가요?
차라리 질문을 유닉스인가요?라고 말했으면 맞았을텐데 아쉽다 맥과 리눅스는 형제도 아니고 먼 친척쯤이다 잠시 Unix의 역사에 대해서 짧막하게 쓰겠다 Unix는 Bell 연구소의 AT&T에서 만들어졌다 시간이 지남에 따라 캘리포니아 대학교 버클리 캠퍼스의 빌 조이가 유닉스 소스코드를 기반으로 BSD의 최초 버전을 배포하였다 BSD는 Berkeley Software Distribution에서 앞글자를 따서 불리게 된다 그리고 Linux는 Linux is not Unix라는 뜻으로 시작했다(이 이름을 따서 NoSQL도 Not only SQL같은 재귀적인 이름이 나오지 않았나 한다) 리눅스 코드는 그 유명한 리누스 토발즈 형님이 개발했고 어떤 유닉스 코드도 포함하지 않았다고 한다 참고로 리눅스가 더 먼저 만들어..
2022.09.03
-
프로젝트 파일 구조 명령어 - 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
-
원격 서버 접속하기(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
-
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
-
원격 서버 접속하기(1) - telnet/ssh
입사를 해서 회사 일을 해보면, 이런 단어들을 들어볼 수 있을 것이다 로컬 서버, 개발 서버, 스테이징 서버, 배포 서버, 테스트 서버 등등 큰 기업에 가면 xx서버에 접속해서, 변화점이 있는 파일들을 수집하고, 자동으로 배포하는 등등.. 이런 과정들이 원클릭으로 구성되어 있을 것이다 그리고 회사에서는 이런 서버에 접속하기 위해 특정 IP만을 허용하는 허용리스트(AllowList)를 만들어서 VPN 프로그램을 사용하는 등의 방법으로 접속을 허용/제한한다 (UFW, IPTables, Firewalld, ZeroTier, WireGuard, pfSense 사용) 이 글에서는 방화벽에 대한 내용보다는 원격 서버에 접속하는 방법, 내가 사용하는 방법에 대해서 포스팅해보려고 한다 Telnet 로컬 네트워크에서 리..
2023.11.20
-
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
-
삶의 지도 - 과거부터 현재까지
이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...나는 이 세상에 37주 미만에 태어난 미숙아임과 동시에 2.2kg인 저출생체중아로 태어났다인큐베이터에 꽤 오랜 시간을 있었다고 한다...ㅠ약하게 태어난 탓일까... 어머니가 말씀하시길 나는 3살 초까지 먹는것들 대부분을 게워내기 일쑤였고, 말하는 것도 늦었다고 했다이러나저러나 애기였던 나는 그래도 태어난 김에 살고싶었나보다..ㅎ 그래도 조금씩은 건강을 회복해 나아갔다하지만 태어날 때 미숙아여서 그런진 몰라도 위 사진에 첨부한 안 좋은 특성중에 몇개가 있는 것 ..
2024.09.22
-
1줄 팁 맥에서 IntelliJ 자동완성 되게 하기
윈도우 분들은 아마 Ctrl + Space누르면 자동완성을 아주 잘 해줄것이다 근데 맥 사용자들은 Ctrl + Space누르면 아무 동작도 안한다 왜냐? OS단축키랑 충돌이 나기때문이지.. 결론은 이 사용하지도 않는 친구 때문에 인텔리제이 자동완성이 되지 않고 있었다는 것!! 첫번째를 Uncheck 하도록하자 Ctrl + Space의 결과 매우 잘된다^^
2022.07.27
-
모바일 환경 테스트하기(기기로 접속)
보통 npm install serve로 해서 내부적으로 서버환경을 만들어서 오픈된 포트를 모바일로 들어가곤 한다 근데 기왕 인텔리제이를 쓰는 김에 인텔리제이가 제공해주는 built-in 옵션으로 이용해보자! @media 쿼리를 쓰는 반응형 테스트 말고, 모바일 기기로 접속했을 때 어떤 기능을 disable 하거나 동작을 다르게 하고싶은 경우 이용하면 된다 일단 프로젝트에 resources 아래에 test할 html 파일을 만들자 나같은 경우 그냥 index.html로... vanilla js code로 돔이 준비된 경우 함수가 실행되도록 했다 웹 환경일때 result Division element에 web이라고 파란색으로 표시하고, 모바일 환경일때는 mobile로 표시하고 빨간색으로 표시하는 거다 인텔리..
2022.10.23
-
IntelliJ로 코딩테스트를 하는 분들을 위한 플러그인
보이시나요!? 왼쪽에 코드 치는 부분과 별개로 우측에 문제 부분이 나온것을... Embedded Web Browser라는 플러그인입니다 집에서 듀얼 모니터로 한다면 상관이 없지만, 카페에 노트북 하나 들고가서 코딩하시는분들은 알트탭이 월마나 귀찮은지, 특히 코테문제같은거를 풀때 아실거에요 인텔리제이 설정창에서 플러그인 탭을 누르시고 web browser를 검색하시면 embedded web browser가 나옵니다! 이거를 설치하면 우측 탭에 embedded web browser라는게 생깁니다 주소를 적는 쪽에 붙여넣기를 하고 Go를 누르면 이동됩니다 참고로 아쉬운점은 브라우저 내부에서 뒤로가기가 안된다는 점입니다 저는 혹시라도 보안을 생각해서 백준 비밀번호를 쉬운거로 바꾸고 저쪽에서 로그인 해서 제출한다..
2021.08.08
-
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
-
MacOS 터미널 좀 더 잘쓰기(feat. 단축키)
개발용으로 macOS를 사용중이라면 터미널을 한번쯤은 사용할 것이다! 보통 기능이 많은 iTerm 등을 쓴다지만, 나는 기본 터미널을 zsh를 다운받아서 바꿔서 쓰고 있다 지금부터 터미널 단축키에 대해 조금 더 알아본다 최대한 iTerm과 기본터미널 둘 다 호환되는 단축키로 포스팅하려고 한다 ps명령어와 tty명령어로 현재 두개의 프로세스(터미널 2개)를 띄워둔 상태이다 내가 무슨 키를 누르는지 모르기 때문에 keyboard viewer를 이용해서 입력되는 키를 보이게 해준다 윈도우(창) 및 작업 탭 아래의 단축키중에서 새 창 열기/창 닫기, 창 이동, 새 탭 열기/탭 닫기, 탭 이동은 크롬, VScode, IntelliJ 등 다 적용되는 전역적인 MacOS 단축키이다 폰트 키우기: cmd + plus(..
2023.11.15
-
IntelliJ (fancy ≠ operator, 이음자) 활성
1. 비활성화 2. 활성화 차이점을 알겠나요? 심플하게 != 에서 =에서 / 가 추가되었고 / =가 /= 가 된 느낌이죠!! 아주 가끔 이런거를 물어보는 사람들이 있어서 포스팅을 하게되었습니다 설정을 들어가주세요 맥북 기준 Command + , 윈도우는 Ctrl + Alt + S Editor(에디터) -> Font(글꼴) 에 들어가시면 Enable ligatures(이음자 활성화)라고 있습니다 체크를 해주시면 됩니다!!
2022.02.06
-
네이버 클라우드 써밋 립스탑백 후기
내가 총 300명 안에 든건지는 모르겠는데...진짜 열심히 참여했다..ㅎㅎ결국!!가방 받았다 ㅎㅎ 손잡이 부분에 네이버 클라우드라고 자수로 되어있고, 안에는 자크로 잠글 수 있게 되어있고 작은 수납공간 하나가 존재했다dev랑 관련된 가방으로는 원티드 뉴 스타트 패키지에 있는 가방을 매우 유용하게 쓰고 있는데,비교를 하면... 원티드 가방이 좀 가죽느낌에 짱짱한 재질이다 이 네이버 클라우드 가방은 하늘하늘한(?) 느낌이다두께가 좀 얇다대신에 맥북프로 16인치를 넣으니깐원티드 가방은 버거워하는 느낌이 있었는데 얘는 넣고도 충분하다..!이 네이버클라우드 장점은 손잡이에 네이버 클라우드 자수... 내가 뭔가 초록집 다니는 느낌이쟈나....ㅎ근데 가방이 얇은편이라 나는 그렇게 잘 들고다니진 않는거같다 기분전환용으..
2023.01.09
-
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
-
1주차 스터디 노트
아래의 질문들에 대해 학생/취준생/이직 준비자 등등 다 답해보자자바 기본 Java의 특징에 대해서 설명해주세요. Java의 단점에 대해서 설명해주세요. Java 실행 과정에 대해서 설명해주세요. Java Bytecode에 대해서 설명해주세요. Java의 인터프리터(interpreter) 방식과 JIT 컴파일(compile) 방식에 대해서 설명해주세요. 사용해본 Java 버전과 특징 그리고 왜 그 버전을 사용했는지 설명해주세요. Java 8, 11, 17 버전에 대해 아는대로 설명해주세요. JDK와 JRE에 대해서 설명해주세요. 동일성과 동등성에 대해 설명해 주세요. equals()와 ==의 차이점은 무엇일까요? HashCode를 설명하고, equals() 와 hashCode() 의 차..
2024.08.16
-
Mac에서 백그라운드로 프로세서 실행해놓고 계속 쓰기(feat. jar)
nohup java -jar port-8888.jar & lsof -i tcp:8888 음 사실 윈도우도 마찬가지긴한데.. & 명령어와 nohup을 이용하면 된다 자주 쓰일만한 어플리케이션 가볍게 계속 켜두고 싶어서 찾아보게 되었다 실행 내역은 nohup.out에 쌓이게 되어서 cat hohup.out으로 상태를 확인할 수 있다(동적이 아니고 실행 로그겠지만) 터미널이 꺼져도 실행되기 때문에 개꿀~ 어차피 집에서 쓰는거라 jar파일은 포트번호로 네이밍을 해줬다. 또 집에서만 쓸거라 /경로가 입력되면 request에서 서버포트 뽑아내서 localhost:port/swagger-ui/index.html로 리다이렉션 시켰다ㅋ 잘되는지 확인~ 예시 입력값은 프로그래머스의 '거리두기 확인하기'로 정했다 스웨거 확..
2022.02.19
-
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
-
혼공네트 6주차 - 실습, 네트워크 심화(Wireshark 패킷/프로토콜 분석, 다중화, 로드밸런싱, 암호화, 무선 네트워크)
시작하기 전에..내가 직접 씀) 이번 주차에서 나올 Wireshark를 통한 패킷 분석은 개인적으로 집에서만 실시하자공공장소 또는 회사내에서 패킷 분석을 하는것은 불법이라고 알고 있다 독서 & 스터디드디어 마지막주 혼공네트 스터디이다!!책의 챕터로는 6~7 챕터, 총 2개 챕터를 다룬다 6-1 와이어샤크 설치 및 사용법와이어샤크 설치맥OShttps://www.wireshark.org/download.html Wireshark · DownloadWireshark: The world's most popular network protocol analyzerwww.wireshark.org나는 macOS의 Arm 아키텍처 버전을 사용하고 있기때문에 macOS Arm Disk Image로 다운받았다 맨 위에 있는 ..
2024.08.17
-
Github repository 이쁘게 그룹화하기
취준생 시절을 벗어나... 혼자 사이드 프로젝트나, POC(Proof Of Concept) 등을 한다던지 등등 작업을 하다보니 어느덧.. Github Repo가 50개정도가 되어버렸다..! 이정도는 적은편에 속한다 근데 아래의 내 레포들을 보면... 참 다양한 언어들로 프로젝트들을 만들었다... 키키 근데 왜 Flutter프로젝트도 있는데 Dart가 없는가..!! 이정도로 너무 다양해지니깐, 이게 PoC를 위한 프로젝트였는지, Side프로젝트였는지, 그냥 재미삼아 만든거였는지, 백엔드/프론트엔드/데브옵스 등에 관련한 프로젝트였는지 모르게되어버렸다 위처럼 최근에 활동내역이 있는 프로젝트부터 보인다고 하더라도 관련 프로젝트들을 모아보기는 어렵다 그럴때 깃허브에서 제공하는 Star를 이용할 수 있다 보통 St..
2023.11.21
-
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
-
에어팟 맥스: DLCA Tech-Tree CON 스탬프 이벤트 당첨!!
두근두근!!에어팟 맥스!!!!!!!!!!! 2등!!!!!!! AirPods Max ❤️1등인 맥북프로도 당연히 좋은 상품이지만, 아무래도 상품이다 보니까 맥북CTO(Configure To Order)를 통해서 RAM이나 SSD 업그레이드를 요청하지 못할 가능성도 있기 때문에 에어팟 맥스는 좋은 상품이라고 생각한다 나도 이제 절대 음질을 경험해볼 수 있는건가!?여러 개발 행사에 참여했더니 이런 좋은 상품도 받아볼 수 있는 것 같다DLCA 테크트리콘 행사에서 7개 스탬프를 얻기 위해 2일 연속 참여한게 정말 신의 한 수라고 생각한다올해는 인프콘행사때 25명만 무료로 갈 수 있는 이벤트에 당첨되기도 했고, 에어팟 맥스도 받았는데.. 원하는 회사로 취업같은 더 좋은 일이 있으면 좋겠다!!크큭내일은 당근테크밋업을..
2024.10.06
-
4주차 스터디 노트
동시성 프로그래밍동시성과 병렬성의 차이점을 말해주세요.Thread-Safe하다는 것이 무슨 의미인가요?가시성 문제와 원자성 문제에 대해 설명해 주세요.가시성 문제에 대해 조금 더 자세히 설명해 주세요. 여러 스레드가 모두 한 CPU의 캐시 메모리를 읽으면 가시성 문제가 발생하지 않을 것 같은데, 어떻게 생각하시나요?자바의 동시성 이슈를 해결하는 방법을 아는만큼 설명해 주세요.volatile 키워드가 무엇인가요?synchronized 키워드가 무엇인가요?synchronized의 문제점은 무엇이 있나요?synchronized는 어떻게 구현되어 있나요?atomic하다는 것이 무슨 의미인가요?atomic 키워드가 무엇인가요?CAS 알고리즘에 대해 설명해 주세요.Vector, Hashtable, Collectio..
2024.09.05
-
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
-
코딩테스트를 위한 파이참 SetUp
사실 코딩테스트에서는 웹 환경에서(구름IDE 등등) 코딩을 하기때문에 자동완성 툴팁이 뜨질 않는다 간혹가다가 IDE를 사용할수있게 하는 코테도 있다는데, 대부분 배타적(비선호)인거같다 그렇기때문에 파이썬으로 코테준비를 하면서 코테환경과 비슷하게 자동완성 옵션을 꺼보는것은 어떨까? - 자동완성을 킨 예시 - 자동완성을 끈 예시 자 이제 설정은 윈도우 기준 File -> Settings -> Editor -> General -> Code Completion 맥 기준 PyCharm -> Preferences -> Editor -> General -> Code Completion Show suggestions as you type을 체크 해제하면 된다 한글 플러그인을 적용한 사람은 코드 입력시 제안 표시를 해제..
2021.06.23
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
Java/Kotlin Spring 진영에서 테스트코드 혹은 실제와 비슷한 더미데이터를 생성할때 쓰는 라이브러리가 있다[ 보통 테스트 코드에서 사용하는 Fixture나 대표/운영진분들이 투자자분들한테 실제와 같은 데이터로 시연화면을 보여주고 싶을때 사용 ] 그것은 아마 자바 대상혁(Java-Faker) 라이브러리일것이다..(너..롤하냐? 왜 기습숭배를..)이 라이브러리의 시초는 루비이며, 거기서 파생되어 나온 프로젝트이다( Maven Repository에서 무려 1833위인 라이브러리 )인터넷에 몇몇 글들 혹은 개발 강의를 보면 이 라이브러리를 가져다 쓰는 곳을 볼 수 있다나름 버전관리도 꽤 한 모습이다(0.18에서 왜 갑자기 1.0으로..?)하지만 가장 최근 버전을 눌러보면9개의 취약성을 갖고 있다는 것..
2024.09.17
-
8/31 유스콘(YouthCon24) 참여 후기
일요일에 후기를 작성하고 싶었지만, 시골에 내려갔다 온다고 조금 늦은(?) 후기를 올려본다KTX를 타고 시골로 내려가면서 헥사고날(포트&어댑터)에 대해 다루고 있는 클린 아키텍처 책을 읽었다 목차유스콘 오프라인 참여자 선정유스콘이란?행사 일시와 장소명예 규율이벤트 스케쥴트랙1, 2 정보내 시간표행사장으로1부점심시간2부휴식 시간3부후기 유스콘 오프라인 참여자 선정유스콘이란?유스콘은 👨🎓 젊은 개발자와 👨🏫 선배 개발자가 함께 가치 있는 기술에 관한 정보와 경험을 공유하는 콘퍼런스입니다. 여기서 발표하는 사람들을 잘 기억해 주세요. 가까운 미래에는 DEVIEW, if(kakao), INFCON의 주인공이 될 개발자입니다. -- 벌써 햇수로는 5년차인(20,21,22,23,24) 유스콘 행사이다난 ..
2024.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
-
jar Build Task(Feat. thin/plain, fat/uber) + no main manifest attribute in ...
우선 프로젝트를 만들때 Spring initializer로 만들면 IDE가 배포 패키징(아카이빙)을 WAR로 할지, JAR로 할지 선택하라고 한다 그리고 의존성 관리는 Maven(Pom.xml)로 할건지, Gradle(build.gradle-Groovy)로 할건지도 선택하게 된다 일단 이 글에서는 Maven/Gradle, War/Jar의 차이보다는 전반적인 패키징에 대한 것, 그리고 plain-jar, not plain-jar가 무엇인지에 대해서 포스팅해보려고 한다 일단 나 그리고 우리 회사는 로컬에서 빌드 후 파일통신으로 jar를 올려서 돌리기때문에 서버에서 터미널로 빌드를 하지는 않는다 그리고 로컬에서 빌드할때는 빌드 Task의 build를 이용하기보단 bootJar를 이용한다(IntelliJ) 이제..
2022.09.04
-
소프트웨어 개발 원칙들 모음
어떤 일을 할때의 방법은 여러 사람들이 반복해서 해보고, 100% 정답은 아니지만 99% 올바른 Best Practice가 나오기 마련이다 빅데이터처리를 거쳐서 어떤 일관된 결론을 도출하는것처럼 ㅋㅋ 첫번째로는 소프트웨어 개발 3대 원칙이 있다 1. KISS Keep It Simple Stupid / Keep It Short Simple / Keep it Small Simple 등의 앞글자를 따서 만든 약어라고 한다 '소프트웨어를 설계하거나 코딩하는 행위에서 되도록이면 간단하고 단순하게 만들라'는 원칙이다 소스코드나 설계 내용이 불필요하게 장황하거나 복잡해지는 것을 경계하라는 의미이다 단순할수록 이해하기 쉽고, 이해하기 쉬울수록 버그가 가능할 가능성이 줄어들고, 이는 곧 생산성 향상으로 이어진다 출처: ..
2022.09.03
-
DTO 돌려막기 멈춰!(feat. jackson annotation)
짧게 글을 써보겠다 글 제목처럼 가끔 예전에 만들어졌던 DTO를 활용하는 경우가 있다 이럴때 사용할 수 있는 어노테이션이 있다! @JsonIgnoreProperties({"xxx", "yyy"}} private UserRes user; @JsonIgnoreProperties({"xxx", "yyy"}} private UserRes user; user 안에 xxx와 yyy는 json response 필드에 포함하지 않는다는 어노테이션이다 매우 유용하게 활용할 수 있다..! 애초에 null인지 아닌지까지 보여주고싶지 않은 필드에 사용할 수 있다 추가로 리스트의 정보는 ToString을 할때 위험한 부분이 있다. exclude 어노테이션을 잘 사용해서 로그를출력할때나 값을 가져올때 순환참조를 피해야 한다 @T..
2022.05.30
-
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
-
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
-
DLCA Tech-Tree Con 행사 참여 후기
DLCA 테크트리콘https://www.dlca-techtree.com/ DLCA TECH TREE CONFERENCE첨단산업 디지털 선도기업 아카데미 미래산업 인재육성 컨퍼런스www.dlca-techtree.com연사자 목록스케줄 1- 9/26스케줄 2 - 9/27위치행사 참여 - 9/26처음에는 너무 취준생들을 위한 행사인가 싶어서.. 내가 여기를 가도 될까 고민했었지만 개발계의 BTS 향로님이 오시기도 하고, 여러 기업들에서 온다는 소식을 듣고 가보기로 결정했다 이벤트- CON ID 카드 만들기 행사 전날. CON ID를 만들면 다음날 행사에서 사용할 목걸이 명찰을 준다하길래 만들어봤다 3가지 형태로 만들 수 있었다! 흰색/네이비/보라결과물행사장에서 받은 네임텍은 이 3개에 속하지 않은 검은색이었지..
2024.09.29
-
글또 10기(마지막 기수) 합격
글또 - 글 쓰는 또라이가 세상을 바꾼다(글 쓰는 개발자 모임)2021년 6월부터 현재까지 개발하고 책 읽고 강의 보면서 블로그에 글들을 끄적끄적 작성했었는데이번에 의미 있게 글또에 참여해보고 싶었다슬프게도 이번 10기를 끝으로 글또 기수 활동이 종료된다고 한다글또 10기의 지원조건인 삶의 지도 글을 열심히 작성했다https://code-boki.tistory.com/218 삶의 지도 - 과거부터 현재까지이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...code-boki.tistory.com그랬더니 좋은 결과..
2024.09.27
-
원격 서버 접속하기(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 inet | grep 192.168.123 접속할 맥북(SSH 서버) ..
2023.11.30
-
IntelliJ Honey Tips 4 - 필수!(feat. 협업하기 위한 셋업)
개발에 대한 포스팅이 꽤나 늦었다 ㅎㅎ 회사에서 이리 치이고 저리 치이고 야근도 한다고! 자, 우리 개발자들은 다른 사람의 코드를 보기도 하고 내가 수정하기도 하고, 내가 만든 코드를 다른 사람이 보게 된다 면접때 면접관이 중요하게 보는 포인트 중에 하나는 팀프로젝트 경험이 있는가(취준생인 경우), 회사를 다녀본 경우는 다른 팀원들과 소통의 오류를 겪었을 때 어떻게 해결했는가?(이직인 경우) 이다 이 두 질문의 Main Context는 협업이다! 코드레벨에서의 협업은 Git Commit Message Convention, Camel/Kebab/Pascal Case Convention, variable Convention, JavaDoc작성, Hard Wrap(IDEA), ESLint or TSLint, ..
2022.10.23
-
좋은 회고란? (feat. 인프랩's SOL)
좋은 회고란 무엇인가에 글을 작성하기에 앞서 인사이트를 주신인프랩의 직원이신 솔(Sol)이라는 닉네임을 사용하시고 솔퓨터라는 별명을 갖고 계신 소현님의 글을 먼저 공유하고 싶다!!이 글의 내용은 아래의 링크를 참고해서 내 생각을 덧붙이기도 하고, 그대로 발췌해온 내용도 있다!https://www.inflearn.com/pages/weekly-inflearn-41-20220215 개발자의 공유 문화 이모저모 (2) 회고 문화 - 인프런 | 스토리기록도 점검도 셀프! 개발자는 왜 회고를 할까요? #오픈소스 #기술블로그 #회고문화 바쁘게 일하고 공부하다 보면 시간이 훌쩍 지나있기 마련이죠. 그렇지만 모든 일을 다 기억할 수는 없는www.inflearn.com들어가서 잘 살펴보면 좋겠지만 클릭을 하지 않는 분들..
2024.10.06
-
3주차 스터디 노트
컬렉션 JCF란 무엇인가요? JCF의 계층 구조를 설명해 주세요. List 인터페이스는 무엇이고, 구현체의 종류는 무엇이 있나요? ArrayList에 대해 설명해 주세요. ArrayList는 어떻게 동적으로 사이즈가 늘어나나요? LinkedList에 대해 설명해 주세요. 언제 ArrayList를 사용하고, 언제 LinkedList를 사용할까요?ArrayList와 Vector는 어떠한 차이가 있나요?Stack과 Queue가 무엇인가요?Set이 무엇이고, 구현 클래스가 무엇이 있는지 설명해 주세요.Set에서 중복 요소를 어떻게 걸러내는지 설명해 주세요.Map이 무엇이고, 구현 클래스가 무엇이 있는지 설명해 주세요.HashMap은 어떻게 동작하나요?HashMap의 최악의 시간 복잡도를 설명해 주세..
2024.08.29
-
이제 막 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
최신 글
-
당근 테크 밋업 참여 후기
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
-
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
-
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
-
DLCA Tech-Tree Con 행사 참여 후기
DLCA 테크트리콘https://www.dlca-techtree.com/ DLCA TECH TREE CONFERENCE첨단산업 디지털 선도기업 아카데미 미래산업 인재육성 컨퍼런스www.dlca-techtree.com연사자 목록스케줄 1- 9/26스케줄 2 - 9/27위치행사 참여 - 9/26처음에는 너무 취준생들을 위한 행사인가 싶어서.. 내가 여기를 가도 될까 고민했었지만 개발계의 BTS 향로님이 오시기도 하고, 여러 기업들에서 온다는 소식을 듣고 가보기로 결정했다 이벤트- CON ID 카드 만들기 행사 전날. CON ID를 만들면 다음날 행사에서 사용할 목걸이 명찰을 준다하길래 만들어봤다 3가지 형태로 만들 수 있었다! 흰색/네이비/보라결과물행사장에서 받은 네임텍은 이 3개에 속하지 않은 검은색이었지..
2024.09.29
-
Wanted 프리온보딩 BE 챌린지 8월
늦게나마 9월 말에서야 8월 2~3째 주에 있었던 원티드 프리온보딩 BE 챌린지 8월의 후기를 올려본다 숨가쁜 8월 달력정말 꽉 차 있던 8월 달력..ㅠ 바뿌수요일은 격주~3주 간격으로 아버지가 항암이 있으셔서 비워놨었다..!!(TMI)원티드 프리온보딩 기간에도 모의면접 기반인 JScode의 Java 스터디도 진행했었다여러모로 바밨기때문에 이제야 후기를 올려본다! Wanted Pre-onboarding BE Challenge(August)https://www.wanted.co.kr/events/pre_challenge_be_22 1차: 8.5(월) 20시 2차: 8.10(토) 10시 3차: 8.12(월) 20시 4차: 8.17(토) 10시" data-og-host="www.wanted.co.kr" dat..
2024.09.28
-
인프런 스터디(백엔드 클린 코드, 테스트 코드) OT
2024/09/27 OT 참여OT는 Google Meet에서 이루어졌다OT에서 AI 내용이 나와서 조금은 읭?하고 있었는데 우빈님의 다음 말을 위한 디딤돌 장표였다..큭 정리 - 내생각 결국 우리들은 어쩔수없이 미래에 AI와 함께 일하고 살고 있을 것이고 그들이 90%를 차지할 수 있지만우리가 실력 있는 개발자로서 그 남은 10%까지 인공지능에 대체되고 싶지 않다면 휴먼의 영역인 10%를 차지할만한 실력을 기르자!그리고 그것은 클린코드(우빈님 강의에선 읽기좋은 코드, 클린코드는 클린 아키텍처를 뜻하는 경우가 더 많다)와 테스트코드를 통해 채우면 된다고 하신다ㅎㅎ 나도 동의한다!! 테스트코드에서는 컴퓨터가 알 수 없는 비즈니스 영역이 드러가기 마련이고, 약간의 스포를 하면 Positive뿐만 아니라 Nag..
2024.09.28
-
인프런 워밍업 클럽 스터디 2기(백엔드 클린 코드, 테스트 코드) 신청
인프런 스터디 모집 Test Code / Readeable Code 강의를 내신 캐치테이블 우빈님강의 나온 순서가 Practical Testing -> Readable Code 였고, 먼저 테스트 강의를 완강한 상태였었다우빈님의 강의력이 너무 좋아서 다른 강의도 보려고 했었는데, 인프런에서 스터디를 오픈했길래 냉큼 신청했다 인프콘2024행사때 네트워킹시간에 우빈님이 계셔서 짧게 인사드리고, 강의 잘 보고 있다고 (이러저러한)한 후기 남겨드렸다고 했더니 바로 알아봐주셨다!!딱 강의에서 보던 모습 그대로..ㅎㅎ 인프런 워밍업 클럽 스터디 특장점 & 혜택 커리큘럼스터디 목적대부분 디스코드로 소통하면서, 강의를 보는게 대부분이긴하다하지만 중요한 포인트는 혼자 하는게 아니라 같이 한다는 것에 있다(같이 자라기) ..
2024.09.28
-
[F-Lab 플러그인] IT 인프라, 얼마나 알아야 하나요? (feat. 우아한 형제들 이동규님)
F-Lab 정기 세미나 선착순 100인 내 선발 세션 Q&A먼저 받은 질문들에 대한 답변추가적으로 들어온 즉석 질문에 대한 답변 네트워킹후기동규님의 세션과 여러 질문 답변들을 들어볼 수 있었던 시간이었습니다!정말 깊이가 있는 발표였는데...동규님이 인프라에 대해 고민하시면서 가장 낮은 레벨인 하드웨어부터 다양한 문제 시나리오를 그림이 그려진 키노트 장표로 보기좋게 설명해주셨습니다!!그리고 보통 Q&A시간이 주어지면 조금 짧은 시간만 답변하고 금방 close를 하는 다른 온라인 행사를 경험한적이 있는데동규님은 육아중이신데도 불구하고 정말정말 한분 한 분 참여자들을 위한 심도깊은 답변을 해주셨습니다Next Step, 배달의 민족, F-Lab에서 활동중이신데.. 이번에 F-lab의 플러그인 행사를 참여해서 ..
2024.09.27
-
KKCD(Kubernetes Korea Community Day) 2024 참여 후기
Cloud Native Korea Community Day 2024https://kcd-korea.net/ Cloud Native Korea Community Day 2024Cloud Native Korea Community Day 2024, Kubernetes와 CNCF 프로젝트를 아우르는 대규모 기술 행사가 여러분을 기다립니다!kcd-korea.net 2024년 9월 24일 화요일에 백범김구기념관에서 열리는 쿠버네티스 한국 커뮤니티데이 2024에 참가했다 행사장으로 효창공원앞역에 내려서 역을 기준으로 도보로 한 12분정도 거리에 위치한 백범김구기념관.. 오르막길이다 헥헥행사장등록 & 오전 세션입구로 들어가니 데스크가 보여서 문자를 보여주고 목걸이 명찰을 받았다그리고 등록 데스크 왼쪽을 보니 행사 스..
2024.09.27
-
글또 10기(마지막 기수) 합격
글또 - 글 쓰는 또라이가 세상을 바꾼다(글 쓰는 개발자 모임)2021년 6월부터 현재까지 개발하고 책 읽고 강의 보면서 블로그에 글들을 끄적끄적 작성했었는데이번에 의미 있게 글또에 참여해보고 싶었다슬프게도 이번 10기를 끝으로 글또 기수 활동이 종료된다고 한다글또 10기의 지원조건인 삶의 지도 글을 열심히 작성했다https://code-boki.tistory.com/218 삶의 지도 - 과거부터 현재까지이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...code-boki.tistory.com그랬더니 좋은 결과..
2024.09.27
-
삶의 지도 - 과거부터 현재까지
이 글은 글쓰는 개발자 모임, 글또 10기를 지원하기 위해 작성한 글이기도 하며, 제가 한번쯤은 적고 싶었던 제 일대기에 관한 글입니다1992.05 ~ 2024.09(now)1~7살[탄생~유치원](1992~1998)Hello World! But...나는 이 세상에 37주 미만에 태어난 미숙아임과 동시에 2.2kg인 저출생체중아로 태어났다인큐베이터에 꽤 오랜 시간을 있었다고 한다...ㅠ약하게 태어난 탓일까... 어머니가 말씀하시길 나는 3살 초까지 먹는것들 대부분을 게워내기 일쑤였고, 말하는 것도 늦었다고 했다이러나저러나 애기였던 나는 그래도 태어난 김에 살고싶었나보다..ㅎ 그래도 조금씩은 건강을 회복해 나아갔다하지만 태어날 때 미숙아여서 그런진 몰라도 위 사진에 첨부한 안 좋은 특성중에 몇개가 있는 것 ..
2024.09.22
-
혹시... 아직도 Java-Faker 쓰세요?(Vulnerabilities을 무시하고 있지는 않으신가요?)
Java/Kotlin Spring 진영에서 테스트코드 혹은 실제와 비슷한 더미데이터를 생성할때 쓰는 라이브러리가 있다[ 보통 테스트 코드에서 사용하는 Fixture나 대표/운영진분들이 투자자분들한테 실제와 같은 데이터로 시연화면을 보여주고 싶을때 사용 ] 그것은 아마 자바 대상혁(Java-Faker) 라이브러리일것이다..(너..롤하냐? 왜 기습숭배를..)이 라이브러리의 시초는 루비이며, 거기서 파생되어 나온 프로젝트이다( Maven Repository에서 무려 1833위인 라이브러리 )인터넷에 몇몇 글들 혹은 개발 강의를 보면 이 라이브러리를 가져다 쓰는 곳을 볼 수 있다나름 버전관리도 꽤 한 모습이다(0.18에서 왜 갑자기 1.0으로..?)하지만 가장 최근 버전을 눌러보면9개의 취약성을 갖고 있다는 것..
2024.09.17
-
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
-
5주차 스터디 노트
JVM & GC JVM 구조에 대해서 설명해 주세요. 클래스 로더에 대해 설명해 주세요. JVM 메모리 구조를 자세히 설명해 주세요. 왜 Heap 영역은 Young Generation과 Old Generation으로 나뉘나요? GC란 무엇인가요? GC의 장단점을 설명해 주세요. GC에서 사용하는 알고리즘은 무엇이 있고, Java는 어떤 알고리즘을 사용하나요? Java 8 기준으로, GC는 어떤 방식으로 수행되나요? GC의 종류 또는 발전 과정을 아시는대로 말씀해주세요. GC의 실행 방식을 아는만큼 설명해 주세요. Java 8과 Java 11의 디폴트 GC 실행 방식은 어떤 것인가요? G1 GC에 대해 설명해 주세요. G1 GC의 Heap 구..
2024.09.12
-
4주차 스터디 노트
동시성 프로그래밍동시성과 병렬성의 차이점을 말해주세요.Thread-Safe하다는 것이 무슨 의미인가요?가시성 문제와 원자성 문제에 대해 설명해 주세요.가시성 문제에 대해 조금 더 자세히 설명해 주세요. 여러 스레드가 모두 한 CPU의 캐시 메모리를 읽으면 가시성 문제가 발생하지 않을 것 같은데, 어떻게 생각하시나요?자바의 동시성 이슈를 해결하는 방법을 아는만큼 설명해 주세요.volatile 키워드가 무엇인가요?synchronized 키워드가 무엇인가요?synchronized의 문제점은 무엇이 있나요?synchronized는 어떻게 구현되어 있나요?atomic하다는 것이 무슨 의미인가요?atomic 키워드가 무엇인가요?CAS 알고리즘에 대해 설명해 주세요.Vector, Hashtable, Collectio..
2024.09.05
-
8/31 유스콘(YouthCon24) 참여 후기
일요일에 후기를 작성하고 싶었지만, 시골에 내려갔다 온다고 조금 늦은(?) 후기를 올려본다KTX를 타고 시골로 내려가면서 헥사고날(포트&어댑터)에 대해 다루고 있는 클린 아키텍처 책을 읽었다 목차유스콘 오프라인 참여자 선정유스콘이란?행사 일시와 장소명예 규율이벤트 스케쥴트랙1, 2 정보내 시간표행사장으로1부점심시간2부휴식 시간3부후기 유스콘 오프라인 참여자 선정유스콘이란?유스콘은 👨🎓 젊은 개발자와 👨🏫 선배 개발자가 함께 가치 있는 기술에 관한 정보와 경험을 공유하는 콘퍼런스입니다. 여기서 발표하는 사람들을 잘 기억해 주세요. 가까운 미래에는 DEVIEW, if(kakao), INFCON의 주인공이 될 개발자입니다. -- 벌써 햇수로는 5년차인(20,21,22,23,24) 유스콘 행사이다난 ..
2024.09.03
-
8/27 캠프콘 참여 후기(feat. 토비의 스프링 책 판매자님과의 만남)
세션 1,2가 괜찮게 보였고 어차피 밖에서 공부중이었기 때문에 접속했다 세션 1 - 백엔드 기술 면접 합격 A to Z(카카오뱅크 김하은님)면접은 "같이 일하고 싶은 동료를 뽑는 것" == "함께 일할 팀원을 찾는 과정" 전체적으로 백엔드 개발 개요, 백엔드 개발자의 역할, 주요 기술 스택, 비기술적 역량, 면접, 일반적인 채용 과정, 면접의 핵심 요소, 면접 질문 예시3개Bad/Good답변, 면접 준비 전략을 끝으로 슬라이드 발표를 하셨고 이어서 Q&A 타임이 있었다 여러 의미있고, 들을만한 질문과 답변들이 있었고, 나도 질문을 1개 해봤다..ㅎㅎ너무 당연한 질문이라 그런가....ㅎ 하은님이 생각하는 적정한 테스트 커버리지의 수치에 대해서 들을 수 있었고, 뒤에는 당연히 모킹한다. 네. 라고 하셨다....
2024.09.03
-
볼트 X 커피챗 참여 후기(feat. 토스증권 서버 리드분과의 슈퍼커피챗)
행사 안내 문자 수신8/19일에 볼트X에서 행사 안내 문자를 수신받았다3개 기업이 참여하고, 테크리드분들을 만나뵙고 슈퍼커피챗 기회도 얻을 수 있다는 행사라고 한다관심이 있었기에 아래의 이벤터스 링크로 들어가서 신청했다행사 소개행사 신청이벤터스를 통해 행사를 신청했다항상 추첨 방식 또는 선착순으로만 행사를 참여했었는데 이번에는 이력서를 제출하고 3개 기업이 수락한 사람들 중에서 총 100명만 행사를 참여할 수 있었다또한 토스증권, 라포랩스, 스윙에서 제출된 이력서들을 미리 보고 관심가는 단 20명을 뽑아서 테크 리드와의 슈퍼커피챗 기회를 주는 선발형 이벤트도 있었다행사 3일 전까지만 해도 참가대기 상태였다가, 참가확정이 되었다. 확정이 되었다는 안내 메일 또한 받았다 토스증권 서버 리드분과의 슈퍼커피챗 ..
2024.08.30
-
3주차 스터디 노트
컬렉션 JCF란 무엇인가요? JCF의 계층 구조를 설명해 주세요. List 인터페이스는 무엇이고, 구현체의 종류는 무엇이 있나요? ArrayList에 대해 설명해 주세요. ArrayList는 어떻게 동적으로 사이즈가 늘어나나요? LinkedList에 대해 설명해 주세요. 언제 ArrayList를 사용하고, 언제 LinkedList를 사용할까요?ArrayList와 Vector는 어떠한 차이가 있나요?Stack과 Queue가 무엇인가요?Set이 무엇이고, 구현 클래스가 무엇이 있는지 설명해 주세요.Set에서 중복 요소를 어떻게 걸러내는지 설명해 주세요.Map이 무엇이고, 구현 클래스가 무엇이 있는지 설명해 주세요.HashMap은 어떻게 동작하나요?HashMap의 최악의 시간 복잡도를 설명해 주세..
2024.08.29
-
자바에서의 다양한 문자열 포맷팅 방법(feat. MessageFormat)
복잡한 거 아니니깐 빠르게 알아보자!1. String 더하기단순하지만 강력한 방법이다다만.. 복잡시럽게 보일 수 있다는 단점 존재2. printfC언어를 배웠다면 익숙한 그 printf문법당연히 패딩넣기도 된다.다만 %p, %x등의 메모리 관련 포맷형식을 사용하면 UnknownFormatConversion 예외가 발생한다자바만의 특이점으로는 %h를 통해 메모리해시값을 얻을 수 있다. 슬프지만 당연하게도 Primitive type은 메모리주소를 알 수 없다3. String.format()printf와 비슷하게 형식을 지정할 수 있다그럼 차이점이 뭐야? 할 수 있는데, printf는 포맷팅 동시에 출력이 되는 방식이고, String.format은 반환형인 String으로 만들어서 재사용한다던지, 좀 더 가공..
2024.08.29
-
Mutable/Immutable Object의 Value를 계속 변경하면 무슨 일이 발생할까? (feat. VisualVM, GC)
이번 포스팅으로 Immutable 객체의 상태(값)을 반복해서 변경하면 무슨 일이 발생하는지 알아보자 관찰점: 힙 메모리가 어떻게 변하는지, 힙 메모리에 올라온 객체를 재사용하는지, GC가 몇 번 발생하는지Visual VMHeap 메모리를 관찰하는 Tool로 VisualVM을 사용할 것이다 이 프로그램은 몇몇 플러그인을 설치할 수 있는데, 나는 GC를 보기 위해 Visual GC 플러그인을 설치했다 예제 코드Immutable(Integer)실행결과를 예상해보자이전 포스팅 글들을 봤다면 Integer를 이런 식으로 더하다보면 새로운 힙 메모리가 할당된다고 예상할 수 있을 것이다x += 10; // 이 코드는 아래 코드로 변환되어서 실행x = Integer.valueOf(x.intValue() + 10); ..
2024.08.27
-
서평-한빛미디어) 실무로 통하는 클린 코드 책 리뷰
서평단 선정2013년에 인사이트 출판사의 로버트 C. 마틴의 를 신입 개발자일때 혼자 봤던 경험이 있다그땐 이해가 가는 내용도 있고, 이게 무슨 말이지? 하는 것들도 있었다. 주로 후자였다하지만 지금은 조금 다른 시야를 갖고 있고, 2024년 8월 5일에 출간된 클린코드 책을 읽어보고 싶었다그래서 한빛미디어에 올라온 서평단에 신청을 하고, 선정됐다 책 수령표지의 동물은 회색물범이라고 한다대상 독자대상독자는 한빛네트워크 사이트에선 초중급이라고 평가해놨다책 내용을 읽어본 나도 초중급이라는 Range에 동의한다다만 초급이 봐도 좋고, 고급 수준인 개발자가 봐도 충분히 좋은 내용이었다최소 2회독정도 하며, 이 책에서 기억나는 것들을 현업 코드에 녹인다면 자신이 현재 어느수준이던간에 다음 레벨로 올라갈 수 있을 ..
2024.08.26
-
자바에서 두 변수 값 바꾸기(Swap, Generic, Wrapper)
앞의 글들을 보고 왔다면 자바에서의 Call By Value때문에 특정 메서드 내에서 지지고 볶아도 값이 바뀌지 않는다는 것을 알 수 있을 것이다Call by Value with primitive type - 잘못된 사용- 실행결과두 값이 바뀔 수 있도록 해보자!! Custom Wrapper Class 사용(Call by Value with mutable reference type)임시로 값을 담을(Wrapping) 클래스를 정의하자잘 바꼈다!!근데 뭔가 좀 아쉽다.. 더 개선할 수 있는 부분이 없을까?? IntegerWrapper를 GenericWrapper로 변환자바의 Generic을 활용해 어떤것이든 담을 수 있게 해보자Generic으로 담았기 때문에 Integer, Long타입 둘 다 값이 바뀌는..
2024.08.24
-
Reference type(Mutable Object)의 Call By Value 살펴보기 2
이전 글에서는 Reference Type 인자로 전달될때 Call By Value의 동작에 관해서 JNI로 살펴보면서 Integer, AtomicInterger를 통해 객체 타입이 불변/가변으로 나뉠 수 있다는 것을 배웠다 이번 글에서는 Reference Type으로 전달 가능한 가변 객체에는 어떤 것들이 있는지 살펴본다 Call By Value와 가변 객체를 활용해서 객체를 넘기고 외부의 메서드에서 객체의 상태(값)을 변경하는 예시코드를 더 살펴보자 - Array- List- Map- Set - Custom Object(Custom Wrapper Class)이건 내부 구현 로직에 따라 가변or불변으로 구현할 수 있다. 여기서는 가변객체로 만들어본다 > 가변 Custom Object값이 변한 것을 볼 수..
2024.08.23
-
Chat GPT 좀 더 잘 사용하기
- 사건아는 동생이 Java공부하고 있는데 Call by Value에 대해서 물어봐서 일단 내가 아는 지식 정리하고 Chat한테 한번 물어봤다 근데 이놈이 Python 코드를 알려주는거다 그래서 이런경우는 보통 한 번 더 말한다 "Python말고 Java언어로 답해줘" 그러다가 영어로 답한다 "한글로 번역해줘 or 한글로 답해줘"- 개인화 옵션 설정뭔가 설정할게 없나 찾아보니까 Chatgpt 맞춤 설정이라는 메뉴가 있었다그리고 요청사항을 입력했다매우 정중하게 존댓말로 했다. 인공지능에 대한 예우랄까..?- 변경 전/후> berfore> after이야..이거지ㅋ 아직도 프롬프팅을 할때 개인화를 하지 않은 사용자가 있다면 이번에 사용해보자 기깔나게 말해주기때문에 인공지능한테 화낼 일이 줄어들었다
2024.08.23
-
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
-
Reference type의 Call By Value 살펴보기(feat. JNI, Immutable/Mutable)
저번 Primitive type글에 이어서 작성한다저번 글을 못봤다면, 여기 Java 카테고리에 있는 이전 글을 살펴보면 된다 이전 글의 서두를 옮겨와봤다최근에 다시 자바공부를 하다가 이런 면접 질문이 있는 것을 봤다Java는 Call by Value 일까요? 아님 Call by Reference 일까요?사실 이 질문 자체로는 틀린 질문이라 생각한다일단 맞는 질문으로 변환해보면Call by Value 와 Call by Reference 의 차이점에 대해서 말해주세요그럼, Java는 Call by Reference 방식을 지원할까요?라는 꼬리질문식 질의문이 되어야 맞는다고 생각한다 자, 그럼 왜 저런 질문을 하는걸까?일단 질문의 의도는 2가지이다1. 헷갈리게 만들기2. Java의 기본 동작과정을 잘 이..
2024.08.21
-
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
-
DEVOCEAN 제6회 테크 데이 (OpenLab 성장 스토리) 행사 참여 후기
평일에 열리는 행사였지만... 난 참여가 가능했기 때문에!! 데보션 페이지를 통해서 행사를 신청했다 세션 소개일단 나는 코틀린, kubeflow, Rust 3 주제가 흥미로웠다추가로.. 난 LLM밖에 몰랐었는데, 여기에서 내가 모르는 RAG라는 용어가 보이길래 검색해봤다LLM 단점을 보완하는 기술이라고 나온다 프로젝트 데모 부스세션 소개에서 스케쥴을 살펴보면 이 프로젝트 데모 부스에서 볼 수 있는 프로젝트들을 설명하는 세션도 포함되어있다 발표자 SKT 타워엘리베이터를 타고 행사가 열리는 4층으로 향했다 행사장QRCode를 사진으로 포커싱하고 링크를 들어갔더니...옹.. 데보션 테크데이 배지를 얻었다!! 입구에는 간단한 다과들과 냉커피 + 데보션 스티커가 준비되어 있었다입구에서 KSUG 임원이면서, 데..
2024.08.19
-
새로운 버전이 나오면..? 무언가를 도입하려고 할때 (feat. maturity level)
최근에 면접을 기반으로 한 스터디를 하고 있어서 이 글을 작성하고 싶었다취준생이나 이직하려는 사람들이 단순히 면접을 통과하기 위해 질문을 외우고 있는 모습을 봤다 사용해본 Java 버전과 특징 그리고 왜 그 버전을 사용했는지 설명해주세요.Java 8, 11, 17 버전에 대해 아는대로 설명해주세요.그럼 하나의 질문을 던져볼 수 있을 것 같다Q. 새로운 자바 버전이 나오면 바로 사용해도 되는걸까?(Java 21) 그 질문에 답은 이 사진으로 대체하려고 한다Virtual Thread에 대해서 23년 12월에 카카오에서 발표한 영상의 일부 사진이다 아무리 LTS를 해주는 새로운 버전이 나왔다고 하더라도 실제로 상용화 또는 출시를 하려는 소프트웨어에 적용하기에는 수많은 과정을 거쳐야 한다2023년 9월에 출시된..
2024.08.18
-
혼공학습단 12기 활동회고록 - [혼공네트]
혼공학습단 선정6월 5일 올라온 혼공단 모집에 신청을 했고, 운좋게 6월 26일에 혼공학습단 12기로 선정이 됐다나는 혼공네트 책을 선택했다 기간은 7월 1일부터 8월 18일까지 꽤 긴 기간...!!!! 퇴사사실 따로 글을 작성하려고 했었는데 여기다가 말해버려야지..2024년 6월 3일에 1년 4개월정도 다닌 회사를 퇴사했다 일단 올해 3월에 18년동안 같이 우리 집에서 살아온 반려견 강아지가 무지개 다리를 건넜다2군데 정도 퍼진 암으로 인해 눈만 뜨면 고통스러워했었다 2023년에 폐암 말기 판정을 받으신 아버지도 집에서 쉬시면서 일산에 있는 국립암센터로 항암치료를 받으러 다니셔야 했었다나 또한 회사에서 스트레스와 불규칙한 수면, 식습관때문에 2023년에 비해서 15kg정도가 증가했었기때문에 건강이 심히..
2024.08.18
-
혼공네트 6주차 - 실습, 네트워크 심화(Wireshark 패킷/프로토콜 분석, 다중화, 로드밸런싱, 암호화, 무선 네트워크)
시작하기 전에..내가 직접 씀) 이번 주차에서 나올 Wireshark를 통한 패킷 분석은 개인적으로 집에서만 실시하자공공장소 또는 회사내에서 패킷 분석을 하는것은 불법이라고 알고 있다 독서 & 스터디드디어 마지막주 혼공네트 스터디이다!!책의 챕터로는 6~7 챕터, 총 2개 챕터를 다룬다 6-1 와이어샤크 설치 및 사용법와이어샤크 설치맥OShttps://www.wireshark.org/download.html Wireshark · DownloadWireshark: The world's most popular network protocol analyzerwww.wireshark.org나는 macOS의 Arm 아키텍처 버전을 사용하고 있기때문에 macOS Arm Disk Image로 다운받았다 맨 위에 있는 ..
2024.08.17
-
1주차 스터디 노트
아래의 질문들에 대해 학생/취준생/이직 준비자 등등 다 답해보자자바 기본 Java의 특징에 대해서 설명해주세요. Java의 단점에 대해서 설명해주세요. Java 실행 과정에 대해서 설명해주세요. Java Bytecode에 대해서 설명해주세요. Java의 인터프리터(interpreter) 방식과 JIT 컴파일(compile) 방식에 대해서 설명해주세요. 사용해본 Java 버전과 특징 그리고 왜 그 버전을 사용했는지 설명해주세요. Java 8, 11, 17 버전에 대해 아는대로 설명해주세요. JDK와 JRE에 대해서 설명해주세요. 동일성과 동등성에 대해 설명해 주세요. equals()와 ==의 차이점은 무엇일까요? HashCode를 설명하고, equals() 와 hashCode() 의 차..
2024.08.16
-
JSCODE 스터디 신청
Youtube - JSCODE종종 영상이 올라오면 즐겨보는 IT 유튜브 채널이다네이버, 채널톡 등의 회사에서 지인들에게 인터뷰를 하는 영상이 눈길이 갔고최근에는 인프런에서 비전공자나 취준생들을 위한 영상을 만드는 박재성 대표님 여기 채널에서 CS 스터디를 모집한다길래 노션 페이지를 들어가봤다 CS 모의면접 스터디CS를 그냥 스터디만 하는게 아니라, 모의면접을 기반으로 한 스터디이다!과목은 네트워크, 데이터베이스, 운영체제, 자바 팀단위 모의면접 구성원은 지원자 1(나), 면접관2, 관찰자2, 타임키퍼1 스터디 신청나는 이번에 1기가 열린 Java를 신청했다이미 연차가 있는 개발자기이긴 하지만.. 교통사고가 가장 잘 나는 구간이면서 주니어 개발자들이 나 좀 잘하는듯?하고 착각을 많이 한다는 3~5년차 구..
2024.08.16
-
블로그 왜 하세요? 왜 티스토리 블로그 하세요? 수익은요?
2021년 6월부터 2024년 8월까지 3년 2개월동안 블로그를 개설하고 운영해오고 있다요즈음 행사들을 많이 다니고있다. 그리고 부끄럽지만 내 블로그 주소를 공유하면, 간혹 받는 질문들이 있다 Q. 블로그 왜 하세요? 장점이 있나요? Q. 왜 티스토리 블로그로 시작하셨어요? 벨로그나 미디엄같은 곳도 있을텐데.. Q. 와 개설하신지 3년정도면 수익 많이 나셨겠어요! 얼마정도 버세요? A. 일단, 나는 버디버디 개인홈페이지부터 싸이월드까지 내 공간을 가꾸고 내 생각을 스피킹하는 장소를 항상 갖고 싶어왔고 실제로 있었다. 그 곳에서 내 생각을 말하면서 동시에, 한 편의 글쓰기를 할 수 있어서 좋았다 A. github.io 라는 기존 깃허브 블로그에서 티스토리로 넘어왔는데, 티스토리로 넘어온 이유는 딱히 없다...
2024.08.13
-
블로그 글 쓰기를 작성할 때 순서
- 반복적으로 작성했던 시리즈 글의 경우1. 계속 작성됐던 n번차 글 제목과 썸네일을 맨 위에 작성한다 2. 목차를 작성한다 3. 내용을 채운다(초고)4. 부족한 부분을 수정하거나 덧붙인다(퇴고)5. 글을 완성시키고 마무리짓는다(탈고)6. 출판사에 글을 올리진 않을거기때문에 투고는 없다..ㅎ - 어떤 현상 또는 기술, 세태에 대해 내 생각을 쓰는 글의 경우- 일회성으로 Deep dive한 내용을 풀어내는 성격을 가진 글의 경우위와 거의 비슷하다. 미리 정해진 목차는 없지만.. 최대한 기승전결 또는 원인-결과-고찰의 순서로 풀어나가려고 노력하면서 두괄or미괄식으로 단락을 나눈다개인적으로 양괄식 / 중괄식 / 무괄식 단락은 선호하지 않는다(IT 블로그와 성격이 맞지 않음)또한 한국인으로써 두괄식이 어렵지만..
2024.08.13
-
혼공네트 5주차 - 응용 계층(DNS, URI/URL, HTTP Message, HTTP Header, 캐시, 쿠키, 콘텐츠 협상)
시작하기 전에..책의 마지막 챕터인 네트워크 활용을 제외하고는 TCP/IP 5계층 모델에서는 제일 위의 계층인 응용 계층(Application Layer) 편이다! 면접에서는 DNS, HTTP Status Code 등이 나오는 편이다 독서 & 스터디이번주는 잠깐 카페에서 공부하고, 집에서 Ebook으로 주로 공부했다 저번주 우수 혼공족으로 선정돼서 베스킨라빈스 쿠폰으로 베라 아이스크림도 먹고, 50% 완주한 기념으로 받은 메가커피 햄앤치즈샌드도 있었는데 이건 전국 매장에서 햄앤치즈가 지금 생산이 안된다고 해서 다른 메뉴(할메가커피)로 바꿔먹었다! 감사합니다. 혼공족장님. 한빛미디어님 도메인 네임과 네임 서버도메인 네임(Domain Name)IP주소만으로는 호스트를 특정하기 어려움(번거로움)호스트의 IP주..
2024.08.13
-
Google I/O Extended 2024 Incheon 후기
좀 늦었지만, 인천 송도에서 열린 Google I/O Extended 2024 후기를 남겨본다https://code-boki.tistory.com/category/DailyLife/Tech%20Conference 'DailyLife/Tech Conference' 카테고리의 글 목록안녕하세요. IT 블로그입니다!!code-boki.tistory.com여기 테크 컨퍼런스 목록 기준의 타임라인에서 만 다음에 갔던 행사다 - 코딩이랑 무관합니다만: 7/21(일)- Google I/O Ex 2024 인천: 7/27(토)- 켄트벡 역자 북토크: 8/1(목)- INFCON 2024: 8/2(금) # 행사 정보이번 행사도 Festa를 통해 신청했었다결제비는 40,000원...!!!https://festa.io/even..
2024.08.08
-
INFCON 2024 참여 후기
# 골든티켓인프런이 2024.06.27 - 2024.07.02 기간 중 강의를 새로 구매한 사람 중 단, 25명을 추첨해서 무료로 보내주는 이벤트를 했었다# 추첨 탈락(2024.07.11)# 골든티켓 당첨(2024.07.12) # 행사 하루 전날(목요일)목요일 저녁에 한빛미디어에서 열린 Tidy First? 역자 북토크를 다녀오고.. 저녁에 부랴부랴 가방을 챙겼다GDSC 행사를 참여하고 받은 뱃지로 심심한 가방 앞부분을 꾸몄다금요일 하루는 강남 코엑스로! 인프콘 2024 행사를 다녀오는 날 ⭐️ # My 인프콘 세션 시간표 # 행사 당일 행사날이라고 인프런에서 전 강의 25% 할인한단다! 아마 이때 엄청난 강의구매가 있었을 것 같다 집에서 늦게 나와서...ㅠㅠ 11시 30분쯤에 봉은사역에서 내려서 코엑스..
2024.08.06
-
<켄트 벡의 Tidy First?>를 번역하며 알게 된 것들 역자 북토크 참여 후기
켄트 벡(Kent Beck)일단 혹시라도 켄트 벡(Kent Beck)님을 모르시는 분이 있으실까봐...그 유명한 테스트 주도 개발(TDD) 책을 쓰신 분이다!나도 요즘 TDD를 체화하려고 연습중인데 어렵다..!!ㅎㅎ 행사https://event-us.kr/FKH3nHkjmPGh/event/87756를 번역하며 알게 된 것들 - 이벤터스" data-og-description=" 안영회 역자가 더 나은 소프트웨어 설계를 위한 코드 정리법과 켄트 벡의 글을 번역하며 알게 된 것에 대해 이야기합니다." data-og-host="event-us.kr" data-og-source-url="https://event-us.kr/FKH3nHkjmPGh/event/87756" data-og-url="https://even..
2024.08.05
-
혼공네트 4주차 - 전송 계층(Port, NAPT, ICMP, TCP, UDP, 3-way handshake, 오류/흐름/혼잡 제어)
시작하기 전에..이 책에서 정의한 TCP/IP 모델중 전송계층을 공부한다! 이제 응용계층만 남았다~~!전송계층은 참고로 면접때 자주 등장하는 TCP와 UDP의 차이점. 그리고 TCP 특징이 중요하다 독서 & 스터디 패드로 시작해서... 집에서는 컴퓨터로 보고, 이동시에는 폰으로 보다가 결국 노트북으로 이번 챕터도 정독했다그리고 또 한빛미디어의 도메인 주도 개발 - 최범균 책에 꽂혀서 보고 있다 2년전에 나온 책인데 이것도 정말 좋은 내용을 담고있다백엔드로 개발하시는 분들은 한번쯤 읽어보면 좋겠다. 대신 DDD, 아키텍처, 멀티모듈 이런거에 너무 파묻히지만 않으면 베스트다 네트워크 계층의 IP 한계 -> 전송 계층 필요네트워크 계층의 IP 한계신뢰할 수 없는 통신비연결성 통신전송 계층 역할신뢰할 수 있는 ..
2024.07.28
-
협업을 위한 - Gitmoji 도입해보기
왜 도입을..?항상 팀단위(모르는 사람끼리 하는 프로젝트, 학교 선후배간, 회사에서)에서의 프로젝트에서 무언가를 도입하거나 바꾸려고 할때는 Why?를 먼저 생각해봐야한다그래서 왜 도입을 하려고 하는지에 대해서 생각해보면... 장점글자를 읽을 필요 없이 어떤 커밋을 했는지 이모지를 보고 파악이 가능하다커밋 기록이 아이콘으로 남게 되어서 귀엽다ㅋ단점은 맨 밑에서 다룰 예정이다일단 이건 기술적으로 스택이나 아키텍처나 바뀌는게 아닌 거기때문에 일단 도입해보고 나중에 회고해보자 Gitmoji란?Gitmoji는 눈치채신 분들도 있겠지만 Git + Emoji의 합성어이다모든 커밋 앞에 이모지를 붙이는 행위를 뜻한다깃모지를 사용하면 커밋의 목적이나 의도를 쉽게 파악 가능하다고 한다그리고 이모지가 이모티콘이 아닌가? 라..
2024.07.25
-
협업을 위한 - 커밋 규칙과 이슈번호 사용 그리고 템플릿 만들기
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
전체 글
-
당근 테크 밋업 참여 후기
-
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, 허브/스위치)
-
혼공네트 1주차 - 컴퓨터 네트워크 시작하기(지식의 필요성/거시적/미시적 관점)
-
내돈내산) 개정판 - 혼자 공부하는 얄팍한 코딩 지식 책 리뷰
-
Father of Java, James Gosling retired on July 3, 2024.
-
2024 인프콘 참여 MyPage
-
글 쓰기의 어려움 - 나는 등대가 되고싶다
-
KotlinConf'24 Global in South Korea 참여 후기
-
서평-제이펍) 에러가 무섭지 않게 되는 책 리뷰
-
GDSC Ewha 5th Demo Day 참여 후기(at 구글 스타트업 캠퍼스 )
-
골든래빗) 개발자 원칙 완전체 후기
-
크롬 검색창에서 다른 사이트 검색하기!!
-
Windows, Android - Flutter/Unity
-
DSL이란?
-
intelliJ 글씨 크기 단축키로 조절하기
-
서평-길벗) 코딩 자율학습 제로초의 자바스크립트 입문 책 리뷰
-
IntelliJ Honey Tips 6
-
개발공부법에 대한 내 생각 + 요즘 이것저것 공부중인 근황
-
면접관 참여 후기
-
Programming Study Honey Tips (feat. JetBrains/Rust)
-
효과적인 쿠버네티스 운영을 위한 최신 방법과 사례 세미나 참여
-
베타리더-골든래빗) 코딩 테스트 합격자 되기(프로그래머스 제공 97문제 완벽 대비) 후기
-
래빗톡 삼자대면 후기(feat. 인프랩 CTO 향로님과 함께)
-
프로그래밍 언어별 특징들
-
내돈내산) 육각형 개발자 책 리뷰
-
아이폰유저 기후동행카드 등록 후기
-
내가 좋아하는 책들(그래봤자 개발책이잖아...)
-
2023년 개발 회고
-
원격 서버 접속하기(6) - Termius를 이용해서 원격 서버 접속하기
-
Last login: ... (feat. MOTD, .hushlogin)
-
pts, tty(feat. w, who, /dev)
-
원격 서버 접속하기(5) - telnet, ssh 차이점(feat. wireshark)
-
원격 서버 접속하기(4) - ssh 접속(feat. 개인키/공개키로 접속)
-
원격 서버 접속하기(3) - ssh 접속(feat. 개인키/공개키 파일 생성)
-
원격 서버 접속하기(2) - ssh 접속(feat. ID/PW)
-
개인키 파일 인코딩 종류 for SSH
-
개인키 알고리즘(feat. RSA)
-
Github repository 이쁘게 그룹화하기
-
대칭키 / 비대칭키(공개키) 암호화
-
원격 서버 접속하기(1) - telnet/ssh
-
IT 용어 주의해서 사용하기
-
텍스트 에디터 종류
-
MacOS 터미널 좀 더 잘쓰기(feat. 단축키)
-
Shell(셸, 쉘) 종류 및 특징