-
클라이언트 개발하다 보면 많은 리소스 관리를 필요로 한다.
메시지, 버튼명, 이미지 경로, 각종 설정 값등 무수한 리소스를 관리하게 된다.
일반적으로 그러한 리소스를 관리하는 방법은 두 가지가 있다.
일반적으로 클라이언트 앱 또는 웹을 만든다면
앱의 경우 Resources 폴더에 폰트 및 메세지, 이미지 등의 리소스를 넣어두고 사용할 것이다.
웹이라면 wwwroot에 css, image, sound, js 등의 리소스를 넣어둘 것이다.
필자는 이러한 개발 사항 중 메세지, 이미지 등의 리소스를 가급적 서버 측에서 전달받는 방식을 사용하라고 이야기하고 싶다.
물론, 즉각적인 반론이 있을 것이다. 시작 시간 문제이다.
어플레케이션이 시작할 때 위와 같은 리소스를 서버로부터 다운로드하여서 사용한다면 시작 시간에 영향을 줄 수밖에 없을 것이다. 그렇다면 아래와 같이 한다면 어떨까?
1. 메인 또는 로그인 화면까지는 정적(포함) 리소스를 사용한다.
2. 로그인 리퀘스트 시점에 서버에서 리소스 요청을 같이 한다.
위와 같이 한다면 장점이 무엇일까?
1순위는 당연히 이미지, 기타 리소스 사항에 대하여 배포 없이 수정할 수 있는 부분이겠다.
또한, SI 경우 똑같은 앱을 다수의 업체에 지원해야 할 경우 Layout은 변경되지 않으나 내부 이미지나 텍스트가 변경될 때
이러한 방법을 고려하면 상당 부분 배포에 대한 부담을 줄일 수 있다.
만약, 당신이 화면을 동적으로 만들 수 있다면, 데이터를 통해 화면 Layout 및 구조도 변경할 수 있을 것이다.
또한 가지 방법은 화면 리소스와 서버 리소스를 동일하게 관리하는 것이다.
우리가 서버측 CUD 작업을 하다보면 에러 메시지 출력이 아닌 다른 표현을 사용해야 할 때가 있다.
또한, 벨리데이션과 같이 클라이언트와 동일한 메세지 출력이 필요한 경우도 있다.
이러한 경우 클라이언트와 서버측 메세지를 동일하게 관리한다면 작업 시간을 많이 줄일 수 있을 것이다.
일부 기업에서는 이러한 메세지들을 관리하여 서버와 클라이언트 측을 동일하게 하여 에러나 벨리데이션에 대한 메세지 처리를 공통화하는 기업도 있다.
해보니 너무 편하더라.
위와 같은 리소스 관리 방법을 고려해 보길 바란다.
도움이 되길 바라며...
'프로그래밍' 카테고리의 다른 글
GUID대신 ULID를 사용해 보자. (2) 2024.10.23 AntdUI 소개 (1) 2024.10.22 Json을 통한 Kafka ObjectId에 대한 처리 (0) 2024.10.21 확장 메서드란? (0) 2024.10.21 ASP.NET CORE 8에서의 Exception 처리 (0) 2024.10.21