Cross Platform Swift in 2019 and beyond
In our quest of empowering us Swift developers to build awesome, limitless, native cross platform Swift apps for Android and iOS, Cross Platform Swift is growing up with our next releases in June, July and August. In this article, I like to provide an outlook of what 2019 will mean to Cross Platform Swift developers and how the road ahead looks like:
Three main themes will guide our activities in 2019 and beyond:
I. Achieve feature completeness
In the last two years, we have been working hard with a small team of awesome engineers to provide the technical foundation of what makes Cross Platform Swift possible. First and foremost, this means we kept up with the ever changing Swift standard (we are happy to have reached ABI stability now). The Swift for Android compiler was maintained to keep up with the language changes and new features, which meant solving many very technical details and bugs. It’s hard for people that are not involved in Swift compiler development to understand the magnitude of this endeavor.
Moreover, we worked on other basic capabilities that we consider essential for advanced application development: Fusion and 3rd party frameworks. Fusion has been in the making for 1+ years now, and in summary, makes calling any Android functionality from Swift a piece of cake. Please don’t think of Fusion as a Swift-Java bridge, as this doesn’t do it justice. Think of Fusion as a technology that makes it possible to call Android APIs as easily as you call your Swift APIs today. Fusion makes calling Android so easy and simple, you will not even realize that you are using Fusion. It is awesome, it is in Beta and you will have access to it at the end of this month.
Another critical success factor is the ability to use 3rd party frameworks. With Fusion reaching GA, we are now focusing on demonstrating how to use important 3rd party frameworks on Android and iOS with SCADE. We already documented how to call native C libraries, use Swift libraries such as CryptoSwift or share code for data storage using SQLite. Going forward, we will show you integration with important frameworks such as Firebase, realm.io or RX-Swift.
With the beta release of Fusion end of this month (June 2019) and GA in July, we will then turn to productivity and usability.
II. Productivity & Usability
While building the sound foundation to make Cross Platform Swift a production-ready reality in SCADE 1.0, SCADE 2.0 will be all about productivity and usability.
We look at us iOS developers and try to understand how to make it easier for the iOS developer to build cross platform Swift apps. We took one big step in June, releasing Autolayout for Android, so that you can use AutoLayout on Android and iOS seamlessly. Much of the June, July and the releases beyond that are now about taking what we already have and polishing it to make it more user friendly.
As every detail counts, we were are looking at the small stuff first. We redesigned our Launchbar and will make deploying apps to devices easier. We look at our API and make it more concise and we are looking at making common things even simpler and faster. Don’t take me wrong, I think we already have a high level of productivity, but there is always room for improvement. Our build file for instance — until now — was pretty hard to understand and use. In the July II release, we replaced this through a nice YAML file.
On the big ticket item side of things will be our page editor. It will receive a major overhaul, making it the fastest, most productive mobile UI development tool on the market. I will talk about this in a separate article.
III. Communication and knowledge transfer
One of the things we didn’t do because of our focus on product development was communicating all the awesomeness of SCADE to the Swift developer community. We didn’t build enough sample apps and full blown tutorial, we didn’t spend enough time on conferences and we didn’t tell you about all the great features that SCADE already posses under the hood (Did you know that we have an API for creating and sharing reusable components, did you know that we have one of the most advanced animation engines available on the market…?). This will change starting in June. We will increase our knowledge sharing activity. This includes: Publication of two full blown developer app tutorials (Beginner and advanced level), weekly smaller HowTo articles to demonstrate how to solve smaller problems, and a complete SDK documentation. Moreover, we will start a technical article series on Fusion and Swift foundation to make people realize that identical Swift mobile app code can be used to build for Android and iOS.
I leave you with this outlook for 2019 for now. Please reach out using our Slack channel, and let us know how we can help you build awesome next generation cross platform Swift apps. And yes, before you ask, we have heard about a thing called SwiftUI some time ago. Stay tuned.
Your SCADE Team