목록분류 전체보기 (84)
과거의 내가 미래의 나에게
GIS 파일을 다룰 일이 좀 생겼는데 각 포맷이 뭘 의미하는지도 모르고 작업하기 싫어서 시간 내 파일 포맷 간단하게 익혀본다. .shpshapeFile의 준말로 공간 데이터 표준 포맷이다. ESRI라는 회사가 개발한 GIS 용 벡터데이터 저장형식으로, shp 파일 단독으로 사용하진 않고 동일한 폴더에 확장자가 다른 동일 이름의 다수의 파일로 구성되어있다. 확장자명설명.shpshape file. 점선면같은 좌표데이터를 저장한 공간 정보의 핵심 파일. 벡터의 형태로 표현되어 있다..shxshape index file. 빠른 검색을 위한 인덱스 파일.dbfdatabase file. 속성 데이터(이름, 코드 등)를 가진 테이블로 저장된 db 파일 이외에 .prj(좌표계 저장 파일), xml(shp파일의 메타데..

저번에 MCP가 무엇인지 톡톡히 알았고 오늘은 간단한 예시를 직접 해볼 예정이다.mcp 서버 자체를 만들기보다는 만들어진 mcp 서버를 쓸 일이 더 많을 것 같기에 클로드를 통해 이미 있는 mcp 서버 내용을 붙여서 사용해볼 예정이다.예시는 해당 영상을 참고하여 진행했고 아주 간단한 예시라서 10분만에 금방 따라했다. mcp 진짜 맛만 보고 싶다면 따라해봐도 될 것 같다! 목적: file system mcp 서버를 통해 특정 폴더 안에 있는 파일들의 이름을 클로드를 통해 변경시키기 1. 클로드 데스크롭 설치250420 기준으로 mcp 서버와 통신 할 수 있는 호스트는 제한적이기에 대표적으로 사용하는 클로드 데스크톱으로 사용했다. 현재 기준으로 웹 버젼은 안되고 데스크톱만 가능하니 알아두자! 2. 클로드..
오늘은 요즘 핫한 이슈인 MCP 관련해서 배워볼까 한다. 원래 새로운 이슈가 나오면 겉만 핥고 넘어가는 경우가 많았는데 스터디원들과 같이 있으니 이렇게 깊게 알아볼 수 있는 기회가 생겼다. 얼핏 보더라도 앞으로 자주 쓰일 것 같기도하고 내가 관심있는 생산성에도 걸쳐있기에 공부를 안할 이유는 없는 듯 하다. MCP란?Model Context Protocol의 준말로 AI 모델이 컨텍스트를 잘 이해하여 필요한 액션을 취할 수 있도록 도와주는 프로토콜이라 한다. 이런 직역으로는 MCP가 뭐인지 한 번에 설명할 수 없어서 좀 더 단어를 풀어보는 과정을 거쳤다.* Model: AI 모델을 나타내는 것으로 GPT나 Claude 등 생성형 언어 모델들을 의미한다. * Context: 직역하면 맥락, 문맥이란 뜻으로..
흔히 회사에서의 성장은 문제 해결을 위한 구체적인 업무지시를 받고 결과물을 만드는 것에서 시작된다. 이를 충분히 수행해내는 사람이 되면 이젠 문제 자체를 받아 이를 해결하기 위한 구체적인 업무를 도출해내는 단계로 나아가고, 이조차 문제없이 수행할 수 있게 된다면 이젠 문제를 직접 찾아내고 더 나아가 가치를 창출해내기 위해 고민해야하는 위치로 도달하게 된다.나는 한 조직에 오래 머물렀기 때문인지 어쩌다보니 위의 과정을 순식간에 거쳐 벌써 가치를 창출해내는 위치에 서있게 되었다. 이 덕분에 빠르게 성장할 수 있었다만 아쉽게도 경험 많은 이들을 직접 보며 배울 기회는 적었던 것 같다. 절대적인 경험의 양이 부족하니 요즘들어 어떻게 해야할지 고민하는 나날들이 많아지고 있다.문제가 있는 부분이 보이기는 하는데 이..
OL을 필요한 것만 쓰다보니 있는지도 없는지도 몰라서 주말동안 시간내서 몇 개만 문서를 보고 쓸 수 있는 내용을 정리했다. New LayerclassName레이어의 CSS 클래스 이름을 지정한다.opacity레이어의 투명도를 조절한다. 0과 1이 있다.visible레이어를 가시성을 조절한다. boolean으로 false 시 아예 렌더링 자체가 되지 않는다. extent레이어가 표시될 범위를 [minX, minY, maxX, maxY] 형식의 배열로 설정한다. zIndex레이어가 쌓이는 순서를 조절한다. 높을수록 상위 표시 minResolution레이어가 표시될 최소 해상도를 설정. 이 값보다 해상도가 낮으면 레이어가 보이지 않는다. 보통 특정 배율에서만 보이게 하고 싶을 때 사용하거나 한다. ma..
기능 컴포넌트를 만들 때 컴포넌트의 데이터를 가져가거나 변형시키는 등 외부에서 컴포넌트 내부로 접근하는 경우가 잦다. 이 때 컴포넌트의 데이터나 함수에 접근하는 방법은 생각보다 다양한데 이를 정리해보려한다. 1. Props부모가 자식에게 데이터를 전달할 때 사용한다. 자식은 props를 직접 수정할 수 없고 단지 받아서 읽기만 할 뿐이다.이를 사용하는 경우는 보통 부모가 자식에게 데이터를 단방향으로 전달할 때인데 자식이 이 데이터를 딱히 변경하지 않고 사용만 할 때 주로 쓴다. 부모 메시지: {{ message }} 2. Emit자식이 부모에게 데이터를 전달할 때 사용한다. 부모는 @event 리스너를 통해 이벤트를 감지하고 데이터들을 업데이트 하거나 조작할 수 있다.이를 사용하는 경우는 자식이 부..
작년 10월쯤 지도 공부를 조금 해놨는데, 그 조금이 뭐라고 요새 개발하는데 너무 도움이 된다. 근데 저번 글들이 다소 구성이 조악해서 아마 나중에 다시 건드려야 할 것 같다. 지도 컴포넌트를 만들다보니 전체적으로 크게 구조를 잡고 들어가는 식으로 하려다가 너무 모르는 것이 많아서 일단 기능을 구현하면서 익히고 다시 컴포넌트화를 시켜야 할 듯 하여 먼저 다짜고짜 기능을 구현해보려한다.오늘은 지도 위에 마커를 띄운 것과 클러스터를 생성한 것에 대해 기록하고 추가적으로 정리할 것이 있다면 해보려한다. Marker 띄우기지도 위에 다양한 마커를 띄우고 개별 마커를 클릭하면 해당 마커의 스타일이 변경되는 작업을 기록해둔다.마커는 지도 위에 위경도 좌표를 기반으로 하여 점 객체가 띄워진 형태다. 해당 점 객체..
지난 시간까지는 비동기가 필요로 하게 된 배경 및 JS에서 비동기적인 처리를 하는 방법에 대해서 알아보았다. 오늘은 이러한 비동기적 처리를 개발자들이 어떻게 코드로 처리하게 되는 지 정리해볼 것이다. AJAX 이전의 비동기 처리 방법AJAX 이전에는 비동기 함수 자체가 적었다. 기껏해야 타이머 함수나 이벤트 핸들러정도일까? 그 때는 HTTP 요청조차 동기적으로 진행했기에 비동기 처리에 대한 필요성은 더욱 부각되지 않았다. 따라서 비동기를 처리하는 방법은 태스크 큐와 이벤트 루프를 통한 콜백 함수의 실행으로 구성되어 작업되었다. 그렇기에 초기 비동기 함수들은 애초에 인자에 콜백 함수를 입력하도록 되어있는 듯 하다. AJAX 이후의 비동기 처리 방법의 발전1. 비동기 처리 방법: 콜백 함수AJAX라는 ..