2 min to read
Swift)네이밍 및 개발 규칙
Swift, Naming
@
- class와 struct는 Pascal casing을 사용한다.
class PlayerManager struct AnimationInfo
- 로컬 변수나 func 파라미터는 camel casing을 사용한다.
func someMethod(someParameter: Int) { let someNumber:Int = 0 }
- 상수의 경우 대문자와 밑줄을 사용한다.
let SOME_CONSTANT = 1
- 변수 이름앞에 접두사를 붙입니다.
1) 멤버 변수(m) - let mAge:Int = 27 2) Bool 타입 - let bFired:Bool = false - let mbFired:Bool = false 3) enum 타입 - enum eDirection { case North, South }
- 리턴 값이 있는 메소드는 리턴되는 값을 설명하는 이름을 가져야합니다.
func getAge() -> Int {}
-
반복문을 사용할 때 index or employee 다신에 i, e를 씁니다.
-
struct안에 함수를 넣지 않습니다. 순수한 데이터 뭉치입니다.
- 범위에 한 줄만 있어도 중괄호를 추가합니다.
if bSomething { return }
- switch 사용 중 case가 발생하지 않는 경우 assert(false)를 추가합니다. 문제가 발생했을 때 확인할 수 있습니다.
switch (type) { case 1: break default: assert(false, "unknown type") break }
- 재귀함수를 사용할 경우 함수이름에 재귀함수를 명시합니다.
func fibonacciRecursive() { }
-
클래스가 여러 파일에 걸쳐 있으면 이 파일이름은 클래스 이름으로 시작하고 밑줄과 하위 섹션 이름이 옵니다.
class RenderWorld;
RenderWorld_load.swift
RenderWorld_demo.swift
RenderWorld_portals.swift
Event.storyboard
Event_main.swift
Event_detail.swift - 함수 만들 때 규칙
- 3번 이상 호출 되지 않으면 함수를 만들지 않는다.
- 너무 간단한 한 줄짜리 코드를 함수로 만들지 않는다.
- 내부에서만 도는 함수는 fileprivate or private로 정의한다.
- 예외로 함수가 너무 길어진다면 짤라서 함수호출을 할 수 있고, 아니면 주석처리로 단위를 나눌 수 있다.
- 전제조건으로 함수는 nil을 받지 않는다. 다만 nil을 받을 경우 함수이름에 orNil을 붙여준다. 반환값도 마찬가지
- Swift에는 옵셔널이 있지만 github에서 문맥상 알기 어렵다.
- 이와 비슷한 맥락으로 함수형 프로그래밍이 있다.
Comments