CodeGym /בלוג Java /Random-HE /רשימת בדיקה של מפתח Java. מה שמפתח צריך לדעת
John Squirrels
רָמָה
San Francisco

רשימת בדיקה של מפתח Java. מה שמפתח צריך לדעת

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

1. אלגוריתמים בסיסיים

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

2. תחביר ג'אווה

לאחר לימוד היסודות של אלגוריתמים, עלינו ללמוד תחביר Java. אחרי הכל, כולנו לומדים להיות מתכנתי ג'אווה כאן, נכון? קורס CodeGym מושלם עבור זה. כאשר תבצעו אינספור משימות, תשימו ידכם על תחביר ג'אווה ואז, בלי הרבה היסוס, תכתבו/תקראו קוד ג'אווה כאילו הוא שפת האם שלכם. CodeGym הוא תרגול, אבל מעבר לזה, אתה צריך גם להסתכל על התיאוריה כדי להבין מה אתה עושה. כדי לעשות זאת, אתה יכול לקרוא ספרים. לדוגמה, אחד מהבאים:
  • "ראש ג'אווה",
  • "Java for Dummies" מאת בארי בירד;
  • "Java: A Beginner's Guide" מאת הרברט שילדט.
לאחר קריאת הספרים האלה, אתה יכול לרדת לספרים קשים יותר:
  • "חושבים בג'אווה", ברוס אקל;
  • "ג'אווה יעילה" מאת יהושע בלוך;
  • "Java: The Complete Reference" מאת הרברט שילדט.
שלושת הספרים האחרונים אינם קריאה קלה למתחילים, אך הם מספקים בסיס מוצק בתורת ג'אווה. כמו כן, אל תשכח את המאמרים של CodeGym, מכיוון שהם מספקים הסברים לרוב הנושאים שעשויים לעניין אותך. אתה יכול למצוא מאמר רלוונטי על ידי הקלדת הנושא שמעניין אותך בשורת החיפוש: רשימת בדיקה של מפתח Java.  מה שמפתח צריך לדעת - 2אני גם ממליץ בחום לחפש שאלות מראיונות Java. זה יעזור לך להבין מה בדיוק אתה צריך ללמוד ולאילו שאלות להתכונן.

3. עיצוב דפוסים

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

4. פרדיגמות תכנות. ניקיון קוד

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

5. SQL

הצעד הבא שלנו הוא ללמוד שפה עבור מסדי נתונים יחסיים - SQL . מאגרי מידע הם המקום שבו מאוחסן המידע (הנתונים) המשמשים יישום אינטרנט. מסד נתונים מורכב ממספר טבלאות (פנקס הכתובות בטלפון שלך הוא דוגמה פשוטה). מפתחי Java אחראים לא רק על אפליקציית Java, אלא גם על מסד הנתונים שהוא מקיים איתו אינטראקציה והיכן הוא מאחסן את הנתונים שלו. במסדי נתונים יחסיים (שהם הסוג הנפוץ ביותר), כל האינטראקציה מתרחשת באמצעות שפה מיוחדת הנקראת Structured Query Language, או SQL. כדי להבין את הנושא הזה, כל מה שאתה צריך לעשות הוא לקרוא את אחד מהספרים הבאים:
  • "לימוד SQL" מאת אלן בוליו;
  • "SQL" מאת כריס פהילי;
  • "SQL ראש ראשון" מאת לין ביילי.
אבל תרגול ללא תיאוריה לא חותך את זה, נכון? ובראיונות אתה יכול לצפות למבחן של הידע שלך ב-SQL. מראיינים לרוב (כמעט תמיד) נותנים מטלה אחת או שתיים הכוללות כתיבת שאילתת SQL. כתוצאה מכך, חשוב מאוד לחדד את כישורי ה-SQL המעשיים שלך כדי להראות את עצמך באור טוב.

6. MySQL/PostgreSQL

לאחר לימוד שפת SQL, עליך להכיר יישום מסד נתונים ספציפי. בהתאם למסד הנתונים, פקודות מסוימות עשויות להשתנות באופן דרמטי. ויש הבדלים בולטים למדי ביכולות מסד הנתונים. מסדי הנתונים היחסיים הנפוצים ביותר הם MySQL ו- PostgreSQL . רשימת בדיקה של מפתח Java.  מה שמפתח צריך לדעת - 3MySQL הוא הרבה יותר פשוט, אבל ל-PostgreSQL יש יכולות הרבה יותר רחבות. מספיק להכיר לפחות אחד מהם כדי להתחיל. אתה יכול ללמוד יישומי מסד נתונים אם אתה משתמש בכישורי הגוגל שלך - מצא מאמרים ומדריכים רלוונטיים ב-YouTube. תצטרך לטפח את היכולת שלך ליצור שאילתות חיפוש נכונות עבור השאלות שאתה צריך לענות עליהן. אחרי הכל, מתכנת הוא מישהו עם חגורה שחורה בגוגל.

7. Maven/Gradle

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

8. גיט

Git היא מערכת בקרת גרסאות מבוזרת. טכנולוגיה זו מאפשרת למפתחים לשתף פעולה באפליקציה אחת מבלי להפריע זה לזה. כמובן, יש מערכות אחרות לבקרת גרסאות. לדוגמה, Subversion . אבל Git נמצא בשימוש הנפוץ ביותר, ואתה צריך להיות מסוגל לעבוד איתו. רשימת בדיקה של מפתח Java.  מה שמפתח צריך לדעת - 4בנוסף למאמרים הרבים על Git שתוכלו למצוא באינטרנט, ליוטיוב יש די והותר סרטונים שיעזרו לכם לשלוט בטכנולוגיה הזו, צעד אחר צעד. בהתחלה, עדיף להשתמש ב-Git משורת הפקודה ולא במימוש GUI כלשהו, ​​כי תאלץ לעשות הכל באמצעות פקודות. בראיונות, אנשים אוהבים לעתים קרובות לשאול על כמה פקודות Git, אז אני ממליץ לך לכתוב אותן ולשמור איפשהו קרוב. אני גם ממליץ לך לרשום הערות, לעקוב אחר הנקודות החשובות ביותר על מנת לעבור עליהן לפני הראיון ולרענן את הזיכרון.

9. JDBC

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

10. JPA. שינה

JPA היא דרך ליצור חיבור בין יישום Java למסד נתונים, בדיוק כמו JDBC. אך יחד עם זאת, JPA היא טכנולוגיה ברמה גבוהה יותר ולכן קלה יותר לשימוש. אבל JPA הוא רק מפרט, לא יישום. זה צריך יישום קונקרטי. רבים מהם קיימים, אבל הקרוב ביותר לאידיאלים של ה-JPA, הפופולרי והמפותח ביותר הוא Hibernate. אתה תתקל בטכנולוגיה הזו יותר מפעם אחת בקריירת פיתוח התוכנה שלך. לכן, בנוסף להיכרות עם הטכנולוגיה הזו על ידי קריאת מאמרים, אולי כדאי לחשוב על קריאת ספר, למשל, "Java Persistence API".

11. אביב

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

  • ליבת אביב

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

  • אביב JDBC

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

  • שינה אביבית

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

  • אביב JPA

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

  • אביב MVC

טכנולוגיה זו מאפשרת להציג את ממשק האינטרנט של האפליקציה שלנו למשתמשים ולהקל על התקשורת בין הממשק לשאר האפליקציה. ניתן להשתמש בטכנולוגיה גם ללא תצוגה כאשר יש לך אפליקציה שאחראית על הטיפול בתצוגה ואתה מקיים אינטראקציה עם האפליקציה באמצעות טכנולוגיית RESTful . על מנת לספוג טוב יותר מידע על אביב, בנוסף למאמרים והרצאות ביוטיוב, תוכלו לקרוא מספר ספרים. אהבתי מאוד את הספר "אביב בפעולה" מאת קרייג ווללס. אני ממליץ לך לקרוא את הגרסה השישית, אם אתה יודע אנגלית היטב. ספר נהדר נוסף על אביב הוא "אביב 5 למקצוענים". זה יותר צפוף. יותר כמו רפרנס שיותר חשוב להחזיק בהישג יד מאשר לקרוא כריכה לכריכה.רשימת בדיקה של מפתח Java.  מה שמפתח צריך לדעת - 7

  • מגף אביב

טכנולוגיה זו מפשטת מאוד את השימוש ב-Spring. לא שמתי את זה בסוף הרשימה בגחמה. ואכן, הוא מסתתר הרבה מתחת למכסה המנוע, ולמי שלא מכיר את קפיץ הוניל, נקודות רבות עשויות להיות לא ברורות או לא מובנות. ראשית, כדי להבין טוב יותר כיצד פועלות מסגרות Spring, עליך להשתמש ב-Spring רגיל, ולאחר מכן להפיק את כל היתרונות הגבוהים יותר של השימוש ב-Spring Boot. אני ממליץ לך גם להכיר את Spring Security ו-Spring AOP. אבל בניגוד לטכנולוגיות שלמעלה, עדיין אין צורך בידע עמוק של שתי אלה. טכנולוגיה זו אינה מיועדת למתחילים. בראיונות, מפתחים זוטרים לא ישאלו עליהם (למעט שאלה שטחית אחת, אולי). קרא סקירה כללית של מהן הטכנולוגיות הללו והעקרונות מאחורי עבודתן. במאמר זה הזכרתי שוב ושוב ספרי קריאה. מצד אחד, זה לא חובה. אתה יכול להפוך למתכנת מבלי לקרוא ספר אחד, לצבור את כל הידע הנדרש ממאמרים מקוונים וסרטוני הדרכה. מצד שני, בשוק העבודה התחרות בין מפתחים מתחילים גבוהה כיום, מה שמעלה את הרף למה שמתחיל צריך לדעת. לכן, ככל שתדע יותר, כך תמצא מהר יותר את העבודה הראשונה שלך על ידי הרשמת המראיין ברמת הידע שלך. תודה לכולם, ושג'אווה תהיה איתך.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION