איך להיות מתכנת?

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

כמה שנים לוקח להיות מתכנת מקצועי
אם אתה רוצה לקחת פיתוח אתרים, נסה ללמוד HTML ו- CSS. כמה שנים לוקח להיות מתכנת מקצועי?

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

צעדים

  1. 1
    עברו קורס מבוא באחד (או בכולם) מהדיסציפלינות הבאות:
    • הגיון
    • מתמטיקה דיסקרטית
    • שפת תכנות (קח חלק בפרדיגמות התכנות השונות, החל מרצף / פרוצדורלי לאובייקט, לאחר תכנות פונקציונאלי והגיוני. עדיף רובי / פייתון / פסקל למתחילים ואחרי הבנה טובה נכנס לעומק C ++ / C # / Java)
    טיפ מומחה

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

  2. 2
    למד מושגי מסדי נתונים כגון טבלאות, תצוגות / שאילתות ונהלים. אתה יכול להשתמש בכל חבילת מסד נתונים פשוטה לשם כך, כגון:
    • גישה ל- MS
    • DB V.
    • פוקס פרו
    • פרדוקס
    • MySQL הוא מסד נתונים טוב ללמוד מכיוון שהוא משמש בחינם, נפוץ ובסיסי נתונים נפוצים באמצעות שאילתות SQL
  3. 3
    החליטו איזה סוג מתכנת אתם רוצים להיות. מתכנתים נופלים בדרך כלל באחת מהקטגוריות הבאות:
    • מתכנת אתרים
    • מתכנת יישומי שולחן עבודה
    • מתכנת יישומים מבוזרים
    • ספרייה / פלטפורמה / מסגרת / מתכנת ליבה
    • מתכנת מערכת
      • מתכנת ליבה
      • מתכנת נהגים
      • מתכנת מהדר
    • מדען תכנות
  4. 4
    למדו את הטכנולוגיות ושפות התכנות הקשורות לתחום התכנות שבחרתם. החלקים הבאים מפרטים את המשימות לסוגי תכנות שונים.

שיטה 1 מתוך 6: תכנות אתרים

  1. 1
    דע מה כרוך בתכנות אתרים. יישומי אינטרנט הם רכיבי תוכנה שנועדו לעבוד על גבי ארכיטקטורת האינטרנט. משמעות הדבר היא כי היישומים ניגשים באמצעות תוכנת דפדפן אינטרנט כגון Firefox או Internet Explorer. היותו בנוי על גבי ארכיטקטורת האינטרנט אינו מצריך בהכרח חיבור פעיל לאינטרנט. פירוש הדבר כי יישומי אינטרנט בנויים על גבי טכנולוגיות אינטרנט סטנדרטיות כגון:
  2. 2
    דפדף באתרים רבים ומגוונים כדי ללמוד כיצד הם נראים בדרך כלל. (לחץ לחיצה ימנית ואז לחץ על צפה במקור או לחץ על F12.) חפש גיוון בסוג / בתוכן האתר, ולא בכמות האתרים שביקרו בהם. ככלל, יהיה עליך לבקר לפחות באחד מכל אחד מהאתרים הבאים:
    • אתרי נוכחות תאגידית (תאגידים מסחריים, ארגונים / ארגונים ללא כוונת רווח, ארגונים ממשלתיים)
    • מנועי אינדקס אינטרנט (מנועי חיפוש, אתרי חיפוש מטא, מנועי חיפוש מיוחדים, ספריות)
    • אתרי כריית נתונים
    • אתרים אישיים
    • דפי מידע / אנציקלופדיה (וויקי, דפי נתונים, מפרט טכני ומדריכים המציגים ספריות, בלוגים וכתבי עת, אתרי סוכנויות חדשות וחדשות, דפים צהובים וכו ').
    • אתרים חברתיים (פורטלים חברתיים, אתרי סימניות, אתרי רישום)
    • אתרים שיתופיים (זה כולל קטגוריות אחרות שהוזכרו לעיל, כגון וויקים ובלוגים)
  3. 3
    למדו לפחות טכניקה / שיטת סיעור מוחות אחת ותוכנה המשמשת ליישום שיטה זו. לדוגמא: דיאגרמות סיעור מוחות ו- MS Visio.
  4. 4
    הכירו את מבנה האתר. זה יוצר דיאגרמות אינטרנט קונספטואליות, מפות אתרים ומבני ניווט.
  5. 5
    עברו קורס התרסקות בנושא עיצוב גרפי. נסה ללמוד לפחות חבילת תוכנה אחת לעריכת גרפיקה / מניפולציה (אופציונלי, אך מומלץ בחום)
  6. 6
    למדו את היסודות של תשתית האינטרנט. זה כולל קבלת רעיון בסיסי לגבי:
    • פרוטוקולי שירותי אינטרנט בסיסיים (HTTP, FTP, SMTP ו- POP3 או IMAP4)
    • תוכנת שרת אינטרנט (רצוי, אחת לפלטפורמה שתעבוד עליה בעיקר)
    • תוכנת גלישה באינטרנט.
    • שרת דוא"ל ותוכנת לקוח
  7. 7
    למדו את שפות HTML ו- CSS. כדאי גם להשיג את חבילת התוכנה "מה שאתה רואה זה מה שאתה מקבל (WYSIWYG)" לעריכת HTML.
  8. 8
    למד טכנולוגיות הקשורות ל- XML ו- XML, כגון XSL ו- xpath (אופציונלי אך מומלץ).
  9. 9
    צור אתרים סטטיים פשוטים עד שאתה מכיר ונוח סביב html.
  10. 10
    למדו שפת סקריפטים בצד הלקוח. רוב המשתמשים לומדים Javascript. חלקם לומדים Vbscript, אך זה אינו תואם לרוב הדפדפנים.
  11. 11
    הכירו את שפת התסריטים בצד הלקוח שלמדתם. נסה לממש את הפוטנציאל שלך בעזרת שפה זו בלבד. עבור לשלב הבא רק לאחר שהכרת לפחות את שפת התסריט בצד הלקוח שלך.
  12. 12
    למדו לפחות שפת תכנות אחת בצד השרת. אם תבחר להגביל את עצמך לתוכנת שרת אחת, למד אחת משפות התכנות הנתמכות על ידי אותה תוכנה. אם לא, למדו לפחות שפת תכנות אחת בכל תוכנת שרת.
  13. 13
    צרו לעצמכם פרויקט פיילוט לאחר שתסיימו ללמוד את שפת התכנות בצד השרת.
  14. 14
    השג אתר משלך והתחל להתנסות באינטרנט בתוך הדף שלך.
איך אוכל להיות מתכנת ללא מכללה
איך אוכל להיות מתכנת ללא מכללה?

שיטה 2 מתוך 6: תכנות יישומי שולחן עבודה

  1. 1
    דע למה אתה נכנס עם תכנות יישומים שולחניים. רוב מתכנתי שולחן העבודה כותבים קוד לפתרונות עסקיים, כך שקבלת מושג אודות עסקים, המבנה הארגוני והפיננסי שלהם תהיה חוסכת זמן.
  2. 2
    למד על ארכיטקטורות חומרת המחשב השונות. קורס ברמת הכרות בעיצוב מעגלים דיגיטליים ועוד באדריכלות מחשבים הוא שימושי; עם זאת, יש הרואים בו כמי מתקדמים עבור נקודת ההתחלה, אז לקרוא שניים או שלושה מאמרים הדרכה (כגון אחד זה ואת זה אחד) עשוי להספיק. לאחר מכן תוכל לחזור לשלב זה מאוחר יותר, לאחר שתלמד את שפת התכנות הראשונה שלך.
  3. 3
    למדו שפת תכנות ברמת כניסה (ילדים). אל תתביישו ללמוד שפה כזו רק בגלל שאתם מבוגרים מכך שקוראים לכם "ילד". דוגמה לשפות תכנות אלה יכולה להיות Scratch. שפות תכנות אלה יכולות להקל מאוד על הכאב בלימוד שפת התכנות הראשונה שלך. עם זאת, שלב זה הוא אופציונלי. ניתן לעשות זאת גם לפני השלב הקודם.
  4. 4
  5. 5
    עברו קורס היכרות באחת משפות התכנות הפרוצדוראליות. לא משנה באיזו שפה תבחרו בהמשך כדי להיות שפת הבחירה שלכם, זה ידרוש תכנות פרוצדוראלי ברמה כלשהי. כמו כן, דיווחים על תכנות פרוצדוראליות על ידי רוב המתכנתים כי הם הקלים ביותר לשימוש כנקודת מוצא כדי לקבל את הרעיון של תכנות באופן כללי.
  6. 6
    למדו לפחות טכניקת דוגמנות מתקדמת אחת כגון UML או ORM.
  7. 7
    התחל לכתוב כמה קונסולות קטנות או יישומים דמויי קונסולה. אתה יכול לעשות שימוש בתרגילים קטנים נפוצים בספרי שפות תכנות. לשם כך בחר כלי לכתיבת תוכניות בשפת התכנות בה אתה כותב.
  8. 8
    עברו קורס מתקדם יותר בשפת התכנות שבחרתם. ודא שאתה מבין היטב את המושגים הבאים ושתוכל ליישם אותם בקלות יחסית לפני שתמשיך:
    • קלט והפקת מידע למשתמשים בתוכנית.
    • הזרימה הלוגית וזרימת הביצוע של תוכניות בשפות פרוצדורליות.
    • הכרזה, הקצאה והשוואה של משתנים.
    • תכנות הסתעפות מבנה כמו אם..אז..לחץ ובחר / החלף..כריכה.
    • מבני לולאה כגון בזמן..עשה, עשה..בינתיים / עד, בשביל..באחרי.
    • תחביר שפת התכנות שלך ליצירת ונהלי התקשרות ופונקציות.
    • סוגי נתונים ומניפולציות עליהם.
    • סוגי נתונים מוגדרים על ידי המשתמש (רשומות / סטרוקטורות / יחידות) והשימוש בהם.
    • אם השפה שלך תומכת בפונקציות עומס יתר, הבן זאת.
    • שיטות הגישה לזיכרון לפי שפת בחירתך (מצביעים, הצצה וכו ')
    • אם השפה שלך תומכת בעומס יתר של מפעילים, הבן זאת.
    • אם השפה שלך תומכת בצירים / מצביעי פונקציות, הבן זאת.
  9. 9
    יישם את הטכניקות המתקדמות שלמדת.
  10. 10
    עברו קורס מבוא לפחות בשפת תכנות אחת נוספת בפרדיגמת תכנות אחרת. מומלץ ללמוד שפת תכנות אחת מכל פרדיגמה, ורוב המתכנתים המתקדמים עושים זאת, אולם בדרך כלל אתה מתחיל בשפה אחת, עובד זמן מה ליישם את הידע שלך ולתרגל אותו, ואז ללמוד את השני בהמשך, לאחר שכבר היה לך אמיתי -חוויית חיים בתכנות. נסה אחד מאזורי השפה הבאים:
    • פרדיגמת תכנות לוגיקה.
    • פרדיגמת תכנות פונקציונלית.
    • פרדיגמה מונחית עצמים.
  11. 11
    נסה להשוות בין שתי שפות התכנות שלמדת עד כה. הערך את נקודות החוזק והחולשה של כל אחד. בדרך כלל זה נעשה על ידי:
    • לקיחת דוגמאות פשוטות של עבודתך המוקדמת בשפת התכנות הראשונה וכתיבה מחדש באמצעות שפת התכנות השנייה.
    • יצירת פרויקט חדש ונסו ליישם אותו בשתי השפות. לפעמים, תלוי בבחירת הפרויקט והשפות שלך, ייתכן שלא תוכל ליישם את הפרויקט באחת מהשפות!
    • כתיבת השוואות בגיליון צ'אט או בטבלת סיכומים בין מבנים דומים בשתי השפות ותכונות ייחודיות לכל אחת מהשפות.
    • נסה למצוא דרכים לחקות תכונות ייחודיות לאחת משתי השפות המשתמשות בשפה השנייה.
  12. 12
    למדו מושגי תכנות חזותיים באמצעות אחת השפות שלמדתם. כמעט בכל שפות התכנות יש גרסאות / ספריות התומכות בתכנות חזותי ואחרות התומכות בתכנות קונסולות או קונסולות. ניתן להשיג זאת על ידי:
    • קבלו מבוא לתכנות מונחה אירועים. רוב התכנות החזותיות מסתמכות ברמה מסוימת על אירועים וטיפול באירועים (באמצעות שפת התכנות שתבחרו).
    • נסה כמה שיותר תוכנות שולחן עבודה ותבין מה התוכנה עושה. רוב חברות פיתוח התוכנה מציעות גרסאות לבדיקת בטא של המוצרים שלהן באמצעותן ניתן לבדוק את התוכנה. התעדכנו בקידום ממשקי המשתמש.
    • קרא מאמרים או מדריכים על ממשקי משתמש גרפיים.
  13. 13
    התחל ליישם את הידע שלך בפרויקטים קטנים של תוכנה שאתה מעצב. נסה ליישם את מומחיות התכנות שלך על בעיות שאתה מתמודד בחיי היומיום שלך. לדוגמא, כתוב תוכניות המשנות את שמות הקבצים במסה, משווה בין קבצי טקסט באופן חזותי, מעתיקה את שמות הקבצים בספרייה לזיכרון / קובץ טקסט ודברים כאלה. שמור על זה פשוט בהתחלה.
  14. 14
    צור פרויקט סיום וירטואלי. השלם זאת עד הסוף, תוך יישום טכניקות התכנות החזותית שלמדת עד כה.
  15. 15
    הרחיב את הבנתך את המסגרת החזותית / הספרייה / החבילה שלמדת קודם על ידי השתתפות בקורסים מתקדמים, תוך התייחסות יתרה לפרטים ולמידה של טיפים וטריקים נוספים למסגרת שלך ממשאבים מקוונים.
  16. 16
    חפש חבילות / ספריות אחרות של אלמנטים חזותיים עבור שפות התכנות שלך ולמד אותם.
  17. 17
    עברו קורס גרפיקה (לא עיצוב גרפי). זה יעזור מאוד למתכנתים שרוצים לכתוב אלמנטים מושכים של ממשק המשתמש.
  18. 18
    שקול להיות מתכנת משחקים (אופציונלי). תכנות משחק נחשב, ברוב חלקיו, לתכנות שולחני. אם אתה מתכוון להיות מתכנת משחקים, תצטרך ללמוד עוד על תכנות משחקים לאחר שתסיים את השלבים האלה. קורס גרפיקה הוא חובה עבור מתכנתי המשחק והשפה השנייה שנבחרה בשלבים הקודמים צריכה להיות שפת תכנות לוגית / פונקציונלית (רצוי פרולוג או ליספ).

שיטה 3 מתוך 6: תכנות יישומים מבוזרים

  1. 1
    התמודד עם תכנות יישומים מבוזרים. תכנות יישומים מבוזר נחשב בעיני רבים לאחד הקשים ביותר ללמוד ודורש ידע מגוון בטכנולוגיות מחשב ותקשורת.
  2. 2
    בוא להכיר במהירות מערכות טלפוניה וחומרה שלהן. שלב זה הוא אופציונלי. עם זאת, זה מאוד שימושי בהבנת טופולוגיות רשת.
  3. 3
    הכירו את ארכיטקטורות החומרה ברשת והתקנים כמו רכזות, מתגים ונתבים.
  4. 4
    עברו קורס בפרוטוקולים וחיוני רשת. אתה זקוק להבנה טובה של מודל חיבורי הקישור למערכת הפתוחה (OSI), אתרנט, IP, TCP, UDP ו- HTTP לפני שתתחיל לתכנת יישומים מבוזרים.
  5. 5
    למדו את שפת ה- XML והכירו אותה.
  6. 6
    התחל בלמידת שפת סקריפטים של מעטפת. עבור תכנות מבוסס Windows, זה יהיה כל סקריפט שעובד עם Windows Scripting Host. עבור תכנות מבוסס לינוקס, תסריטי Bash ו- Perl יספיקו. JavaScript מומלץ מאוד לכך בשתי הפלטפורמות מהסיבות הבאות:
    • הוא נתמך כמעט על ידי כל מארח סקריפטים בכל מערכת הפעלה (Windows Scripting Host תומך ב- JavaScript כברירת מחדל, ברוב הפצות לינוקס יש חבילה לתמיכה בקונסולת Scripting JavaScript.)
    • זה נחשב כקל יותר ללמוד על ידי מפתחים רבים.
    • יש לו תחביר הנגזר מ- ALGOL שמכיר אתכם עם הרבה יותר שפות תכנות אחרות כשאתם צריכים לבחור שפת תכנות שנייה (C, C ++, C #, Java ו- J # לכולם יש תחביר הנגזר מ- ALGOL).
    • על ידי לימוד JavaScript, אתה מכיר את התסריטים בצד הלקוח של דפי אינטרנט שזו תופעת לוואי בונוס!
  7. 7
    החל תחילה רק תכנות פרוצדוראלי באמצעות שפת התסריט שבחרת. בהמשך תוכלו להשתמש בטכניקות תכנות מתקדמות יותר ובפרדיגמות בהתאם לשפת התסריט שלכם ולמה שהיא תומכת. לכל שפות התסריט יש כמה היבטי תכנות פרוצדורליים ברמה מסוימת.
  8. 8
    השתמש בשפת התסריט שלמדת כדי לכתוב סקריפטים שמבצעים תקשורת בין מכונות. למד מה נחוץ לשם כך. תקשורת פשוטה תספיק.
  9. 9
    בצע העברה לשפת סקריפטים / תכנות בשולחן העבודה. רצוי, שפה שהיא שפה מרובת פרדיגמות כמו פייתון. קח מבוא פשוט לשפה השנייה. ג'אווה נחשבת בעיני רוב המתכנתים לשפת הבחירה מסיבות רבות. עם זאת, C # תופס תאוצה מהירה בתחום זה. Java ו- C # מועדפים מהסיבות הבאות:
    • הן שפות תכנות מונחות עצמים המגנות על מתכנתים בצוותים גדולים מפני פרטי יישום שכן שניהם תומכים ברכיבים (יחידות קוד, שהורכבו מראש, שמבצעות משימה מסוימת וניתן להשתמש בהן בתוכניות אחרות).
    • הם תומכים בתכנות מונחה אירועים, כמו גם בתכנות OO ופרוצדורליות ברמה מסוימת.
    • המסגרת עליה מבוססת השפה מופצת לפי הטבע (במקרה של ג'אווה).
    • הזמינות של חבילות מוכנות רבות העוסקות ברשת, הן כקוד קוד פתוח והן כחבילות מובנות במסגרת. זה מקל על מתכנתים לבנות על עבודתם של אחרים.
  10. 10
    התרכז יותר בתכונות הליבה של השפה, במיוחד אלה התומכות ברשת. שימו לב פחות לאלמנטים של ממשק משתמש כגון הפקה, עיצוב חלונות וטכניקות ואלמנטים של ממשק משתמש.
  11. 11
    עברו קורס על עיצוב יישומים מבוזרים וארכיטקטורות. ניתן לעשות זאת באמצעות ספרים, הדרכות מקוונות או קורסים אקדמיים. עם זאת, יש צורך בהבנת הארכיטקטורה של יישומים מבוזרים ומושגיה.
  12. 12
    למד אודות בניית רכיבים ושירותים בשירות באמצעות שפת התכנות שבחרת.
  13. 13
    למד אחת או יותר מהטכנולוגיות הבאות. מומלץ לקבל לפחות היכרות עם כולם. רוב מתכנתי היישומים המופצים אינם עוצרים בשפת תכנות אחת או שתיים, אלא לומדים לפחות שפת תכנות אחת בכל מערכת הפעלה. הסיבה לכך היא שאם ברצונך ש"הופץ "היישום שלך, עליך לספק גרסה שלו לפחות לכל מערכת הפעלה מרכזית.
כדי להיות מתכנת
כדי להיות מתכנת, יהיה עליך ללמוד קורסים בתחומים קשורים, כגון לוגיקה, מתמטיקה ושפות תכנות.

שיטה 4 מתוך 6: ספרייה / פלטפורמה / מסגרת / תכנות ליבה

  1. 1
    דע מהי תכנות ליבה. מתכנתים מרכזיים הם מתכנתים מתקדמים בלבד שביצעו את ההעברה מיישומי תכנות ליחידות קוד תכנות שישמשו מתכנתים אחרים.
  2. 2
    למד שפת תכנות התומכת בבניית רכיבים / חבילות לשימוש חוזר, אם עדיין לא עשית זאת.
  3. 3
    עברו קורס מתקדם ב- UML ו- ORM. מרבית מפתחי הספריות משתמשים באחד מהם או בשניהם.
  4. 4
    עברו קורס בהנדסת תוכנה.
  5. 5
    למד טכניקות ומושגי תכנות מודולריים, מבוססי רכיבים, מונחי עצמים ומונעים אירועים. ככל שאתה מכסה יותר פרדיגמות ושפות תכנות, כך אתה מצליח יותר כמתכנת ספריה / חבילה.
  6. 6
    למידע נוסף על מערכות ההפעלה ומסגרות התכנות השונות הנתמכות על ידי מערכות הפעלה אלה.
  7. 7
    מיקד את מאמצי הלמידה שלך במסגרות, שפות תכנות וטכנולוגיות עצמאיות.
  8. 8
    אם שפות תכנות שלמדת עד כה יש ANSI / ISO / IEEE / W3C גרסאות סטנדרטיות, מאסטר בסטנדרטים. נסה להשתמש בקוד רגיל במידת האפשר.
  9. 9
    נסה לחקות ספריות פשוטות, שכבר הוקמו, במיוחד ספרי קוד פתוח. זה שימושי בשלב המוקדם של הפיכתו לספריה / מתכנת חבילות. התחל עם חבילות פשוטות כמו המרת יחידות וחבילות חישוב מדעיות ביניים. אם אתה סטודנט, השתמש בקורסים שאינך מתכנת על ידי ניסיון ליישם את המשוואות והליבה המדעית שלהם כספריות.
  10. 10
    חפש ונסה חבילות קוד פתוח בתחום התכנות שלך. הורד תחילה קבצים בינאריים / הפעלה של החבילה. נסה להשתמש בו ולמצוא את הנקודות החזקות והחלשות שלו. לאחר שעשית זאת, הורד את המקור ונסה להבין כיצד זה נעשה. נסה ליצור מחדש את הספריות האלה או חלקים מהן. בהתחלה, עשה זאת לאחר שראית את הקוד ומאוחר יותר לפני שתראה את הקוד. בשלבים מאוחרים יותר, נסה לשפר את הספריות האלה.
  11. 11
    למד את הגישות השונות המשמשות להפצה ולפריסה של רכיבים למתכנתים.
    • בדרך כלל, מתכנתים של ספריות / חבילות נוטים לחשוב באופן רקורסיבי ו / או איטרטיבי על כל הבעיות בפניהם. נסה לחשוב על כל בעיה כעל אוסף של בעיות קטנות יותר (רצף של משימות פשוטות יותר) או כתהליך חוזר של צמצום היקף הבעיה להיקפים קטנים יותר ואז ערימת היקפים אלה זה על זה.
    • מתכנתים לספריות / חבילות נוטים להכליל. כלומר, כאשר מוצגת בפנינו בעיה ספציפית פשוטה, הם בדרך כלל חושבים על בעיה כללית יותר ומנסים לפתור את אותה בעיה כללית שתפתור אוטומטית את הבעיה הקטנה יותר.

שיטה 5 מתוך 6: תכנות מערכת

  1. 1
    להבין מה כולל תכנות מערכת. מתכנתי מערכת עוסקים במדע התכנות ולא ביישומים הספציפיים שלו. אל תקשר את עצמך לפלטפורמה ספציפית.
  2. 2
    בצע את שלושת השלבים הראשונים של מתכנתים ליישומי שולחן עבודה.
  3. 3
    עברו קורס מבוא לאלגברה לינארית.
  4. 4
    עברו קורס בחשבון.
  5. 5
    עברו קורס לוגיקה ו / או מתמטיקה נפרדת.
  6. 6
    הצג את עצמך בפני מערכות הפעלה חשופות שונות. ניתן לעשות זאת על ידי:
    • קבלת מושג כיצד מותקנות מערכות הפעלה.
    • ללמוד כיצד להתקין מערכות הפעלה שונות במחשב אחד (אופציונלי, אך מומלץ).
    • התקנת יותר ממערכת הפעלה אחת. אל תתקין שום חבילות עזרה במערכות; במקום זאת, השתמש בפונקציות החשופות שמספקות מערכות ההפעלה.
  7. 7
    עברו קורס (או לחילופין קראו ספרים) בנושא ארכיטקטורת חומרת מחשבים.
  8. 8
    לפתח הבנה של פלטפורמות חומרת המחשב השונות.
  9. 9
    קבל היכרות עם שפת ההרכבה של פלטפורמת החומרה / מערכת ההפעלה הנבחרת. בהמשך תלמדו הרכבה של פלטפורמות / מערכות אחרות.
  10. 10
    למדו את שפות ANSI C ו- c ++, יחד עם המושגים של תכנות פרוצדוראלי.
  11. 11
    להבין ולתרגל ספריות סטנדרטיות של c / c ++ בפלטפורמה הנבחרת. שימו לב במיוחד לספריית התבניות הרגילה (STL) ואולי לספריית התבניות הפעילה (ATL).
  12. 12
    חפש במשאבים מקוונים, ספרים וקורסים כדי להבין את הטעם c של הפלטפורמה הספציפית שלך.
  13. 13
    תרגלו יצירת קוד מתקדם עם C ו- c ++.
  14. 14
    למד הרכבה מתקדמת יותר.
  15. 15
    עברו קורס בתכנון מערכות הפעלה.
  16. 16
    מצא וקרא תיעוד של הפלטפורמה הספציפית שבחרת. זה יהיה קל יותר אם תבחר מערכת הפעלה מבוססת Unix. הבן היטב את המערכת איתה תעבוד בהמשך.
  17. 17
    תרגל את הידע הנרכש שלך. ראשית צור כלי מערכת קטנים. זה בדרך כלל שימושי ל:
    • מנסה לשחזר כלים קטנים שכבר קיימים במערכת שלך.
    • מנסה להעביר כלי עזר זמינים במערכות הפעלה אחרות שלך.
  18. 18
    למד שפות לפי הסדר המועיל ביותר. זה המקום היחיד ששפת התכנות הראשונה חשובה. למד תחילה ANSI C, לא C ++, לא C #, לא Java ולא D. ואז למד C ++.
    • הגבלת השפה הראשונה ל- C ו- C בלבד נובעת מכך שתכנות מערכות דורש מהמתכנת להכיר את המושגים הבאים:
      • אוסף אמיתי ומלא של קוד המקור.
      • קבצי פלט אובייקטים ברמה נמוכה.
      • קישור קבצים בינאריים.
      • תכנות בשפה מכונה / הרכבה ברמה נמוכה. אומרים ששפת C היא הרכבה מוסווית / קלה יותר ללמוד על ידי חלק. הוא תומך גם בהכנסת קוד שפת הרכבה בקוד בכל עת שתרצה וזה רק פרוצדוראלי (כמו הרכבה).
לאחר שתחליט איזה סוג של מתכנת תרצה להיות
לאחר שתחליט איזה סוג של מתכנת תרצה להיות, התמקד בלימוד מושגי הליבה ושפות התכנות בהתמחות שבחרת.

שיטה 6 מתוך 6: מדע תכנות

  1. 1
    דע מה עושה מדען תכנות. מדעני תכנות הם מתכנתים מתקדמים מאוד, שבמקום לעבוד על פיתוח אפליקציות, עובדים על פיתוח טכנולוגיות מחשוב כמו הצפנה, שפות תכנות ואלגוריתמי כריית נתונים. לעיתים רחוקות רמה זו מושגת ללא לימוד אקדמי ומסירות.
  2. 2
    צברו את הידע המדעי המקביל לתואר בן ארבע שנים במדעי המחשב. ניתן לעשות זאת על ידי:
    • לקחת תואר אקדמי בפועל (וזה מה שקורה בדרך כלל).
    • קבלת קווי המתאר של הקורסים לתואר כזה מאחת האוניברסיטאות המודרניות ולקיחת הקורסים בלימוד עצמי או כקורסים נפרדים. ניתן להשיג זאת באופן תיאורטי, אך הדרך המומלצת היא הראשונה.
  3. 3
    החליטו על תחום התמחות. ככל שספציפי יותר, כך טוב יותר. זה תלוי בהעדפות שלך. עם זאת, הנה רשימה של כמה מהנושאים העיקריים במדעי תכנות המחשב:
    • תכנון אלגוריתם (חיפוש, מיון, הצפנה, פענוח וגילוי שגיאות בתקשורת הם כמה דוגמאות)
    • שפות תכנות / תכנון מהדר / אופטימיזציה
    • תחומי בינה מלאכותית (זיהוי תבניות, זיהוי דיבור, עיבוד שפה טבעית, רשתות עצביות)
    • רובוטיקה
    • תכנות מדעי
    • מחשוב סופר
    • תכנון / דוגמנות בעזרת מחשב (CAD / CAM)
    • מציאות מדומה
    • גרפיקה ממוחשבת (גרפיקה ממוחשבת בדרך כלל מבולבלת באופן שגוי עם עיצוב גרפי או עיצוב ממשק משתמש גרפי. גרפיקה ממוחשבת היא תחום הלימוד כיצד לייצג ולתפעל גרפיקה במערכות מחשב.)
  4. 4
    שקול לקבל תואר אקדמי גבוה יותר. אולי תרצה להמשיך לתואר שני או לדוקטורט.
  5. 5
    למדו את הטכנולוגיות ושפות התכנות הקשורות לתחום התכנות שבחרתם.
אולי אתה רוצה להיות מתכנת אתרים
לדוגמא, אולי אתה רוצה להיות מתכנת אתרים, ואולי יישומי שולחן עבודה נמצאים יותר בסמטה שלך.

טיפים

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

שאלות ותשובות

  • האם ישנם סרטונים ו / או ספרים למתחילים כיצד להפוך למתכנת מחשבים?
    יש הרבה ספרים וסרטונים בנושא. אתה רק צריך לברר איזו שפה אתה רוצה ללמוד. רוב הספרים עולים כסף, אך ישנם כמה מקוונים בחינם. בספרייה שלך עשויים להיות גם כמה ספרים בנושא.
  • האם פיתון או ג'אווה טובים יותר?
    זה באמת תלוי בהעדפות שלך ובמה שאתה מנסה להשיג באמצעות שפות אלה. פיתון, מהבנתי, הוא השפה הבסיסית לפיתוח תוכנה ותוכנה (מאפס) ודי קל ללמוד. עם זאת, ג'אווה מעניקה לך פונקציונליות רבה יותר ויכולה לקחת אותך הלאה בתכנות, אך יתכן שיהיה קשה יותר ללמוד.
  • בן כמה אתה צריך להיות כדי ללמוד תכנות?
    זה לא משנה בן כמה אתה. אתה רק צריך להיות פותר בעיות טוב וחושב ביקורתי.
  • מהן השפות שעלי ללמוד?
    כמה שפות בסיסיות טובות הן Javascript, Java ו- Ruby. אם אתה רוצה לקחת פיתוח אתרים, נסה ללמוד HTML ו- CSS.
  • איך אוכל להיות מתכנת ללא מכללה?
    ובכן, רוב העסקים רוצים את פיסת הנייר שאומרת שאתה יכול לעשות את זה, אבל אתה יכול ללמוד שפות קידוד מקורסים מקוונים חינם ואם אתה נתקע יש הרבה פורומים שיכולים לעזור. אם אין לך כישורי קידוד מראש, אני ממליץ לך ללמוד תחילה HTML.
  • כיצד ניתן להוריד את Java?
    עיין במאמר זה: התקן את ערכת פיתוח התוכנה java.
  • היכן אוכל להשיג את הספרים כדי להתחיל ללמוד תכנות?
    אתה יכול לבקש עזרה בספריה הסמוכה שלך, או לקנות אותם באינטרנט או בחנות ספרים מקומית. היכנס לאמזון וחפש את שפת התכנות שתרצה ללמוד ועיין בכמה כותרים.
  • האם אוכל להיות מפתח אינטרנט וגם מפתח יישומי שולחן עבודה?
    בהחלט. זה ידרוש שיעורים נוספים, אך פיזור הכישרונות שלך יכול להיות שווה את זה בטווח הארוך.
  • כמה שנים לוקח להיות מתכנת מקצועי?
    זה תלוי ברצינות ובמסירות שלך, כמו גם בתדירות שבה אתה נחשף לתכנות. אני מציע לך להתרכז בכל שפה שנתי או חודשית.
  • האם יש תיאוריות / הערות שאוכל לגשת אלין לפני שלמדתי ידיים על תכנות?
    למרבה הצער, אין תיאוריות - אלא אם כן מישהו מסוגל ליצור מערכת תכנות פשוטה. זה עדיין לא קרה.
שאלות ללא מענה
  • מה ההבדל בין מפתחי תוכנה, מהנדסי תוכנה ומתכנתי מחשב?
  • באילו שיעורים עלי ללמוד אם ברצוני להיות מתכנת?
  • האם אוכל ללמוד כיצד להיות מתכנת מהבית?
  • מה השכר של מתכנת?
  • כיצד אוכל לשפר את כישורי התכנות שלי?

תגובות (30)

  • fstracke
    זה עזר מאוד, כמו מדריך לגורל. בקצרה, מאמר זה עזר מאוד.
  • kuhnantonetta
    מאמר זה הסביר בפירוט את כל ההיבטים של התכנות, זהו המבוא הטוב ביותר לתכנות.
  • lmoore
    אני לומד מחשבים בקולג '. אני אוהב תכנות ומדעי מחשב, ואני רוצה להיות מפתח תוכנה. המאמר הזה עזר לי כל כך!
  • russellalison
    מאוד עוזר להיות מומחה בתכנות. על ידי ביצוע כללים אלה, כל אחד יכול להיות מומחה.
  • browncarole
    מבריק. אני אוהב את זה ואני בטוח שזה יעזור לי להשיג את החלום שלי.
  • scotttony
    זה עזר לי להחליט מה צריך לעשות בהתחלה כדי להפוך למפתח, לבצע צעדים וכו '. אני בטוח שזה אכן עזר לי.
  • faye24
    המאמר הזה ממש נהדר. הרבה מתכנתים עצמיים לעולם לא מכירים את הקבוצות השונות ופשוט עוברים הלוך ושוב מכל אחת מהן, ובסופו של דבר מבולבלים.
  • stacey59
    זה מאוד שימושי ואני יודע מידע טוב מהנושא הזה, תודה על זה!
  • kschmidt
    זה אתר נהדר. יש לו ידע רב שכל צריך לדעת.
  • graham45
    מאמר זה עוזר לי להבין מהי תכנות באמת. חשבתי שכל התכנות זהה, אך מאמר זה מוביל אותי לדעת שיש הרבה מיומנויות תכנות.
  • zmitchell
    צעדים לקראת עזרה לאחרים להגיע לדרכם הרצויה. תודה.
  • martinjoseph
    עכשיו אני יודע בבירור מה אני צריך ללמוד כדי להגשים את החלום שלי.
  • kamren85
    זו דרך ממש מגניבה לעשות דרך עבור טירון ללמוד תכנות.
  • brittany78
    ברור איך להיות מתכנת, תודה רבה.
  • jonesgeorgia
    כל כך כיף. התחלתי את התרגול שלי על ידי ביצוע ההוראות שלך, אז אני חושב שזה עזר מאוד. תודה רבה ואלוהים יברך, מדריך.
  • connie90
    מאמר מדהים, נותן פרטים על כל סוג של תכנות. אני רואה המון המחקר מאחורי מאמר זה.
  • hesselalize
    זה נראה מועיל, התוכן מעולה!
  • angusanderson
    תודה שפינית את הידע הבסיסי שלי ועזרתי בהבהרה לאן ללכת ובאיזה דרך אני רוצה לנסוע.
  • jonesben
    מדהים! מאמר זה עזר לי. תודה רבה לך!
  • caden20
    מאמר זה מועיל מאוד להנחות אותי בדרך להיות מתכנת.
  • wrightjessica
    המצגות המפורטות של מה שנדרש כדי להיות מתכנת לבחירתך עזרו.
  • jayne59
    מאמר זה נהדר מכיוון שהוא מראה לי באיזה סוג של שפות תכנות אני צריך להתמקד. תודה!
  • berniecemarvin
    המאמר כולו שימש את מטרתו האינפורמטיבית. אני במיטה מהסלולרי ורק רציתי לקרוא קצת מידע על הנושא לפני השינה. עכשיו אני יכול לחלום חלומות מתוקים. לילה טוב!
  • gwuckert
    תודה רבה. זה מאוד שימושי עבורי.
  • hugheselliott
    מאמר נהדר. מאוד אינפורמטיבי ועוזר.
  • reidben
    המאמר הקל עלי לבחור באיזו שפה ללמוד, לפי תחום התכנות בו אני מעוניין.
  • arjunkuhic
    עכשיו אני יודע מה זה תכנות אתרים וכיצד אוכל להפוך למתכנת אתרים בגלל העזרה של המדריך. תודה רבה.
  • destini02
    ניתנה לי דרך צרה יותר לעקוב.
  • equigley
    אני יודע שאם מישהו רוצה להיות מתכנת מקצועי, עליו / ה לבחור באחד התחומים שיוזכרו לעיל.
  • lia64
    הבחור הזה אינפורמטיבי ויודע על מה הוא מדבר.
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail