[후쿠오카 여행] 2025-06
·
일상
이번에 후쿠오카 여행하면서 갔던 맛집들 정리해보려한다. 쇼쿠도 미츠 (가이센동) ★★★★★월요일 11:00 도착40분 웨이팅 특상 가이센동 2,000엔 새우 대신 다른걸로 달라고하니 관자?를 대신 준 듯하다.확실히 가격도 저렴하고 회도 신선했다.특히, 연어가 되게 고소했고 오징어가 되게 쫄깃했다.재방문 의사 있음 킷사 베니스(커피) ★★★★★ 쇼쿠도 미츠 주변 카페를 들어갔는데 유튜브에서 보던 할아버지가 하시는 곳이었다.팬케이크는 그냥 팬케이크 맛이었고 커피는 맛은 잘 모르나 산미가 없어서 좋았다.커피를 만드는 방법이 신기해서 보는 맛이 있었다. 우유 크림이 엄청 고소했다.재방문 의사있음 하카타역 한큐백화점 (손수건 구매) 한큐백화점 5번 출입구로 들어가서 티파니앤코 맞은편을 보면 찾을 수 있다.25년..
[React] setState는 동기함수인가? 에 대한 생각
·
Web/React.js
결론부터말하면 나는 react를 사용하는 개발자의 관점에서는 비동기함수라고 생각한다. 당연히 이렇게 생각하고 있었지만어디선가 setState는 동기함수지만 비동기함수처럼 동작한다. 라는 글을 보고 생각을 남긴다. 이 주장의 근거는 setState 함수는 변경하려는 값을 다른 함수에 위임하고 종료되니 동기함수다. 즉, state 변경을 예약하는 것으로 끝나니 동기함수다.하지만 state값이 즉시 변경되지 않고 react 렌더링 사이클에 따라 state 값이 업데이트 되므로 비동기함수처럼 동작한다. 이 주장이 틀렸다고 생각하지는 않는다.단지 추상화 수준과 관점의 차이라고 생각한다.이 주장은 react 자체를 개발하는 입장에서는 맞다고 생각하나react를 활용하여 개발하는 입장에서는 좋지 못한 주장이라 생각한..
[Docker] node:alpine에서 bcrypt 사용 시 앱이 죽는 문제 해결
·
Web/Node.js
bcrypt 버전: 5.1.1 node-alpine에서 bcrpyt.compare 함수 호출 시 앱이 죽는 문제를 해결한 글 문제상황로컬에서 잘 동작하던 node 서버를 node-apline 이미지에 위에 올려서 실행하니 로그인 요청 시 갑자기 서버가 죽어버렸다.서버 최상위에 try catch와 로그인 관련 함수에도 try catch를 넣어놨는데 서버가 죽었다.심지어 아무런 에러 메시지도 나오지 않았다. 정확히 아래의 부분에서 서버가 죽는다.const match = await bcrypt.compare(pw, user.password); 이러한 문제를 겪는 사람들이 꽤 있나보다.https://github.com/kelektiv/node.bcrypt.js/issues/1006 원인아래 링크를 보면 bcr..
[Unity] MQTT 사용
·
Unity Robotics
유니티에서 MQTT client를 사용하는 방법에 대한 글 MQTT: IoT 기기에서 사용하는 메시지큐라고 생각하면 될 것 같다. 유니티로 로봇의 실내 주행 환경을 구현해야 했는데, 자동문과 엘리베이터를 현실과 비슷하게 구현하고자 했고, 실제 자동문과 엘리베이터에서 사용하는 프로토콜인 MQTT를 유니티에서 사용하고자 했다. 환경os: ubuntu 22.04unity: 2022.3.49f1 1. MQTT Unity 설치https://github.com/gpvigano/M2MqttUnity위 링크에서 Unity 프로젝트 다운로드 및 실행 2. 해당 모듈 테스트Asset/M2MqttUnity/Example/Scenes/M2MqttUnity_Test이 씬을 실행하고 플레이하면 간단한 테스트를 진행할 수 있다...
[Unity] AI navigation에 애니메이션 붙이기
·
Unity Robotics
모바일 로봇 개발 중 움직이는 사람이 있는 환경을 시뮬레이션해야 하는 요구사항이 생겼다.움직이는 사람을 Unity의 AI navigation을 이용해서 구현하고, 여기에 무료 에셋을 다운받아서 애니메이션을 붙이는 과정에 대한 글이다. 아래는 결과영상이다. Depth Camera와 3D lidar로 위의 여러 사람 모델을 감지했을 때 아래와 같이 나온다.보라색은 카메라로 인식했기 때문에 사람의 형태처럼 보이고 주황색은 3D lidar로 인식해서 collision 영역이 감지되었다. 환경Unity version: 2022.3.49f1AI Navigation 1.1.5 애니메이션 기능 구현1. AI Agent 생성아래 링크의 영상을 보고 AI agent 생성하기해당 영상에서 애니메이션 넣는 부분이 생략되어 ..
브라우저는 어떻게 동작하는가?
·
Web/Web 전반
아래는 "브라우저가 어떻게 동작하는가"에 대한 MDN 문서이다.https://developer.mozilla.org/en-US/docs/Web/Performance/Guides/How_browsers_work 여기서는 위의 문서를 읽으면서 설명이 애매하다고 생각한 부분이나 감상(?), 새로 알게된 것들을 적어보려 한다.누군가 위의 문서를 보다가 이해가 안되는 부분이 있을 때 이 글이 참고가 되면 좋겠다 NavigationDNS 조회(DNS Lookup)패스 TCP handShake패스 TLS 협상(TLS negotiation)HTTPS 보안 연결에 대한 설명인데, 간단하게 설명하면1. 브라우저가 서버에 요청을 보냄2. 서버가 브라우저에 인증서와 퍼블릭 키를 보냄3. 브라우저가 서버로부터 받은 퍼블릭 키를..
Nest.js vs Spring에 대한 생각
·
Web/Node.js
요즘 백엔드를 제대로 공부해볼까 생각중이다. 현재 내 상태는js는 간단한 웹서버, React 개발을 해봤고java는 이클립스 플랫폼에서 사용하는 플러그인 개발, 간단한 앱 정도는 구현해본 상태이다.(한 2년 전? java1.8, 어노테이션 모름) js, java 둘 다 언어 자체는 웬만큼 아는 상태라고 생각된다. 그래도 현재 사용하고 있는 언어가 js라서 Nest를 공부해볼까 생각하고 있었는데,채용 공고를 보니 대다수의 대기업은 Spring 개발자를 뽑고, 스타트업에서는 Node.js, Spring 반반정도 뽑는 것 같다.(Nest 는 은근히 없는 듯)이렇다보니 뭘 선택할지 한참을 고민했다. Nest와 Spring 비교 글도 많이 찾아봤는데 찾아볼수록 더 고민되기 시작했다. Spring과 비교해서 Nes..
Next.js 도입 시 백엔드 세션쿠키 전달 문제
·
Web/Next.js
Next.js 14기준 백엔드에서 세션쿠키로 유저인증하는 상황에서 Next.js 도입 시 세션쿠키가 전달되지 않는 문제를 해결한 글이다.  프론트엔드 개발자는 쿠키 전달에 관해 신경쓸 일이 거의 없다.브라우저가 알아서 쿠키를 보내준다.(CORS일 때 fetch option에 credential 옵션 설정하는거 말고 뭐가 있던가..?) 아래의 시퀀스에서 쿠키 관련하여 프론트엔드 개발자가 할 일은 없다. Next.js를 도입하게 되면, 백엔드 API  요청은 아래와 같은 두 가지 경우가 되어버린다.브라우저 ↔ Next서버 ↔ 백엔드 (ex 서버사이드 렌더링 시 발생하는 요청, 서버액션)브라우저 ↔ 백엔드Next 서버를 거쳐가는 요청의 경우 Next 서버는 브라우저가 아니기 때문에 쿠키를 직접 설정해줘야 한다..