소셜 미디어 IOS 앱을위한 OO 디자인의 기본 구조 및 동작 개념

IOS 앱을위한 OO 디자인의 기본 구조 및 동작 개념

차례:

비디오: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024

비디오: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024
Anonim

객체 지향 디자인은 iOS 응용 프로그램에서 매우 유용한 구조적 및 동작 적 개념을 모두 가지고 있습니다. 객체 지향 디자인은 객체가 객체와 연관되어있는 프로그램을 설계하는 다른 방법입니다. 다음은 OO의 기본 요소를 완성하는 추가 개념을 제시하면서 핵심 OO 용어를 정의하고 설명합니다.

객체

객체는 자신에 관한 데이터와 데이터 조작에 대한 설명을 포함하는 실제 또는 추상 인 개별 식별 가능 항목입니다. 즉, 객체는 정수를 식별하는 것과 같은 수학 개념과 같은 순수한 개념은 도메인을 분석하는 첫 번째 단계입니다.

  • 각 객체는 클래스의 인스턴스로 간주됩니다.

  • 클래스

A

클래스

는 하나 이상의 유사한 객체가 공유하는 조직 및 동작에 대한 설명입니다.

템플릿

입니다. 그러나 클래스와 분리 된 유형의 개념은 인터페이스라고하는 프로그래밍 구성에 의해 많은 프로그래밍 언어 (Objective-C가 아님)에서 캡처됩니다.

객체 지향은 클래스 인

메타 클래스의 개념을 가지고 있습니다. Class라는 Objective-C에는 하나의 메타 클래스가 있습니다.

추상화 객체의 클래스와 기능을 식별 할 때 활동의 도메인과 관련이없는 클래스 나 기능을 고려하지 않습니다. 예를 들어, 차를 만드는 것에 관한 프로그램을 디자인하는 경우, 찻잔의 기능을 나타 내기 위해 수업을 들었을 가능성은 거의 없습니다. 특정 도메인과 관련이있는 것에 초점을 맞추기 위해 무의미한 부분을 무시하는 모델링을 추상화라고합니다. 추상화는 문제와 관련된 측면을 다루기 위해 필요한 클래스 (및 유형)를 식별하는 행위입니다. 일반화

일반화

의 개념은 Vessel과 Teacup 클래스 간의 관계에서 예시된다. 프로그래밍 언어의 일반화는 한 클래스의 데이터와 동작을 다른 클래스의 기초로 포함 시키거나 다른 클래스의 기초로 사용할 수있는

상속 ( ) 메커니즘을 통해 증명됩니다. 여러 프로그래밍 언어에는 모든 클래스가 상속되는 루트 클래스가 있습니다. Objective-C 프레임 워크에서이 클래스는 NSObject라고 불린다. NSObject는 Java의 Object 클래스와 같습니다.

서브 클래스

는 다른 클래스 ( 수퍼 클래스 라고 함)의 모든 기능을 상속하는 클래스입니다. 게다가, 서브 클래스는, 특정의 메소드의 독자적인 구현을 제공하는 것에 의해, 특정의 기능을 오버라이드 (override) 할 수 있습니다. 슈퍼 클래스의 메소드는, 오버라이드 (override) 메소드로부터 호출 할 수 있습니다. 추가 메소드를 제공하거나, 추가 멤버 변수를 사용하여 수퍼 클래스의 기능을 확장 할 수도 있습니다. 마찬가지로, 유형 ( 인터페이스 )은 하위 유형을 사용하여 확장 될 수도 있습니다. 여기에서는 기능이 무시됩니다. 하위 유형에는 객체가 구현해야하는 메소드가 더 많이 있습니다.

객체는 일반적으로

상태라고도하는 데이터를 저장합니다. 이 상태는 속성으로 알려진 데이터 보유자에 저장됩니다. 객체 (클래스로 정의 됨)에도 기능이 있습니다. 메서드

는이 기능에 액세스하는 방법, 즉 개체의 특성을 설정하거나 조작하는 명령 집합을 실행하는 방법입니다. 다른 객체는 이러한 메소드가 실행되도록합니다. 메시지 전달, 는 객체가 다른 객체에 데이터를 보내거나 다른 객체에게 메소드 호출을 요청하는 프로세스입니다. 메시지 전달은 다른 개체가 개체의 메서드를 호출 할 때 발생합니다. 일반적으로 프로그램 실행은 특정 클래스 내에서 main 라는 함수 또는 메소드를 호출하는 것으로 시작합니다. 추상화 과정은 클래스와 유형을 생성합니다. 클래스와 타입은 하나의 특징이 더 있습니다: 메소드와 공개적으로 접근 가능한 속성을 통해서만 사용을 제한합니다. 이는

캡슐화 로 알려져 있으며, 클래스 및 객체를 디자인하는 기술로, 해당 클래스의 객체가 수신 할 수있는 제한된 메시지 집합을 정의하여 데이터 및 동작에 대한 액세스를 제한합니다. 캡슐화는 클래스의 내부에 대한 액세스를 방지하고 클래스가 구현되는 방법에 대한 세부 정보가 알려지지 않도록합니다. 캡슐화는 정보 은닉, 객체 지향의 또 다른 핵심 개념을 강요합니다. Abstract 클래스는 다른 클래스에 의해 재사용 될 수있는 명세로서 만 사용된다. 추상 클래스에서 객체를 만들 수 없습니다. 객체를 생성 할 수있는 클래스는 concrete 클래스로 알려져 있습니다. 물론 인터페이스는 항상 추상적입니다. 응용 프로그램은 다양한 유형의 클래스 모음으로 구성됩니다. 이러한 클래스의 객체는 서로 상호 작용하여 응용 프로그램의 기능을 구현합니다. 클래스가 상호 작용하는 클래스를

공동 작업자 라고합니다. 다형성 (Polymorphism)

는 각 클래스가이 메소드를 적절하게 구현하면서 동일한 메시지에 응답하는 서로 다른 클래스의 능력입니다. MakeDrinkableFood에서 가져온 다음 행은이 개념을 보여줍니다. For (i = 1; i <= numberOfEatingVessels; i ++) HeatingVessel.Pour (EatingVessel objectAtIndex: i); 차를 만들 때 EatingVessel은 주전자 개체에 바인딩됩니다. 스프가 만들어지면 EatingVessel은 Tureen 개체에 바인딩됩니다.

이러한 개념을 분리하는 것이 유용합니다 캡슐화, 메타 클래스, 클래스, 유형, 객체, 상속 및 인터페이스의 개념은 모두 구조적 개념입니다. 프로그램의 구성 및 프로그램 작동 방식에 대해 알려주는 동작 개념에 대해 알려주는 구조적 개념으로 구성됩니다. 방법, 메시지 전달 및 다형성의 개념은 행동 개념입니다.

IOS 앱을위한 OO 디자인의 기본 구조 및 동작 개념

편집자의 선택

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

판매를위한 크로스 플랫폼 참여는 Best Buy입니다. Best Buy는 모바일 쇼핑 및 소셜 쇼핑을 매장의 각 품목에 대한 QR 코드를 사용하여 매장 내 경험으로 가져 왔습니다. 고객은 상점의 각 항목에 대한 QR 코드를 스캔하여 리뷰를 포함한 더 많은 정보를 얻을 수 있습니다.

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그 또는 사이트에서 Google 웹 로그 분석 추적 통계를 사용하여 빠르고 쉽게 설치할 수 있습니다. 설치는 1 분 밖에 걸리지 않으며 완전히 고통스럽지 않습니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스와 대시 보드에서 로그인하십시오.

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

단 1 분이며 고통스럽지 않습니다. 곧 Google 애널리틱스 덕분에 잠자는 동안 소셜 미디어 측정 항목을 추적하게 될 것입니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스 및 대시 보드에 로그인하고 톱니 바퀴 아이콘을 클릭하기 만하면됩니다. ...

편집자의 선택

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

다 변수 테스트뿐만 아니라 요인 일정을 유지하고 다양한 시나리오에서 다른 결과를 테스트하여 마케팅 자동화 테스트를 수행하는 것을 의미합니다. 하나의 유료 검색 광고를 통해 사람들을 2 개의 개별 방문 페이지로 유도하는 것이 그 예입니다. 방문 페이지 테스트하기 ...

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

마케팅 자동화 도구의 사용을 극대화하기 위해 먼저 사람과 콘텐츠와의 관계를 이해해야합니다. 올바른 사람에게 올바른 콘텐츠를 보내는 경우에만 자동화가 유용합니다. 이를 올바르게 수행하는 방법에 대한 기본적인 이해를 돕기 위해 사람들은 두 가지 유형이 관련되어 있음을 인식해야합니다 ...

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

고객 관계를 관리하는 데 도움이되는 Microsoft 도구 현대 직장에서 가장 유용한 도구 중 하나는 전자 메일이므로 전자 메일을 만들고 읽거나, 전자 메일을 특정 레코드에 연결하거나, 일정을 관리하는 데 숙련되어 있어야합니다. ...

편집자의 선택

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

당신은 자신의 웹 사이트 또는 블로그를 가지고 있고, 고객, 독자 또는 웹 호스팅 기술에 의존하는 추종자 만 있습니다. 다음 팁은 웹 호스팅 계획을 최대한 활용하는 데 도움이됩니다. 제어판에서 백업 옵션을 확인하십시오. 일부 제어판을 사용하면 자동화 된 백업을 수행 할 수 있습니다. ...

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

은 웹 호스트만큼 멋지고, 웹 사이트를 디자인, 제작 및 운영하는 데 도움이되는 일에는 한계가 있습니다. 그것은 모두 돈으로옵니다. 귀하가 기꺼이 지불하는 한 귀하의 호스트는 기꺼이 도움이 될 것입니다. 각 호스트는 다릅니다. ...