티스토리 뷰

[기획]

템플릿화와 하드코딩

완벽한 장면 2024. 12. 30. 11:59

1) 온라인 서비스의 운영 방식

온라인 서비스 구조

  • 데이터의 입력, 처리, 출력의 구성을 통해 운영됨.
  • 사용자가 접속하는 다양한 기기(브라우저, 앱 등)에 데이터를 정확하게 전달하여 화면에 표시되도록 함.
  • 웹 브라우저는 서버에서 받은 코드를 해석하여 화면에 그림처럼 표시.
  • 앱은 설치된 구조 안에 데이터를 주입하여 표시.

 

주요 데이터의 형태

1) Y/N : 특정 상태 여부를 판단.

2) 01, 02, 03, 04: 상태 변화 구분을 위한 숫자 값, 예를 들어 시간에 따른 상태 변경.

3) Sequence: 이전 값에 +1을 하여 새로운 번호 생성, 반복적으로 생성되는 데이터에 사용 (예: 이벤트 ID).

4) TEXT: 지정된 텍스트 값, 다양한 언어와 코드 조합 가능.

 

 

기획 시 고려 사항

1) 확장성을 고려한 기획

- 상태 값의 확장 가능성을 염두에 두어야 한다. 초기 기획에서 확장성을 고려하지 않으면, 나중에 상태 값이 추가될 때 시스템 수정이 필요해진다.

 

2) 코드화 논의 필요성

- 기획 시 개발자와 협의하여 데이터 값을 코드화할지 여부를 결정한다.

- 코드화는 확장성, 관리 편의성, 쿼리 사용의 효율성을 높여준다.

ex 상태 값을 텍스트 형태로 고정하지 않고 코드화하면, 다른 시스템에서 데이터를 쉽게 참조 가능하다.

 

3) 개발자와의 협의 포인트

  • 데이터 저장 방식에 대한 논의: 데이터 저장 시 확장성과 관리의 용이성을 고려하여 저장 방식에 대한 협의를 진행.
  • 향후 확장 가능성을 염두에 두고 기획된 내용이 제대로 구현될 수 있도록 개발자와 소통하여 최적의 결과물 도출.

 

2) 하드코딩과 시스템 템플릿화

(1) 하드코딩: 조건식 없이 특정 규칙으로 임의의 값이나 출력값을 고정하는 방식이다.

- 변경과 확장이 어려워 유지보수에 불리하다.

 

(2) 시스템화: 로직을 통해 데이터를 동적으로 가져와 처리하는 방식으로, 데이터 기반으로 자동화가 가능하여 유연하고 확장성 있음.

 

예시

  • 방법 1: 변수 a는 이벤트명, b는 이벤트 기간으로 정의하여, <a>가 <b> 기간 동안만 운영되도록 설정.
  • 방법 2: <head><title>이벤트명</title></head>처럼 시작과 종료 시점을 명시하여 이벤트 타이밍을 자동으로 조절하거나, source 안에 타이머를 내장하는 방법.

 

개발 시 고려 사항

1) 데이터 중심의 개발
: UI 기획이 아닌 데이터 로직을 바탕으로 개발하여 프론트엔드와 백엔드 모두 데이터에 대한 인식을 갖고 접근하게 된다.

 

2) 어드민/백오피스 데이터 저장
: 데이터를 저장할 때는 데이터의 최종 출력 형식을 고려해 필요한 데이터를 등록 프로세스에서 결정한다.

 

 

하드코딩의 문제점

- 변수 지정 없이 텍스트로 데이터를 관리하면 로직에서 불러와 사용하기가 불편하다.

  • 예를 들어, 상품 상태를 텍스트로 “특가”로만 구분할 경우 변경이나 확장이 어려워져, 새로운 기능을 추가할 때마다 개발이 필요하다.
  • 반면, 상태값을 코드(예: 01, 02, 03)로 관리하면 변경과 확장이 용이하여 다른 로직에서도 쉽게 활용이 가능하다.

 

정리하자면 하드코딩은: 고정된 규칙과 값만 사용하여 유지보수와 확장이 어렵고, 시스템화는 로직에 의해 데이터를 동적으로 처리하여 자동화 및 템플릿화가 가능하며, 효율성과 확장성 높음.

728x90
반응형

'[기획]' 카테고리의 다른 글

콘텐츠 기반 벤치마킹을 활용한 기획 과정  (0) 2025.01.03
벤치마킹과 리서치의 중요성  (0) 2025.01.03
PO와 PM  (1) 2024.12.24
UX 리서처와 UX 라이터  (0) 2024.12.24
프로덕트 디자이너(Product Designer)  (0) 2024.12.24
Comments
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
250x250