DB 컬럼은 user_login_id, 자바 필드는 userLoginId, URL은 user-login-id — 같은 이름이 계층마다 표기법만 다릅니다. 테이블 정의서에서 컬럼 목록을 복사해 DTO 필드로, API 명세의 키를 상수명으로 바꾸는 단순 반복 작업을 여러 줄 일괄 변환으로 끝냅니다.
| 표기법 | user_login_id의 변환 | 주 용도 |
|---|---|---|
| camelCase | userLoginId | Java·JS 변수/필드 |
| PascalCase | UserLoginId | 클래스·타입 이름 |
| snake_case | user_login_id | DB 컬럼·Python |
| SCREAMING_SNAKE | USER_LOGIN_ID | 상수 |
| kebab-case | user-login-id | URL·CSS 클래스·파일명 |
| Title Case | User Login Id | 문서 제목·라벨 |
케이스 변환의 실제 난점은 붙이는 쪽이 아니라 쪼개는 쪽입니다. parseHTTPResponse2를 어떻게 단어로 나눌 것인가 — 이 도구는 연속 대문자 약어(HTTP)·숫자 경계·혼합 구분자를 이해하는 자체 토크나이저로 분해한 뒤 목표 표기로 재조립합니다. 그래서 HTTP2Server·user_id-Value 같은 지저분한 입력도 일관되게 변환됩니다.
parseHTTPResponse2 → 분해: parse / HTTP / Response / 2
→ snake_case: parse_http_response_2
→ kebab-case: parse-http-response-2
취향 문제가 아니라 각 계층의 제약이 만든 관례입니다. DB가 스네이크를 쓰는 것은 식별자 대소문자를 구분하지 않(거나 소문자로 접는) 전통 때문이고 — 대소문자로 단어를 가를 수 없으니 언더스코어가 경계가 됩니다. URL·파일명이 케밥을 선호하는 것은 소문자 관례 속에서 하이픈이 가장 안전한 구분자이기 때문입니다. Java·JS의 카멜, 클래스의 파스칼, 상수의 대문자 스네이크는 언어 커뮤니티의 오랜 컨벤션입니다. 관례를 알면 "어느 방향으로 변환할지"가 자연스럽게 정해집니다.
주문_취소시_재고가_복원된다류의 메서드명 초안을 만듭니다.userId·user_id·USERID)를 한 표기로 몰아 수집 스키마 초안을 만듭니다. 여러 줄 일괄 변환이라 수십 개도 한 번에 끝납니다.HTTP가 Http로 정규화됩니다. 일관성이 목적이며, 조직 컨벤션이 다르면 결과에서 해당 단어만 수동 조정하세요.user2name은 user / 2 / name으로 분해됩니다. 숫자를 앞 단어에 붙이고 싶은 경우(user2)는 변환 후 확인이 필요합니다.userID처럼 관례가 섞인 입력은 userId로 정규화되므로, 조직이 ID 표기를 고집한다면 그 단어만 되돌리세요.class)까지 검사하지는 않습니다. 컴파일러가 최종 심판입니다.ID·URL 같은 연속 대문자는 하나의 약어 단어로 분해된 뒤 목표 표기 규칙을 따릅니다.a__b) 어떻게 되나요?a / b 두 단어로 분해합니다 — 이중 언더스코어가 이중으로 남지 않습니다.변환한 필드 목록으로 JSON 뼈대를 만들려면 포맷터의 필드→JSON으로 이어가세요. 변환 전후 목록의 차이 확인은 Diff 비교가 빠르고, 목록에 붙은 앞뒤 공백은 인코딩/변환의 공백 정리가 먼저 걷어냅니다.
DoffKit(도프킷)은 개발자가 매일 반복하는 텍스트·코드 손작업을 한 화면에 모은 웹 툴킷입니다. JSON·SQL·XML 포맷터(XML은 문서·트리 뷰어 겸), 들여쓰기 정리, 느슨한 객체 정규화, 인코딩 변환과 암복호화, 텍스트 비교(Diff), 정규식 테스트, 케이스 변환, 해시·로직 지문, 스택트레이스 정리, URL 파싱까지 자주 쓰는 도구를 설치나 회원가입 없이 브라우저에서 바로 씁니다.
모든 계산과 변환은 접속한 기기(브라우저) 안에서 끝나며, 입력한 코드·데이터는 외부 서버로 전송되지 않습니다. 사내망·보안이 민감한 환경에서 온라인 포맷터에 코드를 붙여넣기 꺼려질 때를 위해 만들었습니다. 아래에서 각 도구의 쓰임과 자주 묻는 질문을 정리했습니다.
한 줄로 뭉친 JSON이나 SQL을 붙여넣으면 사람이 읽을 수 있게 정렬하고 구문을 색으로 구분합니다. XML은 포맷에 더해 문서 뷰 — 꺾쇠·태그 없이 제목·라벨:값·표로 읽는 화면 — 와 접기·검색이 되는 트리 뷰를 제공해, 서버 설정 파일처럼 긴 XML을 훑기 좋습니다. 필드→JSON 서브탭은 id·login처럼 필드 이름만 줄줄이 붙여넣으면 키를 채운 JSON 뼈대를 만들어 주고, 값은 표에서 채웁니다. 전문(고정길이) 모드로 바꾸면 레이아웃(이름·길이·타입)에 맞춰 문자는 공백, 숫자는 0으로 패딩한 TCP 전문을 자동 조립합니다 — 길이 기준은 EUC-KR·UTF-8 바이트, 문자 수 중에서 고릅니다. 느슨한 객체 탭은 따옴표가 빠진 키나 트레일링 콤마처럼 표준을 벗어난 데이터도 정규화해 줍니다.
Base64·URL 인코딩을 양방향으로 바꾸고, JWT 토큰을 사람이 읽을 수 있게 디코딩합니다. 암복호화는 브라우저 내장 Web Crypto 표준을 써서 키와 평문이 기기 밖으로 나가지 않습니다.
두 텍스트나 코드의 바뀐 부분을 줄·글자 단위로 강조해 비교합니다. 정규식 테스터는 패턴과 대상 문자열을 넣으면 일치 위치를 실시간으로 보여주고, 자주 쓰는 패턴 치트시트를 제공합니다.
변수명을 카멜/스네이크/케밥으로 바꾸고, 문자열의 SHA-2 해시와 코드의 로직 지문을 계산합니다. 지저분한 스택트레이스에서 원인 체인을 정리하고, URL의 쿼리 파라미터를 표로 풀어냅니다.
네, 모든 도구를 무료로 쓸 수 있습니다. 운영 비용은 페이지에 표시되는 광고로 충당합니다.
아니요. 브라우저로 페이지를 열면 바로 쓸 수 있고, 로그인이나 프로그램 설치가 필요 없습니다.
아니요. 포맷·비교·암복호화 등 모든 처리는 접속한 기기의 브라우저 안에서 이뤄지며, 입력한 내용은 외부 서버로 전송되지 않습니다.
페이지를 처음 여는 데는 인터넷이 필요합니다. 다만 도구의 계산·변환은 접속한 기기 안에서 처리되어 입력값이 외부로 나가지 않습니다.
테마(다크/라이트)와 마지막으로 연 탭 같은 화면 설정만 브라우저 localStorage에 저장됩니다. 입력한 코드·텍스트 자체는 저장하지 않습니다.
Google 애드센스 광고가 표시될 수 있으며 광고 목적의 제3자 쿠키가 사용될 수 있습니다. 자세한 내용은 페이지 하단 "개인정보 안내"에서 확인할 수 있습니다.