0Pricing
Vibe Coding · 강의

유지 관리 가능한 코드 만들기

나중의 내가 쉽게 변경할 수 있도록 구조를 잡습니다.

유지 관리 가능한 코드 만들기은(는) CoddyKit의 무료 Vibe Coding 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Vibe Coding 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Vibe Coding 강의에는 총 4개의 강의가 포함되어 있습니다.

이 강의의 일부는 아직 번역되지 않았으며 영어로 표시됩니다.

Code Is Read More Than It's Written

AI can generate a working app in minutes. But six weeks later, when you ask it to add a feature, messy code makes everything slower — for both you and the AI. Maintainable code is code that future-you (and future-AI) can change without fear.

This lesson is about keeping a vibe-coded project clean enough to grow.

Clear Names Beat Clever Code

The single highest-impact habit: good names. A function called calculateMonthlyTotal tells you what it does; doStuff2 tells you nothing.

AI sometimes picks lazy names. Just ask it to rename for clarity.

// Hard to follow
function d(x, y) { return x - (x * y / 100); }

// Self-explaining
function applyDiscount(price, percentOff) {
  return price - (price * percentOff / 100);
}

console.log(applyDiscount(100, 20));

Small Functions, One Job Each

A function that does five things is hard to understand and risky to change. Break work into small functions that each do one thing. When you change one, you won't accidentally break the others.

AI is happy to refactor when asked.

Refactor this function so each step is its own small, well-named function. Don't change behavior. Here it is:

function checkout(cart) {
  // calculates totals, applies discount, charges card, sends email...
  <paste the big function>
}

Return the refactored version with a short note on what each function does.

Organize Files by Purpose

A single 3000-line file is a nightmare. Group related code into folders: things about users in one place, payments in another, UI in another. You'll find code faster, and so will the AI.

Ask AI to propose a structure before you reorganize.

My project is one big app.js file. Suggest a clean folder structure for a small web app with users, products, and checkout. Show me which functions go in which file, and explain the reasoning. Don't move anything yet — just propose the layout.

Don't Repeat Yourself

When the same logic appears in three places, a bug fix means three edits — and you'll forget one. Pull repeated logic into a single shared function. This is the DRY principle: Don't Repeat Yourself.

AI loves to copy-paste, so this one needs your eye.

// Repeated formatting in many places
const a = '$' + price1.toFixed(2);
const b = '$' + price2.toFixed(2);

// One source of truth
function formatPrice(value) {
  return '$' + value.toFixed(2);
}
console.log(formatPrice(9.5), formatPrice(120));

Comment the Why, Not the What

Good code explains what it does through clear names. Comments should explain why — the reasoning that the code can't show. AI often over-comments the obvious; trim those and keep the meaningful ones.

// Noise: the code already says this
let count = 0; // set count to zero

// Useful: explains a non-obvious decision
// Stripe rounds to cents, so we store integers to avoid float errors
const amountInCents = Math.round(dollars * 100);

A README So You Don't Forget

Three months from now you won't remember how to run your own app. A README file captures the essentials: what the project is, how to install it, how to run it, and what the environment variables mean.

Have AI generate one from your code.

Read my project and write a README.md with: a one-line description, setup steps (install + run commands), required environment variables and what each is for, and how to run the tests. Keep it short and skimmable.

Keep a Consistent Style

Mixed quotes, random indentation, and inconsistent spacing make code harder to read. A formatter like Prettier auto-fixes all of that, and a linter like ESLint flags risky patterns.

You don't configure these by hand — ask AI to set them up.

Set up Prettier and ESLint for this JavaScript project. Add a "format" and a "lint" script to package.json, sensible default configs, and tell me the one command to auto-format the whole codebase.

Refactor in Small, Safe Steps

The biggest maintainability trap is rewriting everything at once and breaking the app. Instead, clean up in small steps — and lean on the tests you wrote earlier to confirm nothing broke after each change.

Tell the AI to go incrementally.

Refactor this module for readability, but do it in small steps. After each change, keep the behavior identical so my existing tests still pass. List the steps you'd take in order before changing anything.

Avoid Magic Numbers

A raw number like 0.07 buried in code is a mystery. Give it a name. Named constants make the code readable and mean you change the value in one place.

// Magic number — what is 0.07?
function withTax(price) { return price * 1.07; }

// Clear and easy to update
const TAX_RATE = 0.07;
function withTax(price) {
  return price * (1 + TAX_RATE);
}
console.log(withTax(100));

Maintainable Code Helps the AI Too

Here's the payoff specific to vibe coding: clean, well-named, well-organized code makes the AI's future answers better. When the AI can understand your structure, its edits are more accurate and it breaks fewer things.

Maintainability isn't just for humans — it's how you keep your AI partner effective as the project grows.

Quick Check

You notice the same price-formatting logic copy-pasted in seven different files. Following good maintainability habits, what should you do?

Recap: Build to Last

Maintainable code is what lets a vibe-coded project keep growing. Your habits: clear names, small single-purpose functions, organized files, DRY shared logic, meaningful comments, a README, consistent formatting via Prettier/ESLint, and small safe refactors backed by tests.

And remember: clean code makes the AI better at helping you next time. Next up: performance and cost — keeping your app fast and your bills sane.

자주 묻는 질문

“유지 관리 가능한 코드 만들기” 강의는 무료인가요?

네 — “유지 관리 가능한 코드 만들기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Vibe Coding 강의 전체를 잠금 해제할 수 있습니다. Vibe Coding 강의에는 총 4개의 강의가 포함되어 있습니다.

“유지 관리 가능한 코드 만들기”에서 뭘 배우나요?

나중의 내가 쉽게 변경할 수 있도록 구조를 잡습니다. 브라우저에서 직접 실행하는 실습 코드로 Vibe Coding을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Vibe Coding을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Vibe Coding은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“유지 관리 가능한 코드 만들기” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Vibe Coding 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Vibe Coding 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 인공지능으로 테스트 추가하기
  2. 인공지능 코드 보안 기초
  3. 유지 관리 가능한 코드 만들기
  4. 성능과 비용
← Vibe Coding(으)로 돌아가기