[swift] 네임스페이스

Swift에는 네임스페이스가 없다는 것을 아시나요? 네임스페이스는 코드 내에서 충돌을 피하고 자신의 타입, 함수 또는 변수에 고유한 식별자를 제공하기 위해 사용됩니다.

Swift에는 네임스페이스가 없지만, 모듈 시스템을 통해 코드를 구조화하고 모듈 간에 충돌을 방지할 수 있습니다. 각 모듈은 자체 네임스페이스를 가지며, 다른 모듈의 이름과 충돌을 피할 수 있습니다.

예를 들어, 두 개의 모듈이 각각 MyModule이라는 같은 이름을 가지고 있다고 상상해 보십시오. 이 두 모듈을 사용하려면 각 모듈을 직접 참조하거나 클래스와 함수에 접두사를 사용하여 해당 모듈을 지정해야 합니다.

import MyModuleA

let instanceA = MyModuleA.MyClass()

import MyModuleB

let instanceB = MyModuleB.MyClass()

이 예에서 MyModuleAMyModuleB는 각자의 범위에 있기 때문에 충돌을 피할 수 있습니다.

네임스페이스의 부재로 인한 이러한 접근 방식은 모듈을 보다 간단하게 만들어주며, 코드를 쉽게 사용하고 이해할 수 있도록 돕습니다.

더 많은 정보는 Swift 공식 문서를 참고하세요: Swift 공식 문서 - 네임스페이스