แอพ Golang ยอดนิยม: 6 แอพที่ดีที่สุดที่สร้างด้วย Golang

เผยแพร่แล้ว: 2020-06-05

รวดเร็วและใช้งานง่าย ภาษาโปรแกรม Golang (หรือที่เรียกว่า Go) กำลังได้รับความนิยมเพิ่มขึ้นอย่างรวดเร็ว ตามสถิติของ Github ระหว่างปี 2018 ถึง 2019 ชุมชน Go เติบโตขึ้น 147% Golang ดึงดูดบริษัทจำนวนมาก เนื่องจากได้รับการออกแบบมาสำหรับโครงการระดับองค์กรที่ซับซ้อน ดังนั้นคุณสามารถทำอะไรกับภาษาการเขียนโปรแกรมนี้ได้บ้าง?

ในบทความนี้ เราจะมาดูแอป Golang อันดับต้น ๆ อย่างละเอียดยิ่งขึ้น ตัวอย่างในชีวิตจริงเหล่านี้จะช่วยให้คุณเห็นว่า Google Go จะเป็นตัวเลือกที่เหมาะสมสำหรับธุรกิจของคุณได้อย่างไร

อนาคตของรายงานการพัฒนาแอพมือถือ

ค้นพบว่าอนาคตของแอพมือถือจะเป็นอย่างไร

รับรายงานฟรี!

แอปพลิเคชั่น 6 อันดับแรกที่พัฒนาโดยใช้ Golang

1. แอพธนาคาร Golang – Monzo

บริษัทส่วนใหญ่แนะนำ Golang ร่วมกับสถาปัตยกรรมไมโครเซอร์วิส ซึ่งไม่แตกต่างกันในกรณีของ Monzo ซึ่งเป็นธนาคารออนไลน์ที่ใช้แอพ เมื่อพวกเขาเริ่มตั้งค่าแอปพลิเคชันในเดือนกุมภาพันธ์ 2015 พวกเขามุ่งเน้นไปที่หลักการความรับผิดชอบเดียว มันระบุว่าทุกโมดูลควรรับผิดชอบต่อการทำงานเดียว วิธีการประเภทนี้ทำให้แอปมีความเสถียรมากขึ้น และนี่คือจุดที่ Go เหมาะสมอย่างยิ่ง Monzo เป็นตัวอย่างคลาสสิกของแอปที่สร้างบน Golang ตั้งแต่เริ่มต้น

Monzo - แอพธนาคาร Golang

ในขณะที่ Monzo เติบโตขึ้นเรื่อยๆ Golang ช่วยบริษัทปรับขนาดผลิตภัณฑ์ ทีมเทคโนโลยีระบุว่า Go นั้น “สมบูรณ์แบบสำหรับสถาปัตยกรรมไมโครเซอร์วิส” เนื่องจากช่วยให้พวกเขาสร้างบริการที่ละเอียดขึ้นซึ่งรวมเข้ากับแอปที่เสถียร

Monzo ประกอบด้วยไมโครเซอร์วิสมากกว่า 1,600 แห่ง Matt Heath วิศวกรอาวุโสของบริษัทอ้างว่า Go ช่วยให้พวกเขารักษาสถาปัตยกรรมที่ซับซ้อนได้ ในคำพูดของเขา ภาษานี้ “ค่อนข้างง่าย […] และทำให้ง่าย […] ในการรับคนเข้าร่วม” อันที่จริง Golang มีชื่อเสียงในด้านช่วงการเรียนรู้ที่ต่ำ – บางคนอ้างว่านักพัฒนาสามารถเรียนรู้พื้นฐานได้ภายในเย็นวันเดียว!

2. แอปอีคอมเมิร์ซ Golang – Allegro

Allegro - แอปอีคอมเมิร์ซ Golang

ในกรณีของ Monzo Go เป็นภาษาหลักตั้งแต่เริ่มต้น เรื่องราวของ Golang นั้นแตกต่างออกไปสำหรับ Allegro ซึ่งเป็นอีคอมเมิร์ซยักษ์ใหญ่ของโปแลนด์ที่มีมาตั้งแต่ปี 1999 กรอไปข้างหน้าสู่ปี 2016 อย่างรวดเร็ว ทีมงานเทคโนโลยีของ Allegro กำลังมองหาวิธีที่มีประสิทธิภาพในการสร้างบริการแคชที่รวดเร็วมาก พวกเขาตัดสินใจลองอะไรใหม่ๆ และเลือก Golang สำหรับงาน

ไมโครเซอร์วิสของ Allegro ส่วนใหญ่เขียนด้วยภาษาจาวา แต่ทีมงานก็เปิดกว้างเพื่อสำรวจสิ่งใหม่ๆ พวกเขาเคยทำงานด้วยในโครงการโอเพ่นซอร์ส Go มาก่อนและยินดีที่ได้เห็นว่า Golang จะจัดการกับปริมาณการใช้งานที่มากขึ้นได้อย่างไร

ผลลัพธ์สุดท้ายเป็นที่น่าอัศจรรย์ Go ช่วย Allegro เร่งความเร็วแอปพลิเคชันจาก 2.5 วินาทีเป็นน้อยกว่า 250 มิลลิวินาที และนั่นเป็นคำขอที่ยาวที่สุด! ทีมงาน Allegro สาบานด้วย Golang และยินดีที่จะแบ่งปันข้อมูลเชิงลึกระหว่างการประชุมเกี่ยวกับ Go

3. แอพเพลง Golang – SoundCloud

SoundCloud - แอพเพลง Golang

SoundCloud ซึ่งเป็นแพลตฟอร์มแบ่งปันเพลงที่เน้นศิลปิน ค่อนข้างเป็นผู้เริ่มใช้ Go ในช่วงต้น ในบรรดาแอพ Golang ชั้นนำทั้งหมด SoundCloud ซึ่งเป็นแพลตฟอร์มแบ่งปันเพลงที่เน้นศิลปินเป็นหลัก ค่อนข้างเป็นผู้ใช้งานในช่วงแรกๆ ย้อนกลับไปในปี 2012 พวกเขาได้เผยแพร่บทความเกี่ยวกับ Go at SoundCloud

แม้ว่าแอปจะใช้ Ruby on Rails เป็นส่วนใหญ่ แต่ SoundCloud ระบุว่าเป็นบริษัทที่พูดได้หลายภาษา โดยมีหลายภาษาเพิ่มขึ้นในแบ็กเอนด์ พวกเขาชื่นชม Golang เป็นภาษา WYSIWYG ( สิ่งที่คุณเห็นคือสิ่งที่คุณได้รับ ) ทำให้ทั้งทีมเข้าใจซอฟต์แวร์ได้ง่ายขึ้นและทำให้กระบวนการบำรุงรักษามีประสิทธิภาพมากขึ้น

ยิ่งไปกว่านั้น SoundCloud ยังชื่นชมการ คอมไพล์ที่รวดเร็วของ Golang และการพิมพ์แบบคงที่ ในแง่ของคนธรรมดา นี่หมายความว่าการพัฒนา ทดสอบ และปรับใช้แอปพลิเคชันนั้นรวดเร็วที่สุด ทีมงานอ้างว่ากระบวนการที่รวดเร็วเหล่านี้หมายความว่าแนวคิดง่ายๆ บางอย่างสามารถนำไปใช้จากไวท์บอร์ดไปจนถึงการผลิตได้ในเวลาเพียงหนึ่งชั่วโมง น่าประทับใจใช่มั้ย

4. แอพหาคู่ Golang – Badoo

Badoo - แอพหาคู่ Golang

นำเสนอใน 190 ประเทศและมีผู้ใช้ 400 ล้านคนทั่วโลก Badoo เป็นเครือข่ายหาคู่ที่ใช้กันอย่างแพร่หลายมากที่สุดในโลก ตัวเลขเหล่านี้เรียกร้องให้ใช้อัลกอริธึมการค้นหาที่มีประสิทธิภาพสูง และนี่คือสิ่งที่ Golang มีประโยชน์

เพื่อมอบประสบการณ์การค้นหาที่ราบรื่นที่สุดเท่าที่จะเป็นไปได้ ทีมเทคโนโลยีของ Badoo ได้สร้างบริการโดยใช้ดัชนีบิตแมป ดัชนีบิตแมป ประกอบด้วยบิตแมปหลายรายการที่แสดงถึงเอนทิตี (ในกรณีนี้คือผู้ใช้แอปหาคู่) และพารามิเตอร์ (เช่น อายุ หรือสีผม) ทำให้เหมาะอย่างยิ่งสำหรับผู้ใช้ที่มองหาคนที่มี สิ่งนี้ สิ่งนี้ ไม่ใช่อย่างนั้น สมมติว่าผู้ชายอายุ 25-30 ปี สีบลอนด์ ความสูงมากกว่า 180 ซม. การจับคู่ที่เกิดขึ้นในสวรรค์สำหรับแอพหาคู่ใช่ไหม

เคล็ดลับ: ดัชนีบิตแมปอาจใช้งานยากในระบบจัดการฐานข้อมูลยอดนิยมมากมาย เช่น MySQL การแก้ไขปัญหา? คุณเดาได้: Golang ดัชนีบิตแมปมักใช้ใน Pilosa ซึ่งเป็นระบบจัดการฐานข้อมูลที่เขียนด้วยภาษา Go โดยไม่ต้องลงรายละเอียดทางเทคนิคมากเกินไป ภาษา Go ช่วยให้การใช้งานดัชนีบิตแมปเป็นไปอย่างราบรื่น ซึ่งเป็นเหตุผลที่ทีม Badoo ตัดสินใจใช้สำหรับผลิตภัณฑ์ที่มีการบำรุงรักษาสูง

5. แอพแชร์รถ Golang – Uber

ใช่ คุณอ่านถูกต้องแล้ว แม้แต่ Uber ก็ใช้ Golang เพื่อปรับปรุงคุณภาพบริการแชร์รถของพวกเขา

บริษัทใช้ geofences สำหรับการระบุตำแหน่งทางภูมิศาสตร์ ขอบเขตตำแหน่งกำหนดพื้นที่ที่มีข้อกำหนดเฉพาะ ส่วนใหญ่มักใช้กับสนามบินหรือย่านที่พลุกพล่านโดยเฉพาะ ดูตัวอย่าง geofence จากกัมปาลา ยูกันดา:

Uber - แอพแชร์รถ Golang

แม้ว่า Node.js จะเป็นภาษาแรกที่ Uber เลือก แต่พวกเขาตัดสินใจเริ่มใช้บริการ Go สำหรับบริการนี้ บริษัทต้องการบางสิ่งที่รวดเร็ว เนื่องจากพวกเขากำลังจัดการกับคำขอค้นหาขอบเขตตำแหน่งหลายแสนรายการทุกวินาที! Golang กลายเป็นตัวเลือกที่สมบูรณ์แบบ เนื่องจากสามารถทำงานบนคอร์ CPU หลายคอร์พร้อมกันได้ ในขณะที่ Node.js เป็นแบบเธรดเดียว กล่าวอีกนัยหนึ่ง ภาษา Go สามารถทำได้หลายอย่างพร้อมกัน

ทางเลือกนี้พิสูจน์แล้วว่าประสบความสำเร็จอย่างมาก และทีม Uber มีความสุขกับการใช้ Golang ไม่เพียงแต่จะเร็วขึ้นเท่านั้น แต่ยังทำให้นักพัฒนาซอฟต์แวร์มีประสิทธิผลมากขึ้นด้วย เมื่อพวกเขาคุ้นเคยกับ Java, C++ หรือ Node.js แล้ว พวกเขาจะสามารถเรียนรู้ Go ได้ในเวลาเพียงไม่กี่วัน

เมื่อพูดถึงประสิทธิภาพของแอป ผลลัพธ์ก็น่าประทับใจจริงๆ ในวันส่งท้ายปีเก่า 2015 ศูนย์ข้อมูลของ Uber ประสบความสำเร็จในการจัดการโหลดสูงสุดโดยใช้ CPU เพียง 35% ยิ่งไปกว่านั้น บริษัทสามารถอวดเวลาทำงานได้ถึง 99.99% โดยที่เวลาหยุดทำงานเกิดจากไลบรารีของบุคคลที่สามเท่านั้น ไม่ใช่ Golang เอง

จากความสำเร็จของ geofence ทำให้ Uber เริ่มนำ Golang ไปใช้ในไมโครเซอร์วิสของตนมากขึ้น ตัวอย่างเช่น พวกเขากำลังใช้ภาษานี้เพื่อจับคู่ผู้ขับขี่กับผู้ขับขี่ที่เหมาะสมด้วย ได้กลายเป็นภาษาที่ได้รับความนิยมมากที่สุดสำหรับการสร้างบริการใหม่ภายในผลิตภัณฑ์ พูดได้อย่างปลอดภัยว่า Uber เป็นหนึ่งในแอพ Golang อันดับต้น ๆ เมื่อพูดถึงความนิยม

6. แอปจัดการโครงการ Golang – Timesheets

สุดท้ายแต่ไม่ท้ายสุด นี่คือตัวอย่างแอป Golang ที่เราสร้างขึ้น Timesheets คือโซลูชันการติดตามเวลาที่เราใช้เป็นเครื่องมือภายในเป็นครั้งแรก เนื่องจากเราพอใจกับมันมาก เราจึงตัดสินใจแชร์ Timesheets กับบุคคลทั่วไป เครื่องมือนี้สามารถรวมเข้ากับเครื่องมืออื่นๆ ได้เช่นกัน รวมถึง Slack, Jira หรือแม้แต่ผู้ช่วยเสียง

ไอคอนบริการออกแบบผลิตภัณฑ์

ตรวจสอบโครงการที่ประสบความสำเร็จอื่น ๆ ของเรา

ดูผลงานของเรา

เมื่อสร้าง Timesheets Golang เป็นตัวเลือกแรกของเรา เราต้องการสร้าง แอปที่เบา รวดเร็ว และเพียงพอ และการทำงานแบบมัลติเธรดของ Golang ทำให้ง่ายขึ้นมาก ยิ่งไปกว่านั้น เมื่อเราใช้ส่วนร่วมภายในที่เก็บเดียว เราสามารถเรียกใช้กระบวนการต่างๆ พร้อมกันได้ โดยสรุป Golang เร่งกระบวนการพัฒนาค่อนข้างมาก

วิธีจัดการกับการพัฒนาแอพ Golang

กำลังมองหาบริษัทพัฒนา Golang ชั้นนำอยู่ใช่ไหม? ไม่ว่าคุณจะวางแผนจะสร้างอะไร เรายินดีที่จะแบ่งปันคำแนะนำ ประสบการณ์ของเราในการพัฒนาแอพด้วย Go จะช่วยได้อย่างแน่นอน โปรดติดต่อเพื่อขอรายละเอียดเพิ่มเติม! เราหวังว่าบทสรุปของแอพที่สร้างด้วย Golang จะทำให้คุณมีแรงบันดาลใจ