6 שלב 2 — עבודה מעשית

עריכה וכתיבת קוד — Editing and Writing

כלי Edit לשינויים כירורגיים, כלי Write ליצירת קבצים חדשים, עריכה רב-קובצית, סקירת Diffs, פתרון Merge Conflicts, Code Review, עקרון הפשטות, ומנגנוני Undo — הכול עם דוגמאות מעשיות שתוכלו להפעיל מיד.

מה יהיה לך בסוף הפרק הזה
מה תוכלו לעשות אחרי הפרק הזה
דרישות קדם
הפרויקט שלך

בפרק 5 בניתם את כישורי הניווט שלכם — שליטה ב-6 כלי חיפוש, Codebase Tour, ואסטרטגיות לפרויקטים גדולים. בפרק הזה תוסיפו את כלי העריכה — Edit לשינויים כירורגיים, Write ליצירת קבצים, ו-Code Review כהרגל יומיומי. בפרק 7 תחברו את הכול ל-VS Code ותקבלו ממשק גרפי מלא עם Diff View, היסטוריית שיחות, ו-@mention לקבצים.

מתחיל 10 דקות פרקטי

כלי Edit — דיוק כירורגי

הכלי Edit הוא הכלי המרכזי של Claude Code לשינוי קבצים קיימים. חשבו עליו ככירורג — הוא משנה בדיוק מה שצריך ולא נוגע בשום דבר אחר. שום רווח לא זז, שום הזחה לא משתנה, שום encoding לא נשבר. רק המילים שביקשתם להחליף — מוחלפות.

איך זה עובד מאחורי הקלעים? Edit מקבל שני פרמטרים:

זהו. פשוט ואלגנטי. Claude מוצא את הטקסט המדויק בקובץ, מחליף אותו, ומשאיר את כל השאר בדיוק כפי שהיה. הפורמטינג, ההזחה (Indentation), הרווחים, ה-Encoding — הכול נשמר. זו הסיבה שזה הכלי המועדף תמיד לשינויים בקבצים קיימים.

דוגמה: תיקון באג בפונקציה

נניח שיש לכם קובץ utils.py עם שגיאה בחישוב מע"מ:

# הקוד הנוכחי (עם הבאג):
def calculate_price(base_price):
    vat = base_price * 0.17  # שגוי — צריך 0.18 מ-2025
    return base_price + vat

אתם אומרים ל-Claude: "תקן את שיעור המע"מ ב-utils.py ל-18%"

Claude משתמש ב-Edit:

old_string: "vat = base_price * 0.17  # שגוי — צריך 0.18 מ-2025"
new_string: "vat = base_price * 0.18  # מע\"מ 18% — מעודכן 2025"

רק שורה אחת השתנתה. שם הפונקציה, ה-return, כל השאר — לא נגעו.

הכלל הקריטי: ייחודיות (Uniqueness)

אם ה-old_string מופיע יותר מפעם אחת בקובץ — Edit ייכשל ויבקש הקשר נוסף. זו לא באג, זו תכונת בטיחות. אם הטקסט לא ייחודי, Claude לא יכול לדעת איזו מופע אתם רוצים לשנות.

הפתרון: תנו יותר הקשר. במקום להחליף רק return True (שיכול להופיע 5 פעמים בקובץ), תנו שורות נוספות סביב:

דוגמה: הוספת הקשר לייחודיות
# במקום זה (לא ייחודי):
old_string: "return True"

# תנו הקשר (ייחודי):
old_string: "def validate_email(email):\n    if '@' in email:\n        return True"

עכשיו Edit יודע בדיוק על איזה return True מדובר.

replace_all — שינוי כל המופעים

לפעמים אתם דווקא כן רוצים לשנות את כל המופעים. שינוי שם משתנה, שינוי שם CSS class, החלפת URL ישן בחדש — כאן נכנס הפרמטר replace_all: true.

דוגמה: שינוי שם משתנה בכל הקובץ

אתם אומרים: "שנה את שם המשתנה מ-userName ל-currentUser בכל הקובץ"

Edit:
  old_string: "userName"
  new_string: "currentUser"
  replace_all: true

כל מופע של userName בקובץ מוחלף ל-currentUser — בהצהרה, בשימוש, בתנאים, בכל מקום.

זהירות עם replace_all

אם שם המשתנה שלכם הוא חלק ממילה אחרת, replace_all עלול ליצור בעיות. למשל, שינוי של name ל-fullName עם replace_all יחליף גם username ל-userfullName. Claude בדרך כלל מודע לזה ויוסיף הקשר מתאים, אבל תמיד כדאי לבדוק את ה-Diff.

Edit להוספת קוד חדש

Edit לא רק מחליף טקסט — הוא גם מוסיף טקסט. כשאתם רוצים להוסיף פונקציה חדשה, import חדש, או שורת קוד חדשה — Edit עדיין הכלי הנכון. ה-old_string מגדיר את המיקום (הטקסט שאחריו או לפניו צריך להוסיף), וה-new_string כולל גם את הטקסט הישן וגם את החדש.

דוגמה: הוספת import חדש
# הקוד הנוכחי:
import os
import sys

# אתם אומרים: "הוסף import json"
# Claude עושה Edit:
old_string: "import os\nimport sys"
new_string: "import os\nimport sys\nimport json"

שורה אחת נוספה. שום דבר אחר לא השתנה. ההזחה מושלמת, הסדר הגיוני.

דוגמה: הוספת פונקציה חדשה אחרי פונקציה קיימת
# אתם אומרים: "הוסף פונקציה validate_phone אחרי validate_email"
# Claude מוצא את סוף הפונקציה הקיימת ומוסיף את החדשה:
old_string: "def validate_email(email):\n    return '@' in email"
new_string: "def validate_email(email):\n    return '@' in email\n\n\ndef validate_phone(phone):\n    return len(phone) == 10 and phone.isdigit()"

Edit לתיקון Indentation ופורמטינג

אחד השימושים הנפוצים ב-Edit שלא חושבים עליו: תיקון הזחה שבורה. אם קוד מעובד ב-IDE אחד ונשבר ב-IDE אחר, או אם מישהו ערבב tabs ו-spaces — Claude יכול לתקן את זה בדיוק:

"תקן את ההזחה בפונקציה calculate_total — היא משתמשת ב-tabs במקום spaces"

Claude ישתמש ב-Edit כדי להחליף את ה-tabs ב-spaces (או להפך) רק בפונקציה הספציפית הזו, בלי לגעת בשאר הקובץ. זה שימוש קטן אבל חוסך המון תסכול.

~95%

הרוב המוחלט של השינויים בקבצים קיימים נעשים עם Edit. זה הכלי שתשתמשו בו הכי הרבה — למדו אותו היטב. רק במיעוט קטן של מקרים (קובץ חדש מאפס או שכתוב מלא של 80%+) תצטרכו את Write.

אישור עריכות — Shift+Tab

כשClaude מציג לכם Edit ומבקש אישור, אתם יכולים ללחוץ Shift+Tab כדי לאשר את העריכה מהר. זה קיצור הדרך ברירת המחדל עבור acceptEdits ב-Claude Code, ואפשר לשנות אותו דרך קובץ ~/.claude/keybindings.json. אם אתם אוהבים לעבוד מהר ולאשר הרבה עריכות ברצף — Shift+Tab חוסך לחיצות.

עשה עכשיו 3 דקות

פתחו פרויקט כלשהו ב-Claude Code (או צרו קובץ חדש עם Write). בקשו מ-Claude לבצע שינוי קטן עם Edit: "שנה את הפורט מ-3000 ל-8080 בקובץ הקונפיגורציה". שימו לב ל-Diff שמוצג — הטקסט הישן ← הטקסט החדש. נסו לאשר עם Shift+Tab במקום עם Enter. זה העיקרון: אתם רואים בדיוק מה משתנה לפני שאתם מאשרים.

מתחיל 8 דקות פרקטי

כלי Write — יצירת קבצים חדשים

אם Edit הוא הכירורג, אז Write הוא האדריכל — הוא יוצר דברים חדשים מאפס. כלי Write יוצר קובץ חדש או מחליף לגמרי קובץ קיים. אין כאן עריכה חלקית — זו כתיבה מלאה מההתחלה ועד הסוף.

מתי משתמשים ב-Write?

מנגנון בטיחות מובנה

Write כולל מנגנון בטיחות חשוב: Claude חייב לקרוא (Read) קובץ קיים לפני שהוא מחליף אותו עם Write. זה מונע מצב שבו Claude מחליף קובץ שהוא לא מכיר ומאבד תוכן חשוב. אם Claude ינסה לעשות Write על קובץ קיים בלי שקרא אותו קודם — הפעולה תיכשל.

כשאתם מבקשים ליצור קובץ חדש, Write מציג את כל התוכן של הקובץ לפני שהוא כותב — אתם רואים בדיוק מה ייכתב ויכולים לאשר או לדחות.

דוגמה: יצירת סקריפט חדש

אתם אומרים: "צור סקריפט Python שמקבל רשימת URL-ים מקובץ CSV ובודק את סטטוס ה-HTTP של כל אחד"

Claude משתמש ב-Write כדי ליצור check_urls.py מאפס — קובץ שלם עם imports, פונקציות, error handling, ותיעוד. אתם רואים את כל הקוד לפני שהוא נכתב לדיסק.

טיפ: הפועל שלכם קובע את הכלי

אם אתם אומרים ל-Claude "צור קומפוננטה חדשה" ← Write. אם אתם אומרים "שנה את הקומפוננטה" ← Edit. הפועל שאתם בוחרים בפרומפט עוזר ל-Claude לבחור את הכלי הנכון. "צור", "בנה", "כתוב מאפס" → Write. "שנה", "תקן", "עדכן", "הוסף ל-" → Edit.

Write לסוגי קבצים שונים

Write עובד עם כל סוג קובץ טקסטואלי. הנה כמה שימושים נפוצים:

סוג קובץ דוגמת פרומפט מה Claude יוצר
Python Script "צור סקריפט שקורא Excel ויוצר PDF" קובץ .py מלא עם imports, פונקציות, error handling
HTML Page "צור דף נחיתה עם טופס יצירת קשר" קובץ .html מלא עם CSS inline וטופס
Config File "צור Docker Compose עם Node.js ו-PostgreSQL" docker-compose.yml מלא עם services, volumes, networks
Test File "צור טסטים ל-UserService" קובץ test מלא עם setup, cases, teardown
Shell Script "צור סקריפט deploy שבונה ומעלה לפרודקשן" קובץ .sh עם בדיקות, build steps, deploy
Write מחליף לגמרי — היו מודעים

אם יש קובץ קיים באותו שם, Write מחליף אותו לגמרי. לכן Claude חייב לקרוא (Read) את הקובץ קודם — כדי שתוכלו לראות מה תאבדו. אם אתם רוצים רק לשנות חלק מהקובץ — השתמשו ב-Edit. אם אתם רוצים לשכתב הכול — Write.

עשה עכשיו 2 דקות

בקשו מ-Claude: "צור קובץ README.md חדש לפרויקט שלי עם שם הפרויקט, תיאור קצר, והוראות התקנה". שימו לב שהכלי שנבחר הוא Write (כי הקובץ לא קיים), ושאתם רואים את כל התוכן לפני שהוא נכתב.

מתחיל 5 דקות תיאוריה

Edit מול Write — מטריצת ההחלטה

Claude בדרך כלל בוחר את הכלי הנכון לבד. אבל כשאתם רוצים לכוון אותו, או כשאתם סוקרים מה הוא עשה, חשוב להבין את ההיגיון:

תרחיש כלי למה
תיקון שגיאת כתיב (Typo) Edit שינוי אחד, קטן ומדויק
הוספת פונקציה לקובץ קיים Edit מוסיפים טקסט חדש, שאר הקובץ לא משתנה
שינוי שם משתנה בכל הקובץ Edit (replace_all) מחליפים כל מופע, שאר הקובץ שלם
עדכון ערך בקובץ Config Edit שינוי ממוקד, שורה אחת או שתיים
יצירת קובץ חדש לגמרי Write אין קובץ קיים — חייבים Write
שכתוב מלא של קובץ (80%+) Write יותר יעיל מ-10 פעולות Edit נפרדות
יצירת דוח, תוכנית עבודה, תבנית Write תוכן חדש מאפס
כלל 80%

אם יותר מ-80% מהקובץ משתנה — השתמשו ב-Write לשכתוב מלא. אם פחות מ-80% — השתמשו ב-Edit לשינויים ממוקדים. ברוב המקרים (95%+), Edit הוא הכלי הנכון לקבצים קיימים.

לעולם לא: מחיקה ויצירה מחדש

אל תמחקו קובץ ותיצרו אותו מחדש כדי לעשות שינויים קטנים. זה מבטל את היסטוריית ה-git, מקשה על Code Review, ועלול לגרום לאובדן מידע. Edit קיים בדיוק בשביל זה — שינויים ממוקדים בלי לגעת בשאר.

למה Edit תמיד עדיף לקבצים קיימים?

יש כמה סיבות עמוקות למה Edit הוא הכלי המועדף כשהקובץ קיים:

עשה עכשיו 5 דקות

תרגלו את שני הכלים ברצף:

  1. Write: בקשו מ-Claude ליצור קובץ חדש — "צור קובץ config.json עם הגדרות פורט, שם אפליקציה, וסביבת ריצה"
  2. Edit #1: "שנה את הפורט ל-9090" — שימו לב שרק שורה אחת משתנה
  3. Edit #2: "הוסף הגדרת database_url" — שימו לב שנוסף טקסט, שום דבר לא נמחק
  4. Edit #3: "שנה את סביבת הריצה מ-development ל-production" — שינוי ערך בודד

בכל שלב, הסתכלו על ה-Diff. שלושה שינויי Edit, כל אחד שינה בדיוק מה שנדרש — ושום דבר אחר.

בינוני 10 דקות פרקטי

עריכה רב-קובצית — שינויים מתואמים

אחד היתרונות הכי חזקים של Claude Code הוא היכולת לערוך מספר קבצים ב-turn אחד. אתם מתארים את השינוי שאתם רוצים, ו-Claude מבין אילו קבצים צריכים להשתנות ומעדכן את כולם בצורה מתואמת.

דוגמה מייצגת: הוספת שדה "סטטוס" למערכת

אתם אומרים: "הוסף שדה status לטבלת Orders — עדכן את המודל, ה-API, הטופס בצד הלקוח, והטסטים"

Claude יבצע את הפעולות הבאות ב-turn אחד:

  1. Read — קורא את כל הקבצים הרלוונטיים (models.py, api.py, OrderForm.tsx, test_orders.py)
  2. Plan — מתכנן אילו שינויים הולכים לאיפה
  3. Edit #1 — מוסיף את השדה למודל (models.py)
  4. Edit #2 — מוסיף את השדה ל-API endpoint (api.py)
  5. Edit #3 — מוסיף dropdown לטופס (OrderForm.tsx)
  6. Edit #4 — מוסיף טסטים לשדה החדש (test_orders.py)

4 קבצים, שינוי אחד מתואם. Claude עוקב אחרי תלויות — אם שם השדה במודל הוא order_status, הוא ישתמש באותו שם גם ב-API, גם בטופס, וגם בטסטים.

שינויים גדולים: עבדו בשלבים

לשינויים רב-קובציים גדולים (10+ קבצים), כדאי לעבוד בשלבים במקום לבקש הכול ב-turn אחד:

1

תכנון — השתמשו ב-Plan Mode

לפני שמתחילים לערוך, הפעילו Plan Mode (Shift+Tab פעמיים או /plan) ובקשו: "תכנן איך להוסיף את שדה הסטטוס בכל השכבות". סקרו את התוכנית, אשרו, ורק אז Claude מתחיל לבצע.

2

שכבה ראשונה — Backend

"עדכן את המודל וה-API" → ודאו שזה עובד → הריצו טסטים

3

שכבה שנייה — Frontend

"עכשיו עדכן את הטופס וה-UI" → ודאו שזה עובד → בדקו בדפדפן

4

שכבה שלישית — Tests

"עכשיו עדכן את הטסטים" → הריצו → ודאו שהכול עובר

טיפ: Claude עוקב אחרי תלויות

כשמשנים חתימת פונקציה (Function Signature) — למשל, מוסיפים פרמטר — Claude לא רק משנה את ההגדרה. הוא מוצא ומעדכן גם את כל הקריאות לפונקציה הזו בכל הקבצים. זה חוסך שעות של חיפוש ידני.

דפוסים נפוצים של עריכה רב-קובצית

הנה התרחישים הנפוצים ביותר שבהם תבצעו שינויים בכמה קבצים:

דפוס 1: הוספת שדה חדש — Full Stack

"הוסף שדה 'תאריך יצירה' למודל הלקוח"

Claude יעדכן: Database Schema → Model/ORM → API Endpoint → Frontend Form → Validation → Tests.

דפוס 2: שינוי שם (Rename) — Cross-File

"שנה את שם הפונקציה מ-fetchData ל-loadUserData בכל הפרויקט"

Claude ימצא את כל ההגדרות והקריאות בכל הקבצים ויחליף בעקביות. הוא יודע להבדיל בין fetchData (שצריך לשנות) ל-fetchDataById (שלא).

דפוס 3: עדכון תלות — Dependency Update

"עדכן את React ל-19 ותקן את כל השימושים הדפרקטיים"

Claude יעדכן את package.json ואז יעבור על כל הקבצים שמשתמשים ב-APIs שהשתנו בגרסה החדשה.

דפוס 4: הוספת Feature Flag

"הוסף Feature Flag ל-dark mode — שיהיה אפשר להפעיל ולכבות"

Claude יוסיף את ה-flag לקונפיגורציה, יעטוף את הקוד הרלוונטי בתנאי, ויוסיף Toggle ב-UI.

עשה עכשיו 5 דקות

נסו שינוי רב-קובצי פשוט: בקשו מ-Claude "שנה את שם הפרויקט מ-MyApp ל-SuperApp בכל הקבצים — package.json, README.md, ו-index.html". צפו בו קורא כל קובץ, מבצע Edit בכל אחד, ומוודא עקביות.

בינוני 8 דקות תיאוריה + פרקטי

Codebase קיים מול פרויקט חדש (Greenfield)

הגישה שלכם לעריכה צריכה להשתנות בהתאם למצב: האם אתם עובדים על קוד קיים שמישהו אחר כתב, או בונים פרויקט חדש מאפס?

Codebase קיים — גישה שמרנית

כשנכנסים לקוד שמישהו אחר כתב (Legacy Code, קוד של קולגה, או פרויקט Open Source), הגישה היא להבין קודם, לשנות אחר כך:

1

הבינו את המבנה

"תסביר איך המודול הזה עובד" — תנו ל-Claude לקרוא ולהסביר לפני שמתחילים לשנות.

2

התאימו לקונבנציות קיימות

"עקוב אחרי הדפוס שכבר קיים ב-handlers האחרים" — אל תמציאו סגנון חדש, התאימו למה שכבר יש.

3

היו שמרניים

"שנה רק מה שצריך כדי לתקן את הבאג, אל תעשה Refactoring" — הנטייה הטבעית של Claude (ושל מתכנתים) היא לשפר גם את מה שמסביב. בקוד קיים, עדיף להתמקד רק במה שנדרש.

4

בדקו אחרי כל שינוי

הריצו טסטים, בדקו שלא שברתם דברים. בקוד ישן, שינוי קטן יכול לגרום ל-Side Effects בלתי צפויים.

Greenfield — פרויקט חדש מאפס

כשבונים פרויקט חדש, הגישה יצירתית יותר:

1

הגדירו מבנה מראש

"צור פרויקט עם מבנה התיקיות הבא: src/, tests/, config/, docs/" — Claude בונה את השלד.

2

הגדירו קונבנציות ב-CLAUDE.md

בתחילת הפרויקט, כתבו ב-CLAUDE.md את הסגנון הרצוי. הנה דוגמה:

דוגמה: CLAUDE.md לפרויקט חדש
# Project: E-Commerce API
## Stack
- TypeScript (strict mode)
- Express.js
- PostgreSQL with Prisma ORM
- Jest for testing

## Conventions
- Use Repository Pattern for data access
- All functions must have JSDoc comments
- Error handling: always return proper HTTP status codes
- File naming: kebab-case (user-service.ts)
- Keep functions under 30 lines

## Testing
- Every new endpoint needs at least 3 tests: happy path, validation error, not found
- Use fixtures for test data, not inline objects
3

בנו בהדרגה

שלד → לוגיקה מרכזית → טסטים → ליטוש. לא הכול ב-turn אחד. כל שלב נבדק לפני שעוברים לבא.

גישה Codebase קיים Greenfield (פרויקט חדש)
שלב ראשון הבנה (Explain) הגדרת מבנה (Plan)
סגנון עריכה שמרני — Edit בלבד יצירתי — Write + Edit
טסטים אחרי כל שינוי נבנים במקביל לקוד
הנחיה ל-Claude "התאם לדפוסים הקיימים" "השתמש ב-Best Practices של X"
CLAUDE.md

ב-Greenfield, השקיעו 5 דקות בכתיבת CLAUDE.md בהתחלה — הגדירו Stack, קונבנציות, ודפוסי קוד מועדפים. זו השקעה שמחזירה את עצמה עשרות מונים: Claude יעקוב אחרי ההנחיות שלכם בכל סשן, בכל קובץ, בכל שינוי. פרויקט בלי CLAUDE.md הוא כמו צוות בלי Coding Standards — כל אחד עושה מה שבא לו.

הטעות הנפוצה: Refactoring כשלא ביקשו

כשClaude עובד על Codebase קיים, הוא לפעמים מתפתה לשפר קוד שלא ביקשתם לשפר — משנה שמות משתנים, מוסיף Type Hints, מפצל פונקציות. זה מגיע מכוונות טובות, אבל בקוד קיים זה מסוכן: שינויים "קטנים" יכולים לשבור דברים. אם אתם רואים שינויים שלא ביקשתם ב-Diff — עצרו ובקשו "שנה רק מה שביקשתי, בלי Refactoring נוסף". זה עובד — Claude מכבד את הגבולות שאתם שמים.

דוגמה מייצגת: כניסה נכונה ל-Codebase קיים

אתם מקבלים פרויקט קיים וצריכים לתקן באג. במקום לקפוץ ישר לתיקון:

  1. פרומפט 1: "תסביר את מבנה הפרויקט — מה כל תיקייה ומה הקבצים העיקריים"
  2. פרומפט 2: "תסביר איך עובד ה-authentication flow — מהלוגין ועד ה-session"
  3. פרומפט 3: "עכשיו, תקן את הבאג ב-login — הוא מחזיר 500 כשהסיסמה ריקה. שנה רק מה שצריך."

שלושה שלבים: הבנה → הבנה מעמיקה → תיקון ממוקד. זו הגישה הנכונה.

עשה עכשיו 3 דקות

פתחו פרויקט קיים שלכם (או כל פרויקט Open Source). בקשו מ-Claude: "תסביר את המבנה של הפרויקט הזה — מהם הקבצים העיקריים ומה כל אחד עושה?". זה השלב הראשון לפני כל עריכה בקוד קיים — הבנה.

מתחיל-בינוני 8 דקות פרקטי

הבנה וסקירת Diffs

Diff (קיצור של Difference) הוא הצגת ההבדלים בין שתי גרסאות של קובץ. כל פעם ש-Claude מבצע Edit, אתם רואים Diff שמראה בדיוק מה הוסר ומה נוסף. זה אחד הכלים הכי חשובים שלכם — לא לאשר שינוי בלי לקרוא את ה-Diff.

איך קוראים Diff

דוגמה: קריאת Diff
- const PORT = 3000;    ← שורה שהוסרה (ישנה)
+ const PORT = 8080;    ← שורה שנוספה (חדשה)
  const HOST = '0.0.0.0';  ← שורה ללא שינוי (הקשר)

שורות עם - (בדרך כלל באדום) = הוסרו. שורות עם + (בדרך כלל בירוק) = נוספו. שורות ללא סימן = לא השתנו, מוצגות רק בשביל הקשר.

ב-Claude Code, כל פעולת Edit מציגה Diff בפורמט נוח — אתם רואים את הטקסט הישן ואת הטקסט החדש, אחד לצד השני (או אחד מתחת לשני). זה מאפשר לכם לאשר או לדחות כל שינוי.

Diffs מרובי שינויים

כשClaude מבצע כמה שינויים בקובץ, כל Edit מראה Diff נפרד. אבל לפעמים תרצו לראות את כל השינויים יחד — את התמונה הגדולה. כאן נכנס git diff:

דוגמה: שימוש ב-git diff

אחרי שClaude ביצע כמה עריכות, בקשו:

"הראה לי את ה-git diff של כל מה ששינית"

Claude יריץ git diff ויציג את כל השינויים שעדיין לא עשיתם להם commit — בכל הקבצים, בפורמט diff סטנדרטי. זה מאפשר סקירה כוללת לפני שעושים commit.

ביקשו סיכום של שינויים גדולים

אם Claude ביצע הרבה שינויים ואתם רוצים סיכום מהיר במקום לקרוא כל שורה:

"סכם מה שינית ולמה"

Claude ייתן סקירה ברמה גבוהה: אילו קבצים השתנו, מה השתנה בכל אחד, ולמה. זה מושלם לשינויים גדולים שבהם ה-Diff המלא ארוך מדי לקריאה.

מה לחפש כשקוראים Diff

כשאתם מסתכלים על Diff שClaude ביצע, חפשו את הדברים הבאים:

כלל הברזל: Diff לפני Accept

גם כשאתם סומכים על Claude — תמיד קראו את ה-Diff. זה כמו לקרוא חוזה לפני חתימה. לוקח 10 שניות, חוסך שעות. גם ה-Claude הכי טוב יכול לטעות — ואתם רשת הביטחון האחרונה.

Diff בפורמט Git — הפורמט שתראו הכי הרבה

כשאתם מריצים git diff או כשClaude מראה לכם את השינויים, הפורמט נראה כך:

דוגמה: git diff מלא
diff --git a/config.json b/config.json
--- a/config.json    ← הגרסה הישנה
+++ b/config.json    ← הגרסה החדשה
@@ -3,7 +3,7 @@   ← מיקום השינוי (שורה 3, 7 שורות)
   "name": "my-app",
-  "port": 3000,     ← הוסר
+  "port": 8080,     ← נוסף
   "host": "0.0.0.0"

השורה @@ מציינת את המיקום בקובץ. אחריה באות שורות ההקשר (ללא סימון), שורות שהוסרו (-), ושורות שנוספו (+).

עשה עכשיו 3 דקות

בקשו מ-Claude לבצע שינוי כלשהו בקובץ. אחרי שהשינוי בוצע, בקשו: "הראה לי את ה-diff של מה ששינית". תרגלו לקרוא את הפורמט: שורות - (אדום, הוסרו) ושורות + (ירוק, נוספו). הרגל הזה יחסוך לכם באגים.

בינוני 8 דקות פרקטי

פתרון Merge Conflicts

Merge Conflict (קונפליקט מיזוג) קורה כש-git לא מצליח למזג שני שינויים אוטומטית — בדרך כלל כשאתם ומישהו אחר (או branch אחר) שיניתם את אותן שורות באותו קובץ. התוצאה היא קובץ עם סימני קונפליקט שנראים ככה:

דוגמה: סימני Merge Conflict
<<<<<<< HEAD
const API_URL = "https://api.myapp.com/v2";
=======
const API_URL = "https://staging.myapp.com/v1";
>>>>>>> feature-branch

הקטע מעל ======= הוא מה שיש ב-branch שלכם (HEAD). הקטע מתחת הוא מה שיש ב-branch השני. אתם צריכים להחליט מה לשמור.

Claude Code מצוין בפתרון קונפליקטים כי הוא יכול להבין את הכוונה מאחורי כל צד ולעזור לכם להחליט. הנה התהליך:

שלב 1: הבינו את שני הצדדים

בקשו מ-Claude: "הסבר את הקונפליקט ב-config.js — מה שינה כל צד ולמה?"

Claude יקרא את הקובץ, יזהה את סימני הקונפליקט, ויסביר: "ב-HEAD שיניתם ל-API v2 בפרודקשן. ב-feature-branch שיניתם ל-staging v1 לבדיקות."

שלב 2: החליטו והנחו

"פתור את הקונפליקט — שמור את ה-URL של v2 בפרודקשן"

Claude ישתמש ב-Edit כדי להסיר את סימני הקונפליקט ולשמור את הגרסה הנכונה.

שלב 3: ודאו

אחרי הפתרון, הריצו git diff כדי לוודא שהתוצאה נכונה. שסימני הקונפליקט נעלמו לגמרי ושנשאר הקוד הנכון.

טיפ: קונפליקטים מורכבים

לקונפליקטים מורכבים (קובץ עם 5+ קונפליקטים), בקשו מ-Claude קודם: "הראה לי את כל הקונפליקטים בקובץ הזה בטבלה — מיקום, צד HEAD, צד branch, המלצה". סקרו את הטבלה, תנו הוראות ספציפיות לכל אחד, ורק אז תנו ל-Claude לפתור.

טיפים לפתרון קונפליקטים יעיל

דוגמה מייצגת: קונפליקט מורכב עם מיזוג חכם

אתם עובדים על branch feature-payments ומישהו ב-main שינה את מבנה ה-config. בעת ה-merge יש 3 קונפליקטים. במקום לפתור ידנית:

  1. פרומפט 1: "הראה לי את כל הקונפליקטים בטבלה — מיקום, הגרסה שלנו, הגרסה שלהם, המלצה"
  2. Claude מנתח: "קונפליקט 1: שדה port — שלכם 8080, שלהם 3000. המלצה: שמרו 8080 (שלכם). קונפליקט 2: שדה database_url — שלכם PostgreSQL, שלהם SQLite. המלצה: שמרו PostgreSQL (שלכם). קונפליקט 3: שדה log_level — שלכם debug, שלהם info. המלצה: השתמשו ב-info (שלהם) כי זה production."
  3. פרומפט 2: "מקובל. פתור את כל הקונפליקטים לפי ההמלצות שלך."

Claude פותר את שלושת הקונפליקטים בזה אחר זה עם Edit — מסיר את סימני הקונפליקט ושומר את הגרסה הנכונה בכל מקום. סך הכול: דקה אחת במקום 15 דקות של פתרון ידני.

עשה עכשיו 5 דקות

צרו קונפליקט בתרגול: (1) צרו branch חדש: git checkout -b test-conflict, (2) שנו שורה בקובץ ועשו commit, (3) חזרו ל-main: git checkout main ושנו את אותה שורה לערך אחר ועשו commit, (4) נסו למזג: git merge test-conflict. עכשיו בקשו מ-Claude: "הסבר את הקונפליקט ופתור אותו — שמור את הגרסה שלי מ-main". צפו בו מסביר ופותר.

בינוני 8 דקות פרקטי

Code Review — Claude כסוקר הקוד שלכם

Code Review (סקירת קוד) הוא תהליך שבו מישהו אחר בודק את הקוד שלכם לפני שהוא נכנס לפרודקשן. ב-2026, Claude הוא ה-Reviewer הכי סבלני, הכי זמין, והכי מקיף שיש — הוא עובד 24/7, לא מקפיד אישית, ובודק ממש הכול.

סוגי Review

יש כמה סוגי סקירה שאפשר לבקש מ-Claude:

סוג Review מה לבקש מה מקבלים
סקירה מקיפה "סקור את הקובץ הזה — באגים, אבטחה, ביצועים" רשימה מפורטת של כל הבעיות שנמצאו
בדיקת Best Practices "השווה את המימוש שלי ל-Best Practices של React" איפה אני חורג ומה לתקן
בדיקת פישוט "יש דרך פשוטה יותר לעשות מה שהפונקציה עושה?" גרסה פשוטה יותר (אם קיימת)
סקירת Diff לפני Commit "סקור את השינויים ב-git diff ותגיד אם משהו נראה לא בסדר" בעיות בשינויים הספציפיים האלה

ה-Review Checklist

כש-Claude עושה סקירה מקיפה, הוא בודק לפי הסדר הבא:

  1. Bugs — שגיאות לוגיות, null checks חסרים, off-by-one errors
  2. Security — SQL Injection, XSS, סודות חשופים, הרשאות חסרות
  3. Performance — queries כבדים, loops מיותרים, memory leaks
  4. Readability — שמות משתנים, תיעוד, מורכבות מיותרת
  5. Edge Cases — מה קורה עם input ריק? עם null? עם מספר שלילי?
  6. Tests — יש כיסוי? האם הטסטים בודקים את מה שחשוב?
טיפ: הפכו Review להרגל

לפני כל commit, בקשו מ-Claude: "סקור את השינויים ב-git diff". זה לוקח 30 שניות ותופס באגים שתגלו רק בפרודקשן. עלות: כמה סנטים. חיסכון: שעות של דיבאגינג.

Review של תוכן — לא רק קוד

Claude יכול לסקור גם תוכן שאינו קוד:

דוגמה מייצגת: לולאת Review → Fix → Commit בעולם האמיתי

סיימתם לעבוד על פיצ'ר. הנה הזרימה:

  1. סקירה: "סקור את ה-git diff — חפש באגים, בעיות אבטחה, וקוד שאפשר לפשט"
  2. Claude מוצא: "שורה 42: חסר null check ב-userId. שורה 78: ה-API key חשוף כ-hardcoded string."
  3. תיקון: "תקן את שתי הבעיות" → Claude מבצע 2 פעולות Edit
  4. סקירה שנייה: "סקור שוב — התיקונים יצרו בעיות חדשות?"
  5. Claude: "הכול תקין. Ready to commit."
  6. Commit: git add . && git commit -m "Add user validation and secure API key"

שלוש דקות. שני באגים נתפסו לפני שהגיעו לפרודקשן. זה הכוח של הלולאה.

פרומפטים מומלצים ל-Code Review

פרומפט 1: סקירה מקיפה

"סקור את הקובץ auth.py. חפש: (1) באגים ובעיות לוגיות, (2) פרצות אבטחה — SQL Injection, XSS, סודות חשופים, (3) בעיות ביצועים — queries כבדים, loops מיותרים, (4) קוד שאפשר לפשט. דרג כל ממצא: קריטי / חשוב / נחמד לתקן."

פרומפט 2: סקירת Diff לפני Commit

"הרץ git diff ובדוק את כל השינויים. חפש: טעויות, שינויים לא מכוונים, מידע רגיש שנחשף, ובדוק שכל השינויים עקביים זה עם זה. אם הכול תקין — אמור 'Ready to commit'. אם לא — פרט מה צריך לתקן."

פרומפט 3: בדיקת Edge Cases

"בדוק את הפונקציה processOrder. מה קורה אם: (1) הסכום הוא 0? (2) הכמות שלילית? (3) ה-userId הוא null? (4) ה-array ריק? (5) יש duplicate entries? ספר לי אילו מקרים לא מכוסים."

טיפ: הפקודות /review ו-/simplify

Claude Code כולל שתי פקודות מובנות לסקירת קוד:

ההבדל: /review נותנת לכם דוח ואתם מחליטים מה לתקן. /simplify מתקנת אוטומטית — שימושית כשאתם סומכים על Claude ורוצים לנקות קוד מהר.

עשה עכשיו 3 דקות

פתחו קובץ קוד כלשהו שלכם ובקשו מ-Claude: "סקור את הקובץ הזה — מצא באגים, בעיות אבטחה, ובעיות ביצועים". קראו את ממצאי ה-Review. אם Claude מצא בעיות — בקשו ממנו לתקן אותן (Edit). ככה עובד הלופ: Review → Fix → Review שוב.

מתחיל 5 דקות תיאוריה

עקרון הפשטות — Keep It Simple

Claude הוא מתכנת מצוין. אבל בדיוק בגלל זה, לפעמים הוא מייצר פתרונות מורכבים מדי — שכבות אבסטרקציה, Design Patterns, ומודולים שלא באמת צריך. הוא לא עושה את זה מתוך רוע — הוא פשוט מנסה לכתוב קוד "נכון" לפי הספר. אבל קוד "נכון" לפי הספר ≠ קוד שמתאים לצרכים שלכם.

"תשמור על זה פשוט"

שלוש מילים שחוסכות שעות של Over-Engineering. השתמשו בהן בחופשיות. כש-Claude מציע ארכיטקטורה מורכבת של Factory Pattern עם Dependency Injection לסקריפט של 50 שורות — אתם יכולים ואתם צריכים לומר "לא, תשמור על זה פשוט."

ביטויי קסם לפשטות

"תקציב מורכבות" — Complexity Budget

לפני שמאשרים פתרון, שאלו את עצמכם: "האם המורכבות הזו פרופורציונלית לבעיה?" תיקון של 5 שורות לא צריך Refactoring של 50 שורות. סקריפט שרץ פעם ביום לא צריך ארכיטקטורת Microservices. טופס עם 3 שדות לא צריך State Management מורכב.

דוגמה מייצגת: פשוט מול מורכב

המשימה: "צור סקריפט שקורא CSV ושולח את השורות כמייל"

פתרון מורכב מדי (Over-Engineered): Class hierarchy עם CSVReader, EmailSender, DataTransformer, RetryPolicy, ConfigManager, Logger — 200 שורות ב-5 קבצים.

פתרון פשוט ונכון: פונקציה אחת שקוראת CSV עם pandas, לולאה שמרכיבה מייל, ושולחת. 40 שורות, קובץ אחד, עובד.

מה לומר ל-Claude: "צור סקריפט פשוט — קובץ אחד, ללא classes, גישה פונקציונלית ישירה. זה סקריפט שירוץ פעם ביום."

סימנים שהפתרון מורכב מדי

איך תזהו שClaude (או אתם) הלכתם רחוק מדי? חפשו את הסימנים:

עשה עכשיו 2 דקות

בפעם הבאה ש-Claude נותן לכם פתרון שנראה מורכב מדי, בקשו: "יש דרך פשוטה יותר לעשות את זה?" ותופתעו כמה פעמים הוא מצליח לקצר את הקוד ב-50% בלי לאבד פונקציונליות.

מתחיל 10 דקות פרקטי

Undo ורשת ביטחון — כשדברים משתבשים

הפחד הגדול של כל מי שנותן ל-AI לערוך קבצים: "מה אם הוא ישבור משהו?" התשובה: יש לכם 4 רשתות ביטחון, כל אחת ברמה אחרת. שום שינוי שClaude עושה אינו בלתי הפיך. ההשקעה שלכם: כמה שניות לפני כל שינוי. מה שאתם מקבלים: שקט נפשי מלא.

רשת 1: Git — רשת הביטחון הבסיסית

אם הקבצים שלכם מנוהלים ב-git (וכמעט תמיד הם כן), אפשר לחזור לכל מצב קודם:

Best Practice: Commit לפני ניסוי

לפני שמבקשים מ-Claude שינוי גדול או ניסיוני, עשו commit: git commit -m "before experiment". אם הניסוי לא מצליח, תמיד תוכלו לחזור ל-commit הזה. זה לוקח 5 שניות וחוסך כאב ראש.

רשת 2: Checkpoints — נקודות שחזור אוטומטיות

Claude Code יוצר Checkpoint אוטומטי בכל פרומפט שלכם. אתם לא צריכים לעשות כלום — זה קורה ברקע. ה-Checkpoints נשמרים 30 יום ומתעדים גם את השיחה וגם את מצב הקבצים.

חשבו על Checkpoints כמו Save Points במשחק מחשב: כל פעם שאתם כותבים פרומפט, המערכת שומרת "תמונת מצב" של הכול. אם משהו משתבש — אפשר לחזור לכל Save Point.

רשת 3: /rewind — חזרה בזמן

הפקודה /rewind מחזירה אתכם לנקודת Checkpoint קודמת — גם את השיחה וגם את הקבצים. זה כמו Ctrl+Z על סטרואידים: לא רק פעולה אחרונה, אלא חזרה לרגע ספציפי בשיחה.

אפשר גם לעשות Escape כפול (לחיצה כפולה על Escape) — זה מפעיל rewind מהיר שמחזיר את השינוי האחרון.

רשת 4: "בטל את זה" — בקשה מילולית

הדרך הכי פשוטה: פשוט אמרו ל-Claude "בטל את השינוי האחרון" או "Undo that". Claude יבצע Edit הפוך — יחליף את הטקסט החדש בטקסט הישן. זה עובד הכי טוב לשינוי אחרון בודד.

מנגנון מתי להשתמש מה הוא מבטל
git checkout צריך לבטל שינויים בקובץ ספציפי שינויים לא-committed בקובץ אחד
git stash רוצים לנסות גישה אחרת ואולי לחזור שומר הכול בצד, לא מוחק
/rewind רוצים לחזור לנקודה מסוימת בשיחה שיחה + קבצים — חזרה מלאה
Escape x2 ביטול מהיר של השינוי האחרון השינוי האחרון בלבד
"בטל את זה" שינוי קטן שהרגע בוצע Claude עושה Edit הפוך
עשה עכשיו 5 דקות

תרגלו את הזרימה הבטוחה:

  1. עשו git commit -m "safe point" — נקודת ביטחון
  2. בקשו מ-Claude שינוי ניסיוני: "שנה את כל הפונקציות ל-Arrow Functions"
  3. בדקו את התוצאה — אם טוב, מצוין. אם לא, הריצו git checkout -- . (שימו לב לנקודה) כדי לבטל הכול
  4. ודאו שחזרתם למצב הקודם. אתם יודעים שאתם בטוחים — עכשיו אתם יכולים להתנסות בחופשיות.
מתחיל 5 דקות פרקטי

עריכת תוכן — קבצים שהם לא קוד

Claude Code לא מוגבל לקוד. הוא עורך כל קובץ טקסטואלי — Markdown, CSV, HTML, JSON, YAML, plain text, קבצי קונפיגורציה, ועוד. אותם כלי Edit ו-Write עובדים בדיוק אותו דבר, לא משנה אם הקובץ הוא Python script או מייל שיווקי בעברית.

דוגמאות לשימושים נפוצים

דוגמה: עריכת תוכן שיווקי

"ב-email-template.html, שנה את ה-Subject Line ל-'30% הנחה — רק השבוע!'"

Claude משתמש ב-Edit לשנות את שורת הנושא בלבד. שאר ה-HTML, העיצוב, ה-links — לא נגעו.

דוגמה: עדכון נתונים בקובץ CSV

"ב-data.csv, עדכן את כל השורות שבהם region הוא 'Central' ל-'Center'"

Claude משתמש ב-Edit עם replace_all כדי לעדכן את כל המופעים.

דוגמה: שינוי קונפיגורציה

"ב-config.yaml, שנה את ה-production URL לדומיין החדש"

שינוי אחד ממוקד בקובץ YAML — הפורמט נשמר, ההזחה נשמרת.

Claude מצוין גם בעריכת תוכן בעברית — תיקוני דקדוק, שיפור סגנון, תרגום, עדכון מידע — הכול דרך אותו כלי Edit.

טיפ: עריכה חוזרת בהרבה קבצים

צריכים לעדכן מספר טלפון ב-20 קבצים? השתמשו ב-Grep כדי למצוא את כל המופעים, ואז בקשו מ-Claude: "החלף את מספר הטלפון הישן 03-1234567 ל-03-7654321 בכל הקבצים שמצאת". Claude יעבור קובץ אחרי קובץ עם Edit + replace_all.

דוגמה: עריכת הצעת מחיר

"ב-proposal.md, שנה את הסכום מ-15,000 ש"ח ל-18,000 ש"ח, עדכן את התאריכים לרבעון הבא, והוסף סעיף על תמיכה טכנית"

Claude יבצע 3 פעולות Edit: עדכון סכום, עדכון תאריכים, הוספת סעיף חדש. כל מסמך — כל עריכה.

דוגמה: עריכת מבנה JSON

"ב-package.json, הוסף dependency על axios גרסה 1.6, ושנה את ה-main entry ל-dist/index.js"

Claude יודע את מבנה ה-JSON ויוסיף את ה-dependency במקום הנכון (בסדר אלפביתי, כמו הנוהג) ויעדכן את השדה main.

דוגמה: עדכון Batch — הרבה קבצים, שינוי אחד

יש לכם 15 דפי HTML עם לוגו ישן. במקום לערוך ידנית:

# פרומפט אחד:
"מצא את כל קבצי ה-HTML בתיקיית pages/ שמכילים את הלוגו הישן
old-logo.png, והחלף אותו ב-new-logo.svg בכל אחד מהם"

Claude ישתמש ב-Grep כדי למצוא את כל הקבצים, ואז יעבור על כל אחד עם Edit + replace_all. 15 קבצים, דקה אחת.

עריכת תוכן בעברית

Claude מצוין בעריכת תוכן בעברית. כמה שימושים נפוצים:

עשה עכשיו 3 דקות

נסו לערוך קובץ שהוא לא קוד. אם יש לכם README.md, בקשו מ-Claude: "הוסף סקשן 'Contributing' ל-README עם הנחיות לתרומה לפרויקט". שימו לב שזה בדיוק אותו תהליך Edit כמו עם קוד — רק שהתוכן הוא Markdown.

מתחיל 5 דקות תיאוריה

טעויות נפוצות בעריכה — ואיך להימנע מהן

אחרי שעבדנו עם מאות משתמשים ש-Claude עורך להם קוד, הנה הטעויות הכי נפוצות — ואיך להימנע מכל אחת:

טעות נפוצה: אישור Diff בלי לקרוא אותו

מה הטעות: Claude מציג שינוי, המשתמש לוחץ "אישור" בלי להסתכל, ורק שעה אחר כך מגלה שClaude שינה גם משהו שלא ביקשו.

למה זה מפתה: אתם סומכים על Claude, והוא בדרך כלל צודק. אבל "בדרך כלל" לא מספיק בקוד.

מה לעשות במקום: תמיד קראו את ה-Diff. 10 שניות של קריאה חוסכות שעה של דיבאגינג. חפשו: האם רק מה שביקשתם השתנה? יש שינויים "שקופים"? יש מידע רגיש?

טעות נפוצה: Refactoring גדול בלי Commit

מה הטעות: מבקשים מ-Claude שינוי גדול, משהו נשבר, ואין לאן לחזור כי לא עשו commit לפני.

למה זה מפתה: "זה שינוי פשוט, מה כבר יכול להשתבש?" — הרבה.

מה לעשות במקום: לפני כל שינוי ניסיוני — git commit -m "before refactoring". 5 שניות. נקודת ביטחון שתמיד אפשר לחזור אליה.

טעות נפוצה: "שפר את הקוד" — הנחיה מעורפלת

מה הטעות: "שפר את הקוד" — Claude מחליט לבד מה "לשפר" ועושה 20 שינויים שלא רציתם.

למה זה מפתה: אתם לא בטוחים מה בדיוק לשפר, אז נותנים ל-Claude להחליט.

מה לעשות במקום: היו ספציפיים: "שפר את הפונקציה calculate_tax — הוסף טיפול ב-null input ו-type hints". ככל שהבקשה מדויקת, כך Claude עושה בדיוק מה שרציתם.

שימו לב: Write כשצריך Edit

"שכתב את הקובץ" כשצריך רק לשנות 3 שורות — Claude מחליף את כל הקובץ ולפעמים משנה דברים שלא רציתם. השתמשו ב-Edit לכל שינוי שהוא פחות מ-80% מהקובץ.

שימו לב: שכחת בדיקה אחרי שינויים רב-קובציים

Claude עדכן 5 קבצים, 4 מהם בסדר ואחד שבור. אחרי שינויים רב-קובציים, הריצו git diff על כל הקבצים ובקשו Code Review מ-Claude.

עשה עכשיו 1 דקה

שימו לב לטעות מספר 1 — הפעם הבאה שClaude מציג Diff, עצרו. קראו כל שורה שהשתנתה. שאלו את עצמכם: "זה מה שביקשתי?" רק אחרי שהתשובה "כן" — אשרו.

מילון מונחים — Editing & Writing
מונח (English) עברית הגדרה
Edit (Tool)כלי עריכהשינוי כירורגי — מחליף old_string ב-new_string בלי לגעת בשאר הקובץ
Write (Tool)כלי כתיבהיוצר קובץ חדש מאפס או מחליף לגמרי קובץ קיים
old_string / new_stringשני הפרמטרים של Edit — הטקסט למצוא והטקסט שמחליף אותו
replace_allהחלפת הכולפרמטר Edit שמחליף את כל המופעים בקובץ, לא רק הראשון
Diffהבדליםהצגת ההבדלים בין שתי גרסאות — שורות + (נוספו) ושורות - (הוסרו)
Merge Conflictקונפליקט מיזוגgit לא מצליח למזג שני שינויים באותן שורות אוטומטית
Checkpointנקודת שחזורשמירה אוטומטית שClaude Code יוצר בכל פרומפט — נשמרת 30 יום
/rewindחזרה בזמןפקודה שמחזירה שיחה + קבצים לנקודת Checkpoint קודמת
Code Reviewסקירת קודבדיקת איכות, באגים, אבטחה, וביצועים לפני פרודקשן
Greenfieldפרויקט חדשפרויקט מאפס — ללא קוד קיים, מתחילים מדף נקי
Legacy Codeקוד קיים/ישןקוד שמישהו אחר כתב — דורש גישה שמרנית
Plan Modeמצב תכנוןShift+Tab x2 או /plan — Claude מתכנן ומציג לאישור לפני ביצוע
בינוני 5 דקות תיאוריה

Frameworks להחלטות

מסגרת החלטה: איזה כלי עריכה להשתמש?
שאלהתשובהכלי
האם הקובץ קיים?לא — צריך ליצורWrite
כמה מהקובץ משתנה?פחות מ-80%Edit
כמה מהקובץ משתנה?יותר מ-80%Write (שכתוב מלא)
כמה מקומות לשנות?מקום אחד ייחודיEdit רגיל
כמה מקומות לשנות?כל המופעים בקובץEdit עם replace_all
מסגרת החלטה: מתי לפרק שינוי רב-קובצי לשלבים?
מספר קבציםגישה מומלצתלמה
1-3 קבציםTurn אחד — "עדכן מודל, API, וטסט"מספיק קטן, Claude מנהל בקלות
4-9 קבציםPlan Mode → Executeצריך תכנון, אבל אפשר ב-turn אחד
10+ קבציםשלבים: Backend → Frontend → Testsמונע טעויות, בדיקה בכל שלב
מסגרת החלטה: תקציב מורכבות — האם הפתרון פרופורציונלי?
גודל הבעיהמורכבות מקסימליתדוגמה
שינוי ערך אחדשורה אחת — Edit בודדשינוי פורט, עדכון URL
תיקון באג2-10 שורות — Edit ממוקדתיקון תנאי, null check
הוספת פיצ'ר קטן20-50 שורות — כמה Editsשדה חדש, endpoint
פיצ'ר גדול100+ שורות — Plan Mode + שלביםמערכת הרשאות, מודול
סקריפט חד-פעמיפשוט ככל האפשרניתוח CSV, Migration
מתחיל 5 דקות פרקטי

שגרת עבודה — עריכה יומיומית עם Claude Code

בנוסף לשגרת הניווט מפרק 5, הנה משימות העריכה שכדאי לשלב:

שגרת עריכה וכתיבת קוד
תדירותמה לעשותזמן
לפני כל עריכהCommit או stash — נקודת ביטחון. git status להבין מצב נוכחי30 שניות
בזמן עריכהקראו כל Diff לפני אישור. אם לא ברור — "למה שינית את זה?"10-30 שניות
אחרי עריכהCode Review: "סקור את ה-git diff". הריצו טסטים. בדקו שהכול עובד2-5 דקות
לפני Commit"סקור לפני commit". ודאו שאין סודות (API Keys, passwords)1-2 דקות
כל שבוע"יש דרך לפשט?" — נקו קוד מת, מחקו TODO-ים שטופלו15-30 דקות
הרגל הזהב: Review → Fix → Commit

שלושה שלבים לפני כל commit: (1) סקירה — "סקור את ה-git diff", (2) תיקון — "תקן את מה שמצאת", (3) commit. הלולאה הזו תופסת 90% מהבעיות לפני שהן מגיעות לפרודקשן.

תרחיש יומיומי — כל השלבים יחד

הנה תרחיש מציאותי שממחיש את כל שגרת העבודה בפעולה:

1

התחלת יום — בטיחות

git status → ודאו שהכול נקי. git pull → קבלו שינויים אחרונים.

2

הבנה — לפני שנוגעים בקוד

"תסביר איך עובד מודול ה-payments" → Claude קורא, מסביר, ומראה את הזרימה.

3

תכנון — Plan Mode

"תכנן איך להוסיף תמיכה ב-PayPal" → Claude מציג תוכנית, אתם מאשרים.

4

ביצוע — Edit / Write

"בצע את התוכנית" → Claude עורך קבצים. אתם מסתכלים על כל Diff.

5

סקירה — Code Review

"סקור את ה-git diff" → Claude בודק, מציין בעיות, מתקן.

6

שמירה — Commit

git add .git commit -m "Add PayPal support" → סיימתם.

זו הלולאה שתחזרו עליה עשרות פעמים ביום. ככל שתתרגלו אותה יותר, היא תהפוך לאוטומטית — ואתם תהיו הרבה יותר פרודוקטיביים ובטוחים בשינויים שאתם מבצעים.

בינוני 45-60 דקות פרקטי

תרגילים מעשיים

תרגיל 1: Edit מול Write — תרגול שיטתי

בנו פרויקט קטן מאפס ותרגלו את שני הכלים:

  1. Write: בקשו מ-Claude ליצור app.py — Flask app פשוטה עם route אחד שמחזירה "Hello World"
  2. Edit: "הוסף route חדש /about שמחזיר את שם האפליקציה"
  3. Edit: "שנה את הפורט מ-5000 ל-8000"
  4. Edit (replace_all): "שנה את שם האפליקציה מ-'MyApp' ל-'SuperApp' בכל הקובץ"
  5. Write: "צור test_app.py עם טסטים לשני ה-routes"
  6. Edit: "הוסף טסט שבודק שה-route של /about מחזיר 'SuperApp'"
  7. Diff: "הראה לי את ה-git diff של כל מה ששינינו"

זמן משוער: 15-20 דקות. מה לשים לב: בכל שלב, הסתכלו מה הכלי שנבחר ולמה. זהו את הדפוס.

תרגיל 2: שינוי רב-קובצי מתואם

תרגלו עריכה מתואמת של מספר קבצים:

  1. צרו 3 קבצים: config.json (הגדרות), app.py (אפליקציה שקוראת מהגדרות), README.md (תיעוד)
  2. בקשו מ-Claude: "שנה את שם הפרויקט מ-'demo' ל-'production-app' בכל הקבצים — config, app, ו-README"
  3. צפו ב-Claude קורא את שלושת הקבצים, מבצע Edit בכל אחד, ומוודא עקביות
  4. בקשו: "הראה לי סיכום של כל מה ששינית"
  5. בדקו עם git diff שכל השינויים נכונים

זמן משוער: 10-15 דקות. תוצאה: הבנה של איך Claude מנהל שינויים חוצי-קבצים.

תרגיל 3: Code Review ותיקון

תרגלו את לולאת ה-Review → Fix:

  1. קחו קובץ קוד קיים שלכם (כל שפה)
  2. בקשו מ-Claude: "סקור את הקובץ הזה — מצא באגים, בעיות אבטחה, בעיות ביצועים, ומקומות שאפשר לפשט"
  3. קראו את רשימת הממצאים
  4. בחרו 2-3 ממצאים ובקשו מ-Claude לתקן אותם
  5. סקרו את ה-Diffs — האם התיקונים הגיוניים?
  6. בקשו Review שני: "סקור שוב — האם התיקונים יצרו בעיות חדשות?"

זמן משוער: 15-20 דקות. תוצאה: שליטה בתהליך ה-Review → Fix → Review.

תרגיל 4: Undo — תרגול רשתות ביטחון

תרגלו את כל מנגנוני ה-Undo:

  1. עשו git commit -m "starting point" — שמרו נקודת ביטחון
  2. בקשו מ-Claude שינוי: "הוסף לוגינג לכל הפונקציות"
  3. תרגול Undo #1 — אמרו: "בטל את השינוי האחרון"
  4. בקשו שינוי נוסף: "שנה את כל ה-var ל-const"
  5. תרגול Undo #2 — הקישו Escape פעמיים (/rewind מהיר)
  6. בקשו שינוי שלישי: "מחק את כל ה-comments"
  7. תרגול Undo #3 — הריצו git checkout -- . כדי לחזור ל-commit
  8. ודאו שחזרתם בדיוק למצב ההתחלתי

זמן משוער: 10 דקות. תוצאה: ביטחון מלא שאתם יכולים לבטל כל שינוי.

אם אתם עושים רק דבר אחד מהפרק הזה 5 דקות

פתחו קובץ קוד שלכם, בקשו מ-Claude: "סקור את הקובץ הזה ותקן את הבעיה הכי חשובה שמצאת". סקרו את ה-Diff, ואם זה נראה טוב — אשרו. עשיתם Code Review ותיקון מושלם: Edit כירורגי, Review שתפס בעיה אמיתית, ו-Diff ברור. זו הלולאה שתלווה אתכם בכל יום עבודה.

בדוק את עצמך

5 שאלות — 4 מתוך 5 = עוברים
  1. למה Edit עדיף תמיד על Write בקבצים קיימים — מה היתרון מבחינת Git?
    (רמז: חשבו על הבדלים ב-Diff, ב-Code Review, ובהיסטוריה)
  2. איך כלל הייחודיות של Edit מגן עליכם משגיאות?
    (רמז: מה קורה כש-old_string מופיע 5 פעמים בקובץ)
  3. מדוע הלולאה Review → Fix → Commit חוסכת כסף אמיתי?
    (רמז: חשבו על עלות באג בפרודקשן מול עלות סקירה של 30 שניות)
  4. איך 4 מנגנוני ה-Undo משלימים זה את זה — ומתי משתמשים בכל אחד?
    (רמז: git checkout לקובץ אחד, /rewind לשיחה שלמה, Escape x2 למהיר, מילולי לפשוט)
  5. למה "Keep it simple" היא לא רק עצה טובה אלא הכרח בעבודה עם Claude?
    (רמז: חשבו על הנטייה הטבעית של Claude ל-Over-Engineering ועל תקציב מורכבות)

צ'קליסט — סיכום פרק 6

סיכום הפרק

הפרק הזה לימד אתכם את הצד הפעיל של Claude Code — לא רק למצוא מידע, אלא לשנות אותו בביטחון. התובנה המרכזית: Edit הוא הכלי המועדף תמיד (95% מהמקרים) כי הוא שקוף, בטוח, ויוצר Diff נקי. הלולאה Review → Fix → Commit היא ההרגל הכי חשוב שתרכשו — 30 שניות של סקירה חוסכות שעות של דיבאגינג. ועם 4 מנגנוני Undo, אתם יכולים להתנסות בחופשיות בלי פחד. בפרק הבא נעבור ל-VS Code ואינטגרציה עם IDE — כל מה שלמדתם בפרק הזה יעבוד אותו דבר, רק עם ממשק גרפי הרבה יותר נוח.