2011-10-19 4 views
5

저는 ios 개발에 익숙하지 않고 방금 첫 앱을 시작했습니다. 이제 내 앱에는 거의 모든 페이지에 홈 버튼이 있고 그 버튼 뒤에는 동일한 코드 스 니펫이 호출되어 홈 화면으로 이동합니다. 이것은 홈 버튼이있는 모든 컨트롤러에서 중복되는 코드입니다. 그리고 이것은 단지 하나의 예일뿐입니다. 프로그래머가 여전히 코드를 배우는 것과 같은 다른 많은 시나리오가 있습니다. 모든 변경 사항이 모든 컨트롤러에서 별도로 작성되어야한다고 생각합니다.iOS 응용 프로그램에서 코드 재사용

제 질문은, ios를 코딩 할 때 이와 같은 시나리오의 모범 사례는 무엇입니까 ??

+0

다음과 같이 표시됩니다. http://stackoverflow.com/questions/6223485/iphone-how-to-display-a-common-button-on-my-all-view – Devang

+0

@Devang : 일반적인 버튼을 만드는 방법은이 버튼과는 대조적으로 더 현지화되어 있습니다. 그래서 나는이 질문을 최소한 중복으로 부르지 않을 것입니다. –

답변

4
이 상황에서 한 가지 쉬운 일이 (예를 들어, MyAppMasterVC)를 UIViewController 서브 클래스를 확인하고 그래서 당신의 버튼을 정의하는 것입니다

:보기 컨트롤러 모두에서

- (IBAction)myCommonButtonAction { // code and such } 

를 대신 한 상속 UIViewController (aaa @interface MyNewViewController : MyAppMasterVC)이다.

2

우선 OO 프로그래밍 및 클래스 계층 구조에 대해 배우고 모든 유사한 컨트롤러에 공통 기본 클래스를 만드는 방법을 이해해야합니다.

1

이 문제는 언어/플랫폼에 영향을받지 않습니다. 많은 용어는 'DRY'이며, 'Do not Repeat Yourself'의 두문자어입니다.

Here is a SO search. 이렇게하면 일반적인 문제와 용도에 도움이되므로 가능한지, 필요할 때, 그리고 이러한 유형의 문제에 접근하는 방법을보다 잘 결정할 수 있습니다.

2

이 의미에서 iOS의 소프트웨어 개발은 ​​다른 소프트웨어 개발과 다르지 않습니다. 논리를 일부 공통 클래스 또는 기능으로 병합하고 적절한 것으로 사용하십시오. 코드의 여러 부분을 작성할 때까지 어떤 부분이 공통적이고 재사용 가능한지 알지 못하는 경우가 많으며, 그때 만이 모든 것이 하나의 기능이 될 수 있음을 알게됩니다. 기존 코드를 구성하고 정리하고 더 읽기 쉽고 다시 사용할 수있게 만드는 프로세스는 code refactoring이라고합니다. 다양한 design patterns을 설명하는 리팩토링에 관한 많은 책과 코드를 개선하는 기술과 프로세스가 있습니다. 더 좋은 그림을 얻기 위해 그 중 일부를 읽으시기 바랍니다.