jetc.dev Newsletter Issue #8
It’s an even-numbered issue, which means… it’s a new dev release issue!
shipped last week, with a fair amount of changes both in Compose and the Compose
UI. Plus, we explore image scaling, checkboxes, and how to cope with all of
these API changes.
One Off the Stack, One Off the Slack
You’ve got questions. That’s understandable!
In this Slack thread, we discuss a workaround for bugs in the current
ScaleFit.FillMaxDimension, as a developer tries to get images
to scale properly.
Note: to view this, you need to be a member of the Kotlin Slack workspace — sign up at https://slack.kotlinlang.org/!
Posts, videos, and other new information related to Jetpack Compose!
Compose is moving from
+ syntax to combine modifiers to a fluent API, where
calls to modifiers get chained together. The objective is better function
discoverability in the IDE, via auto-complete, which doesn’t work with operators
100% pure code!
…And One More Thing
Jetpack Compose has a swiftly-changing API. We used to use the unary plus
operator a lot (
+memo), but no more. We used to use the binary plus operator
(for combining modifiers), but that is gone too. Fundamental constructs like
Container get deprecated and replaced (with
Box in this case). And so on.
This is to be expected.
So long as we are in “dev” releases, anything could change in the API surface. That’s the point of “dev” releases — get early API feedback before that API starts to solidify. When we get to alpha releases, while the API may still change, those changes will be less drastic.
Certainly, you are welcome to use Compose for whatever you want, so long as you
do not mind re-re-re-re-re-writing it as the API undergoes these substantial
shifts. Hopefully, part of your objective of using Compose is to provide
feedback on what you like and what you do not, such as through the kotlinlang
On the flip side, if all you are doing is experimenting with Compose to get a sense of how it works… do not feel that you have to take on every dev release. The more releases you skip, the farther behind you fall, and the more difficult it may be to update your code… but you may not be planning on updating that experimental code anyway.
We may be in the “dev” release phase for quite some time. Plan accordingly!
- 2021-10-12: Overscroll! Responsive layouts! Accessibility! Reorderable lists! Foldables! Testing with an Espresso wrapper! And... testing with robots?!?
- 2021-10-05: 1.0.3! 1.1.0-alpha05! Scopes! Compose in production! rememberUpdatedState()! And... particles of Compose?!?
- 2021-09-28: @androidamanda on declarative UIs! Keyboard handling! Swapping themes! Pickers, pickers, and more pickers! And... LED matrix displays?