개발자라면 자신에게 필요한 도구를 직접 만들 수 있어야 한다.
대부분의 iOS 개발자들은 App을 만드는 방법만 알고 있어 간단한 도구조차 App을 실행시켜서 하곤 한다.
하지만 Swift 파일도 실행 가능하게 만들 수 있고, 이를 활용해 간단한 도구를 만들 수 있다.
이렇게 되면 Mac에서 Xcode 없이 클릭 한 번으로 간단하게 실행할 수 있는 프로그램을 만들 수 있다.
Xcode에서 Command Line Tool을 선택한 project를 하나 만든다.
아무 swift 파일이나 만든다.
만들어진 swift 파일을 우클릭하고 Show in finder를 클릭하여 파일의 위치를 찾는다.
finder에서 swift 파일을 우클릭하여 terminal로 연다.
swiftc main.swift를 입력하면
main이라는 프로그램이 만들어지고, 이를 더블클릭하거나 ./ 명령어로 실행하면 실행된다.
import Foundation
let startMaker = StarMaker()
print("별 삼각형의 변의 길이를 입력해주세요 > ", terminator: "")
while let input = readLine(),
!input.isEmpty {
guard let lengthOfStarTriangle = Int(input),
lengthOfStarTriangle > 0 else {
print("1 이상의 정수를 입력해주세요 > ", terminator: "")
continue
}
startMaker.makeTriangle(withLength: lengthOfStarTriangle)
print("끝내시려면 enter를, 계속하시려면 별 삼각형의 변의 길이를 입력해주세요 > ", terminator: "")
}
struct StarMaker {
func makeTriangle(withLength length: Int) {
guard length > 0 else { print("잘못된 입력"); return }
(1...length).forEach { numberOfStars in
print(String(repeating: "*", count: numberOfStars))
}
}
}
위와 같은 코드가 있다고 하고, main.swift와 StarMaker.swift 파일이 따로있는 경우이다.
이전에 했던것과 같이 terminal 프로그램을 켜고
"swiftc 파일1 파일2 -o 프로그램이름" 을 타이핑해주면 아주 간단하게 프로그램이 만들어 진다.
https://github.com/sustainable-git/Prototypes/tree/main/MenuToday
위의 github 파일 예시와 같이 간단한 프로그램을 실행시키는데 편리하다.
그러나, 이 파일을 다른 사람에게 공유한다면 "신뢰할 수 없는 개발자"가 만든 프로그램이라고 막는 경우가 생기는데, chmod 를 변경하거나 Mac 설정에서 신뢰하는 개발자로 설정해 주어야 한다.