האם אני יכול להיות מפתח תוכנה?

למה פיתוח תוכנה?
לפני שמתחילים ללמד אדם תכנות, מוטב שנגלה מה זה נותן לו או לה.1 עבודה פשוטה ומעניינת.
מהנדס תוכנה היא עבודה פשוטה ומעניינת. יש בו מקום נהדר ליצירתיות. אני אוהב את זה. בהתחלה השתגעתי מהמחשבה שאני עושה מה שאני אוהב ומשתלמת על זה. אבל אז התרגלתי לזה בסופו של דבר.2 זה משולם היטב.
אני פשוט נהנה לראות את החברים שלי קונים לעצמם מכוניות ובתים בעבודה של 5 שנים.3 שעות גמישות.
לוח זמנים קפדני של עבודה הוא דבר מגעיל. כל אדם שהיה אי פעם בפקק במהלך שעות העומס או קיבל קנס על איחור של 5 דקות יכול לאשר זאת. ומה לגבי היכולת להגיע לעבודה ב-11 בבוקר ולצאת ב-17:00? עבור רוב המתכנתים זה לוח זמנים רגיל. פשוט תעשה את העבודה שלך ואף אחד לא יגיד מילה משולבת. אתה יכול אפילו לעבוד בבית ברוב החברות. אתה תמיד יכול להגיע להסכמה סבירה עם המעסיק שלך.4 צמיחה מקצועית.
ברוב החברות צריך לטפס בסולם הקריירה כדי לקבל תשלום טוב. מפתח תוכנה צריך להיות רק מפתח תוכנה. לא תצטרך להכשיר מחדש ממפתח למנהל או לנסות לתפוס עמדה מובילה. כל מה שאתה צריך לעשות זה לגדול בצורה מקצועית. מפתחים שיש להם 5 עד 10 שנות ניסיון מקבלים שכר מלכותי.5 ניידות בינלאומית גבוהה.
ישנם שלושה מקצועות בעלי השכר הגבוה ביותר בעולם: עורך דין, רופא ומפתח תוכנה. זהו אתגר אמיתי עבור עורכי דין העובדים בחו"ל: חוקים שונים, פסיקה וכו'. רופא צריך ללמוד את השפה, סטנדרטים רפואיים אחרים ולעבור בחינות. מפתח לא יצטרך ללמוד שום דבר נוסף. אותה שפה. אותם סטנדרטים. ברוב הפעמים אפילו לקוחות זהים.למה Java?
סך כל שלושת הגורמים הבאים גרמו לי להכשיר מחדש אנשים למפתחי Java.1. Java - היא אחת השפות הקלות ביותר ללמידה.
אדם שזה עתה סיים בית ספר יכול ללמוד אותו תוך 3 עד 6 חודשים, תלוי בידע הבסיסי ובכמות השעות שהושקעו בלימודים.2. ביקוש גבוה בשוק העבודה.
ניתן להתקבל לעבודה ללא ניסיון קודם. חברות מעסיקות מתמחים בשקיקה וממשיכות לחנך אותם.3. המשכורות הגבוהות ביותר בתחום.
אחד הגבוהים ביותר. זה חשוב במיוחד למפתחים זוטרים.תכנות היא מיומנות

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

1 אלי מדברת על שיעורים
היי, אמיגו! היי, אלי! - היום אני רוצה להסביר לך מה השיעורים. - הסבר מס' 1. אתחיל באנלוגיה. כל הדברים ביקום שלנו עשויים מאטומים. הם יכולים להיות מסוגים שונים: מימן, חמצן, ברזל, אורניום, ... שילוב אטומים מאפשר יצירת דברים או עצמים שונים. - הדבר נכון גם ליקום של ג'אווה. כאן תוכנות מורכבות מאובייקטים מסוגים שונים (כאשר מחלקה היא סוג): מספר שלם, מחרוזת, קובץ, אובייקט, ... שילוב אובייקטים מאפשר יצירת שירותי אינטרנט או תוכניות שונות. - לאטומים שונים יש מבנה פנימי שונה. הם מכילים מספר אלקטרונים, פרוטונים ונויטרונים. - למחלקות שונות (סוגי אובייקטים ב-Java) יש גם מבנה פנימי שונה. הם מכילים משתנים ושיטות שונות. - כן, יש לי מושג כללי על מבנה האטום. אני רובוט, נכון? - בואו נסתכל על התוכנית כמכלול: האובייקטים הם כמו אבני בניין המרכיבות את התוכנית. שיעורים הם סוגים של בלוקים אלה. בלוקים מסוגים שונים הם אובייקטים ממעמדות שונים. - די הבנתי. - הסבר מס' 2. אנו יוצרים מחלקה חדשה כאשר אנו זקוקים לסוג חדש של אובייקט. בתוך מחלקה זו אנו מתארים את ההתנהגות הרצויה של אובייקטים. - ובכן, הבנתי משהו, אבל אני לא בטוח בזה. - בהתחשב במבנה הפנימי, המחלקה מורכבת משיטות מחלקות שעושות משהו ומשתני מחלקה שבהם מתודות מאחסנות נתונים משותפים. - בפשטות, המחלקה היא קבוצה של שיטות? - די הרבה יותר, ליתר דיוק, המחלקה היא קבוצה של שיטות שפועלות יחד ומשתנים שבהם שיטות מאחסנות ערכים שונים לחלוק. - כן. כדי ליצור מחלקה חדשה, עלינו לכתוב את השיטות האלה... - כן. אנחנו צריכים גם להחליט אילו משתנים משותפים לשיטות שונות, ואז להוציא משתנים משיטה למחלקה: להפוך משתני מתודה למשתני מחלקה. - מחלקות נוצרות על התבנית הבאה: 1 המתכנת מחליט אילו אובייקטים נוספים הוא צריך. 2 המתכנת מחלק את האובייקטים הללו לסוגים שונים בהתאם למה שהם עושים. 3 המתכנת כותב מחלקה נפרדת לכל סוג. 4 בכיתה הוא מצהיר על השיטות והמשתנים הדרושים. יש לכתוב 5 פקודות בכל שיטה על מנת שהשיטה תעשה את מה שהמתכנת רוצה שהיא תעשה. 6 הכיתה מוכנה, עכשיו אתה יכול ליצור את האובייקטים שלה. - מדהים! זו תכנית מעניינת. אני אזכור את זה. - אתה צריך לשנן את זה, זה יהיה שימושי. גישת תכנות, שבה התוכנה מחולקת לאובייקטים, נקראת תכנות מונחה עצמים( אופף ). - Java היא דוגמה קלאסית לגישת OOP, כי בג'אווה הכל אובייקטים. - לימוד Java מורכב משתי משימות עיקריות: לימוד כתיבת שיעורים משלך ולימוד שימוש בשיעורים של אחרים . היום אנחנו מתחילים בדברים הכי קלים. תלמד לכתוב שיעורים פשוטים וכמובן ליצור את האובייקטים שלהם. אובייקטים נקראים לעתים קרובות מופעים של המחלקות. אלו מילים נרדפות, כך או כך נכון. - הבנת. - לסיכום אני יכול לומר שהמחלקה היא מיני-תוכנה: קבוצה של נתונים ופונקציות שעושות משהו עם הנתונים האלה. תכונה חשובה של מחלקות היא היכולת ליצור מופעים של מחלקות אלו (אובייקטים). - כדי ליצור אובייקט מחלקה, עליך לכתוב בקוד «new class_name()» .

2 רישה מדברת על חבילות
היי, אמיגו! עכשיו אני מספר לכם על החבילות. - קבצים במחשב מקובצים לתיקיות. מחלקות ב-Java (כל מחלקה נמצאת בקובץ נפרד) מקובצות לפי חבילות שהן תיקיות בדיסק. זה לא חדש. אבל יש שתי הערות. - ראשית , «שם מחלקה מלא ייחודי» הוא «שם החבילה» + «שם המחלקה» . דוגמאות:

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


5 דייגו, משימות ליצירת כיתות וחפצים משלו
היי, אמיגו! הנה כמה משימות ליצירת מחלקות ואובייקטים:משימות | |
---|---|
1 | צור חתול בכיתה צור חתול בכיתה. לחתול חייב להיות שמו (שם, מחרוזת), גיל (גיל, int), משקל (משקל, int) וחוזק (כוח, int). |
2 | יישום שיטת קרב יישום שיטת קרב בוליאני (Cat anotherCat): יישום מנגנון קרב בהתאם למשקל, גילם וחוזק החתולים. תמציא תלות בעצמך. השיטה צריכה לקבוע אם החתול הנוכחי (האובייקט ששיטת הקרב שלו נקראה) או חתול אחר ניצח בקרב, כלומר להחזיר אמת אם החתול הנוכחי ניצח ושקר, אם הוא לא ניצח. יש לעמוד בתנאי הבא:
|
3 | מגבירים ומגדירים לכיתה כלב < צור כלב בכיתה. לכלב חייב להיות שם - שם מחרוזת וגיל - int age. צור גטרים ומגדירים עבור כל המשתנים של המחלקה Dog. |
4 | צור שלושה אובייקטים מסוג Cat צור שלושה אובייקטים מסוג Cat בשיטה הראשית ומלא אותם בנתונים. השתמש בכיתה Cat של המשימה הראשונה. אל תיצור את הכיתה Cat. |
5 | ערכו שלושה קרבות זוגיים בין חתולים צור שלושה חתולים באמצעות הכיתה Cat. ערכו שלושה קרבות זוגיים בין חתולים. אל תיצור את הכיתה Cat. לקרב, השתמשו בשיטת קרב בוליאני (Cat anotherCat). הצג את התוצאה של כל קרב. |
6 רישא מדברת על אתחול אובייקט
- אני רוצה לספר לך על אתחול האובייקט. כאשר אובייקט נוצר, יש צורך להקצות נתוני הפעלה למשתנים שלו , על מנת למנוע מצב שבו אתה מנסה לגשת לאובייקט, ואין לו נתונים הנדרשים לעבודה תקינה. - הבה נבחן אובייקט מסוג File. המידע המינימלי הדרוש עבור הקובץ הוא שמו. קובץ בלי שם הוא שטות. - נניח שאתה כותב גרסה משלך של File class (MyFileClass למשל) כדי לעבוד עם קבצים. איזה מידע דרוש עבור כל אובייקט במחלקה זו? - שם הקובץ שאיתו אובייקט זה יעבוד? - זה נכון. לכן אנחנו מוסיפים את השיטה initialize() למחלקה שלנו. זה ייראה כך:



7 משימות דייגו, אתחול אובייקטים
היי, אמיגו! משעמם לי בלי השיעורים שלנו. להלן כמה משימות אתחול אובייקט:משימות | |
---|---|
1 | צור חבר כיתה צור חבר כיתה עם שלושה אתחולים (שלוש שיטות לאתחל): - שם - שם, גיל - שם, גיל, מין |
2 | צור חתול כיתה צור חתול כיתה עם חמישה מאתחלים: - שם - שם, משקל, גיל - שם, גיל (משקל סטנדרטי) - משקל, צבע, (שם, כתובת וגיל אינם ידועים, זה חתול סמטה) - משקל, צבע, כתובת (זה חתול הבית של מישהו אחר) המשימה של האתחול היא להפוך אובייקט לתקף. לדוגמה, אם המשקל אינו ידוע, עליך לציין משקל ממוצע כלשהו. לחתול לא יכול להיות משקל כלל, כמו כן הגיל. אבל לא יכול להיות לו שם (null). כך גם לגבי הכתובת - יכולה להיות ריק. |
3 | צור כלב בכיתה צור כלב בכיתה עם שלושה אתחולים: - שם - שם, גובה - שם, גובה, צבע |
4 | יצירת מעגל מחלקה צור מעגל מחלקה עם שלושה אתחולים: - centerX, centerY, רדיוס - centerX, centerY, רדיוס, רוחב - centerX, centerY, רדיוס, רוחב, צבע |
5 | צור מלבן כיתה צור מלבן כיתה. הנתונים שלו יהיו למעלה, משמאל, רוחב וגובה. כתוב עבורו כמה שיותר שיטות אתחול (...) דוגמאות : - יש להגדיר 4 פרמטרים: שמאל, עליון, רוחב, גובה - רוחב/גובה לא מוגדרים (שניהם שווים 0) - גובה לא מוגדרים (שווה ל רוחב), צור ריבוע - צור עותק של מלבן אחר (זה מועבר בפרמטרים) |
8 אלי מדברת על קונסטרוקטורים
- הגיע הזמן לספר לכם על קונסטרוקטורים. זה מאוד פשוט: מתכנתים המציאו סימון קיצור ליצירת אובייקט ולאתחול:

- השם של שיטת הבנאי זהה לשם המחלקה (במקום אתחול ).
- לשיטת הבנאי אין סוג החזרה (לא צוין טיפ בכלל).
9 משימות של דייגו, קונסטרוקטור
- נחתם קצת, אני מניח. בסדר גמור. להלן כמה משימות יצירת בנאי:משימות | |
---|---|
1 | צור חבר כיתה צור חבר כיתה עם שלושה בנאים: - שם - שם, גיל - שם, גיל, מין |
2 | צור חתול מחלקה צור חתול מחלקה עם חמישה בנאים: - שם, - שם, משקל, גיל - שם, גיל (משקל סטנדרטי) - משקל, צבע, (שם, כתובת וגיל לא ידועים. זה חתול סמטה) - משקל, צבע, כתובת (זה חתול הבית של מישהו אחר) המשימה של האתחול היא להפוך אובייקט לתקף. לדוגמה, אם המשקל אינו ידוע, עליך לציין משקל ממוצע כלשהו. לחתול לא יכול להיות משקל כלל, כמו כן הגיל. אבל לא יכול להיות לו שם (null). כך גם לגבי הכתובת - יכולה להיות ריק. |
3 | צור כלב בכיתה צור כלב בכיתה עם שלושה בנאים: - שם - שם, גובה - שם, גובה, צבע |
4 | יצירת מעגל מחלקה צור מעגל מחלקה עם שלושה בנאים: - centerX, centerY, רדיוס - centerX, centerY, רדיוס, רוחב - centerX, centerY, רדיוס, רוחב, צבע |
5 | צור מלבן כיתה צור מלבן כיתה. הנתונים שלו יהיו למעלה, שמאל, רוחב וגובה. צור עבורו כמה שיותר בנאים: דוגמאות: - נקבעים 4 פרמטרים: שמאלה, עליון, רוחב, גובה - רוחב/גובה לא מוגדרים (שניהם שווים 0) - גובה לא מוגדרים (שווה לרוחב), צור ריבוע - צור עותק של מלבן אחר (זה מועבר בפרמטרים) |
10 פרופסור, כיתות ובנאים
- זה שוב אני. ההרצאות שלנו פשוט מעולות. אני לא אתן לך קישורים להרצאות משעממות. הנה קישור לדברים מצוינים! - אתה עדיין כאן? לך מהר, קרא, ואני חייב ללכת למעבדה. CodeGym הרצאה 5 דיון11 חוליו
היי, אמיגו! אני קצת עייף. בואו ננוח קצת, ואז נתחיל בשיעור. מצאתי פרק חדש:12 ג'ון סנאים
– שלום חייל! - בוקר טוב אדוני! - יש לי חדשות מדהימות בשבילך. הנה משימות לחיזוק הכישורים שלך. עשה זאת כל יום, ותשפר את כישוריך במהירות. משימות תוכננו במיוחד לביצוע ב-Intellij IDEA.משימות נוספות לעשות ב-Intellij Idea | |
---|---|
1 | 1. שלוש מחלקות 1. צור כיתה חתול וכלב באנלוגיה לכיתה ברווז. 2. חשבו מה אמורה להחזיר שיטת toString במחלקות Cat ו-Dog. 3. בשיטה main צור שני אובייקטים בכל מחלקה והצג אותם. 4. האובייקטים בכיתה Duck נוצרים ומוצגים. |
2 | גבר ואישה 1. צור כיתות סטטיות ציבוריות גבר ואישה בתוך הכיתה פתרון. 2. למחלקות יש שדות: name(String), age(int), address(String). 3. צור בנאים להעביר אליהם את כל הפרמטרים האפשריים. 4. השתמש בבנאי כדי ליצור שני אובייקטים מכל מחלקה עם כל הנתונים. 5. הצג את האובייקטים בפורמט [שם + " " + גיל + " " + כתובת]. |
3 | 3. צור כיתות סטטיות ציבוריות כלב וחתול. הוסף שלושה שדות לכל כיתה לפי בחירתך. צור חפצים עבור הדמויות המצוירות של טום וג'רי, עד כמה שאתה זוכר. דוגמה: Mouse jerryMouse = new Mouse("ג'רי", 12 (גובה, ס"מ), 5 (אורך הזנב, ס"מ)) |
4 | 4. הצג את התאריך הנוכחי הצג למסך את התאריך הנוכחי בצורה דומה ל-«21 02 2014». |
5 | 5. קרא את המספרים מהמקלדת וחשב את הסכום הכולל שלהם קרא את המספרים מהמקלדת וחשב את הסכום הכולל שלהם עד שהמשתמש יזין את המילה «סך הכל». הצג למסך את הסכום הכולל. |
משימות בונוס | |
---|---|
1 | 1. התוכנית אינה קומפילציה ופועלת. תתקן את זה. משימה: התוכנית צריכה לקרוא מהמקלדת שני מספרים ולהציג את סך הכל. |
2 | 2. הוסף פונקציונליות חדשה לתוכנית. משימה ישנה: הוסף פונקציה חדשה שקוראת מהמקלדת שני מספרים ומציגה את המינימום שלהם. משימה חדשה: הוסף פונקציה חדשה שקוראת מהמקלדת חמישה מספרים ומציגה את המינימום שלהם. |
3 | 3. לימוד ותרגול אלגוריתם. משימה: כתוב תוכנית ש -1. קוראת מהקונסולה מספר N שגדול מאפס 2. ואז קוראת N מספרים מהמסוף 3. מציגה את המקסימום של N מספרים שהוזנו. |
GO TO FULL VERSION