본문 바로가기

전체 글32

자바스크립트로 모바일 기기(iPad, iPhone) 구분하는 법 최근 다양한 디바이스 및 브라우저에 대한 호환성 작업을 진행하였다. 보통 자바스크릅트로 접속한 디바이스의 정보를 확인하기 위해서는 navigator 내장 객체의 platfom(deprecated 됨..) 혹은 userAgent를 사용한다. 따라서 우선 다음과 같이 코드를 짜서 접속한 디바이스에 대한 정보를 출력해봤다. 위와 같이 platform은 Win32(64여도 32로 출력된다고 한다), userAgent 문자열에도 접속한 디바이스와 브라우저에 대한 정보가 들어가 있는 것을 볼 수 있다. 여기까지는 문제가 없는데, iPad와 Safari를 통해 접속할 시에 userAgent에 대한 정보가 다르게 출력되는 문제가 생긴다. 검색 결과 나는 이 문제를 해결하기 위해서 디바이스의 터치 가능 여부에 따라서 D.. 2023. 9. 22.
SEF 2023 후기 서론 나는 지난 9월 9일, 네이버 커넥트 재단에서 운영하는 SEF 2023에 다녀왔다. SEF(Software Engineering Festival)란 네이버 커넥트 재단에서 주최, 주관하는 소프트웨어 교육 페스티벌이다. 이 곳에서는 혁신적인 기술과 업계의 최신 동향을 경험하고 지식을 공유하는 기회를 얻을 수 있다. 우선 참가 신청 방법은 SEF 홈페이지에서 참가 신청서를 작성하면 나름의 심사를 통해서 참가자들을 선별하는 과정을 거친다. 참가 신청서 항목으로는 "SEF에 참가하고 싶은 이유와 본인의 개발 인생"에 대한 질문이 있었다. SEF에 참가하고 싶은 이유와 내가 겪어온 개발 인생의 시행착오를 가감 없이 적었다. 주최 측에서는 이를 좋게 봐주셨는지 정말 감사하게도 나는 SEF 2023에 당첨되었다.. 2023. 9. 16.
useRef 정리 useRef 사용 동기 최근 회사에서 jsmpeg 라이브러리를 사용하여 소켓 연결을 통해 IP 카메라를 재생하는 기능을 개발하였다. jsmpeg을 static으로 import 하여 개발하던 중, 프론트 단에서 window.location.hostname:{포트번호} 주소로 소켓을 연결하는 로직에서 "ReferenceError: window is not defined" 에러가 발생하였다. 이 오류는 Next.js의 서버 사이드 렌더링(SSR) 환경에서 window 객체에 접근하려고 시도하면 발생하는 것이다. Next.js는 초기 렌더링 시에 서버에서 컴포넌트를 생성하기 때문에, 서버에서는 window 객체와 같은 브라우저 전용 객체에 접근할 수 없다. 따라서 useEffect, useState를 사용하여 .. 2023. 8. 25.
인프콘 2023 후기 시작하며 오늘은 얼마 전에 다녀온 인프콘에 대한 글을 포스팅 할 것이다. 이미 다녀온 지 며칠되어 기억이 휘발되고 있는 가운데, 더 휘발되기 전에 글로 인프콘에 대한 후기글을 작성해보고자 한다. 지난 7월에 있었던 인프콘에 참가 신청을 하였는데 무지막지한 경쟁률 때문에 안타깝게도 참가자에는 선정되지 못하였다. 1500명 가량을 뽑는데, 약 9000명이 지원하였다고 한다(무려 6대 1의 경쟁률..). 평소에 너무나 가고 싶었던 컨퍼런스였기에 매일 당근마켓을 모니터링 하며 양도권을 얻고자 노력했다. 인프콘을 사흘 정도 남겨두고 너무나 감사하게도 어떤 분이입장권을 양도해주셔서 운이 좋게도 8월 15일에 인프콘에 다녀올 수 있게 되었다. 앞으로 있을 인프콘도 경쟁률이 높을 거 같은데, 1차로 참가자에 선정되지 .. 2023. 8. 19.
728x90