[250403] 계산기 만들기 Lv8

ON&OFF·2025년 4월 3일

iOS TIL

목록 보기
10/18

1. 오늘 배운 것

계산기 만들기의 Lv8 (계산까지 가능하고, AC 버튼을 누르면 초기화) 을 구현했다.

2. 배우며 겪은 문제점

실제 계산기처럼 12+3=15 가 될 수 있게 계산하는 로직을 구현하려고 했다. 처음엔 연산자별로 다 내가 직접 함수로 기능을 구현하고, 연산자의 버튼을 누르면 해당 함수들이 실행되게 해야되나..? 라고 생각했는데 과제 밑에 계산해주는 코드가 제공되었다.
그런데 처음 보는 코드라서 이게 어떻게 왜 계산이 되는건지 이해할 수가 없었다..

3. 해결 방법

마구마구 검색해본 결과 어느 정도 해당 코드를 이해할 수 있게 되었다.

  • NSExpression은 애플이 제공하는 클래스로, 문자열로 수학 표현식을 해석하고 계산하는 기능이 있다.
let expression = NSExpression(format: "3 + 5 * 2")

파라미터에 문자열 수식을 넣고,

let result = expression.expressionValue(with: nil, context: nil)

expressionValue 메서드를 사용하면 알아서 계산해주는 것이었다..!

4. 느낀 점

일일이 함수를 구현하는 것도 좋은 공부가 되겠지만 이런 식으로 애플에서 제공하는 코드들을 사용하면(내가 이런 게 있다는 걸 알고서 사용한 건 아니지만..) 기능도 강력하고 간편해서 틈틈히 여러가지 메서드들에 대해 공부해야겠다는 생각이 들었다.

5. 다음에 진행할 것

여러가지 메서드들에 대해 공부해보고 복습해보자

profile
안 되면 될 때까지

0개의 댓글