Mobil yazılım geliştirme yaşam döngüsü
Mobil uygulamalar oluşturmak, Visual Studio'yu açmak, bir şeyleri bir araya getirmek, hızlı bir test yapmak ve bir App Store'a göndermek kadar kolay olabilir. Bunların hepsi öğleden sonra yapılır. Ya da çok kapsamlı ön tasarım, kullanılabilirlik testi, binlerce cihazda soru-cevap testi, tam beta yaşam döngüsü ve ardından çeşitli yollar dağıtmayı içeren son derece ilgili bir süreç olabilir.
Bu belgede, aşağıdakiler de dahil olmak üzere mobil uygulama oluşturmaya kapsamlı bir giriş sınavı yapacağız:
- Süreç – Yazılım geliştirme sürecine Yazılım Geliştirme Yaşam Döngüsü (SDLC) adı verilir. SDLC'nin mobil uygulama geliştirmeyle ilgili tüm aşamalarını inceleyeceğiz: Inception, Design, Development, Stabilization, Deployment ve Maintenance.
- Dikkat edilmesi gerekenler : Mobil uygulamalar oluştururken, özellikle geleneksel web veya masaüstü uygulamalarından farklı olarak dikkat edilmesi gereken bazı noktalar vardır. Bu konuları ve bunların mobil geliştirmeyi nasıl etkilediğini inceleyeceğiz.
Bu belge, yeni ve deneyimli uygulama geliştiricileri için mobil uygulama geliştirmeyle ilgili temel soruları yanıtlamaya yöneliktir. Yazılım Geliştirme Yaşam Döngüsü 'nin (SDLC) tamamında karşılaşabileceğiniz kavramların çoğunu tanıtmak için oldukça kapsamlı bir yaklaşım benimser. Ancak, bu belge herkes için olmayabilir, yalnızca uygulama oluşturmaya başlamak için acele ediyorsanız, Mobil Geliştirmeye Giriş kılavuzuna atlamanızı ve daha sonra bu belgeye geri dönmenizi öneririz.
Mobil geliştirme yazılımı yaşam döngüsü
Mobil geliştirmenin yaşam döngüsü, web veya masaüstü uygulamaları için SDLC'den büyük ölçüde farklı değildir. Bunlarda olduğu gibi, sürecin genellikle 5 ana kısmı vardır:
- Inception : Tüm uygulamalar bir fikirle başlar. Bu fikir genellikle bir uygulama için sağlam bir temele dönüştürülür.
- Tasarım – Tasarım aşaması, genel düzenin ne olduğu, nasıl çalıştığı vb. gibi uygulamanın Kullanıcı Deneyimi'ni (UX) tanımlamanın yanı sıra bu UX'i genellikle bir grafik tasarımcısının yardımıyla uygun bir Kullanıcı Arabirimi (UI) tasarımına dönüştürmektir.
- Geliştirme – Genellikle en yoğun kaynak kullanımlı aşama olan bu, uygulamanın gerçek binasıdır.
- Sabitleme – Geliştirme yeterince uzun olduğunda, soru-cevap genellikle uygulamayı test etmeye başlar ve hatalar düzeltilir. Çoğu zaman bir uygulama, daha geniş bir kullanıcı kitlesine bunu kullanma ve geri bildirim sağlama ve değişiklikleri bildirme şansı verilen sınırlı bir beta aşamasına geçer.
- Dağıtım
Bu parçaların çoğu genellikle çakışıyor, örneğin, kullanıcı arabirimi sonlandırılırken geliştirmenin devam etmek için yaygın bir durumdur ve hatta kullanıcı arabirimi tasarımını bile bilgilendirebilir. Ayrıca, bir uygulama, yeni özellikler yeni bir sürüme eklenirken olduğu gibi bir sabitleme aşamasına geçiyor olabilir.
Ayrıca, bu aşamalar Çevik, Spiral, Şelale gibi herhangi bir sayıda SDLC metodolojisinde kullanılabilir.
Bu aşamaların her biri aşağıdaki bölümlerde daha ayrıntılı olarak açıklanacaktır.
Başlangıç
İnsanların mobil cihazlarla yaygınlığı ve etkileşim düzeyi, neredeyse herkesin mobil uygulama için bir fikri olduğu anlamına gelir. Mobil cihazlar bilgi işlem, web ve hatta kurumsal altyapı ile etkileşim kurmanın yepyeni bir yolunu açar.
İlk aşama, bir uygulama fikrini tanımlama ve iyileştirmeyle ilgili bir aşamadır. Başarılı bir uygulama oluşturmak için bazı temel sorular sormak önemlidir. Bir uygulamayı genel App Store'lardan birinde yayımlamadan önce göz önünde bulundurmanız gereken bazı noktalardan bazıları şunlardır:
- Rekabet Avantajı – Zaten benzer uygulamalar var mı? Öyleyse, bu uygulama diğerlerinden nasıl ayırt edilir?
Bir Kuruluşta dağıtılacak uygulamalar için:
- Altyapı Tümleştirmesi – Hangi mevcut altyapıyla tümleştirilecek veya genişletilecek?
Ayrıca, uygulamalar mobil form faktörü bağlamında değerlendirilmelidir:
- Değer – Bu uygulama kullanıcılara hangi değeri getirir? Bunu nasıl kullanacak?
- Form/Mobility – Bu uygulama mobil form faktöründe nasıl çalışır? Konum tanıma, kamera gibi mobil teknolojileri kullanarak nasıl değer katabilirim?
Bir uygulamanın işlevselliğini tasarlamaya yardımcı olmak için Aktörler ve Kullanım Örnekleri tanımlamak yararlı olabilir. Aktörler bir uygulama içindeki rollerdir ve genellikle kullanıcılardır. Kullanım örnekleri genellikle eylemler veya amaçlardır.
Örneğin, bir görev izleme uygulamasının iki Aktörü olabilir: Kullanıcı ve Arkadaş. Kullanıcı Bir Görev Oluşturabilir ve Görevi Bir Arkadaşınızla Paylaşabilir. Bu durumda, görev oluşturma ve görev paylaşma, Aktörler ile birlikte hangi ekranları oluşturmanız gerektiğini ve hangi iş varlıklarının ve mantığın geliştirilmesi gerektiğini bildiren iki ayrı kullanım örneğidir.
Uygun sayıda kullanım örneği ve aktör yakalandıktan sonra uygulama tasarlamaya başlamak çok daha kolaydır. Geliştirme daha sonra uygulamanın ne yapması veya yapması gerektiği yerine uygulamanın nasıl oluşturulacağı konusuna odaklanabilir.
Mobil uygulamalar tasarlama
Uygulamanın özellikleri ve işlevleri belirlendikten sonra, bir sonraki adım Kullanıcı Deneyimi veya UX'i çözmeye çalışmaktır.
UX tasarımı
UX genellikle birçok tasarım araç setlerinden biri kullanılarak tel çerçeveler veya mockup'lar aracılığıyla yapılır. UX mockup'ları, UX'nin gerçek kullanıcı arabirimi tasarımı konusunda endişelenmenize gerek kalmadan tasarlanabilmesini sağlar:
UX mockup'ları oluştururken, uygulamanın hedefleeceği çeşitli platformlar için arabirim yönergelerini göz önünde bulundurmak önemlidir. Uygulamanın her platformda "kendini evde hissetmesi" gerekir. Her platform için resmi tasarım yönergeleri şunlardır:
- Apple - İnsan Arabirimi Yönergeleri
- Android – Tasarım Yönergeleri
- UWP – UWP Tasarımı ile ilgili temel bilgiler
Örneğin, her uygulamanın bir uygulamadaki bölümler arasında geçiş yapmak için bir metaforu vardır. iOS, ekranın alt kısmındaki bir sekme çubuğunu, Android ekranın üst kısmındaki bir sekme çubuğunu ve UWP ise Özet veya sekme görünümünü kullanır.
Ayrıca, donanımın kendisi de UX kararlarını belirler. Örneğin, iOS cihazlarında fiziksel geri düğmesi yoktur ve bu nedenle Gezinti Denetleyicisi metaforunu tanıtın:
Ayrıca, form faktörü UX kararlarını da etkiler. Tabletler çok daha fazla gayrimenkule sahiptir ve bu nedenle daha fazla bilgi görüntüleyebilir. Bir telefonda birden çok ekrana ihtiyaç duyanlar genellikle bir tablet için bir ekrana sıkıştırılır:
Ve çok sayıda form faktörü nedeniyle, genellikle hedeflemek isteyebileceğiniz orta büyüklükte form faktörleri (telefon ve tablet arasında bir yerde) vardır.
Kullanıcı arabirimi (UI) tasarımı
UX belirlendikten sonra, bir sonraki adım kullanıcı arabirimi tasarımını oluşturmaktır. UX genellikle yalnızca siyah beyaz mockup'lar olsa da, ui Tasarım aşaması renklerin, grafiklerin vb. tanıtıldığı ve sonlandırıldığı aşamadır. İyi kullanıcı arabirimi tasarımına zaman harcamak önemlidir ve genellikle en popüler uygulamaların profesyonel bir tasarımı vardır.
UX'te olduğu gibi, her platformun kendi tasarım diline sahip olduğunu anlamak önemlidir, bu nedenle iyi tasarlanmış bir uygulama her platformda farklı görünebilir:
Geliştirme
Geliştirme aşaması genellikle çok erken başlar. Aslında, bir fikrin kavramsal/ilham aşamasında olgunlaşması olduğunda, genellikle işlevselliği, varsayımları doğrulayan ve çalışmanın kapsamını anlamaya yardımcı olan bir çalışma prototipi geliştirilir.
Öğreticilerin geri kalanında büyük ölçüde geliştirme aşamasına odaklanacağız.
Sabitleme
Sabitleme, uygulamanızdaki hataların üzerinde çalışma sürecidir. Yalnızca işlevsel bir açıdan değil, örneğin: "Bu düğmeye tıkladığımda kilitleniyor", aynı zamanda Kullanılabilirlik ve Performans. Kurs düzeltmelerinin maliyetli hale gelmeden önce gerçekleşebilmesi için geliştirme sürecinin çok erken bir aşamasında sabitlemeye başlamak en iyisidir. Uygulamalar genellikle Prototype, Alpha, Beta ve Release Candidate aşamalarına gider. Farklı kişiler bunları farklı tanımlar, ancak genellikle aşağıdaki deseni izler:
- Prototip – Uygulama hala kavram kanıtı aşamasındadır ve yalnızca temel işlevler veya uygulamanın belirli bölümleri çalışmaktadır. Büyük hatalar var.
- Alfa – Çekirdek işlevleri genellikle kodla tamamlanır (derlenir, ancak tam olarak test edilmemektedir). Büyük hatalar hala mevcut, dış işlevler hala mevcut olmayabilir.
- Beta : İşlevlerin çoğu artık tamamlanır ve en az ışık testi ve hata düzeltmesi yapmıştır. Bilinen önemli sorunlar hala mevcut olabilir.
- Sürüm Adayı – Tüm işlevler tamamlanmış ve test edilmiştir. Yeni hataları önledikten sonra uygulama, vahşi yaşam için bir adaydır.
Bir uygulamayı test etmeye başlamak için hiçbir zaman çok erken değildir. Örneğin prototip aşamasında önemli bir sorun bulunursa, uygulamanın UX'i buna uyum sağlamak için değiştirilebilir. Alfa aşamasında bir performans sorunu bulunursa, yanlış varsayımlar üzerine çok fazla kod oluşturulmadan önce mimariyi değiştirmek için yeterince erkendir.
Genellikle, bir uygulama yaşam döngüsünde daha da ilerlerken, uygulamayı denemek, test etmek, geri bildirim sağlamak vb. için daha fazla kişiye açılır. Örneğin, prototip uygulamalar yalnızca önemli paydaşlar tarafından gösterilebilir veya kullanılabilir hale getirilebilirken, sürüm adayı uygulamaları erken erişim için kaydolan müşterilere dağıtılabilir.
Nispeten az cihaza erken test ve dağıtım için genellikle doğrudan bir geliştirme makinesinden dağıtım yapmak yeterlidir. Ancak, izleyiciler genişledikçe, bu hızlı bir şekilde hantal hale gelebilir. Bu nedenle, bir test havuzuna kişileri davet etme, web üzerinden derlemeleri yayımlama ve kullanıcı geri bildirimine olanak sağlayan araçlar sağlama olanağı sağlayarak bu işlemi çok daha kolay hale getiren bir dizi test dağıtımı seçeneği vardır.
Test ve dağıtım için App Center'ı kullanarak uygulamaları sürekli derleyebilir, test edebilir, yayınlayabilir ve izleyebilirsiniz.
Dağıtım
Uygulama kararlı hale geldikten sonra, onu vahşi doğaya çıkarmanın zamanı geldi. Platforma bağlı olarak bir dizi farklı dağıtım seçeneği vardır.
iOS
Xamarin.iOS ve Objective-C uygulamalar tam olarak aynı şekilde dağıtılır:
- Apple App Store – Apple'ın App Store'u, iTunes aracılığıyla Mac OS X'de yerleşik olarak bulunan küresel olarak kullanılabilir bir çevrimiçi uygulama deposudur. Uygulamalar için açık ara en popüler dağıtım yöntemidir ve geliştiricilerin uygulamalarını çok az çabayla çevrimiçi olarak pazarlamasına ve dağıtmasına olanak tanır.
- Şirket İçi Dağıtım – Şirket içi dağıtım, App Store aracılığıyla genel kullanıma açık olmayan kurumsal uygulamaların iç dağıtımına yöneliktir.
- Geçici Dağıtım – Geçici dağıtım öncelikli olarak geliştirme ve test amaçlıdır ve sınırlı sayıda düzgün sağlanan cihaza dağıtım yapmanızı sağlar. Bir cihaza Xcode veya Mac için Visual Studio aracılığıyla dağıttığınızda geçici dağıtım olarak bilinir.
Android
Dağıtılmadan önce tüm Android uygulamalarının imzalanması gerekir. Geliştiriciler özel anahtarla korunan kendi sertifikalarını kullanarak uygulamalarını imzalar. Bu sertifika, bir uygulama geliştiricisini geliştiricinin oluşturup yayımladığı uygulamalarla bağlayan bir özgünlük zinciri sağlayabilir. Android için bir geliştirme sertifikası tanınan bir sertifika yetkilisi tarafından imzalanabilirken, geliştiricilerin çoğunun bu hizmetleri kullanmayı tercih etmedikleri ve sertifikalarını otomatik olarak imzalamadıkları unutulmalıdır. Sertifikaların temel amacı, farklı geliştiriciler ve uygulamalar arasında ayrım yapmaktır. Android bu bilgileri, Android işletim sistemi içinde çalışan uygulamalar ve bileşenler arasında izinlerin temsilinin uygulanmasına yardımcı olmak için kullanır.
Diğer popüler mobil platformların aksine Android, uygulama dağıtımına çok açık bir yaklaşım benimser. Cihazlar tek bir onaylı uygulama mağazasına kilitlenmez. Bunun yerine, herkes bir uygulama mağazası oluşturabilir ve çoğu Android telefon, uygulamaların bu üçüncü taraf mağazalarından yüklenmesine izin verir.
Bu, geliştiricilerin uygulamaları için potansiyel olarak daha büyük ancak daha karmaşık bir dağıtım kanalına olanak tanır. Google Play , Google'ın resmi uygulama mağazasıdır, ancak daha birçok mağaza vardır. Popüler olanlardan bazıları şunlardır:
UWP
UWP uygulamaları Microsoft Store aracılığıyla kullanıcılara dağıtılır. Geliştiriciler uygulamalarını onay için gönderir ve ardından Mağaza'da görünürler. Windows uygulamalarını yayımlama hakkında daha fazla bilgi için UWP'nin Yayımlama belgelerine bakın.
Mobil geliştirmeyle ilgili dikkat edilmesi gerekenler
Mobil uygulama geliştirme süreci veya mimari açısından geleneksel web/masaüstü geliştirmeden temelde farklı olmasa da, dikkat edilmesi gereken bazı noktalar vardır.
Sık dikkat edilmesi gerekenler
Çoklu görev
Mobil cihazda birden çok görev yapma (aynı anda birden çok uygulamanın çalıştırılması) iki önemli zorluk vardır. İlk olarak, sınırlı ekranlı emlak göz önüne alındığında, aynı anda birden çok uygulama görüntülemek zordur. Bu nedenle, mobil cihazlarda bir kerede yalnızca bir uygulama ön planda olabilir. İkincisi, birden çok uygulamanın açılması ve görevlerin gerçekleştirilmesi pil gücünü hızla kullanabilir.
Her platform çoklu görevleri farklı şekilde ele alır ve bunu biraz inceleyeceğiz.
Form faktörü
Mobil cihazlar genellikle telefonlar ve tabletler olmak üzere iki kategoriye ayrılır ve arada birkaç çapraz cihaz bulunur. Bu form faktörleri için geliştirme genellikle çok benzerdir, ancak bunlar için uygulama tasarlamak çok farklı olabilir. Telefon çok sınırlı ekran alanına sahiptir ve tabletler, daha büyük olsa da çoğu dizüstü bilgisayardan bile daha az ekran alanına sahip mobil cihazlardır. Bu nedenle, mobil platform kullanıcı arabirimi denetimleri özellikle daha küçük form faktörleri üzerinde etkili olacak şekilde tasarlanmıştır.
Cihaz ve işletim sistemi parçalanması
Yazılım geliştirme yaşam döngüsünün tamamında farklı cihazları hesaba katmak önemlidir:
- Kavramsallaştırma ve Planlama – Donanım ve özelliklerin cihazdan cihaza değişeceğini unutmayın; belirli özelliklere dayalı bir uygulama belirli cihazlarda düzgün çalışmayabilir. Örneğin, tüm cihazlarda kamera yoktur, bu nedenle bir görüntülü mesajlaşma uygulaması oluşturuyorsanız bazı cihazlar video oynatabilir, ancak bunları alamayabilir.
- Tasarım – Bir uygulamanın Kullanıcı Deneyimi 'ni (UX) tasarlarken, cihazlar arasında farklı ekran oranlarına ve boyutlarına dikkat edin. Ayrıca, bir uygulamanın Kullanıcı Arabirimini (UI) tasarlarken farklı ekran çözünürlükleri dikkate alınmalıdır.
- Geliştirme : Koddan bir özellik kullanılırken, önce bu özelliğin varlığı her zaman test edilmelidir. Örneğin, kamera gibi bir cihaz özelliğini kullanmadan önce önce işletim sistemini her zaman bu özelliğin olup olmadığını sorgular. Ardından, özelliği/cihazı başlatırken o cihaz hakkında işletim sisteminden şu anda desteklenen bir istekte bulunduğunuzdan emin olun ve ardından bu yapılandırma ayarlarını kullanın.
- Test – Uygulamayı erken ve sık sık gerçek cihazlarda test etmek son derece önemlidir. Aynı donanım özelliklerine sahip cihazlar bile davranışlarında büyük ölçüde farklılık gösterebilir.
Sınırlı kaynaklar
Mobil cihazlar her zaman daha güçlü hale geliyor, ancak yine de masaüstü veya not defteri bilgisayarlarına kıyasla sınırlı özelliklere sahip mobil cihazlardır. Örneğin, masaüstü geliştiricileri genellikle bellek kapasiteleri konusunda endişelenmez; bunlar hem fiziksel hem de sanal belleğe bol miktarda sahip olmak için kullanılırken, mobil cihazlarda yalnızca birkaç yüksek kaliteli resim yükleyerek kullanılabilir tüm belleği hızla kullanabilirsiniz.
Buna ek olarak, oyunlar veya metin tanıma gibi işlemci yoğunluklu uygulamalar mobil CPU'ya gerçekten vergi verebilir ve cihaz performansını olumsuz etkileyebilir.
Bunlar gibi önemli noktalar nedeniyle akıllı bir şekilde kodlanması ve yanıt verme hızını doğrulamak için gerçek cihazlara erken ve sık sık dağıtılması önemlidir.
iOS ile ilgili dikkat edilmesi gerekenler
Çoklu görev
Çoklu görev, iOS'ta çok sıkı bir şekilde denetlenmektedir ve başka bir uygulama ön plana çıktığında uygulamanızın uyması gereken bir dizi kural ve davranış vardır; aksi takdirde uygulamanız iOS tarafından sonlandırılır.
Cihaza özgü kaynaklar
Belirli bir form faktöründe donanım, farklı modeller arasında büyük ölçüde farklılık gösterebilir. Örneğin, bazı cihazlarda arka kamera, bazılarında da ön kamera ve bazılarında hiç kamera yoktur.
Bazı eski cihazlar (i Telefon 3G ve daha eski) birden çok görev almaya bile izin vermez.
Cihaz modelleri arasındaki bu farklar nedeniyle, kullanmaya çalışmadan önce bir özelliğin olup olmadığını denetlemek önemlidir.
İşletim sistemine özgü kısıtlamalar
Uygulamaların duyarlı ve güvenli olduğundan emin olmak için iOS, uygulamaların uyması gereken bir dizi kuralı zorunlu kılar. Birden çok görevle ilgili kurallara ek olarak, uygulamanızın belirli bir süre içinde döndürmesi gereken bir dizi olay yöntemi vardır, aksi takdirde iOS tarafından sonlandırılır.
Ayrıca, uygulamaların uygulamanızın erişebileceklerini kısıtlayan güvenlik kısıtlamaları uygulayan bir ortam olan Korumalı Alan olarak bilinen bir ortamda çalıştırıldığını da belirtmek gerekir. Örneğin, bir uygulama kendi dizininden okuyabilir ve kendi dizinine yazabilir, ancak başka bir uygulama dizinine yazmayı denerse sonlandırılır.
Android ile ilgili dikkat edilmesi gerekenler
Çoklu görev
Android'de çoklu görev iki bileşene sahiptir; birincisi etkinlik yaşam döngüsüdür. Android uygulamasındaki her ekran bir Etkinlik ile temsil edilir ve bir uygulama arka plana yerleştirildiğinde veya ön plana geldiğinde oluşan belirli bir olay kümesi vardır. Hızlı yanıt veren ve iyi davranan uygulamalar oluşturmak için uygulamaların bu yaşam döngüsüne uyması gerekir. Daha fazla bilgi için Etkinlik Yaşam Döngüsü kılavuzuna bakın.
Android'de çoklu görev kullanmanın ikinci bileşeni, Hizmetlerin kullanımıdır. Hizmetler, bir uygulamadan bağımsız olarak uzun süre çalışan işlemlerdir ve uygulama arka plandayken işlemleri yürütmek için kullanılır. Daha fazla bilgi için Bkz . Hizmet Oluşturma kılavuzu.
Birçok cihaz ve birçok form faktörü
Google, Android işletim sistemini çalıştırabilecek cihazlara herhangi bir sınır getirmez. Bu açık paradigma, çok farklı donanıma, ekran çözünürlüklerine ve oranlarına, cihaz özelliklerine ve özelliklerine sahip çok sayıda farklı cihaz tarafından doldurulan bir ürün ortamına neden olur.
Android cihazların aşırı parçalanması nedeniyle çoğu kişi tasarım ve test için en popüler 5 veya 6 cihazı seçer ve bunların önceliklerini belirler.
Güvenlik konuları
Android işletim sistemindeki uygulamaların tümü sınırlı izinlere sahip ayrı, yalıtılmış bir kimlik altında çalışır. Varsayılan olarak, uygulamalar çok az şey yapabilir. Örneğin, özel izinler olmadan bir uygulama kısa mesaj gönderemez, telefon durumunu belirleyemez, hatta İnternet'e erişemez! Bu özelliklere erişmek için uygulamaların uygulama bildirim dosyasında hangi izinleri istediklerini ve ne zaman yüklendiğini belirtmeleri gerekir; işletim sistemi bu izinleri okur, kullanıcıya uygulamanın bu izinleri istediği konusunda bilgi verir ve ardından kullanıcının yüklemeye devam etmesine veya iptal etmesine izin verir. Bu, açık uygulama deposu modeli nedeniyle Android dağıtım modelinde önemli bir adımdır, çünkü uygulamalar örneğin iOS için oldukları gibi seçilmiş değildir. Uygulama izinlerinin listesi için Android Belgeleri'ndeki Bildirim İzinleri başvuru makalesine bakın.
Windows ile ilgili dikkat edilmesi gerekenler
Çoklu görev
UWP'de çoklu görev iki bölümden oluşur: sayfalar ve uygulamalar için yaşam döngüsü ve arka plan işlemleri. Bir uygulamadaki her ekran, etkin veya etkin olmayan duruma getirilerek (etkin olmayan durumu işlemeye yönelik özel kurallarla veya "kaldırıldı işareti" olarak) ilişkili olayları içeren bir Page sınıfının örneğidir.
İkinci bölüm, uygulama ön planda çalışmadığında bile görevleri işlemek için arka plan aracıları sağlamaktır.
Cihaz özellikleri
UWP donanımı oldukça homojen olsa da, hala isteğe bağlı olan ve bu nedenle kodlama sırasında dikkate alınması gereken bileşenler vardır. İsteğe bağlı donanım özellikleri arasında kamera, pusula ve jiroskop bulunur. Ayrıca özel dikkat gerektiren özel bir düşük bellek sınıfı (256 MB) vardır veya geliştiriciler düşük bellek desteğini geri çevirebilir.
Güvenlik konuları
UWP'deki önemli güvenlik konuları hakkında bilgi için Güvenlik belgelerine bakın.
Özet
Bu kılavuz, mobil geliştirmeyle ilgili olarak SDLC'ye giriş niteliğindedir. Mobil uygulama oluşturmaya yönelik genel konuları kullanıma sunar ve tasarım, test ve dağıtım gibi platforma özgü dikkat edilmesi gerekenler incelenmiştir.