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

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

היכן להתחיל

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

אם אף אחד מהמקרים לא קורה לך, אז יש לך אפשרות של ארבע אפשרויות:

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

איזו שפה, טכנולוגיה וכיוון שאבחר?

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

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

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

בכל מקרה, ללמוד את טכנולוגיית האינטרנט. זהו HTML שפת סימון, CSS ו- CSS סגנונות שיהפכו את הדף שלך דינמי. בשלב הבא, ללמוד את שפת השרת (Python, PHP, רובי ואחרים) ומתאים למסגרות האינטרנט. ללמוד את המאגרים: כמעט בכל מתכנת פנוי, זה מוזכר.

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

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

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

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

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

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

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

הדרך השנייה – פרויקטים משלהם, הקטונים שונים או עבודה coworking. קשה להתחיל פרויקטים משלך, עדיף לחפש מכרים או חברים.

למה לבחור Python

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

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

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

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

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

האם אנגלית חשובה?

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

מה שאתה צריך לדעת, למעט שפת התכנות

כמובן, מלבד שפת התכנות ואנגלית, אתה צריך לדעת משהו אחר. אבל זה תלוי בכיוון שאתה בוחר. מתכנת אינטרנט חייב לדעת HTML, CSS, JavaScript. מתכנת שולחן העבודה מלמד את ממשק ה- API של מערכת ההפעלה ומסגרות שונות. מפתח היישומים לנייד מלמד מסגרות Android, iOS או Windows Phone.

כל אחד צריך ללמוד את האלגוריתמים. נסה להעביר קורס על Coursera או למצוא ספר מתאים על עצמך על אלגוריתמים. בנוסף, אתה צריך לדעת אחד מאגרי נתונים, תבניות תכנות, מבני נתונים. כדאי גם להכיר את מאגרי הקוד. לפחות אחת. הידע של מערכות בקרת גרסאות הוא חובה. בחר Git, זה הפופולרי ביותר. אתה צריך לדעת את הכלים שאתה עובד עם, את מערכת ההפעלה ואת סביבת הפיתוח. ואת המיומנות העיקרית של המתכנת היא להיות מסוגל Google. בלי זה לא תחיו.

צעדים אחרונים

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