[CS] "나누기 0"은 왜 어떤 언어에선 에러가 나고, 어떤 언어에선 무한대(Infinity)가 될까?
·
Development
개요아래 코드의 실행 결과는 뭘까?public class Main { public static void main(String[] args) { int a = 5, b = 0; try { System.out.print(a / b); } catch (ArithmeticException e) { System.out.print("출력1"); } catch (ArrayIndexOutOfBoundsException e) { System.out.print("출력2"); } catch (NumberFormatException e) { System.out.print("출력3"..
[React] 배포 후 간헐적으로 개발 서버에서 화면 에러가 뜨는 이유
·
Development
기록용으로 찾아보며 정리한 글로, 해당 내용에 대해 틀린 내용이 있을 수 있습니다! 틀린 내용은 지적해 주시면 감사하겠습니다:)개요개발 서버에 배포하면 간헐적으로 모든 라우터에서 에러바운더리가 발생하고 화면이 뜨지 않는 문제가 종종 발생하였다.새로고침 시나 라우터 이동 으로는 해결되지 않고 모든 페이지에서 발생했다. 그리고 브라우저에서 캐시 비우기 및 강력 새로고침을 하면 정상 동작하였다. 강력 새로고침만 했을 때는 동작하지 않음.즉, 캐시 비우기가 핵심인데 왜 이런 건지? 왜 개발 서버에서만 발생하고 로컬 환경에선 괜찮은 건지 이유가 궁금했다.강력 새로 고침: `Cmd + Shift + R` 예를 들어 스타일시트 수정이나, 이미지 수정은 크롬 브라우저에서 일반 새로고침 시에 캐시 때문에 반영이 안 되는..
[Web] 브라우저 “탭( Tab )”을 노리는 공격, Tabnabbing
·
Development
정보처리기사 실기를 공부하면서 브라우저 탭(Tab) 관련 보안 용어를 정리했습니다. 실무 경험담이 아니라, 문서/자료를 기반으로 정리한 글입니다. 아래 용어 중에서, 올바른 용어를 고르는 문제였는데, 정답은 Tabnabbing이다. 나머지는 문맥적으로 조합하여 부를 수는 있으나, 실제로 통용되는 정확한 정식 용어는 아닌 것으로 보인다. 문제에 출제된 단어와 문맥상으로 해석한 것은 아래와 같다.용어 요약용어내용표준성Tabnabbing (Reverse Tabnabbing)target="_blank"로 연 탭이 window.opener를 통해 원래 탭을 피싱 페이지로 바꿔치기널리 쓰임Tabjacking / Tabhijacking스크립트/확장프로그램이 탭의 콘텐츠/히스토리/포커스를 가로채거나 바꿔치기혼용Tabs..
[C언어] return 0, 그리고 0과 1의 진짜 의미
·
Development
오랜만에 C언어 보기 👀정보처리기사 실기 프로그래밍 언어에는 C언어, 자바, 파이썬이 나온다. 고로 두루두루 알고 있어야 함!! C언어는 대학교 1학년 때 배운 이후로 다 까먹은.. C언어의 return 0은 왜 True가 아닐까?return 0;이 “정상 종료”라는 건 알고 있지만, “그럼 0이 True인가?”, “if문에서 0이면 실행되나?” 같은 궁금증이 문득 들었다. 이 글은 C언어와 Shell에서 0과 1의 의미를 설명한다. C에서의 0과 1 (False / True)값의미조건식에서의 동작0거짓(False)분기 진입 안 함0 이외의 모든 값참(True로 간주)분기 진입if (0) puts("실행 안 됨");if (1) puts("실행 됨");if (-5) puts("이것..
[macOS] port 빠르게 종료하기
·
Development
여러분은 포트 충돌이 일어나면 어떻게 하나요? 왜 Spring Boot는 "같은 포트(기본 8080)"만 쓰나?Port 8080 was alerdy in use.Spring boot 쓰다 보면 지겹도록 보는 에러입니다.. IntelliJ를 강제 종료하거나, IDE가 예기치 않게 종료되었을 때 백그라운드 프로세스에서는 기존 포트가 이미 가동 중이므로, 충돌이 나는 거죠.물론 mySQL에서도 자주 보는 에러입니다.💦 Spring Boot는 서비스 서버입니다. 클라이언트/리버스 프록시/웹훅/OAuth 콜백 등 외부에서 고정 주소로 붙어야 합니다.포트가 이미 점유되어 있으면 실패(fail-fast) 하는 게 맞습니다. 자동으로 다른 포트로 도망가면 모니터링/프록시/헬스체크가 전부 틀어집니다. `lsof -i ..
[Cursor] Figma MCP 연결하기 (더이상의 반복 작업은 지양한다)
·
Development
기획을 Figma에서 많이 보다 보니, 매번 찾는 게 번거로웠다. 왔다 갔다 왔다 갔다 껐다 켰다 무한반복 Figma mcp를 연결하면 해소될까? 싶어서 설정 시작.https://www.figma.com/community/plugin/1485687494525374295 Figma MCP 설치https://github.com/grab/cursor-talk-to-figma-mcp GitHub - grab/cursor-talk-to-figma-mcp: CTTF: MCP integration between Cursor and Figma, allowing Cursor Agentic AI to communicatCTTF: MCP integration between Cursor and Figma, allowing ..
[ChatGPT] 이미 구독 중이라면, 3개월 동안 Plus 50% 할인 받기
·
Development
개요요새 `ChatGPT` 많이 쓰시죠? 저도 구독한 지 2년 이상 된 것 같아요. (주륵)없으면 불편한데 구독하자니 요샌 구독료가 만만치 않은 현실..`Youtube`, `Google`, `Netflix` 등.. 단순 구독뿐만 아니라 ai 구독 노예가 되.. 현재 회사에서는 `Cursor business plan`을 지원받고 있고, 최근 개인적으로 `Gemini`도 이용하고 있는데요,이러다 보니`ChatGPT`를 계속 이용할지 고민이 되더라고요. 물론 오늘 기준(2025.09.29), 최근 답변 품질은 `GPT5`가 제일 좋았어요!일상뿐만 아니라, 개발에 있어서도 품질 답변이 제일 좋다고 느꼈습니다.(기준: #Gemini 2.5, #cluade-4-sonnet, #GPT5) 단순 웹리서치에는 아직까진 ..
[React-Query] queryFn에서 언랩(unwrapping) 하는 것과 select 옵션으로 언랩하는 것의 차이
·
Development/React
React Query에서 `queryFn`에서 언랩(unwrapping) 하는 것과 `select` 옵션으로 언랩하는 것의 차이를 정리합니다. 언랩(unwrapping)이란?"언랩(unwrapping)"은 일반적으로 감싸여 있거나 포장된 데이터를 풀어내어 원하는 실제 값이나 내용을 추출하는 과정을 말한다.React Query나 API 호출에서 언랩은 보통 API 응답 객체 내 여러 계층 중 실제 필요한 데이터 부분만 꺼내서 사용하는 것을 의미한다. 언랩(unwrapping)의 의미예를 들어, API 응답이 다음과 같이 복잡한 구조일 때:{ "status": "success", "data": { "user": { "id": 1, "name": "Alice" } }, "message": "OK"..