현재 웹게임을 개발중입니다. 서버에서 보내주는 데이터는 아이템의 key값만 보내주고 클라에서 key값에 대응되는 아이템을 가져오는 방식입니다.
enum ItemCode { ITEM_POSSION_ORANE = 1, ITEM_POSSION_RED = 2, ITEM_POSSION_BLUE = 3, ITEM_GUN = 4, ITEM_GUN_AK47 = 5 }서버에서 전달받은 아이템 코드의 아이템의 가격, 비용, 공격력 등등은 서버에서 전달해주지 않고 있어, 클라이언트에서 선언해주어야합니다. Map객체의 각각의 아이템 코드마다 가격, 공격력, 이미지 등등을 지정해주고, Map에서 key값으로 아이템 객체를 가져오는 방식입니다.
const gunMap: Map<ItemCode, GUN> = new Map(); gunMap.set(ItemCode.ITEM_GUN, new GUN('name', 10, 1000, 'imageUrl'));요런 방식으로 쭉 나열한 상태입니다. 아이템의 개수가 매우 많아 파일의 크기가 너무 커진 상태인데 타입스크립트이다 보니, 타입지정과 eslint volar로 인해 큰 파일이다 보니 코드 수정시 vscode의 버벅임이 심한 상태입니다.
서버는 건들일 수 없다는 조건인데, 어떤 방식으로 해결해 나가는게 좋을까요?
webpack 쓰셈
웹팩은 개발 완료 후 배포할 때 코드길이 압축 & 난독화 하려고 사용하는거일텐데, 요건 개발경험의 문제라.. ㅠ
아이템별로 파일을 좀 나눠보면 어떨까요?
아 그게 문제가 아니라 eslintrk answpspdy.
큰 정적파일에다가 뭔가를 하는게 문제였네요.
만약 코스트가 커지면 이렇게 할 것 같습니다. 1. 아이템 관련 정적파일들을 모노레포로 관리해요 (의존성을 관리해야하니까 lerna같은 툴을 쓸 수 있겠어요) 2. 아이템 관련 정적파일들은 eslint 체크나 여러 체크를 '빌드'할 때만 진행하도록 수정해요. (vscode가 쓰지 않도록해요) 3. 개발중엔 staged된 파일만 점검하도록 툴을 바꿔보세요.