분류 전체보기 289

Cursor AI vs Continue.dev

AI 기반 개발 도구가 빠르게 진화하면서, Cursor AI와 Continue.dev는 생산성 향상을 원하는 개발자들에게 주목받고 있다. 두 툴 모두 기존의 코드 편집기를 기반으로 하며, GPT 모델을 연동해 코드 생성, 리팩토링, 디버깅을 지원한다. 하지만 그 접근 방식과 개발 경험은 확연히 다르다.1. 개요도구기반 플랫폼주요 기능사용 방식Cursor AIVSCode forkGPT 기반 코드 작성, 리팩토링, 파일 검색독립 설치형 에디터Continue.devVSCode 확장GPT 기반 대화형 코드 분석, 수정, 생성확장 프로그램2. Cursor AICursor는 VSCode를 기반으로 하지만, 단순한 확장이 아닌 별도의 독립 IDE로 구성되어 있다. OpenAI API 키를 기반으로 작동하며, GPT-..

카테고리 없음 2025.04.07

커서 AI를 이용해서 코드를 잘 짜는법.

시작하기전, 프로젝트 분석을 먼저 요청하자 (이미 진행중인 프로젝트 혹은 유지보수 프로젝트)지금 열려있는 프로젝트 구조와 소스파일들을 먼저 분석하여 작업준비를 하자. 등등 공식 Docs 사이트 "주소" 를 잘 활용하자.채팅으로 내용 작성할 때, 해당 "주소" 를 던저주면, 공식 문서를 읽고 코드를 짠다.기획 문서나 이미지를 활용하자.기획 문서 자체를 채팅창에 업로드, 혹은 목업 UI 이미지나, 목업 기획 이미지를 올리면, 분석해서 코드를 짠다.순차적으로 접근하자한번에 끝낼 생각 하지 말고, 순차적으로 개발할 수 있도록 지시를 하자. 정리된 내용으로 지시를 하자. 최대한 순차적으로, 명확하게 지시하자. (서술형 x) `다음의 내용을 참고하여 기능을 구현해 주세요. xxxxyyyyzzzz

카테고리 없음 2025.04.02

머지않아 사이버 펑크 시대가 올것 같다.MCP

GPT 가 나온지 몇년 되지 않아 드디어 이런 시대가 왔다.MCP를 통해 많은것들을 할 수 있고, Sci-fi 영화에서 보던게 가능한 시대가 점점 다가옴을 느낀다.  MCP를 쉽게 설명하자면, GPT와 채팅하듯이 대화를 하면서 내 컴퓨터 파일도 관리해주고 (가장 큰 용량 파일 찾기, 파일명 변경하기 등), 블렌더랑 연결해서 모델링도 해주고, 유니티와 연결해서 게임도 만들 수 있다. 이미 현재 그렇다. 즉, 채팅으로 상상하는 모든 작업이 가능하다. 물론 현재는 초기 단계이고 좀 복잡한 부분이 있지만, 나중에는 휴대폰 쓰는것 처럼 통합되어 편리하고 간편해 질거 같다.  음성으로 말만 하면 앱도 만들어 주고, 음악도 만들어 주고, 이걸 다 섞어서 게임도 만들어 주는 세상이 이미 왔다고 봐야한다. 지금이야 MC..

카테고리 없음 2025.04.02

커서 AI 무섭다.

개발자로서 다양한 IDE와 도구들을 사용해보았지만, 최근에 발견한 Cursor AI는 정말 미쳤다. 진짜 개발자가 할일을 다 해주고, 단지 관리감독만 해주면 된다.  그냥 채팅하듯이 차근차근 알려주면 척척 해낸다.주요 장점1. 코드 자동완성이 정말 똑똑함 🧠def calculate_total(items): # Cursor AI가 여기서 적절한 코드를 제안 return sum(item.price for item in items)일반적인 자동완성과는 차원이 다르다. 문맥을 이해하고 전체 코드 블록을 제안해주는데, 실제로  작성하려던 로직과 거의 일치하는 경우가 많았다. 아니 더 나았다. 거기다가 각종 공식 사이트의 docs 페이지 링크를 걸어주면, 알아서 문서를 읽고 기능도 구현한다...2. 리..

카테고리 없음 2025.04.02

[WebGL] PWA 빌드시 최초 클릭할때 전체화면 변경 방지

PWA로 빌드한 웹페이지를 방문했을때, 첫 마우스 클릭을 하면 전체화면으로 전환되어 버린다. 내 경우 전체화면으로 전환할 이유도 없지만, 전환하였을때 input field 에 문자열을 입력하면 역순으로 입력되는 버그가 있었다. 아마 한글 입력을 위한 추가 패키지에서 버그가 발생한듯 한데, 함부러 건들고 싶지 않아서 전체화면 자체를 막는 방법을 생각했다.   WebGL 빌드 결과물 폴더 -> Build 폴더 -> web.loader.js 또는 build.loader.js 를 편집기로 열기검색에서 fullScreen 으로 검색 -> 아래의 문자열을 삭제hasFullscreen:!!document.body.requestFullscreen||!!document.body.webkitRequestFullscreen..

Unity 2025.02.27

자바스크립트에서 타임리프 사용하기 (+onclick 인자 전달)

자바스크립트에서 타임리프 변수를 사용하기 위해선 다음과 같이 하면 된다.   만일 fragment 형식으로 페이지 구성을 할 경우, fragment 에서 스크립트를 추가 해도, 메인페이지에 추가 안될 수가 있다. 메인페이지에서 div 태그에 th:replace 를 이용하여 fragment를 호출 할 경우, 단순히 div 태그 역할을 하기 때문이다. 이럴경우 메인페이지 쪽에 javascript를 작성하든지, header fragment를 만든 후 javascript를 작성하고, header를 치환 하든지 해야 한다.  onclick에 타임리프 인자 전달하기태그에 커스텀 어트리뷰트 생성th:어트리뷰트명="${타임리프 변수명}"onclick 인자로 전달onclick = "함수명(this.getAttribute..

Backend/SpringBoot 2024.12.18

WebGL 빌드세팅 (유니티 6 내용 추가)

이미지 압축PC : DXT 또는 Crunched DXT모바일 : ASTC오디오Decompress On Load (초기 로딩시 압축 해제)플레이어 및 빌드 세팅Gzip 압축.net framework 는 2.1 버전 선택Code Optimization은 Disk size with LTO 선택IL2CPP 옵션 : faster runtimeManaged stripping Level : High 미사용 코드 삭제하는 기능Optimized Mesh 켜기Debug symbols 끄기Enable Exceptions는 None 또는 Exceptions only아래의 Target WebAssembly 2023을 켤 경우 None 설정은 안된다 (현재)Target WebAssembly 2023 켜기 (Unity 6 에만 있..

Unity 2024.12.03

전반적인 프로젝트 구조

기본 구조아래의 4개의 구성은 모두 java 로 생성 Entity 생성DB 테이블과 1:1 매칭되는 클래스 Repository 생성Entity를 활용하여 DB에 저장, 혹은 값 검색Service 생성Repository의 DB 저장, 혹은 검색 함수를 직접적으로 호출하는, 한번 더 묶는 개념의 클래스Service 생성자에서 Repository를 인젝션 받을 수 있도록 작성Controller 생성API 를 매핑하고 , 매핑된 함수마다 Service 를 통해 비즈니스 로직에 맞는 항목을 클라이언트로 리턴Controller 생성자 에서 Service를 인젝션 받을 수 있도록 작성  DTO 활용성능에 영향을 미친다고 생각할 경우 DTO를 사용 할 수 있음. 그외에 Entity 항목을 직접 노출하기 싫을 경우도 사..

Backend/SpringBoot 2024.11.26

전반적인 프로젝트 구조

다양하게 사용할 수 있겠지만, 기본적인 구조만 생각해 보면 MVC 패턴에 대입을 해볼 수 있을듯 하다.  구조를 정하지 않거나 모르면, 구성요소를 다 알고 있어도 어디에 어떤 항목을 사용해야 할지 몰라, 프로젝트 시작 단계 부터 난감 할 수 있다. View 대응각 화면 혹은 각 화면에 속한 모듈별로 소스코드를 나눠 구성한다. 두 군데 이상에서 사용되는 UI 요소는 모듈로 나누어 재사용 하는게 좋다.View에 해당하므로 css 파일과 연계가 필요하다. css 도 View 소스파일과 1:1 매칭이 되면 어떨까?  Model 대응커스텀 hook 을 생성하여 마치 클래스를 정의하듯 각 항목별로 클래스 정의간단한 처리 함수들을 포함 할 수 있음. Control 대응컨트롤 클래스를 두고, 비즈니스 로직에 따라, ..

FrontEnd/React 2024.11.26

[CSS] @media

장치의 특징을 파악하여 알맞은 css를 적용하기 위해 사용됨. 예를들어 스크린 사이즈, 스크린 orientation 등을 통해 조건에 맞는 css를 반영함. 연산자를 통해 if 문처럼 처리 가능.  연산자and : and와 동일, : or 역할not : ! 역할only : 모든 조건문이 참일 경우만 동작 유형screen : 화면print : 프린트 미리보기all : 모두speech : 마이크 등연산자에 사용되는 속성값width, heightmax-width, min-width 처럼 조합하여 가능orientationlandscapeportraithover 사용 예@media screen and (min-width : 1000px) { html{ display: grid; place..

FrontEnd 2024.11.26