今回の開発のインスピレーションは、6月に日本に引っ越す予定の私の経験から来ています。家を探す過程で、日本の物件のサイズの単位が台湾人と異なることに気付きました。そこで、このテーマを中心に開発を進めることにしました。
機能紹介
目標はシンプルで明確です。ユーザーが数値を入力するだけで、他の2つの単位への変換結果を迅速に得られる直感的なインターフェースを提供します。アプリには3つの主要機能が含まれており、それぞれ異なる面積の単位の変換に対応しています。
畳の変換:ユーザーが畳の数を入力すると、アプリが対応する坪数と平方メートル数を計算して表示します。
平方メートルの変換:ユーザーが平方メートル数を入力すると、アプリが対応する坪数と畳数を計算して表示します。
坪の変換:ユーザーが坪数を入力すると、アプリが対応する畳数と平方メートル数を計算して表示します。
ユーザー入力の安全な処理
開発過程での主要な技術的な挑戦の一つは、ユーザーの入力を安全かつ効率的に処理する方法でした。ユーザーは何でも入力する可能性があるため、数字以外や空の文字列を含むことがあります。ここで、クラスで学んだif let機能を活用しました。これは、Swift言語でオプショナル(Optional)値を処理する方法の一つで、変数に確定値がある場合にのみ操作を行うのに役立ちます。
畳の数を変換する例では、ユーザーがUITextFieldから値を入力し、「計算」ボタンを押してcalculateメソッドをトリガーします。この時、if let構造を使用してテキストフィールドの内容をDouble型に変換しようと試み、その値が0より大きいことを確認します。これらの条件がすべて満たされた場合にのみ、変換プロセスが進行します。
@IBAction func calculate(_ sender: UIButton) {
if let tatamiText = tatami.text, let tatamiValue = Double(tatamiText), tatamiValue > 0 {
// 入力値を正常に変換し、結果を計算...
} else {
result.text = "0より大きい数字を入力してください" // ユーザーに有効な数字の入力を促す
}
}