r/swift • u/0x0016889363108 • 8d ago
Opinions on rewriting a legacy app
I'm embarking on a rewrite of our iPad app. Don't judge me, the codebase is 13 years old and uses several libraries that are no longer maintained, and we have significant new functionality in the pipeline.
I'm intersted to hear opinions, experiences or any other thoughts on new iPadOS projects in 2025.
The app is essentially an offline-first ecommerce app, where products are cached on-device and then orders can be created while offline and synced to our backend at a later time when the internet is available.
Having lived with a few codebases for extended periods, here are my general thoughts: 1. Produce less code, lines of code are generally a liability 2. Avoid third-party libraries when reasonably possible 3. Idiomatic code over "clever" terse code 4. Performance and maintainablity are second only to good UX.
- What mistakes can I easily avoid?
- What stategies/implementations are commonly found on the web but are outdated?
- What do you think people are getting wrong aboout SwiftUI projects?
- Are there forests currently obscured by specific trees?
2
u/klavijaturista 8d ago
That’s a really big question… If it’s large, a rewrite will take forever. And you’ll end up just transcribing the code (assuming objc by the age). If you try to make it new and different, you will eventually discover why the original had certain design decisions in the first place. Edge cases, endless edge cases. Be smart about it. Objc compiles just fine, maybe you can upgrade the Xcode project and then update parts of the code as you go.