תחילת העבודה עם Fullstack פיתוח אינטרנט
בימים אלה, מודרני פיתוח מחסנית מלאה הוא מאוד פופולרי בשתי סוכנויות קטנות וחברות גדולות עם צוות טכני ייעודי. מלא מחסנית האינטרנט מהנדסים לעבוד על כל מחסנית האינטרנט של טכנולוגיות כולל Frontend, backend, ו ניהול שרתים.
אנשים רבים טוענים כי מחסנית מלאה רק מוביל להיות "ג 'ק של כל המקצועות, אף אחד לא". מנקודת מבט מסוימת זה עשוי להיות נכון, אבל מיומנויות הוא רק חשוב כמו מה ניתן להשיג עם זה. רבים מחסנית מלאה devs להציע ערך כי הם יכולים לקחת רעיון מהתפיסה ועד ההשקה, ו להבין במלואו בכל שלב של התהליך.
אם אתה חושב הולך את המסלול מחסנית מלאה, אז מאמר זה הוא בשבילך. אני יסביר את הדרישות הכלליות של מפתח מחסנית מלאה, מה התפקיד כרוך, וכיצד מיומנויות יכול להיות שימושי עבור פרילנסרים / קבלנים שרוצים לעבוד ישירות או עבור לקוחות או בפרויקטים שלהם.
יסודות מחסנית מלאה
המודרנית מלאה מחסנית הפיתוח יש כברת דרך ארוכה, כמו טכנולוגיית האינטרנט השתנה הרבה. דרישות מחסנית מלאה יש להשתמש בהנחיות לשקול הבאות. באופן כללי "ערימה" מייצג את הטכנולוגיות פועל יחד לעשות עבודה באתר. משמעות הדבר היא קוד Frontend, קוד backend, מערכת מסד נתונים, פלטפורמת שרת אינטרנט + OS עבור השרת.
העיקרון הבסיסי של פיתוח מחסנית מלאה היא להבין את כל ההיבטים של בניית אתר אינטרנט. זה לא אומר ידע של עיצוב או UI / UX עבודה, אם כי זה יכול לשפר מאוד את הכדאיות שלך ואת איכות העבודה.
- את היסודות של Frontend כוללים HTML / CSS ו- JavaScript, ככל הנראה עם במסגרת, כגון זוויתית או תגובה.
- עבור שפה backend אתה רוצה לבחור משהו שיכול להיות מצמידים עם מערכת מסד הנתונים. PHP / MySQL הוא הנפוץ ביותר והקל ביותר ללמוד כי זה כוחות מנועי CMS רבים כמו וורדפרס. וגם ה מנורה מחסנית היא ללא ספק מחסנית האינטרנט הפופולרי ביותר כיום.
- ידע שרת יכול להיות פשוט או מפורט כמו שאתה אוהב. היסודות המוחלט יהיה ידע על תוכנית שרת כמו אפאצ'י יחד עם מסד נתונים כמו MySQL או פוסטגרסל.
- אתה יכול ללכת עוד יותר כדי לכלול ידע של התקנת שרתי דואר, או כלי ביצועים, כגון memcached או לכה.
A מחסנית מלאה dev צריך dabble בכל שלושת התחומים עם מספיק ידע להשיק אתר באופן עצמאי, ובלי הרבה עזרה מאף אחד אחר.
עומק טכני של ידע
שאלה גדולה על פיתוח מחסנית מלאה היא כמה עמוק להיכנס לכל אזור. הוא מהנדס מחסנית מלאה באמת אי פעם של דבר? יש הטוענים כי זה אפשרי, אבל זה לא יכול להיות המטרה של הולך מחסנית מלאה.
רוב החברות רוצה לשכור מהנדסים מחסנית מלאה שיש להם קצת ידע בכל מקום. מהנדסים אלה עשויים להתמחות בתחום אחד, אך הם יכולים למלא כל תפקיד בעת הצורך.
Devs אשר רק מתחיל את הנתיב הזה צריך צעצוע סביב כל התחומים למידה "מספיק" כדי לפתור בעיות כפי שהם מתעוררים. זה נותן פרשנות בעולם האמיתי לטכנולוגיות כדי לראות כיצד בעיות שונות חלות על פרויקטים אמיתיים.
היתרון הגדול ביותר של מלא מחסנית קידוד היא היכולת לבנות יישומים משלך ללא עבודה עבור אף אחד אחר.
אם אתה לומד כל שלב של תהליך הפיתוח אז אתה יכול לעשות הכל בעצמך. אתה לא צריך להיות מאסטר PHP כדי לבנות App מותאמת אישית Laravel. ואתה לא צריך להיות גורו JavaScript כדי ליצור ניווט נפתח גמיש במיוחד עכשיו שיש לנו כל כך הרבה קוד פתוח זמין באינטרנט.
אז כמה עמוק אתה צריך להיכנס לכל התחומים האלה? זה תלוי אך ורק בך, והתשובה שלך תשתנה עם הזמן.
אבל כאשר הראשון התחיל, פשוט ללכת עמוק מספיק כדי ליישם את מה שלמדת לתוך פרוייקט אמיתי. כאשר אתה נתקל במשהו שאתה לא מבין, להשתמש בו הזדמנות ללכת עמוק יותר, ו ללמוד עוד על נושא מסוים.
בחירת שפות
זה קצת חידה עבור היזם החדש לבחור אילו טכנולוגיות ללמוד. להוציא את הצרכים מן הדרך, HTML ו- CSS נדרשים לחלוטין. JavaScript הוא גם הכרח, אבל אתה לא צריך לשקול את עצמך מאסטר JS. אתה צריך עם זאת להיות מעוניין ללמוד יותר פשוט JavaScript.
רוב devs ללמוד jQuery גם כן, אבל מסגרות כמו React, אמבר, זוויתי, Vue, או עמוד השדרה כל מציעים תהליך פשוט יותר לבניית יישומי אינטרנט בקנה מידה מלא.
אפשר לצלול אפילו למידה עמוקה יותר אפקטים, כגון אנימציות, אבל הם אופציונליים לחלוטין. מפתחת מחסנית מלאה צריך לדעת רק מספיק כדי לעשות את העבודה, ולהמשיך הלאה משם.
בחירת שפה לאחור היא פחות יתרון טכני, ועוד על נוחות. רוב המתכנתים מבינים את זה Python היא שפה רב-תכליתית יותר מאשר PHP, אולם רוב אתרי האינטרנט לרוץ על שרתי PHP. זה עושה PHP שפה חשובה לחברות נוספות.
בחר כל שפה המתאימה לצרכים שלך, או מציע לך את הסיכויים הגדולים ביותר. כמו כן, זכור זאת אתה לא תקוע עם שפה אחת backend לנצח. אם אתה מתחיל עם רובי אבל לעבור Python אתה לא מאבד שום דבר בתהליך.
עם זאת אני ממליץ כי ברגע שתמצא שפה backend אתה אוהב, להתעמק עמוק יותר עם השפה, ו להרים מסגרת קשורה. PHP יש Laravel, רובי יש Rails, ופייתון יש ג 'נגו - בין אפשרויות רבות אחרות. מסגרות אלה יאיצו את תהליך הפיתוח שלך ויעזרו לך לבנות את היישומים שלך בצורה נכונה.
מאגרי מידע ושרתים
בחירת מנוע מסד הנתונים מגיע לדרישות הפרויקט ואת מחסנית השרת. PHP לעתים קרובות עובד עם MySQL, אז זה הבחירה המועדפת ביותר. ה שני מחסני האינטרנט הגדולים היום הם מנורה (Linux-Apache-MySQL-PHP) ו מתכוון (MongoDB-ExpressJS-AngularJS-Node.js).
רוב חברות אירוח להציע LAMP מההתחלה ללא צורך בהגדרה. אבל פתרונות מותאמים אישית כמו האוקיינוס הדיגיטלי מאפשרים לך לרוץ כמעט כל דבר עם קצת מרפק גריז. תוכל למצוא עוד ערימות אינטרנט ברשימה זו, או על ידי חיפוש באינטרנט.
מסד הנתונים של הבחירה שלך יהיה לעתים קרובות קשור לשפה backend שלך. Python מגיע עם תמיכה SQLite כברירת מחדל, ו RoR devs יכול בדרך כלל לעבוד עם כל דבר. ובאמת, כל שפה יכולה בדרך כלל לעבוד עם כל מסד נתונים.
אבל אתה רוצה לבחור משהו נפוץ מספיק כדי להשתמש ברוב של פרויקטים באינטרנט. SQL היא שפה כללית, והיא משתמשת בעיקר בתחביר זהה בכל מנועי מסד הנתונים. תוכלו למצוא הבדלים בהגדרת הטבלה ובמינהל, אך אלה הם בדרך כלל קטנים.
מעבר למסדי נתונים, הנה כמה נושאים טכניים בצד השרת שתרצה ללמוד עליהם.
- CDNs אירוח תוכן
- התקנת תוכנת שרת ועדכונים
- תצורות השרת הטובות ביותר עבור דוקרני תנועה וזמני הטעינה
- פתרונות אחסון במטמון לשאילתות מסד נתונים ולמערכת אחסון קבצים
- גיבויים אוטומטיים של מסדי נתונים וקבצים שטוחים, או גיבויים הדמיה דיסק
- הגדרת HTTPS עם ניהול דומיינים (שרתי DNS, רשומות CNAME וכו ')
- נושאים מפורטים יותר, כגון דואר אלקטרוני, מיקרו-שירות ואיזון עומסים
אחת הדרכים הטובות ביותר ללמוד היא tinkering עם שרתים כפי שאתה בונה פרויקטים. לתפוס בסיסי VPS ונסה להגדיר את הערימות שלך. אלה הם VPSs וירטואלי מלא סביבות שרת שבו יש לך שליטה מלאה כדי להגדיר (או להרוס) הכל. כמו כן, הרשימה לעיל אינה מפת הדרכים הנדרשת עבור כל מפתחי מחסנית מלאה.
הידע היחיד שאתה באמת צריך הוא כל מה שנדרש כדי ליצור סביבת שרת ריק, ולהתקין את התוכנה הדרושה כדי להפעיל אתר אינטרנט. משם, כל דבר אחר הוא רק ידע משופר. אם יש לך שאלות או רוצה ללמוד מאנשי מקצוע לבדוק Reddit של / r / SysAdmin הקהילה.
הדרך קדימה
אם אתה באמת רוצה ללמוד פיתוח מחסנית מלאה, ליצור רשימה של כל הטכנולוגיות שאתה רוצה ללמוד. משם, אתה יכול להתמודד עם אותם אחד אחד על ידי ביצוע פרויקטים בפועל שלך כדי לבדוק מה אתה לומד.
פיתוח אינטרנט הוא שינוי מתמיד בתעשייה, כך שאתה תמיד צריך להיות מוכן ללמוד יותר. בדוק ערימות שונות ושפות עד שתמצא מה שאתה אוהב. אבל תמיד להיות מוכן ללכת עמוק יותר ולהשתפר!
האם מחסנית מלאה הפיתוח שווה את המאמץ? זה בשבילך להחליט. אבל הנה כמה הודעות הקשורות שיכולים לעזור לך להבין את זה.
- על הלגיטימיות של "מחסנית מלאה" (heapsortjobs.com)
- אז אתה רוצה להיות מפתח מחסנית מלאה (rubysteps.com)
- 7 עצות כיצד להפוך למפתח מחסנית מלאה (usersnap.com)