Full-Stack Geliştirici Nasıl Olunur: Bölüm 3

Yayınlanan: 2017-12-02

Bu gönderi, tam yığın geliştirici olma konusundaki serinin üçüncü ve son yazısıdır. Bu makale özellikle mobil uygulama geliştirme hakkında konuşuyor. Ön uç ve arka uç geliştirme hakkında daha fazla bilgi için burayı okuyun.
Steve Jobs 2007'de iPhone'u tanıttığında, dünyanın matbaadan bu yana tanık olduğu en büyük devrimi başlattı. Akıllı telefonlar dünyadaki hemen hemen her ülkeye girmeyi başardı. En yoksullar bile birine o kadar sahipmiş gibi görünüyor ki, onlarsız bir hayat düşünülemez.

Motivasyon

Yalnızca telefonda çalışırken anlamlı olan belirli uygulamalar vardır. Örneğin Uber'i ele alalım. Uber'in GPS aracılığıyla tam konumunuzu bilmesi gerekiyor. Masaüstü için bir Uber uygulaması pek mantıklı olmaz.
Diğer bir sorun ise, tarayıcılar için oluşturulmuş olsa bile, hedef kitlenizin çoğunluğunun uygulamanızı bir telefon aracılığıyla açmasıdır. Bu gibi durumlarda, deneyimin sorunsuz olduğundan ve çok fazla veri tüketilmediğinden emin olmanız zorunludur. Son olarak, fare tıklamaları ile dokunma ile etkileşim arasında ince farklar vardır. Uygulamanız, her iki senaryoda da iyi çalışmasını sağlamalıdır.
Tüm bu hususları göz önünde bulundurarak, tarayıcıdan çıkmak ve mobil uygulamalar oluşturmak mantıklıdır. Bu, tipik bir akıllı telefonun sunduğu işlevlerden maksimum düzeyde yararlanmanızı sağlarken aynı zamanda kullanıcı deneyimini bir zevk haline getirmenizi sağlar. Aşağıda, mobil uygulama geliştirmede başarılı olmanın adımları yer almaktadır. İlk bölüm için ön uç ve arka uç geliştirmede tam yığın geliştirici olmak.

Nasıl Full-Stack web yazılımı olunur Geliştirici UpGrad blogu Mobil geliştirme

Bizongo'nun Kurucu Ortağı ve CTO'su Ankit Tomar ile röportaj

İçindekiler

Adım 12: Bir Platform Seçin

İlk adım, uygulamanızı oluşturmak istediğiniz platformu seçmek olacaktır. Oldukça büyük bir ekibin parçası değilseniz, tüm büyük platformlarda sıfırdan uygulamalar oluşturmanız pek olası değildir. Daha olası senaryo, en sevdiğiniz platformda kod yazmanız ve ardından onu diğerlerine aktarmanızdır.
Günümüzün en büyük akıllı telefon platformları iOS, Android ve Windows'tur. Büyük ölçüde farklı diller ve IDE'ler kullanırlar. Örneğin, iOS Swift ve XCode kullanır, Android Java kullanır ve Android Studio ve Microsoft C# ve Visual Studio ile çalışır.
Bugün piyasaya Android ve iOS hakim, bu yüzden seçim gerçekten bu ikisine düşüyor. Bir seçim yapmadan önce göz önünde bulundurmanız gerekebilecek bazı şeyler, uygulamanızın kitle payıdır. Apple Cihazları orada son derece popüler olduğundan, Birinci Dünya ülkesindeyseniz iOS uygulamaları oluşturmanın ticari açıdan mantıklı olduğuna inanıyorum. Buna karşılık, Hindistan gibi bir ülkede, iPhone'ların pazar payı fahiş fiyatı nedeniyle son derece küçük olduğu için Android daha açık bir seçim olacaktır.
Uygulamanızdan para kazanmayı planlıyorsanız, iOS kullanıcılarının uygulama içi satın alma işlemleri için cüzdanlarını Android benzerlerine göre açma olasılığının daha yüksek olduğunu unutmayın. Bunun nedeni, iOS kullanıcılarının genellikle Android'in hakim olduğu üçüncü dünya pazarlarına kıyasla daha fazla harcanabilir gelire sahip olma eğiliminde olmaları olabilir.
iOS geliştirme, bir Mac Geliştirme makinenizin olmasını gerektirir. Ayrıca, Apple App Store lisansları, Google Play'in tek seferlik 25 ABD Doları tutarındaki ücretine kıyasla yılda 99 ABD Doları'ndan perakende satış yapmaktadır. Başka bir deyişle, iOS geliştirme çok daha pahalıdır.
Bu yazıda, bugün mobil uygulama geliştirmenin nasıl yapıldığını ele alacağım: Native Android Apps, Native iOS Uygulamaları ve Hibrit Mobil Uygulamalar.

13. Adım: Java ve XML

Java, Android Geliştirme için en popüler dildir (Google, yakın zamanda Kotlin Programlama dili için de destek sunmuştur).
Android'in kurucuları Java'nın uygun bir seçim olduğunu düşündüler ve başlangıcından beri Java'ya bağlı kaldılar. Ve eğer izleyecekleri bir yol varsa, bu inanılmaz bir karardan başka bir şey değildi.
Nasıl Full-Stack web yazılımı olunur Geliştirici UpGrad blogu Mobil geliştirme
Java öğrenmek için en iyi kaynak Head First Java olacaktır. Bu kitabı okumak, size dilin yanı sıra Nesne Yönelimli Programlama İlkeleri hakkında kapsamlı bir giriş sağlayacaktır.
XML söz konusu olduğunda, konuyla ilgili yoğun bir eğitime ihtiyacınız olduğunu düşünmüyorum. Halihazırda bir XML (HTML) alt kümesiyle kapsamlı bir şekilde çalıştınız ve doğrudan Android geliştirmeye atlamış olsanız bile, bunu oldukça hızlı bir şekilde çözebileceksiniz. Java için aynı şeyi söyleyemeyeceğim. Android'e girmeden önce dili iyi anladığınızdan emin olun.

Adım 14: Android

Artık Android uygulamaları oluşturmak için teknik bilgiye sahipsiniz. Bu devrim niteliğindeki işletim sistemine derinlemesine dalmanın zamanı geldi. Bazı Android uygulamalarının genellikle web'de gördüklerinizden farklı olmasına rağmen dikkatli olun. Aşağıda önerdiğim kaynaklar, öğrenmenizin bu farklılıklardan etkilenmemesini sağlayacaktır.
Android Programlama- The Big Nerd Ranch Guide 2nd Edition , Java'yı zaten biliyorsanız, başlamak için iyi bir yerdir. Şu anda endüstri standardı olan Android Studio'yu kullanan ikinci sürümü aldığınızdan emin olun. Eclipse'de uygulama oluşturma pratiği büyük ölçüde eskidir.
Fynd Kurucu Ortağı Farooq Adam ile röportaj

Adım 15: iOS

Daha çok Apple meraklısıysanız ve/veya iOS uygulamalarının iş/kariyer hedefleriniz için daha anlamlı olduğuna karar verdiyseniz. İlk adım bir Mac edinmek olacaktır. XCode yalnızca Mac'te çalışır ve uygulama mağazasında yayınlamak için bir Mac'e ihtiyacınız vardır. Üzgünüm, VMWare.
iOS için önereceğim kaynak Android için olanla tamamen aynı. Nerd Ranch'in kendi yayını var – iOS Programlama: The Big Nerd Ranch Kılavuzu hangi Swift ve XCode ile ilgilenir, bu yüzden başlamak için iyi bir yer.

Nasıl Full-Stack web yazılımı olunur Geliştirici UpGrad blogu Mobil geliştirme

Adım 16: Hibrit Mobil Uygulamalar

Tek başına bir geliştiriciyseniz veya küçük bir ekipte çalışıyorsanız, muhtemelen Android ve iOS Uygulamalarını ayrı ayrı oluşturmak ve sürdürmek için zamanınız veya kaynaklarınız yoktur. Geliştiricinin birden fazla platform için geliştirme acısını hafifletmek için Hibrit Mobil Uygulamalar konsepti tanıtıldı.
Konsept son derece basit ve devrim niteliğinde. Javascript biliyorsanız, web uygulamalarının nasıl oluşturulacağını zaten biliyorsunuzdur. Bu nedenle, JS'de bir uygulamanız varsa, uygulamanızı otomatik olarak Android, iOS ve Windows'a taşıyan bir çerçeve olmalıdır. İnanılmaz ama gerçek.
Çoğu hibrit çerçeve bunu Cordova veya React Native kullanarak başarır. Cordova'yı tarayıcılar ve akıllı telefonun yerel donanımı arasındaki köprü olarak düşünebilirsiniz. Yalnızca JS kullanarak ikisi arasında bir bağlantı kurar ve her platformun yerel dillerinde derleme komut dosyalarının oluşturulmasına yardımcı olur.
Ancak Cordova tabanlı çerçeveler, Facebook'un güç merkezi React Native tarafından hızla gölgeleniyor. React Native'in gücü, Cordova WebView'leri oluştururken React Native'in Java (Android için) veya Swift (iOS için) kullanarak oluşturacağınız yerel uygulamalar oluşturmanıza izin vermesi gerçeğinde yatmaktadır. Başka bir deyişle, Cordova, mobil uygulama kılığında bir web sitesidir, ancak React Native, gerçek olanı oluşturmanıza izin verir.
Bence Cordova'ya bir ıska verebilir ve bunun yerine React Native'i öğrenebilirsiniz. Bu yapmak için son derece büyük bir kariyer yatırımıdır. UpGrad & IIIT-B'nin Yazılım Geliştirme programı, Facebook, Netflix ve AirBnB gibi şirketler tarafından uygulamalarını tasarlamak için halihazırda kullanılmış olan bu devrim niteliğindeki kitaplıkla yolculuğunuza başlamak için harika bir yerdir.
Fynd Kurucu Ortağı Farooq Adam ile röportaj

Çözüm

Hibrit uygulamaların sona ermesiyle birlikte bu serinin de sonuna geliyoruz. Özetle, ele aldığımız şeyler şunlardır:

  1. Bilgisayar Biliminin Temelleri.
  2. Veri Yapıları ve Algoritmalar
  3. kullanıcı arayüzü/UX
  4. HTML, CSS, JS
  5. Ön Uç Çerçeveleri
  6. Sunucu Tarafı Komut Dosyası ve Veritabanları
  7. Tam Yığın Çerçeveleri
  8. Android ve iOS
  9. Hibrit Mobil Uygulamalar

Umarım bu seriyi benim yazmaktan zevk aldığım kadar siz de okumaktan keyif almışsınızdır ve daha da önemlisi en azından bazı kısımlarını faydalı bulmuşsunuzdur. Her zaman olduğu gibi, yorumlarınızı ve önerilerinizi bekliyoruz!

Tam Yığın Geliştirici Olun

UpGrad ve IIIT-Bangalore'un Yazılım Geliştirmede PG Diploması
Daha fazla bilgi edin