내가 발명 한 보드 게임을위한 게임 엔진을 파이썬에서 번역하기 시작했습니다. 내가 보여줄 예제는 무의미하다는 것을 알고 있습니다. 실제로 그것을 최적화 할 필요는 없지만, 무거운 기능을 다루기 전에이 권리를 얻고 싶습니다.최적의 성능을 위해 줄리아에서 타입 선언이 얼마나 자주 필요합니까?
function howMany()::Int8
pieces::Int8 = 0
while pieces > 8 || pieces < 4
try
print("How many pieces are we going to play with (min 4, max 8)? ")
pieces = parse(Int8, readline(STDIN))
catch
println("It must be an integer number between 4 and 8!")
end
end
return pieces
end
function main()
pieces::Int8 = howMany()
#println(pieces, typeof(pieces))
end
main()
Int8 (3 선언 + 구문 분석 매개 변수)를 선언해야합니까? 성능 저하없이 Int8을 지정하지 않아도되는 경우는 언제입니까?
@DanGetz가 훌륭한 답을 제공합니다. 나는 개인적으로 타입 정보를 함수 시그니처에 포함하는 것을 선호한다고 생각했다. 예를 들어'myfunc (x :: Float64) :: Int', *와 같이 보통 타입 안정 코드를 얻기 위해 그렇게 할 필요는 없지만 *. 그 이유는 6 개월 후에 다시 돌아와서 코드를보고 더 쉽게 디버깅 관점에서 삶을 더 쉽게 만들 수 있다는 것입니다 (즉, 잘못된 유형을 함수를 변경하거나 실수로 잘못된 형식을 출력 함) –