En iyi Golang uygulamaları: Golang ile yapılmış en iyi 6 uygulama

Yayınlanan: 2020-06-05

Hızlı ve kullanımı kolay Golang programlama dili (Go olarak da bilinir) hızla popülerlik kazanmaktadır. Github istatistiklerine göre, 2018 ve 2019 arasında Go topluluğu %147 büyüdü. Golang, karmaşık kurumsal projeler için tasarlandığı için birçok şirketi kendine çekiyor. Peki, bu programlama dili ile tam olarak ne yapabilirsiniz?

Bu yazıda, en iyi Golang uygulamalarına daha yakından bakacağız . Bu gerçek hayattan örnekler, Google Go'nun işletmeniz için nasıl doğru seçim olabileceğini görmenize yardımcı olacak!

Mobil uygulama geliştirme raporunun geleceği

Mobil uygulamalar için geleceğin neler getireceğini keşfedin

Raporu ücretsiz alın!

Golang kullanılarak geliştirilen en iyi 6 uygulama

1. Golang bankacılık uygulaması – Monzo

Çoğu şirket Golang'ı mikro hizmet mimarisiyle birlikte sunar. Bu, uygulama tabanlı bir çevrimiçi banka olan Monzo için farklı değildi. Uygulamayı Şubat 2015'te ilk kez kurmaya başladıklarında, tek sorumluluk ilkesine odaklanmışlardı. Her modülün tek bir işlevsellikten sorumlu olması gerektiğini belirtir. Bu tür bir yaklaşım, uygulamayı daha kararlı hale getirir - ve işte burada Go harika bir uyum sağlar. Monzo, en başından beri Golang üzerine kurulmuş bir uygulamanın klasik bir örneğidir.

Monzo - Golang bankacılık uygulaması

Monzo büyümeye devam ederken, Golang şirketin ürünü ölçeklendirmesine yardımcı oldu. Teknik ekip, Go'nun "mikro hizmet mimarileri için mükemmel" olduğunu ve kararlı bir uygulamaya eklenecek ayrıntılı hizmetler oluşturmalarına yardımcı olduğunu belirtiyor.

Monzo, 1.600'den fazla mikro hizmetten oluşur. Şirketin kıdemli mühendisi Matt Heath, Go'nun bu kadar karmaşık bir mimariyi sürdürmelerine izin verdiğini iddia ediyor. Onun sözleriyle, dil “oldukça basit […] ve insanları gemiye almayı […] kolaylaştırıyor” . Gerçekten de Golang, düşük öğrenme eğrisi ile ünlüdür - bazıları geliştiricilerin temel bilgileri yalnızca bir akşam içinde öğrenebileceğini iddia ediyor!

2. Golang e-ticaret uygulaması – Allegro

Allegro - Golang e-ticaret uygulaması

Monzo örneğinde, Go en başından beri ana dildi. Golang hikayesi, 1999'dan beri piyasada olan Polonyalı bir e-ticaret devi olan Allegro için farklıydı. 2016'ya hızla ilerleyen Allegro teknoloji ekibi, çok hızlı bir önbellek hizmeti oluşturmanın etkili bir yolunu arıyordu. Yeni bir şey denemeye karar verdiler ve görev için Golang'ı seçtiler.

Allegro'nun mikro hizmetlerinin çoğu Java ile yazılmıştır, ancak ekip yeni şeyler keşfetmeye açıktı. Daha önce açık kaynaklı bir Go projesinde birlikte çalıştılar ve Golang'ın daha büyük hacimli trafiği nasıl idare edeceğini görmekten mutlu oldular.

Nihai sonuçlar şaşırtıcıydı. Go, Allegro'nun uygulamayı 2,5 saniyeden 250 milisaniyeden daha kısa bir sürede hızlandırmasına yardımcı oldu ve bu en uzun istek için! Allegro ekibi Golang'a yemin ediyor ve Go ile ilgili konferanslar sırasında görüşlerini paylaşmaktan mutluluk duyuyor.

3. Golang müzik uygulaması – SoundCloud

SoundCloud - Golang müzik uygulaması

Sanatçı odaklı bir müzik paylaşım platformu olan SoundCloud, Go'yu oldukça erken benimseyenlerden. Tüm en iyi Golang uygulamaları arasında, sanatçı odaklı bir müzik paylaşım platformu olan SoundCloud, oldukça erken bir evlat edinicidir. 2012'de Go at SoundCloud hakkında bir makale yayınladılar.

Uygulama büyük ölçüde Ruby on Rails'e dayansa da SoundCloud, arka uçlarına birçok dil ekleyen çok dilli bir şirket olarak tanımlanıyor. Golang'ı bir WYSIWYG ( ne görürsen onu alırsın ) dili olarak takdir ederler. Bu, tüm ekibin yazılımı anlamasını kolaylaştırır ve bakım sürecini daha verimli hale getirir.

Üstelik SoundCloud, Golang'ın hızlı derlemesini ve statik yazımını takdir ediyor. Layman'ın terimleriyle, bu, uygulamayı geliştirmenin, test etmenin ve dağıtmanın mümkün olduğunca hızlı olduğu anlamına gelir. Ekip, bu hızlı süreçlerin bazı basit fikirlerin beyaz tahtadan üretime sadece bir saat içinde geçebileceği anlamına geldiğini iddia ediyor. Etkileyici, değil mi?

4. Golang flört uygulaması – Badoo

Badoo - Golang flört uygulaması

190 ülkede bulunan ve dünya çapında 400 milyon kullanıcısıyla övünen Badoo, dünyanın en yaygın kullanılan flört ağıdır. Bu sayılar, yüksek verimli arama algoritmaları gerektirir - ve işte Golang'ın kullanışlı olduğu yer burasıdır.

Mümkün olan en sorunsuz arama deneyimini sağlamak için Badoo teknik ekibi, bitmap dizinlerini kullanarak hizmetler oluşturur. Bir bitmap dizini , varlıkları (bu durumda, flört uygulamasının kullanıcıları) ve bunların parametrelerini (yaş veya saç rengi gibi) temsil eden birkaç bitmap'ten oluşur. Bu, bu , bu , ve bu değil – diyelim ki, 25-30 yaş arası, sarışın, 180 cm'den uzun erkekler arayan kullanıcılar için mükemmel bir seçimdir. Bir flört uygulaması için cennette yapılmış bir eşleşme, değil mi?

İşin püf noktası şu: bitmap dizinlerini MySQL gibi birçok popüler veritabanı yönetim sisteminde uygulamak zor olabilir. Çözüm? Tahmin ettiniz: Golang. Bitmap dizinleri, Go'da yazılmış bir veritabanı yönetim sistemi olan Pilosa'da yaygın olarak kullanılır. Teknik ayrıntılara çok fazla girmeden Go dili, bitmap dizinlerinin sorunsuz bir şekilde uygulanmasına izin verir, bu nedenle Badoo ekibi yüksek bakım gerektiren ürünleri için onu kullanmaya karar verdi.

5. Golang araç paylaşım uygulaması – Uber

Evet, doğru okudunuz – Uber bile araç paylaşım hizmetlerinin kalitesini artırmak için Golang'ı kullanıyor.

Şirket, coğrafi konum için coğrafi sınırlar kullanır. Bir coğrafi sınır, belirli gereksinimleri olan bir alanı tanımlar. Çoğu zaman havaalanları veya özellikle yoğun mahalleler için geçerlidir. Uganda, Kampala'dan şu coğrafi sınır örneğine bir göz atın:

Uber - Golang araç paylaşım uygulaması

Node.js, Uber'in ilk tercih ettiği dil olmasına rağmen, bu hizmet için Go'yu kullanmaya karar verdiler. Her saniye yüz binlerce coğrafi sınır arama isteğiyle uğraştıkları için şirketin hızlı bir şeye ihtiyacı vardı! Golang, aynı anda birden fazla CPU çekirdeği üzerinde çalışabildiği için mükemmel bir seçim olduğu ortaya çıktı, Node.js ise tek iş parçacıklı. Başka bir deyişle, Go dili aynı anda birden fazla şey yapabilir.

Seçim büyük ölçüde başarılı oldu ve Uber ekibi Golang'ı kullanmaktan memnun. Yalnızca daha hızlı olmakla kalmaz, aynı zamanda yazılım geliştiricilerini daha üretken hale getirir. Java, C++ veya Node.js ile zaten aşina olduklarında, Go'yu sadece birkaç gün içinde öğrenebilecekler.

Uygulamanın performansı söz konusu olduğunda, sonuçlar gerçekten etkileyici. 2015 Yılbaşı Gecesi'nde, Uber'in veri merkezi, yalnızca %35 CPU kullanımıyla en yüksek yükü başarıyla yönetti. Her şeyden önce, şirket, Golang'ın kendisinden değil, yalnızca üçüncü taraf kitaplıklarından kaynaklanan kesintilerle birlikte, % 99,99'luk bir kesintisiz çalışma süresiyle övünebilir.

Geofence başarısından cesaret alan Uber, Golang'ı daha fazla mikro hizmetinde uygulamaya başladı. Örneğin, sürücüleri doğru sürücülerle eşleştirmek için de bu dili kullanıyorlar. Ürün içinde yeni hizmetler yaratmak için en popüler dilleri haline geldi. Popülerlik söz konusu olduğunda Uber'in en iyi Golang uygulamalarından biri olduğunu söylemek güvenlidir.

6. Golang proje yönetimi uygulaması – Zaman Çizelgeleri

Son olarak, oluşturduğumuz bir Golang uygulaması örneği burada. Zaman çizelgeleri, ilk olarak dahili bir araç olarak kullandığımız bir zaman izleme çözümüdür. Bundan gerçekten memnun olduğumuz için Zaman Çizelgelerini genel halkla paylaşmaya karar verdik. Araç, Slack, Jira ve hatta sesli asistanlar dahil olmak üzere bir dizi başka araçla da entegre edilebilir.

Ürün tasarım hizmetleri simgesi

Diğer başarılı projelerimize göz atın

Portföyümüzü görün

Zaman Çizelgelerini oluştururken Golang ilk tercihimizdi. Ultra hafif, hızlı ve yeterli bir uygulama oluşturmak istedik ve Golang'ın çoklu iş parçacığı bunu çok daha kolaylaştırıyor. Üstelik ortak parçaları tek bir havuzda kullandığımızda, aynı anda farklı süreçleri çalıştırabiliriz. Özetlemek gerekirse, Golang geliştirme sürecini oldukça hızlandırıyor.

Golang uygulama geliştirme nasıl yapılır?

En iyi Golang geliştirme şirketi mi arıyorsunuz? Ne yaratmayı planlıyor olursanız olun, bazı tavsiyeleri paylaşmaktan mutluluk duyarız. Go ile uygulama geliştirme konusundaki deneyimimiz kesinlikle yardımcı olacaktır. Daha fazla ayrıntı için iletişime geçmekten çekinmeyin! Golang ile yapılan bu uygulama koleksiyonunun size ilham verdiğini umuyoruz.