じゃんけん [Janken] | Seika Hirori

Seika Hirori

Welcome! You can view my projects and blog posts :3

View on GitHub

じゃんけん [Janken]

Date: 26 Feb 2023

Category: blog Project Reflection

Tags: Swift, SwiftUI, iOS Development, Hacking with Swift


Repo: https://github.com/SeikaHirori/janken_RockPaperScissors

Abstract: Using the specifications from Hacking with Swift, recreate the classic game: Rock, Paper, Scissors. In additional, add an extra win condition to score points. On a personally touch, support to switch to from English to the Japanese version (じゃんけん [janken]) was added. This was to see how multi-language support could be implemented. One limitation is that the current implementation of multiple languages might not scale well. Another limitation is due to current personal limited knowledge of SwiftUI, the SwiftUI toolkit has not been used to its fullest potential. Addition limitation is that tests were not written as the focus is learning the tool kit first. Lastly, the look of the UI could be improved.


Highlights and Experience

Limitations:

Future improvements:

------

Conclusion: It was a lovely experience overall for working on this second challenge project! It accumulated all the SwiftUI materials used in HwS’s Projects 1 to 3. It was a bit tough trying to find clear information on how SwiftUI’s tools worked since Apple’s official documentation (doc) only explains them on an abstract level. When compared to the doc for Rust, Apple’s lacks visual and example codes. As a result, I had to search through various websites for additional information. The project has multiple areas that could improved. As I am following HwS’s SwiftUI syllabus, I might be coming back to this project in the future to make improvements? If that doesn’t happen, I do want to comeback and implement some other features, such as a two-player Person vs Person (PvP) mode. This task will definitely require in-depth knowledge, but I do want to see how it is implemented! For now, I will proceed to the next lessons for HwS’s SwiftUI syllabus :D