기본 주의 사항

2 minute read

띄어쓰기

스위프트의 전반적인 문법에서 띄어쓰기는 신경써야할 때가 많습니다

class 이름 뒤에 괄호 열기 전에 한 칸 띄우고 { func 뒤에 한 칸 띄우고 { 전체적으로 { 맞추기

class 이름 {
    /* 구현부 */
}

func 함수이름과 ( ) 사이에 띄우지 말것 func 함수이름 뒤에 ( ) 붙여쓰기

함수선언의 기본형태
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> 반환타입 {
    /* 함수 구현부 */
    return 반환값
}
// 예)
// sum이라는 이름을 가지고
// a와 b라는 Int 타입의 매개변수를 가지며
// Int 타입의 값을 반환하는 함수
func sum(a: Int, b: Int) -> Int {
    return a + b
}

주석 쓸데 없이 남겨두지 말기

  • 과도한 주석은 지저분해 보임
  • 과도한 줄바꿈도 자제

    작명 규칙

    Swift는 모든 대소문자를 구분

  • Lower Camel Case
    • function, method, variable, constant
      someVariableName
      
  • Upper Camel Case
    • type(class, struct, enum, extension…)
      Person, Point, Week
      
  • 클래스는 참조 타입, 타입이름은 대문자 카멜케이스를 사용하여 정의
    class 이름 {
      /* 구현부 */
    }
    

    source yagom


Swift print기본값 print(_:separator:terminator:)

Swift print는 개행이 기본값 “\n”

  • Swift print의 개행 제거 terminator: ““
    The output from each call to print(_:separator:terminator:) includes a newline by default. To print the items without a trailing newline, pass an empty string as terminator.
    for n in 1...5 {
      print(n, terminator: "")
    }
    // Prints "12345"
    

Swift print는 스페이스 한번의 공백이 기본값 ” “

  • Swift print에서 문자열을 구분을 위해서는 separator : “…” 사용
    To print the items separated by something other than a space, pass a string as separator.
    print(1.0, 2.0, 3.0, 4.0, 5.0, separator: " ... ")
    // Prints "1.0 ... 2.0 ... 3.0 ... 4.0 ... 5.0"
    

    source Apple , Googling link


사용자가 입력하는 다양한 값을 받기 위한 readLine( )

  • Int 타입을 입력하던, Double 타입을 입력하던 간에 모두 String으로 반환
    func readLine(strippingNewline: Bool = true) -> String?
    
  • String?으로 Optional 타입이므로 값을 입력하지 않아 발생하는 nil의 경우도 생각해야 한다.
  • readline( )으로 대문자 L 을 소문자 l 로 쓰지 않도록 주의

source Apple , Googling link


인스턴스 헷갈린땐? 붕어빵

  • 붕어빵틀 = Class
  • 붕어빵 = Object
  • 각각의 붕어빵 = Instance
  • 붕어빵을 굽다 = 인스턴스(Instance)화 하다

    내용 설명
    붕어빵틀 Class 이름
    양 밀가루 반죽 variable
    양 팥 variable
    굽다 method

Googling link


코드리뷰 기본 예절

  • 공격적으로 하지 말것-> 상대방이 상처 받을 수 있음
  • 기죽지 말 것!
  • ꖶዞ 라는 질문에 방어적이지 않게 생각하도록 노력하기-> ꖶዞ 라는 질문은 틀렸다는 지적이 아니다.
  • 코드리뷰 시간은 나의 뛰어남을 자랑하는 시간이 아니다.
  • 다른 사람코드에서 단점보다는 장점을 발견해서 이야기하자
  • 비난하지 않기
  • 코드리뷰 빨리하라고 눈치주지 않기
  • 명령형 보다는 청유형 문장으로 이야기하기

구름IDE에서 main.swift 파일 복사하면(같은 코드) 에러 발생

  • 터미널에 error 가 expressions are not allowed at the top level 뜨고 계속 실행 안되고 에러였는데 복사한 main.swift 파일을 지우고 main.swift 파일 하나만 남기니 에러가 사라짐

Leave a comment