מהי Golang?
Golang, המכונה גם Go, הנה שפת תכנות בקוד פתוח שנועדה לבניה של תוכנות פשוטות ומאובטחות.
השפה פותחה בשנת 2007 על ידי גוגל ואומצה מאז על ידי מפתחים מכל העולם בגלל פיצ’רים כמו זיכרון בטוח
ואיסוף קבצי זבל ובגלל הדמיון שלה לשפות C.
כמו בהרבה תוכנות שמשמשות לבנייה ועיצוב של אפליקציות, גם במקרה של Golang קיימים הרבה פריימוורקים
שיכולים לקצר ולייעל את העבודה של המפתח. הנה סקירה קצרצרה על העיקריים בהם:
gin
מבין הפריימוורקים של Golang gin הוא הפופולרי מכולם.
בגלל תפיסת הפריימוורק המינימליסטית, השימוש העיקרי שלו הוא בבניית אפליקציות REST
ומתאימה מאוד לפיתוח אפליקציות של עמוד אחד.
סיבה נוספת לפופולריות של הפריימוורק היא שהוא מתאים מאוד למפתחים מתחילים
ושהוא נתמך על ידי מרבית הספריות.
beego
beego הוא פריימוורק שמשמש לפיתוח מואץ של אפליקציות REST, אפליקציות רשת ושירותים מגובים בשפת Golang.
רבים רואים בה את המקבילה של Golang לפריימוורק הפופולרי Django לשפת פייתון.
הוא אכן כולל פיצ’רים דומים לעיצוב ממשקים. beego לא דורש אף התקנה של צד שלישי וכולל כלי מובנה שמסייע לאתר שינויי קוד.
בנוסף, לפריימוורק יש ספריות ייעודיות.
echo
echo הוא פריימוורק לאפליקציות רשת שמציג ביצועים גבוהים.
הפריימוורק נועד לבנות אפליקציות REST קשיחות בעלות סקיילבליות גבוהה, שניתן במקרה הצורך לקבץ יחד.
הפריימוורק מגיע עם רישיון מובנה ומספק תמיכה ל -HTTP/2, שמשפרת את המהירות ומספקת חוויית משתמש טובה יותר.
echo תמוך באיגוד נתונים ל-HTTP בתצורות ופלטפורמות שונות, כולל JSON, XML או form data.
Echo פריימוורק מאפשר למפתח יחיד לבצע את כל המשימות.
kit
kit הוא ארגז כלים שנועד לבנות שירותי מיקרו עמידים ואמינים בשפת Golang.
הפריימוורק מורכב ממספר חבילות, שמספקות דרך אמינה ופשוטה לפיתוח שירותי מיקרו (microservices) עבור ארגונים בכל קנה מידה.
Golang היא שפה כללית מצוינת, אך כשזה מגיע לפיתוח שירותי מיקרו נדרשת לרוב תמיכה יותר ממוקדת ובמידה רבה kit מגשרת על הפער הזה.
fasthttp
כמו שמרמז ההלחם שמרכיב את השם, fasthttp הוא פריימוורק שמספק מהירות, כשזה נוגע לאפליקציות HTTP בין שרת ללקוח.
הפריימוורק מהווה אלטרנטיבה מוצלחת ל-net/http (אם כי ראוי לציין שיש מפתחים שמתקשים לבצע את המעבר מ-net ל-fasthttp).
העובדה שהמהירות האופטימלית שלו יכולה להתמודד בקלות עם יותר מ-100K ולתמוך בקישוריות גבוהה.
fasthttp תוכנן להרחיב יישומים קיימים של שרת/לקוח, או לפתח יישומי שרת/לקוח מאפס.
הפריימוורק מספק למפעיל המערכת הרבה מידע מועיל.
הפריימוורקים שסקרנו בקצרה הם אלו שדורגו כפופולריים ביותר על ידי GitHub, אך מדובר רק בחלק קטן מהפריימוורקים הזמינים ל-Golang.
פריימוורקים פופולריים נוספים שבנסיבות ומשימות מסוימות עשויים להיות מועילים הם: Buffalo, Martini, Goji, net/http, Revel

