CodeGym /בלוג Java /Random-HE /10 דרכים לשפר את הקוד שלך, מוכח באמצעות ניסיון אישי
John Squirrels
רָמָה
San Francisco

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

פורסם בקבוצה
שלום לכולם בקהילת CodeGym! 10 דרכים לשפר את הקוד שלך, שהוכחו באמצעות ניסיון אישי - 1היום נדבר על איכות קוד. כן חברים יקרים. אף אחד לא מושלם. כולם מבינים בשלב מסוים שהקוד יכול להיות טוב יותר... אבל מה לעשות במצב הזה? לכל הפחות, התחל לחקור את הנושא הזה. אבל אתה כבר כאן, מה שאומר שהנושא חייב לעניין אותך, אז בוא נלך. היום נתאר דרכים שבהן תוכל להפוך את הקוד שלך לטוב ונקי יותר. אז לא תתבייש בקוד הנוכחי שלך בעתיד! :) כל השיטות הללו יעזרו למתכנת להפוך למתכנת טוב.10 דרכים לשפר את הקוד שלך, שהוכחו באמצעות ניסיון אישי - 2

1. אם אתה רוצה לשפר את הקוד שלך, קרא את הקוד של מישהו אחר

אם אתה רוצה לשפר באופן דרמטי את כישורי התכנות שלך, אתה צריך... לקרוא קוד שנכתב על ידי מתכנתים אחרים. תאמין לי או לא. אבל אם תיקח את הסיכון, אני מבטיח: תתוגמל על הזמן המושקע. לדוגמה, אל תקראו ב-medium.com על איך HashMap, ArrayList, LinkedList וכו' עובדים. במקום זאת, קרא את קוד המקור שלהם ותבין בעצמך. להלן רשימה של שיעורים לקריאה:
  • השאלות הנפוצות ביותר בראיונות הן על HashMap. אתה יכול להרוג שתי ציפורים במכה אחת: אתה תבין את הקוד ותרכוש את הידע שאתה צריך.
  • אותו הדבר נכון לגבי ArrayList. אין שום דבר מסובך, אבל קוד המקור באמת שווה קריאה והבנה.
  • מחרוזת היא דוגמה מצוינת. להבין למה זה בלתי ניתן לשינוי.
  • AtomicInteger הוא מחלקה מגניבה: היא מגדירה פעולות אטומיות על אובייקטים שלמים.
  • אחרי זה, ובכן, נוכל לרשום כל שיעור, אחד אחרי השני :)
יותר ברצינות, כדאי לקרוא את הקוד של Pivotal. האנשים שם כתבו את המערכת האקולוגית המבוקשת ביותר בעולם ג'אווה. הקוד שלהם בהחלט שווה קריאה. אני ממליץ לך להתחיל עם Spring Core . קריאת קוד מקור לא מוכר היא עבודה קשה אך מתגמלת. :)

2. פעל לפי מוסכמות הקוד

10 דרכים לשפר את הקוד שלך, שהוכחו מניסיון אישי - 3מוסכמות קידוד הן קבוצה של קווים מנחים שנוצרו על ידי צוותי פיתוח. הם כוללים הנחיות לסגנון קידוד וטכניקות לכל היבט של הקוד. מוסכמות אלה עשויות להיכתב עבור החברה כולה או עבור פרויקט ספציפי. מוסכמות קידוד הן בדרך כלל ספציפיות לכל שפת תכנות וארגון קבצי כריכה, הזחה, הערות, הצהרות, אופרטורים, רווחים, מוסכמות שמות, טכניקות ועקרונות תכנות, כללי תכנות, שיטות עבודה מומלצות לארכיטקטורה וכן הלאה. היתרון העיקרי של תקנים מסוימים הוא העובדה שהקוד נראה זהה וכתוב באותו סגנון. זה הופך אותו לקריאה יותר ועוזר למתכנתים להבין קוד שנכתב על ידי מתכנת אחר. אם תקני קידוד יתבצעו ויישמו באופן עקבי לאורך תהליך הפיתוח, יהיה קל יותר בעתיד לתחזק ולהרחיב את הקוד שלך, לשחזר אותו ולפתור קונפליקטים באינטגרציה. מוסכמות קידוד חשובות למתכנתים ממספר סיבות:
  • 40-80% מעלות התוכנה הולכת לתחזוקה שלה,
  • כמעט אף תוכנה מתוחזקת על ידי המחבר לאורך חייה,
  • מוסכמות קידוד משפרות את הקריאה של קוד המקור בכך שהיא מאפשרת למתכנתים להבין קוד חדש מהר יותר.
למען האמת, אני מעריץ גדול של תקני קידוד. בעיני הגיוני להשקיע זמן בדיון ובוויכוחים עליהם, שכן מדובר בפעילות רבת ערך שתחסוך לך זמן ומאמץ בעתיד. יש לבחון את מוסכמות הקוד לעתים קרובות. ניתן לשנות את הכללים מ"חובה" ל"אופציונלי" ולהיפך. אם חלק מהן לא פועלות כמצופה, יש לתקן אותן או להסיר אותן מההנחיות.

3. השתמש בביקורות קוד

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

4. כתיבת מבחנים ליחידה

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

5. השתמש בכלים לשיפור איכות הקוד

אין מפתח שמעולם לא טעה. בדרך כלל, המהדר תופס בעיות תחביר וחשבון ומציג את עקבות המחסנית. אבל עדיין עלולות לצוץ בעיות מסוימות שהמהדר לא תופס. לדוגמה, דרישות שהוטמעו בצורה לא נכונה, אלגוריתמים שגויים, קוד בנוי בצורה שגויה או בעיה פוטנציאלית אחרת שהקהילה מכירה מניסיון. הדרך היחידה לתפוס שגיאות כאלה היא לבקש ממפתח בכיר יותר לבדוק את הקוד שלך, נכון? אבל גישה זו אינה תרופת פלא והיא לא תשנה הרבה. עבור כל מפתח חדש בצוות, כדאי שתהיה לך זוג עיניים נוסף שיסתכלו על הקוד שלו. למרבה המזל, ישנם כלים רבים בחוץ שיכולים לעזור לך לשלוט באיכות הקוד שלך. השתמשתי ב-Checkstyle, PMD, FindBugs ו- SonarQube בעבודתי על פרויקטים שונים. ויש גם אחרים. כולם משמשים בדרך כלל כדי לנתח את איכות הקוד ולהפיק כמה דוחות שימושיים. לעתים קרובות מאוד דוחות אלה מתפרסמים על ידי שרתי אינטגרציה מתמשכים כגון Jenkins.

6. כתוב קוד פשוט וישיר

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

7. קרא את התיעוד

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

"הקבוע של אדם אחד הוא המשתנה של אדם אחר."

אלן ג'יי פרליס

8. עקבו אחר בלוגרים מעניינים

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

9. קראו ספרים על המקצוע

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

10. קוד! קוד! קוד!

אתה לא יכול להפוך למתכנת טוב רק על ידי שינון ספר. קל לדבר על מושגים תיאורטיים. אבל אתה יכול רק ללמוד את המגבלות של שפה או לעבוד על שיטות עבודה מומלצות רק כשאתה כותב קוד. לכן, כדי להיות מתכנת טוב, אתה צריך לכתוב הרבה קוד. אם אתה מתחיל, התחל בכתיבת תוכניות למשימות פשוטות כמו סדרת פיבונאצ'י, פלינדרומים, המשולש של פסקל וכו'. לאחר מכן עברו למשימות גדולות יותר כמו עץ ​​חיפוש בינארי וכו'. אם אתם מחפשים פלטפורמה מקוונת לתרגול Java תוכניות, תסתכל על Coding Ground . תעבוד דרך קורסי תכנות ואני מבטיח שהכישורים שלך יהיו הרבה יותר טובים. אפשרות נוספת היא לקחת את קורס הרווארד CS50, שהוא בחינם.

בואו נסכם

מי שלא עושה טעויות הוא זה שלא עושה כלום. זו הסיבה שאנחנו משפרים את הסבלנות שלנו, וכמו חגב חרוץ, אנחנו משפרים את כישורי הקידוד שלנו. כדי לעשות זאת, אל תשכח:
  • קרא את הקוד של אחרים
  • ספק ובקש ביקורות קוד
  • כתוב בדיקות יחידה
  • השתמש בכלים כדי לשפר את הקוד שלך
  • כתוב קוד פשוט ומובן
  • קרא את התיעוד שנכתב על ידי מי שיכול
  • עקוב אחר מתכנתים מעניינים
  • קרא ספרים על המקצוע
  • קוד! קוד! קוד!
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION