מתחילים ללמוד לתכנת? קחו 12 עצות מעשיות

[16 באוקטובר 2009] [9 תגובות]

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

12 עצות מעשיות למתכנתים מתחילים

1. חשוב להבין שהפרוייקט הראשון שלכם לא עומד להיות משחק אקשן מרובה-משתתפים בתלת-מימד. צריך להתחיל מהדברים פשוטים ולאט לאט להתקדם.

2. ישנן המון שפות תכנות ועליכם לבחור באחת מהן כנקודת התחלה. אני לא ממליץ להתעכב בשלב זה יותר מדי, מכיוון שניתן ללמוד עקרונות לתכנות נכון ב(כמעט) כל שפה שקיימת. אני אישית ממליץ על Java ותוכלו לקרוא על כך במדריך לבחירת השפה הראשונה שלכם.

3. על מנת להתחיל ולהבין על מה כל הסיפור, תוכלו להעזר במדריך ה-Java למתחילים כאן באתר. אם אתם מגלים שנושא התכנות מעניין אתכם, כדאי לשקול לקנות ספר בחנות. המחירים לא גבוהים והיקף החומר בספרים גדול יותר ומכיל דוגמאות ותרגילים רבים.

4. בשלב הראשון כדאי להבין איך לכתוב תוכניות בעזרת Notepad, להדר ולהריץ אותן מה-Command Line.

5. לאחר שלמדתם להדר ב-Command Line, מומלץ לתכנת בסביבת עבודה נוחה (למשל JCreator) שמאפשרת לכם להתרכז בלמידת העקרונות של תכנות נכון.

6. לימוד תכנות נעשה בשלבים כאשר כל שלב מתבסס על כל הידע שכבר למדתם. לכן, חשוב מאוד להבין כל שלב לעומקו ולא להתקדם קדימה במידה ואתם לא מבינים.

7. כאשר לומדים לתכנת לפי מדריך, אל תבצעו לעולם העתק-הדבק (copy-paste). אתם חייבים להתנסות בכתיבת הקוד בעצמכם. רק כך תוכלו להבדיל בין = (פעולת השמה) ל == (פעולת השוואה) ותבינו שיש הבדל בין משתנה בשם x למשתנה בשם X.

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

9. אותו רעיון נכון גם עבור תוכנית שמתהדרת, אבל בזמן הריצה מבצעת דברים שלא רציתם או יותר גרוע, פשוט מתרסקת. כדאי לעבוד לאט לאט ולנסות להבין מדוע הדברים קורים וכיצד ניתן לתקן אותם.

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

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

12. תכנות דורש סבלנות. לא הכל בא בקלות וצריך קצת "לשבור את הראש" כדי להבין דברים מסויימים.

עוד טיפ קטן ממני

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

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

גם המתכנת הכי בכיר התחיל מתוכנית פשוטה בשם Hello World, לכן קחו את הזמן ללמוד את הבסיס ואל תתייאשו.

בהצלחה!

אם אהבת את הפוסט, אני שולח מדי פעם למייל עוד פוסטים מעניינים שלא תמיד מגיעים להתפרסם באתר. אתה מוזמן להצטרף לרשימה:
(אני שונא ספאם. אני מבטיח לעולם לא לשלוח משהו לא מעניין)

9 תגובות

  1. המנכ"ל | 10/19/2009 3:04:01 AM

    כמו הרבה דברים בחיים, צריך ללכלך את הידיים בשביל להרים זהב מהריצפה..

    תיכנות הוא אחד מקצועות ה-Craft של המאה ה-20 שאין דומה לו. תוצרי המתכנת חיים בעולם וירטואלי ולכן אין עלויות מלאי ואין ערוצי שיווק פיסיים.

    משתלם לכל אחד ללמוד.

    מסכים עם כל הנקודות הנ"ל למעט 4.. אל תהרוג את הבן אדם.. אני מתכנת כבר יותר מ-10 שנים ואני לא זוכר את הפעם האחרונה שהייתי צריך לקמפל מהקומנד ליין. (זה כמובן תלוי שימוש, אבל המאמר מופנה למתכנתים בתחילת דרכם). 

  2. טל | 10/19/2009 12:46:21 PM

    תודה  שקפצת לבקר :)

    אני מבין למה אתה מתכוון בעצה מספר 4 ולכן אני אנסה לחדד:

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

    הידור תוכנית ב-IDE הוא "קסם" עבור מתכנתים שלא ראו מעולם Console. בעצה שאחרי אני ממליץ לעבור ל-IDE נוח.

  3. אלי | 10/24/2009 3:09:13 AM
    תודה רבה טל !!
  4. קובי | 7/22/2010 4:35:54 AM

    תודה רבה!

    אכן יש השלב שמרגישים חסומים ושדברים לא מתקדמים...

  5. מיקי | 2/18/2012 1:16:32 PM
    האם חובה לדעת אנגלית ממש טוב על מנת ללמוד JAVA..?
  6. ל-מיקי | 5/29/2012 6:07:03 AM
    ממש לא! רצוי לדעת את משמעות מילות הבסיס שאתה כותב... אבל מדובר במעט מאד מילים שרובן בסיסיות (if, print)
  7. אלון | 2/23/2013 6:21:52 AM

    אהלן,

    באיזה מחשב כדאי להתחיל? מאק או ווינדוס ומה חשוב שיהיה בו מבחינת נתונים טכניים של מעבד וכדומה? 

  8. גיא | 12/9/2016 2:58:38 AM
    תודה טל על כל הטיפים...בתור מתכנת מתחיל ,לי עוזר אישית קודם כל לכתוב את האלגוריתם לעצמי בפסאודוקוד או אפילו בעברית.קודם כל לסדר ברור את סדר הפקודות ולראות את ההגיון שבהם ורק אח"כ לתרגם לשפת תכנות...מקווה שתרמתי במשהו...תודה
  9. david | 1/22/2017 1:48:32 AM
    איזה אתר עדיף ללמוד אונלין ? 

הוסף תגובה