21 ms·
Announcing Flutter Release Preview 1
- jjnoakes 8y agoI'd love to play with Flutter but issues like this keep me at arm's length. Hopefully when this kind of thing is finally resolved I'll be able to give it a closer look. https://github.com/flutter/flutter/issues/6827 https://github.com/flutter/flutter/issues/6827
- InfamousSub 8y agoState restoration pretty damn important too. Say for example, the user goes into multi-window on Android. If they were doing anything important on the screen, that would just be wiped out.
- jaydubs 8y agoWhile it's common to restart on all sorts of config changes like multiwindow or layout changes on Android, flutter specifically configures it's android activity to not restart. So going into multiwindow works just fine, and the framework handles redrawing and resizing.
- denisw 8y agoTo summarize, Flutter provides no automated or easy means to save/restore state when Android auto-kills the app (e.g. because of low memory). The main problem here is that the `onSaveInstanceState` and `onRestoreInstanceState` lifecycle callbacks require a synchronous response (return value) but the IPC system between Dart and native code is inherently asynchronous. React Native currently has the very same problem. This is the reason why some very useful native components that require synchronous delegate callbacks (such as UITableView and UICollectionView from iOS) are not available from RN. However, the core team at Facebook is working on a "large re-architecture" that will allow synchronous calls into JS, fixing these issues: https://facebook.github.io/react-native/blog/2018/06/14/state-of-react-native-2018 https://facebook.github.io/react-native/blog/2018/06/14/stat...
- pplante 8y agoI've been using Flutter for a few months now, and have not felt this productive in years. Being able to iterate so quickly on real or virtual devices has changed how I design and development a UI. I can set out with a mock-up and almost immediately start to feel why it isn't perfect and just use it until the feel is right. The productivity bonuses are sometimes hard to explain to people who haven't yet tried Flutter and it's tooling. This announcement of preview 1 is coming at a great time as I am launching my first app on iOS and Android next week.
- k__ 8y agoSounds like Expo to me. How does it handle native APIs? Like React-Native (you have to write bridges in ObjC/Java) or like NativeScript (you can simply access all native APIs via JS)
- rhodysurf 8y agoAsynchronous bridges
- felideon 8y agoSee this blog post from last year: https://hackernoon.com/whats-revolutionary-about-flutter-946915b09514 https://hackernoon.com/whats-revolutionary-about-flutter-946...
- k__ 8y agoThe styles-as-widgets idea sounds nice. I saw that with JSX somewhere <Row> <Column> <Grid> etc. Made the whole thing look much cleaner.
- mehblahwhatevs 8y agoCool - how is the WebView support? I have a project that will require a WebView in the app. Also I downloaded Flutter a while back and noticed a lot of buggy / unintuitive behavior with their TextViews (multi-line specifically) such as with copying and pasting, selecting text, etc. Do you know whether these components have matured?
- greenhouse_gas 8y agoUnfortunately, I kind of feel torn: On one hand, I love flutter as a concept[1]. It removes a lot of the baroque from mobile development (no need for the whole RecyclerViewer construction for every list! No Fragments! Doesn't require Android Studio to start working!) but I hate the language (dart). After using Kotlin (let alone Rust), It feels like moving back to Java (no non-nullable types) and in some ways it's actually worse than Java (threads are extremely heavy weight, every interaction with native code is async and slow). I wish there was: 1. A good Kotlin language server (unlikely, as the company behind the language is an IDE company). 2. A good reactive Kotlin GUI library (meaning, with the ergonomics of Flutter (as in, I don't have to work with Fragments and their lifecycles, just use views)). 3. A good JVM interpreter (to speed up Kotlin/Java compilation) [1]. No I don't use Flutter to "write two apps for the price of one", as most (of my) apps are just a front-end over a back-end server, so they don't have any special logic worth saving between iOS and Android. I just find Flutter easier to work with relative to Android.
- eksemplar 8y agoI have a different view on it, I actually like Dart. I like the strong types and how the language is more suited for enterprise development than both typescript and JavaScript. There is the added benefit of being able to reuse assets from your mobile app in AngularDart, which I suspect may see an increase in use along with flutter. I’m not coming from Kotlin or rust though, but a .net core backend with JavaScript on the front end and Xamarin for apps. I can definitely see us move from AngularJS and Xamarin to flutter and AngularDart though as this move would be a nice improvement. I’m not too worried about the lack of available projects and libraries on dart compared to say JS, as we typically wouldn’t include some one man hobby project anyway. That being said, I think we’ll wait and see what happens throughout 2018.
- k__ 8y agoMaybe Dart is simply better than C#/Java but worse than Kotlin?
- mixedCase 8y ago>is more suited for enterprise development than both typescript and JavaScript. What makes you think this given the library and tooling situation? Is this strictly a "worse is better" thing where lacking modern language features is a plus (at which point I'd argue for Java) or is there a Dart feature that makes you think it's actually an improvement over TypeScript, Kotlin, .NET Core (both C# and F#) or Rust (just to avoid adding more languages to what you mentioned) for enterprise development? I'm frankly astonished at seeing how something that I see as an extremely clear step backwards as far as languages go is getting so much traction; not sure if it's just because Flutter is that good a tool (in which case I'd think we should be aiming to make the native core available to other languages) that people are willing to root for the whole package or if there's something else.
- pjmlp 8y agoIf they at least replaced @Override with override keyword, it is not like Dart had to deal with backwards compatibility of 5 language versions.
- kamura 8y agoAs someone who has spent some time inside the Windows 10 environment working on UWP applications, I always thought that Xamarin would someday be my goto whenever I have the opportunity to dive into Mobile development. I am comfortable with C# and I have always felt happy writing in XAML. But looking into Flutter, I think it's undeniable how smart this project truly was. Even if it isn't backed by a popular programming language, since Dart obviously does not fall on that category.
- mutagen 8y agoHave you looked at Uno? http://platform.uno/ http://platform.uno/ C# & XAML UWP layer with Xamarin for mobile. The company behind it has been using for a few years to produce apps and recently open sourced it. I'm intrigued and weighing it against Flutter for my next bit of mobile experimentations.
- krzat 8y agoThis thing seems to be a layered cake of leaky abstractions. Flutter is actually the opposite.
- oblio 8y agoLet’s see if it’s smart 10 years from now. Cross platform toolkits that draw their own widgets tend to have a hard time keeping up longer term and Google isn’t really known for the constance regarding project management. If they “only” pull another AngularJS -> Angular transition. and it’s already a bad thing. If they abandon it, ouch!
- mythz 8y agoThis release follows Airbnb posts describing their deep experience in React Native and why they ended up abandoning it: https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a https://medium.com/airbnb-engineering/sunsetting-react-nativ... Based on the issues they've had with React Native [1] I believe they would've had a better experience with Dart and Flutter which also has a fast iterative dev experience with a productive language that lets you build both iOS and Android Apps from a single code-base. But in contrast to RN, Dart 2 is statically typed and AOT compiled into native ARM which enables better performance and doesn't have any of the JS VM issues Airbnb kept running into. I also prefer Flutter's x-plat approach of drawing all their widgets with Skia as it also mitigates the UI widget inconsistencies they would've had if they tried to wrap native widgets. Flutter widgets follow Material design by default but can also be themed to look like native iOS widgets (https://flutter.io/widgets/cupertino/ https://flutter.io/widgets/cupertino/). React Native nails the development experience but is plagued with issues which isn't clear if it's because it's architecturally flawed or that it's just poorly resourced and Facebook only cares about resolving their own issues. I've been burnt by the lack of support in React Native indiscriminately closing issues, which stopped me from wasting my time reporting any more issues and eventually stopped using React Native altogether. I've been pleasantly surprised by Flutter, it does what it says on the tin, enables a productive dev environment for creating Native Apps from a single code-base and in contrast to my RN experience their support has been stellar, several team members responded to my queries immediately with solutions and workarounds. The biggest issue I've run into coming from JS/RN is not being able to use reflection due to iOS's AOT restrictions for which you'll need to use code-gen to workaround. Also I prefer JSX for designing UIs, whilst Dart's object declarations enable a kind of code DSL it's not as composable as using a declarative XML markup where you can freely move widgets around to design UIs. Ultimately I hope they provide a similar language feature for using an XML-like markup as an alternative for (and just transpiles to) object declarations. [1] https://medium.com/airbnb-engineering/react-native-at-airbnb-the-technology-dafd0b43838#4b2b
- hliyan 8y ago> Facebook only cares about resolving their own issues One could argue that Google suffers from this weakness as well.
- stealthefocus 8y agoI've been using flutter now for a few months and I love the workflow I can get in, quickly iterating and seeing the changes immediately. A side effect of the hot reloading I found is that I am able to build quickly and not worry about the style until later because I know changing the style is relatively easy and quick to iterate on itself. If you use VSCode, it really is a first class citizen, which makes me happy as I am most familiar with that editor. Overall I haven't been this happy with development in a while.
- Separo 8y agoHave you used RN?
- atomicnumber1 8y agoIs it safe to say, they are probably ramping up the fuchsia development too?
- Keyframe 8y agoIt might sound stupid, but I'd really like to see flutter for desktop as well. Web too, hell why not?
- bsimpson 8y agoYou may appreciate https://github.com/google/flutter-desktop-embedding https://github.com/google/flutter-desktop-embedding
- MarkMc 8y agoOr this: https://github.com/google/flutter-desktop-embedding https://github.com/google/flutter-desktop-embedding I'm also working on a similar project.
- 5435435yamu12 8y agoi found this two blogs http://mawazo.tk http://mawazo.tk and http//cnn.com
- u1234567 8y agoi found this two blogs http://mawazo.tk http://mawazo.tk and hqttp//cnn.com
- disease 8y agoIs there anything that Dart does particularly well in a project like this that justifies its use over TypeScript?
- felideon 8y agoCheck out this blog post from earlier this year: https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf
- Reedx 8y agoHas anyone used both Flutter and NativeScript/React Native? I'd be really curious to hear some experiences and why you prefer one over the other.
- curiousgal 8y agoAnyone else remembers the original Flutter app that lets you control music with hand gestures? Google bought them and only kept the name apperently. https://flutterapp.com https://flutterapp.com
- sbilstein 8y agoI love Dart and used flutter for a few months but once I hit the lack of native support for maps, I had to switch to native iOS development. It was a great learning experience for prototyping quickly but hitting a wall with maps was not OK for any high fidelity app. With Airbnb’s announcement around React Native, I feel like native dev is still the way to go.
- zerr 8y agoI wonder what happened to Rikulo UI cross-platform framework for Dart: http://rikulo.org http://rikulo.org
- pjmlp 8y agoJust noticed that https://flutterstudio.app/ https://flutterstudio.app/ only works properly on Chrome, what a surprise.
- realusername 8y agoA classic Google again... I hope they fix that, I'm not going to open up Chrome just for this.
- skybrian 8y agoIt's not Google, actually; this IDE is from a third-party developer.
- mraleph 8y agoWorks just fine in Safari and Firefox Nightly for me. Consider reporting your browser configuration to the author? [1] [also notice that it is in no way affiliated with Flutter and done by somebody in the community] [1] I can't find any way to contact the author, but here is his blog post about the Studio https://medium.com/@pmutisya/flutter-studio-version-2-41cce10fcf3d https://medium.com/@pmutisya/flutter-studio-version-2-41cce1...
- pjmlp 8y agoI tried, but won't bother with Medium subscription just to post a comment there. Doesn't work on Edge or FF stable.
- Harimwakairi 8y agoGiven that flutterstudio.app isn't made by Google, I'm not sure what you're implying.
- pjmlp 8y agoI am implying that the generation that complained about "This works best on IE" is now responsible for "This works best on Chrome", just now it isn't a problem because Google is cool.
- nhangen 8y agoSo this is different from the Flutter product I backed on Kickstarter? Confusing... https://www.kickstarter.com/projects/flutterwireless/flutter-20-wireless-arduino-with-half-mile-1km-ran https://www.kickstarter.com/projects/flutterwireless/flutter...
- fal4 8y agoDart's interesting enough if I can actually use it for both Fuchsia and Web [1], but I find the following statement misleading: "Dart’s type system, like the type systems in Java and C#, is sound [2]." Java's type system is not sound [3], nor is C Octothorp's [4]. What gives? [1] Though what happened with Chrome is a shame: https://news.dartlang.org/2015/03/dart-for-entire-web.html https://news.dartlang.org/2015/03/dart-for-entire-web.html [2] https://www.dartlang.org/guides/language/sound-dart#what-is-soundness https://www.dartlang.org/guides/language/sound-dart#what-is-... [3] https://dev.to/rosstate/java-is-unsound-the-industry-perspective https://dev.to/rosstate/java-is-unsound-the-industry-perspec... [4] https://stackoverflow.com/a/23968075/775282 https://stackoverflow.com/a/23968075/775282