모바일 소프트웨어 개발 수명 주기

모바일 애플리케이션 빌드는 Visual Studio를 열고, 함께 준비하고, 신속히 테스트하며 앱 스토어에 제출하는 것처럼 손쉽게 수행할 수 있습니다. 모든 작업이 그 날 완료됩니다. 또는 엄격한 사전 설계, 유용성 테스트, 수천 대의 디바이스에서 QA 테스트, 전체 베타 주기 및 여러 가지 다른 방식의 배포가 포함된 매우 복잡한 프로세스일 수 있습니다.

이 문서에서는 다음을 포함하여 모바일 애플리케이션 빌드에 대한 소개를 자세히 살펴보겠습니다.

  1. 프로세스 - 소프트웨어 개발 프로세스를 SDLC(소프트웨어 개발 수명 주기)라고합니다. 시작, 디자인, 개발, 안정화, 배포 및 유지 관리를 포함하여 모바일 애플리케이션 개발과 관련하여 SDLC의 모든 단계를 살펴보겠습니다.
  2. 고려 사항 – 특히, 기존 웹 또는 데스크톱 애플리케이션과 달리, 모바일 애플리케이션을 빌드할 때는 여러 가지 고려 사항이 있습니다. 이러한 고려 사항과 이러한 고려 사항이 모바일 개발에 주는 영향에 대해 살펴 보겠습니다.

이 문서는 초급 및 고급 애플리케이션 개발자 모두를 대상으로 모바일 앱 개발에 대한 기본적인 질문에 답하기 위해 작성되었습니다. 전체 SDLC(소프트웨어 개발 수명 주기) 중에 마주치는 대부분의 개념을 상당히 포괄적인 방식으로 소개합니다. 그러나 이 문서가 모든 사람에게 적절한 것은 아닙니다. 바로 애플리케이션 빌드를 시작하고 싶다면 모바일 개발 소개 가이드로 이동한 다음, 나중에 이 문서를 다시 살펴보는 것이 좋습니다.

모바일 개발 소프트웨어 수명 주기

모바일 개발의 수명 주기는 웹 또는 데스크톱 애플리케이션의 SDLC와 크게 다르지 않습니다. 마찬가지로, 5가지의 프로세스 주요 부분으로 구성됩니다.

  1. 개시 – 모든 앱이 이 개념으로 시작됩니다. 이 개념은 일반적으로 애플리케이션의 견고한 기반으로 구체화됩니다.
  2. 설계 – 설계 단계는 일반적인 레이아웃이 무엇인지, 어떻게 작동하는지 등과 같은 앱의 UX(사용자 경험)를 정의하고 일반적으로 그래픽 디자이너를 활용해 UX를 적절한 UI(사용자 인터페이스) 디자인으로 바꾸는 것으로 구성됩니다.
  3. 개발 – 일반적으로 리소스를 가장 많이 사용하는 단계이며 애플리케이션을 실제 빌드합니다.
  4. 안정화 – 개발이 충분히 진행되면 일반적으로 QA를 통해 애플리케이션을 테스트하고 버그를 수정합니다. 종종 애플리케이션은 제한된 베타 단계로 진행되며 이 단계에서 보다 광범위한 대상 사용자에게 애플리케이션을 사용하고 피드백을 제공하며 변경 내용을 알릴 기회가 주어집니다.
  5. 배포

이러한 단계는 많은 부분이 겹칩니다. 예를 들어, UI가 완료되는 동안 개발이 진행되는 것이 일반적이며 UI 디자인에 정보를 제공할 수도 있습니다. 또한 애플리케이션은 새로운 기능이 새로운 버전에 추가되는 것과 동시에 안정화 단계에 들어갈 수 있습니다.

이러한 단계는 애자일(Agile), 나선형(Spiral), 폭포수(Waterfall) 등과 같은 다양한 SDLC 방법론에서도 사용할 수 있습니다.

각 단계는 다음 섹션에 서보다 자세히 설명합니다.

개시

모바일 디바이스를 보유하고 있는 사람의 보편화와 상호 작용 수준을 보면, 거의 모든 사람이 모바일 앱에 대한 개념이 있음을 알 수 있습니다. 모바일 디바이스는 컴퓨팅, 웹, 심지어 기업 인프라와도 상호 작용할 수 있는 완전히 새로운 방식입니다.

개시 단계는 앱에 대한 개념을 정의 및 구체화하는 것입니다. 성공적인 앱을 만들려면 몇 가지 기본적인 질문을 하는 것이 중요합니다. 다음은 앱을 공개 앱 스토어 중 하나에 게시하기 전에 고려해야 할 몇 가지 사항입니다.

  • 경쟁 우위 – 유사한 앱이 이미 있나요? 있다면 이 애플리케이션을 어떻게 차별화할 것인가요?

엔터프라이즈에 배포할 앱의 경우:

  • 인프라 통합 – 어떤 기존 인프라와 통합 또는 확장할 계획인가요?

또한 모바일 폼 팩터와 관련해서 앱을 평가해야 합니다.

  • 가치 – 이 앱이 사용자에게 어떤 가치를 제공하나요? 사용자는 앱을 어떻게 사용합니까?
  • 폼/이동성 – 이 앱이 모바일 폼 팩터에서 어떻게 작동하나요? 위치 인식, 카메라 등 모바일 기술을 사용하여 어떻게 가치를 부여할 수 있나요?

앱 기능 설계를 돕기 위해 행위자 및 사용 사례를 정의하는 것이 유용할 수 있습니다. 행위자는 애플리케이션 내에서 역할이며 보통 사용자입니다. 사용 사례는 일반적으로 작업 또는 인텐트입니다.

예를 들어, 애플리케이션을 추적하는 작업은 사용자친구라는 두 행위자를 포함할 수 있습니다. 사용자는 친구와 함께 작업 만들기작업 공유를 할 수 있습니다. 이 경우, 행위자와 함께 작업 만들기 및 작업 공유는 두 가지 구분된 사용 사례이며, 이 사용 사례를 통해 어떤 화면을 빌드해야 하고 어떤 비즈니스 엔터티 및 논리를 개발해야 하는지 알 수 있습니다.

적절한 수의 사용 사례 및 행위자를 캡처했으면 애플리케이션 디자인을 훨씬 쉽게 시작할 수 있습니다. 그러면 개발 시 무슨 앱이며 앱으로 무엇을 해야 하는지보다는, 앱을 만드는 방법에 집중할 수 있습니다.

모바일 애플리케이션 디자인

앱의 특징 및 기능이 결정되면 다음 단계는 UX(사용자 환경)를 해결하는 것입니다.

UX 디자인

UX는 일반적으로 여러 디자인 도구 키트 중 하나를 사용하여 와이어프레임 또는 모형을 통해 수행됩니다. UX 모형을 통해 실제 UI 디자인을 고민할 필요없이 UX를 디자인할 수 있습니다.

UX is usually done via wireframes or mockups using tools such as Balsamiq

UX 모형을 만들 때 앱의 대상이 될 다양한 플랫폼에 대한 인터페이스 지침을 고려하는 것이 중요합니다. 앱은 각 플랫폼에서 “익숙한 방식”이어야 합니다. 각 플랫폼의 공식 디자인 지침은 다음과 같습니다.

  1. Apple - 휴먼 인터페이스 지침
  2. Android디자인 지침
  3. UWPUWP 디자인 기본 내용

예를 들어, 각 앱에는 애플리케이션의 섹션 간 전환을 위한 메타포가 있습니다. iOS는 화면 하단에 탭 표시줄을 사용하고 Android는 화면 상단에 탭 표시줄을 사용하며 UWP는 Pivot 또는 탭 뷰를 사용합니다.

또한 하드웨어 자체는 UX 의사 결정도 지정합니다. 예를 들어 iOS 디바이스에는 물리적 뒤로 단추가 없으므로 탐색 컨트롤러 메타포를 도입합니다.

iOS devices have no physical back button, and therefore introduce the Navigation Controller metaphor

또한 폼 팩터도 UX 결정에 영향을 줍니다. 태블릿은 훨씬 더 많은 화면 공간을 보유하고 있으므로 더 많은 정보를 표시할 수 있습니다. 보통 휴대폰의 여러 화면에 필요한 내용은 태블릿용으로 하나로 압축됩니다.

Often what needs multiple screens on a phone is compressed into one for a tablet

그리고 수많은 폼 팩터가 있기 때문에 대상으로 지정할 수 있는 중간 크기의 폼 팩터(휴대폰과 태블릿 중간)가 있습니다.

UI(사용자 인터페이스) 디자인

UX가 결정되면 다음 단계는 UI 디자인을 만드는 것입니다. UX는 일반적으로 단순한 흑백 모형이지만 UI 디자인 단계에서는 색상, 그래픽 등을 도입하고 마무리합니다. 좋은 UI 디자인에 시간을 투자하는 것이 중요하며 일반적으로 가장 인기 있는 앱은 디자인이 전문적입니다.

UX와 마찬가지로 각 플랫폼마다 고유한 디자인 언어가 있으므로 잘 디자인된 애플리케이션은 각 플랫폼마다 다르게 나타날 수 있습니다.

A well-designed application may still look different on each platform

개발

일반적으로 개발 단계는 매우 일찍 시작됩니다. 사실, 아이디어가 개념/착안 단계에서 어느 정도 진행되면 기능, 가정을 검증하고 작업 범위를 이해하는 데 도움이 되는 작업 프로토타입이 자주 개발됩니다.

자습서의 나머지 부분에서는 개발 단계에 주로 초점을 둡니다.

안정화

안정화는 앱에서 버그를 찾는 프로세스입니다. “이 단추를 클릭하면 충돌이 발생합니다”와 같은 기능적 관점뿐만 아니라 유용성 및 성능 관점에서도 해당됩니다. 개발 프로세스 내에서 매우 일찍 안정화를 시작하여 비용이 많이 들기 전에 궤도 수정이 발생하도록 하는 것이 가장 좋습니다. 일반적으로 애플리케이션은 프로토타입, 알파, 베타릴리스 후보 단계를 거칩니다. 사람들마다 다르게 정의하지만 일반적으로 다음과 같은 패턴을 따릅니다.

  1. 프로토타입 - 앱은 개념 증명 단계에 있으며 애플리케이션의 핵심 기능이나 특정 부분만 작동합니다. 주요 버그가 있습니다.
  2. 알파 – 일반적으로 핵심 기능에 대한 코드가 완성되어 있습니다(빌드되었지만 완전히 테스트되지는 않음). 여전히 주요 버그가 있으며 외부 기능은 아직 없을 수 있습니다.
  3. 베타 – 이제 대부분의 기능이 완료되었으며 최소한 가벼운 테스트와 버그 수정을 완료했습니다. 주요 알려진 문제가 여전히 존재할 수 있습니다.
  4. 릴리스 후보 – 모든 기능을 완료하고 테스트했습니다. 새로운 버그가 없다면 이 앱은 시장에 릴리스할 후보입니다.

애플리케이션 테스트를 시작하는 것이 결코 이르지 않습니다. 예를 들어, 프로토타입 단계에서 주요 문제가 발견되면 이를 적용하도록 앱의 UX를 계속 수정할 수 있습니다. 알파 단계에서 성능 문제가 발견되면 잘못된 가정 하에 많은 코드를 작성하기 전에 아키텍처를 수정하는 것이 좋습니다.

일반적으로 애플리케이션이 수명 주기에서 더 많이 이동함에 따라 더 많은 사용자가 사용해 보고, 테스트하고, 피드백을 제공하는 등의 작업을 수행할 수 있습니다. 예를 들어 프로토타입 애플리케이션은 주요 관련자에게만 표시되거나 제공될 수 있지만 릴리스 후보 애플리케이션은 조기 액세스에 등록하는 고객에게 배포될 수 있습니다.

비교적 적은 수의 디바이스에 대한 초기 테스트 및 배포를 위해 일반적으로 개발 컴퓨터에서 곧바로 배포하는 것으로 충분합니다. 그러나 대상 사용자가 확대됨에 따라 이 작업은 곧 번거로울 수 있습니다. 따라서 테스트 풀에 사람을 초대하고 웹을 통해 빌드를 릴리스하며 사용자 피드백을 허용하는 도구를 제공함으로써 이 프로세스를 훨씬 쉽게 만들어주는 수많은 테스트 배포 옵션을 제공합니다.

테스트 및 배포를 위해 App Center를 사용하여 앱을 지속적으로 빌드, 테스트, 릴리스 및 모니터링할 수 있습니다.

배포

애플리케이션이 안정화되었으면 이제 시장에 내놓을 시간입니다. 플랫폼에 따라 다양한 배포 옵션이 제공됩니다.

iOS

Xamarin.iOS 및 Objective-C 앱은 정확히 동일한 방법으로 배포됩니다.

  1. Apple App Store – Apple의 App Store는 iTunes를 통해 Mac OS X에 기본 제공되는 전 세계적으로 사용 가능한 온라인 애플리케이션 리포지토리입니다. 현재 애플리케이션을 위한 가장 널리 사용되는 배포 방법이며, 개발자는 힘들이지 않고도 온라인으로 앱을 마케팅하고 배포할 수 있습니다.
  2. 사내 배포 – 사내 배포는 App Store를 통해 공개적으로 제공되지 않는 기업 애플리케이션의 내부 배포를 위한 것입니다.
  3. 애드혹 배포 – 애드혹 배포는 주로 개발 및 테스트용으로 사용되며 제한된 수의 올바르게 프로비전된 디바이스에 배포할 수 있도록 해줍니다. Mac용 Xcode 또는 Visual Studio를 통해 디바이스에 배포하는 경우 이를 애드혹 배포라고 합니다.

Android

모든 Android 애플리케이션은 서명된 후 배포되어야 합니다. 개발자는 프라이빗 키로 보호되는 사용자 고유의 인증서를 사용하여 애플리케이션을 서명합니다. 이 인증서는 개발자가 빌드 및 릴리스한 애플리케이션과 애플리케이션 개발자를 연결하는 신뢰성 체인을 제공할 수 있습니다. 공인된 인증 기관에서 Android용 개발 인증서를 서명할 수는 있지만 대부분의 개발자는 이러한 서비스를 활용하지 않고 자신의 인증서를 자체 서명합니다. 인증서의 주요 목적은 서로 다른 개발자와 애플리케이션을 구별하는 것입니다. Android는 이 정보를 사용하여 Android OS 내에서 실행되는 애플리케이션과 구성 요소 간에 권한 위임을 적용하도록 지원합니다.

다른 널리 사용되는 모바일 플랫폼과 달리, Android는 앱 배포에 대해 매우 개방적인 방식을 취합니다. 디바이스는 하나의 승인된 앱 스토어로 국한되지 않습니다. 대신, 누구나 무료로 앱 스토어를 만들 수 있으며 대부분의 Android 휴대폰은 타사 스토어에서 앱을 설치할 수 있습니다.

이를 통해 개발자는 잠재적으로 더 크고 더 복잡한 애플리케이션 배포 채널을 사용할 수 있습니다. Google Play는 Google의 공식 앱 스토어이지만 기타 여러 가지가 있습니다. 널리 사용되는 것은 다음과 같습니다.

  1. AppBrain
  2. Android용 Amazon App Store
  3. Handango
  4. GetJar

UWP

UWP 애플리케이션은 Microsoft Store를 통해 사용자에게 배포됩니다. 개발자가 앱을 제출하여 승인을 받으면 해당 앱이 스토어에 표시됩니다. Windows 앱 게시에 대한 자세한 내용은 UWP의 게시 설명서를 참조하세요.

모바일 개발 고려 사항

모바일 애플리케이션을 개발하는 것이 프로세스 또는 아키텍처와 관련하여 기존의 웹/데스크톱 개발과 근본적으로 다른 것은 아니지만 몇 가지 고려해야 할 사항이 있습니다.

일반적인 고려 사항

멀티태스킹

모바일 디바이스에서 멀티태스킹(여러 애플리케이션을 한 번에 실행)에는 두 가지 중요한 문제가 있습니다. 첫째, 제한된 화면 공간에서는 여러 애플리케이션을 동시에 표시하기 어렵습니다. 따라서 모바일 디바이스에서는 한 번에 하나의 앱만 포그라운드에 있을 수 있습니다. 둘째, 여러 애플리케이션을 열어두고 작업을 수행하면 배터리 전원이 빨리 소모될 수 있습니다.

플랫폼마다 멀티태스킹을 다르게 처리하며, 이 내용은 잠시 후에 살펴볼 것입니다.

폼 팩터

모바일 디바이스는 일반적으로 휴대폰과 태블릿이라는 두 범주로 나뉘며 그 사이에 몇 가지 크로스오버 디바이스가 있습니다. 이러한 폼 팩터 개발은 일반적으로 매우 유사하지만 애플리케이션을 설계하는 것은 매우 다를 수 있습니다. 휴대폰은 화면 공간이 매우 제한되어 있는 반면 태블릿은 이보다 크기는 하지만 대부분의 랩톱보다는 여전히 화면 공간이 적은 모바일 디바이스입니다. 이 때문에 모바일 플랫폼 UI 컨트롤은 소형 폼 팩터에서 효과적으로 작동하도록 특별히 설계되었습니다.

디바이스 및 운영 체제 조각화

전체 소프트웨어 개발 수명 주기에서 다양한 디바이스를 고려하는 것이 중요합니다.

  1. 개념화 및 계획 – 하드웨어와 기능은 디바이스마다 다를 수 있으므로 특정 기능을 사용하는 애플리케이션은 특정 디바이스에서 제대로 작동하지 않을 수 있습니다. 예를 들어, 모든 디바이스에 카메라가 있는 것은 아니므로 화상 채팅 애플리케이션을 제작하는 경우 일부 디바이스는 동영상을 재생할 수는 있지만 촬영할 수는 없습니다.
  2. 디자인 – 애플리케이션의 UX(사용자 경험)를 디자인할 때는 여러 디바이스의 다양한 화면 비율과 크기에 주의를 기울여야 합니다. 또한 애플리케이션의 UI(사용자 인터페이스)를 디자인할 때 서로 다른 화면 해상도를 고려해야 합니다.
  3. 개발 – 코드의 기능을 사용할 때 먼저 해당 기능의 존재 여부를 항상 테스트해야 합니다. 예를 들어, 카메라와 같은 디바이스 기능을 사용하기 전에 항상 OS에서 해당 기능의 존재 여부를 먼저 쿼리합니다. 그런 다음, 기능/디바이스를 초기화할 때 OS에서 해당 디바이스에 대한 현재 지원을 요청한 다음, 해당 구성 설정을 사용해야 합니다.
  4. 테스트 – 실제 디바이스에서 조기에 자주 애플리케이션을 테스트하는 것이 매우 중요합니다. 동일한 하드웨어 사양을 포함하는 디바이스조차도 동작이 매우 다양할 수 있습니다.

제한된 리소스

모바일 디바이스는 갈수록 점점 더 강력해지고 있지만 데스크톱이나 노트북 컴퓨터에 비해 기능이 제한적인 모바일 디바이스입니다. 예를 들어, 데스크톱 개발자는 일반적으로 메모리 용량에 대해 걱정하지 않습니다. 이들은 보통 실제 메모리와 가상 메모리 모두를 충분히 사용합니다. 그러나 모바일 디바이스에서는 고화질 사진 몇 장만 로드해도 순식간에 사용 가능한 모든 메모리를 소비할 수 있습니다.

또한 게임이나 텍스트 인식과 같은 프로세서를 많이 사용하는 애플리케이션은 실제로 모바일 CPU에 부담을 주고 디바이스 성능에 부정적인 영향을 미칠 수 있습니다.

이와 같은 고려 사항 때문에 응답성을 검증하기 위해 현명하게 코드를 작성하고 실제 디바이스에 조기에 자주 배포하는 것이 중요합니다.

iOS 고려 사항

멀티태스킹

멀티태스킹은 iOS에서 매우 엄격하게 제어되며 다른 애플리케이션이 포그라운드로 오면 애플리케이션이 따라야 하는 규칙과 동작이 많습니다. 그렇지 않으면 애플리케이션이 iOS에 의해 종료됩니다.

디바이스별 리소스

특정 폼 팩터 내에서 하드웨어는 여러 모델 간에 크게 다를 수 있습니다. 예를 들어, 일부 디바이스에는 후면 카메라가 있고 일부는 전면 카메라가 있으며 어떤 디바이스는 아무 것도 없습니다.

일부 이전 디바이스(iPhone 3G 이하)는 멀티태스킹도 허용하지 않습니다.

이러한 디바이스 모델 간 차이점으로 인해 기능을 사용하기 전에 해당 기능이 존재하는지 확인하는 것이 중요합니다.

OS 관련 제약 조건

애플리케이션이 잘 응답하고 안전한지 확인하기 위해 iOS는 애플리케이션이 준수해야 하는 여러 가지 규칙을 시행합니다. 멀티태스킹과 관련된 규칙 외에도, 앱이 특정 시간 내에 반환해야 하는 여러 가지 이벤트 메서드가 있습니다. 특정 시간 내에 반환하지 않으면 iOS에서 종료됩니다.

또한 주목할 만한 것은 앱이 액세스할 수 있는 것을 제한하는 보안 제약 조건을 적용하는 샌드박스라는 환경에서 실행된다는 것입니다. 예를 들어, 앱은 자체 디렉터리에서 읽고 쓸 수 있지만 다른 앱 디렉터리에 쓰기를 시도하면 종료됩니다.

Android 고려 사항

멀티태스킹

Android의 멀티태스팅에는 두 구성 요소가 있습니다. 첫 번째는 작업 수명 주기입니다. Android 애플리케이션의 각 화면은 작업으로 표시되며, 애플리케이션이 백그라운드에 배치되거나 포그라운드로 들어올 때 발생하는 특정 이벤트 집합이 있습니다. 응답성이 좋고 올바르게 동작하는 애플리케이션을 만들려면 애플리케이션이 이 수명 주기를 준수해야 합니다. 자세한 내용은 작업 수명 주기 가이드를 참조하세요.

Android에서 멀티태스킹에 대한 두 번째 구성 요소는 서비스 사용입니다. 서비스는 애플리케이션과 독립적으로 존재하며 애플리케이션이 백그라운드에서 실행되는 동안 프로세스를 실행하는 데 사용되는 장기 실행 프로세스입니다. 자세한 내용은 서비스 만들기 가이드를 참조하세요.

많은 디바이스 및 많은 폼 팩터

Google은 Android OS를 실행할 수 있는 디바이스에 제한을 두지 않습니다. 이 개방적 패러다임은 매우 다른 하드웨어, 화면 해상도 및 비율, 디바이스 기능 및 성능을 갖춘 수많은 다양한 디바이스로 채워지는 제품 환경을 만들어냅니다.

Android 디바이스의 극단적인 조각화로 인해 대부분의 사람들은 가장 인기 있는 5개 또는 6개의 디바이스를 선택하여 디자인, 테스트 및 우선 순위를 지정합니다.

보안 고려 사항

Android OS의 애플리케이션은 모두 제한된 권한을 사용하여 별개의 격리된 ID로 실행됩니다. 기본적으로 애플리케이션은 할 수 있는 것이 거의 없습니다. 예를 들어, 특별한 권한이 없다면 애플리케이션은 문자 메시지를 보내거나 휴대폰 상태를 확인하거나 인터넷에 액세스할 수 없습니다! 이러한 기능에 액세스하려면, 애플리케이션은 애플리케이션 매니페스트 파일에 원하는 사용 권한과 설치 시기를 지정해야 합니다. OS는 이러한 권한을 읽고 애플리케이션이 해당 권한을 요청하고 있음을 사용자에게 알린 다음, 사용자가 설치를 계속하거나 취소할 수 있도록 합니다. 애플리케이션이 iOS와 같은 방식으로 큐레이트되지 않기 때문에 개방형 애플리케이션 스토어 모델로 인해 Android 배포 모델에서 필수적인 단계입니다. 애플리케이션 권한 목록은 Android 설명서의 매니페스트 권한 참조 문서를 참조하세요.

Windows 고려 사항

멀티태스킹

UWP의 멀티태스킹은 페이지 및 애플리케이션에 대한 수명 주기와 백그라운드 프로세스라는 두 부분으로 구성됩니다. 애플리케이션의 각 화면은 활성 또는 비활성(비활성 상태를 처리하거나 “삭제 표시”하는 특수 규칙이 있음)과 관련된 이벤트가 있는 Page 클래스의 인스턴스입니다.

두 번째 부분은 애플리케이션이 포그라운드에서 실행되지 않는 경우에도 작업 처리를 위한 백그라운드 에이전트를 제공합니다.

디바이스 성능

UWP 하드웨어는 유형이 거의 같지만 여전히 선택적인 구성 요소이므로 코딩하는 동안 특별한 고려 사항이 요구됩니다. 옵션 하드웨어 기능으로는 카메라, 나침반 및 자이로스코프가 있습니다. 특별 고려 사항이 필요한 특수한 종류의 저용량 메모리(256MB)가 있거나 개발자가 메모리 부족 지원을 제외할 수 있습니다.

보안 고려 사항

UWP의 중요한 보안 고려 사항에 대한 자세한 내용은 보안 설명서를 참조하세요.

요약

이 가이드에서는 모바일 개발과 관련하여 SDLC에 대한 소개를 제공했습니다. 모바일 애플리케이션 빌드에 대한 일반적인 고려 사항을 소개하고 설계, 테스트 및 배포를 비롯한 다양한 플랫폼별 고려 사항도 살펴보았습니다.

다음 단계