Unity ile Mobil Uygulama(Oyun Olmayan) Geliştirilir mi ?

Unity ile Mobil Uygulama(Oyun Olmayan) Geliştirilir mi ?


Unity ile Mobil Uygulama(Oyun Olmayan) Geliştirilir mi ?

 Unity ile uzun zamandır neredeyse lise hayatımdan bu yana oyun geliştirme çabası içindeydim ki en sonunda zaten Oyun Tasarım Bölümünü kazanmam ile aslında bir nevi hayatımın %40lık dilimini kapsayan oyun tasarımı bir anda neredeyse hayatımın %90ını kaplamaya başladı ki kalan %10luk kısım ise film izlemek diyebilirim.

Neyse benim Unity ile oyun geliştirme anılarımdan ziyade bu gün asıl konumuz Unity ile oyun haricinde mobil uygulama geliştirilir mi? Böyle bir şey mümkün mü veya Unity ile mobil uygulama geliştirirsek avantajları ve dezavantajları nelerdir bunlara bakacağız.

Unity gerçekten güçlü bir oyun motoru ve çoklu platform desteği sağlayan çıktıları ile işimizi oldukça kolaylaştıran bir program ki zaten liseden sonra dershaneye giderken dershanede kullandığımız mobil uygulamalardan birisi Unity ile yapılmıştı. Uygulamayı basitçe anlatmam gerekir ise fiziksel kitapçıkta cevapladığımız soruların cevaplarını cevap anahtarına kalem ile siyah yuvarlakları oluşturduktan sonra uygulama ile taratıp yanlış yaptıklarımızın konu anlatımlarını, soru çözümlerini görebiliyorduk. Bunun yanı sıra bu uygulamada canımız sıkıldıkça girip cevapların anlatımlarını soru çözümlerini taratmadan da izleyebiliyorduk.

Aradan iki yıl geçmiş olmasına rağmen aklıma takıldı ve kafamdaki bilgiler ile acaba Unity ile mobil uygulama yapsak ne gibi avantajları ne gibi dezavantajları olur diye düşündüm, üstüne biraz da internette araştırma yaptıktan sonra çıkarımlarımı sizler ile paylaşmak istedim.

Bana göre Unity ile mobil uygulama geliştirmenin herhangi bir sakıncası yok hatta acil yapılması gereken bir proje ise Unity kullanmanın avantajı bile olabilir. Tabi bu hemen size ilk fikir olarak Unity kullanayım ı aklınıza getirmesin çünkü Unity bir oyun motoru olduğu için aslında Android Studio gibi programlarda lokal olarak gelen bir çok özellik Unity de olmadığı için bazı durumlarda işinizi kolaylaştırabildiği gibi zorlaştıra da bilir.

Ben avantajlarından ve dezavantajlarından bahsedeyim kullanıp kullanmamak size kalsın.


Unity ile Mobil Uygulama(Oyun Olmayan) Geliştirilir mi ?


Unity İle Mobil Uygulama Geliştirmenin Avantajları

Kaynak Bolluğu

Evet Unity kullanarak oyun yapmanızı sağlayacak bir çok kaynak bulunmakta ve belki mobil uygulama yapmak için kaynak yok denecek kadar az olabilir ancak Unity ile oyun yapmayı kavradıktan sonra daha doğrusu Unity kullanmayı kavradıktan sonra aslında Unity ile oldukça rahat bir şekilde mobil uygulamalar da geliştirebilirsiniz.

Flutter, Switft, Kotlin gibi dillere göre oldukça fazla kaynak bulunuyor. Zaten Unity C# ile birlikte kullanıldığı için aradığınız konu ile ilgili Unity de kaynak bulamasanız bile C# ile ilgili forumlardaki kodları, eğitimleri alıp Unity kısmına uyarlamanı oldukça kolay oluyor.

Kolay Kullanım, Yaygın Kodlama Dili

Belki de mobil uygulama geliştirirken Unity kullanmamı için en büyük sebeplerden birisi bu olabilir özellikle yeni başlayanlar için.
Unity oldukça kolay kurulumu, kolay çıktı alması ve C# gibi oldukça yaygın bir kodlama dili kullandığı için öğrenmesi ve alışması oldukça kolay bir program.
Sunduğu bir çok eklenti ve özellik sayesinde aslında bir çok konuda diğer geliştirme ortamlarına göre daha fazla kolaylık sağlıyor bizlere.
Örnek vermem gerekir ise reklam eklemek için veya uygulama içi alışveriş sistemi için internet üzerinde saatlerce eğitim videosu aramak yerine Unity tarafından sunulan reklam hizmeti ve uygulama içi alışveriş sistemini projenize dahil etmeniz ardından 5 dakikalık eğitim videoları ile kullanılabilir hale getirmeniz mümkündür.

Platformlar Arası Çıktı & Geliştirme İmkanı

Unity Windows, Linux, Mac gibi bir çok işletim sisteminde çalıştığı gibi Windows, Linux, Mac OSX, Android, IOS ve konsollar gibi bir çok platforma da çıktı imkanı sunuyor. (Android Studio da bir çok işletim sistemi üzerinde çalışabiliyor olmasına rağmen maalesef sadece Android için çıktı verebiliyor ancak bu konuda Xamarin in de hakkını yemeyelim...)

Güçlü Özellikler

Unity aslında bir oyun motoru olduğu için arkasında oldukça güçlü özellikleri bulunuyor, geliştireceğiniz uygulama AR destekli bir uygulama olabilir ya da 3D modeller kullanmayı düşünüyorsanız diğer geliştirme ortamlarına göre oldukça avantajlı olduğunu göreceksiniz.
Tabi burada bütün özelliklerini ve üstünlüklerini sıralamam mümkün değil ancak aklıma gelenleri sizi çok da sıkmadan ara ara koymaya çalıştım.

Unity UI

Unity İle Mobil Uygulama Geliştirmenin Dezavantajları

Unity ile çok güçlü ve çok güzel mobil uygulamalar geliştirebilirsiniz ancak bu oluşturacağınız mobil uygulamalar demek değildir ki her türlü mobil uygulamalar Unity ile yapılabilir ve ya çok kusursuz uygulamalar yapılabilir, gelin birde Unity ile uygulama geliştirmenin dezavantajlarına bakalım.

Büyük Uygulama Boyutları

Unity doğası gereği içerisinde bir çok kütüphane ve özelliği barındırıyor ve bu sebeplerden dolayı da vereceği dosya çıktıları Android Studio veya XCode gibi temel IDElerden alacağınız çıktılara göre daha büyük olabiliyor.
Aslında bu öyle oldukça büyük bir fark da değildir ancak 1 - 2 MB farklar olabilir. (Geliştirilen uygulamaya göre daha az veya daha yüksek olabilir.)

Eksik Destek Özellikleri

Buranın aslında başlığını biraz yanlış attım diyebilirim ancak şöyle açıklayabilirim bazı platformların yerel özelliklerine desteği veya erişimi olmayabiliyor. Örnek vermem gerekir ise Unity ile yaptığınız uygulama üzerinden mobil cihazların WI-FI ayarlarını değiştiremiyorsunuz ve sizi ayarlar menüsüne yönlendiriyor..

Eskiden parmak izi algılaması gibi özelliklere erişemiyorduk ancak günümüzde yazılan özel 
Frameworkler sayesinde aslında bu da sorun olmaktan çıktı..

Standart sistem buton, input field gibi objeler olmadığı için Unity nin kendi birimlerini kullanmanız ya da özel tasarımlar yapmanız gerekiyor. (Aslında bunun bir dezavantaj olduğunu düşünmüyorum..)