<div dir="rtl" lang="he">

# תרגילים - שיעור 1.2: Claude Code – התקנה, הגדרה, 7 רמות השליטה

## מידע כללי
- **שיעור:** 1.2 - Claude Code: התקנה, הגדרה, 7 רמות השליטה, Voice Mode
- **סוג השיעור:** מעשי (4 שעות)
- **הערה:** שיעור hands-on – כל תרגיל מתבצע ב-Claude Code עצמו

---

## תרגיל 1: התקנה ואימות (בכיתה – 15 דקות)

### הנחיות:
1. התקינו Claude Code לפי השיטה המתאימה למערכת שלכם:
   - Mac: `brew install claude-code` או Native Installer
   - Linux: Native Installer
   - Windows: Native Installer (או WSL + Linux)
2. הריצו `claude --version` לאימות ההתקנה
3. הריצו `claude` והתחברו עם החשבון שלכם
4. כתבו את ההודעה הראשונה: `שלום! מה אתה יכול לעשות?`

### שאלות לתיעוד:
- באיזו שיטה התקנתם?
- מה הגרסה שמותקנת?
- האם נתקלתם בשגיאה? מה הייתה ואיך פתרתם?

---

## תרגיל 2: פקודות בסיסיות (בכיתה – 10 דקות)

### הנחיות:
נסו כל אחת מהפקודות הבאות ותאר מה קרה:

1. `/help` – מה רואים?
2. בקשו מ-Claude: `כתוב לי פונקציה Python שמחשבת האם מספר הוא ראשוני`
3. אחרי שקיבלתם תשובה – `Shift+Tab` + בקשו שינוי קטן. מה השתנה?
4. `/undo` – מה קרה?
5. `/clear` – מה ההבדל בין /clear ל-/undo?

### שאלה לחשיבה:
מתי תשתמשו ב-/compact לעומת /clear?

---

## תרגיל 3: Prompt ספציפי לעומת כללי (בכיתה – 10 דקות)

### הנחיות:
שלחו לClaude **שני prompts** לאותה משימה:

**Prompt כללי:**
`תכתוב לי קוד שמנהל משתמשים`

**Prompt ספציפי:**
`תכתוב מחלקה Python בשם UserManager עם מתודות:
- add_user(name, email, role) – מוסיפה משתמש לרשימה
- get_user(email) – מחזירה משתמש לפי אימייל
- delete_user(email) – מוחקת משתמש
- list_users() – מחזירה כל המשתמשים
כל משתמש: dict עם שדות name, email, role, created_at.
הוסף validation שהאימייל מכיל @.`

### שאלות:
1. מה ההבדל באיכות התוצאות?
2. כמה זמן לקח לכל תשובה?
3. האם הייתם צריכים לשאול שאלות המשך עם הפרומפט הספציפי?

---

## תרגיל 4: CLAUDE.md – יצירת אישיות לפרויקט (בכיתה – 20 דקות)

### הנחיות:
1. צרו תיקיה חדשה: `mkdir my-demo-project && cd my-demo-project`
2. צרו קובץ CLAUDE.md עם הדרישות שלכם (ראו תבנית למטה)
3. הריצו `claude` בתוך התיקיה
4. בקשו מ-Claude לכתוב פונקציה פשוטה
5. בדקו שהוא עמד בכללים שהגדרתם

### תבנית CLAUDE.md מינימלית:
```
# [שם הפרויקט שלי]

## שפה ו-Stack
- שפת תכנות: Python 3.11
- לא להשתמש ב-JavaScript בשום מקרה

## כללים
- כל פונקציה חייבת docstring בעברית
- כל קוד חייב type hints
- אל תמחק קבצים קיימים

## פקודות
- Test: pytest
- Lint: flake8
```

### שאלות:
1. האם Claude ביצע את הכללים שהגדרתם?
2. מה הייתם מוסיפים ל-CLAUDE.md לפרויקט אמיתי שלכם?

---

## תרגיל 5: מצבי הרשאות (בכיתה – 15 דקות)

### הנחיות:
נסו את ההבדל בין מצבי הרשאות:

**ניסוי א' – Ask Mode (ברירת מחדל):**
בקשו מ-Claude: `צור קובץ test.py עם פונקציה שמחשבת שורש ריבועי`
שימו לב: האם ביקש אישור לפני יצירת הקובץ?

**ניסוי ב' – Plan Mode:**
לחצו `Shift+Tab` ואז בקשו: `צור שלושה קבצים: config.py, utils.py, main.py עם פונקציה בכל קובץ`
שימו לב: מה ראיתם לפני שClaude ביצע?

**ניסוי ג' – /undo:**
אחרי שClaude יצר קבצים, כתבו `/undo` ובדקו מה קרה.

### שאלות:
1. מתי Plan Mode יצל אתכם מטעות?
2. מה ההבדל בין /clear ל-/undo?

---

## תרגיל 6: Voice Mode (בכיתה – 10 דקות)

### הנחיות:
1. הקלידו `/voice` ב-Claude Code
2. החזיקו spacebar ודברו: **"תכתוב לי פונקציה Python שמקבלת רשימת מספרים ומחזירה רק את הזוגיים"**
3. שחררו את spacebar
4. בדקו את התוצאה

**ניסיון מורכב יותר:**
5. דברו: "עכשיו תוסיף לפונקציה גם אפשרות לסנן מספרים אי זוגיים, עם פרמטר even=True שהוא ברירת מחדל"

### שאלות:
1. האם הבנה הייתה מלאה?
2. מתי היה כדאי להשתמש ב-Voice Mode לעומת הקלדה?
3. האם ניסיתם בעברית? מה היה הדיוק?

---

## תרגיל 7: סימולציה של רמות 1-2 (שיעורי בית – 45 דקות)

### הנחיות:
בחרו **פרויקט אמיתי** שיש לכם (עבודה, עסק, תחביב) ובצעו:

**חלק א' – רמה 1 (15 דקות):**
שלחו לClaude 5 בקשות שונות הקשורות לפרויקט שלכם. דרג מ-1 עד 5 את שביעות הרצון מהתוצאה.

**חלק ב' – רמה 2 (15 דקות):**
צרו CLAUDE.md לפרויקט שלכם עם:
- שפה/טכנולוגיות
- לפחות 3 כללים ספציפיים לתחום שלכם
- לפחות משהו אחד שClaude **לא** צריך לעשות

**חלק ג' – השוואה (15 דקות):**
חזרו על אותן 5 בקשות מחלק א' עם CLAUDE.md פעיל. האם התוצאות השתפרו?

### מה לכלול בהגשה:
- תוכן CLAUDE.md שיצרתם
- דוגמה אחת שהשתפרה משמעותית אחרי CLAUDE.md
- משהו שClaude עדיין לא עשה נכון

**הגישו עד השיעור הבא.**

---

## קריטריונים להערכה

| קריטריון | ציון |
|----------|------|
| התקנה מוצלחת ואימות עצמאי | 15% |
| שימוש נכון בפקודות slash וקיצורים | 20% |
| השוואת prompts – הבנת ההבדל | 20% |
| CLAUDE.md מלא ואפקטיבי | 30% |
| ניסוי Voice Mode ותיעוד | 15% |

</div>
