iOS 프로젝트 MVC 실습 포인트 (1) - 코드 구분 및 주석
전언
최근에 회사의 새로운 프로젝트에 대해 MVC 구조에 따라 코드를 깊이 있게 분해하고 재봉인하여 수천 줄의 코드의viewController 파일을 가능한 한 600줄 이내로 분할하였다.업무 논리, 네트워크 요청, 데이터 지속화(데이터 저장)와 데이터 모델을 단독으로 봉하여 코드 구조를 뚜렷하고 유지 보수하기 쉽게 한다.사실 iOS 개발이 MVC 구조에 대한 실천은 매우 잘 응용된 셈이다.다만 때때로 프로젝트 개발 주기가 촉박하기 때문에 모두가 모든 것을 뷰 컨트롤러에 넣는 것을 편리하게 하기 위해 개발이 매우 빠르고 뒤의 디버깅과 유지보수에 많은 시간을 낭비하게 된다.그 다음으로 그동안 MVC에 대한 이해가 깊지 못했기 때문이겠죠.
아래의 내용은 기본적으로 당교대신의'이 문장'을 대상으로 한 실천이고 아리의 한 대신의 이 일련의 문장 iOS 응용 구조담(1~4)을 참고했다. 내용은 코드 주석, View 조합, VC 다이어트, 데이터 모델, 네트워크 층, 데이터 보존 봉인 등을 포함한다.가능한 한 코드 구조가 뚜렷하고 깔끔함을 보증합니다.
1. MVC 내부 코드 구분:
1.viewController
#pragma mark - ( )
#pragma mark - ( UITableView view )
#pragma mark -
#pragma mark - ( )
#pragma mark - getter setter
2.View
View 안에는 기본적으로 UI의 결합이 있기 때문에 주석은 컨트롤에 대한 값이 비교적 간단합니다. View Controller는 setter에서 모든 컨트롤에 값을 부여하는 모델을 전송합니다.
#pragma mark - ( )
#pragma mark -
#pragma mark - ( , VC )
#pragma mark - ( , )
#pragma mark - getter setter( getter )
3.Model
모델은 데이터 모델로 안에 명시된 변수(또는 속성, 변수는 기본적으로 속성을 통해 자동으로 합성되기 때문)와 서버가 요청한 데이터는 기본적으로 일일이 대응한다.복잡한 인터페이스(UItableview 또는)에서는 AutoLayout을 사용할 수 없습니다.따라서 이 안에 Layout을 추가했는데 그 안에 주로 인터페이스에 표시할 내용의 높이를 계산하고 저장한다.그래서 여기서 가장 많은 것은 사유 방법이다
#pragma mark -
#pragma mark -
4. 서비스(MVC의 비즈니스 계층)
ViewController에서 가능한 한 모든 업무 논리를 추출하여 여기에 봉인한 다음에 ViewController가 서비스하는 실례를 가지고 있으며, 업무층의 모든 업무는 ViewController에 인터페이스를 제공합니다.그래서 이곳에서 가장 많은 것은 공유 인터페이스이다
#pragma mark -
#pragma mark - ( )
5. 데이터 지속성
서비스 레이어 아래, 모델 레이어 위에 있습니다.일반적인 작업은 다음과 같습니다.
#pragma mark -
#pragma mark - ( )
마지막으로 설명하자면 이것은 개인 코드 모듈의 구분과 모듈 내 코드의 주요 분류이고 세부적인 것은 프로젝트나 실제 업무에 따라 구분해야 한다.
2. 코드 주석
1. 먼저 몇 가지 코드 주석 기술을 제시한다.
// TODO: ( )
// FIXME: ( , )
// ???: ( , )
// !!!:
이상의 주석을 대상으로 전문적으로 이런 주석을 수집하는 소스 라이브러리가 있어 개인의 취향에 따라 사용할 수 있다.
개인 습관: 개발에 사용할 개원 라이브러리를 대상으로 사용하지 않고 최대한 사용하지 않을 수 있다.디버깅에 사용되는 코드 라이브러리에 대해 가능한 한 사용하십시오. (도움이 된다면.)
2. 다음은 일반적인 코드 주석이다.
방자의 작은 발자국을 참고한 블로그를 참고하면 여자들이 물건을 정리하는 능력을 믿어야 한다. 하물며 방자도 신이다.
3. 코드 규범
이 구유는 빨리 토하지 않는데 하물며 나는 영어를 못한다.영어가 좋지 않기 때문에, 이 규범은 나에게 있어서 난이도가 좀 크다.프로그래머의 가장 골치 아픈 일: 이름
그리고 가장 충격적인 말은 영어를 잘 배우지 못하면 채소 새가 늙을 때까지
나는 단지 한마디만 하고 싶다. 그냥 조용히 색연필을 늙게 해 주세요.
마지막으로 자신이 사용하는 코드 규범을 제시한다.물론 전제는 애플 홈페이지의 규범을 따르는 것이다.
야생 프로그래머 하나: 회사에 코드 규범이 있는데 자신이 각 신의 블로그에서 베끼기를 배웠기 때문에 최종적으로 자신의 프로젝트는 이런 코드 규범을 형성했다. 앞으로 학습과 기술의 향상에 따라 큰 변화가 있을 것이다.
만약 잘못이 있으면 비평과 시정을 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.