- A hozzászóláshoz be kell jelentkezni
- 978 megtekintés
Hozzászólások
Mint webes fejlesztő mondom: nem tartom jó ötletnek.
Ha nem válaszolnék kommentben, hát küldj privátot!
- A hozzászóláshoz be kell jelentkezni
De hogyan jön ide a webes fejlesztés kérdése?
A cikkhez: "egy Flutter alkalmazás mindig lassabb lesz a natívnál" – én úgy tudom, hogy a Flutter az natív alkalmazás:
"Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase." ( https://flutter.dev/ )
- A hozzászóláshoz be kell jelentkezni
"Dart’s compiler technology lets you run code in different ways:
Native platform: For apps targeting mobile and desktop devices, Dart includes both a Dart VM with just-in-time (JIT) compilation and an ahead-of-time (AOT) compiler for producing machine code.
Web platform: For apps targeting the web, Dart includes both a development time compiler (dartdevc) and a production time compiler (dart2js). Both compilers translate Dart into JavaScript."
Tehát van valami köze a webes fejlesztéshez.
Nem tudom, hogy az eredeti cikk írója mit ért a natív alatt. A Flutter architektúrájában legfelül van a Dart-tal meghajtott Framework, alatta a C/C++ Engine, majd legalul a platformfüggő Embedder, amiben helyet foglal egy "Nativ Plugins" nevű elem is.
- A hozzászóláshoz be kell jelentkezni
Igazándiból valahol a Canonicalt megértem. Mióta visszaváltottak Gnome-ra, a GTK fejlesztői kb mindent megtettek annak érdekében, hogy az Ubuntu ne tudjon egy több verzión átívelő kiszámítható kinézetet nyújtani saját alternatív megoldások nélkül. Emiatt valószínűleg nem csökkent a feladataik száma ahhoz képest, amikor még a Unity-t fejlesztették. Ha én lennék vezetői szerepben, valószínűleg hasonlóképp keresném a Google vagy Microsoft segítségét. Ha ez nem egy egyoldalú kapcsolat lesz, akkor a Canonical visszajelzései alapján a Flutter desktop élmény is fejlődhet, ami a ChromeOS miatt a Google számára sem elhanyagolható előny.
Emellett arról sem vagyok meggyőződve, hogy a Flutter annyira múló hóbort lenne a Google életében, hiszen a Sony is a saját embedded cuccainál már a Flutter/Wayland páros mellett döntött.
- A hozzászóláshoz be kell jelentkezni
Ha mégis dobná a Google a Fluttert akkor sincs semmi. Majd megint vált egy nagyot a Canonical. Lehetne dobni a teljes Gnomeot és váltani mondjuk KDE-re, az már úgyis régen volt :-)
- A hozzászóláshoz be kell jelentkezni
>> hasonlóképp keresném a Google vagy Microsoft segítségét.
A WSL már bejött nekik.
- A hozzászóláshoz be kell jelentkezni
Szerintem ennek kb. 0 köze van a Gnome vs Unity témakörhöz. Ez kizárólag a saját készítésű, snapként csomagolt alkalmazásaikat fogja érinteni. A DE maga ettől még maradna a Gnome.
>a GTK fejlesztői kb mindent megtettek annak érdekében, hogy az Ubuntu ne tudjon egy több verzión átívelő kiszámítható kinézetet nyújtani saját alternatív megoldások nélkül
Saját alternatív megoldások nélkül amúgy se ment volna a saját kinézet. ;)
Ettől függetlenül persze igazad van, az egy nagy rákfenéje annak a projektnek, hogy rendszeresen széttúrják, az addig működő beépülőket szépen agyonvágva, mert lényegében nincs stable APIjuk. Ezt ők maguk is bevallották már.
Megnéztem volna a Canonicalnál a shellért felelős főfejlesztő arcát, amikor először olvasta a hírt, hogy az újonnan érkező Gnomeban az egész UI logikát széttúrják, a workspace kezelést vertikálisból horizontálissá átalakítva. Pár k. anyátok azért kirepülhetett a szájából, mielőtt eldöntötték volna, hogy oké, ezt a verziót most inkább skippeljük. :D
- A hozzászóláshoz be kell jelentkezni
az újonnan érkező Gnomeban az egész UI logikát széttúrják
Ha használható asztali környezetet akarnának csinálni, akkor felismernék, hogy a legelterjedtebb Desktop GUIkban (Windows, MacOS) mennyire állandó paradigmák vannak. Ha pl Windowsban duplaklikkelsz az ablak bal felső sarkába, akkor az Alt-F4-nek, azaz ablak bezárásának felel meg, Windows 3.11-ben is, Windows 10-ben is, még akkor is, ha már rég nincs ott a [-] gomb. Vagy OSX-ben az állandóan futó programok ikonjai a jobb felső sarokban vannak, a menü pedig a képernyő tetején. Jönnek be új dolgok, de azok nagyon ritkán változtatnak meg létező workflowkat. Ha mégis, és közfelháborodás van, akkor pedig hajlandóak visszacsinálni azt, ami működött (Start menü visszaállítása Windows 10-ben).
A mobilszcéna kicsit változékonyabb, mert új terület, de ott is kialakulnak állandó dolgok, Androidban és iOS-ben is.
MacOS-t régóta nem használtam, ennek ellenére eligazodom rajta, ha úgy adódik, egy új Gnome-nál kísérleteznem kell, és a legegyszerűbb műveleteket is alig tudom felfedezni, holott régen sokat használtam, csak ugye az az "izommemória" 2 főverzió után mehet a kukába.
- A hozzászóláshoz be kell jelentkezni
Ebben teljesen egyet is értek, az Ubuntunak ez kell, a MS segítsége, mint egy falat kenyér. Abban biztos vagyok, hogy a MS pedig megadná, még csak 1-2 lépés, egy kis Snap, egy kis Flutter, még 1-2 kiadás, és ugyanolyan szétbloatosított szeméthalom lesz, mint a Win10, annál semmivel nem fog jobban futni. Már eddig is a linuxos világ Windowsa volt az Ubuntu, de egyre rosszabb, ahogy lapátolják bele a corporate szemetet. Én már nem is szoktam senkinek ajánlani a sima gnome-os Ubuntut, inkább Mint, PopOS, Elementary, vagy valami másik Ubuntu flavor, ha annyira felhasználóbarát disztró kell, ha nem, akkor Arch, Arco, Manjaro, MX, stb..
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
egyrészt, egy Flutter alkalmazás mindig lassabb lesz a natívnál
A desktop alkalmazások 99.9%-ánál tökmindegy hogy mennyire gyors. Az assemblyben írt számológép sem gyorsabb mint a pythonban készült.
másrészt a kinézete sem fog illeszkedni a telepített grafikus környezetbe
Ahogy a KDE-s appok sem igazán illeszkednek rendesen a Gnome-os felületbe és fordítva, a javás swing pedig kilóg mindenhonnan.
Azt is megemlíti, hogy a Google hagyott már fel projektekkel
A KDE és a Gnome pedig kb. minden major verzióváltásnál újraíródik. És általában nem lesz jobb: szerintem a KDE kb. a 3.x magasságában volt a csúcsont, a Gnome pedig a 2.x környékén.
- A hozzászóláshoz be kell jelentkezni
A desktop alkalmazások 99.9%-ánál tökmindegy hogy mennyire gyors.
Attól függ mire használod és mit értesz "gyors" alatt.
Egy produktivitási eszköz pl 3d tervező alkalmazásban ha a menü elemek lenyitogatására vagy az eszközök közötti váltás nem történik azonnal akkor a felhasználó rövid időn belül idegbajos lesz :) mivel millió és egyszer végzi el a műveletet.
De mondhatnám egy terminal emulator szövegkiírási sebességét is :)
- A hozzászóláshoz be kell jelentkezni
Flutterben az animációk és a grafikai rész pont gyors lesz. Ezt mindig kiemelik, hogy 60fps.
- A hozzászóláshoz be kell jelentkezni
Vegyes érzelmeim vannak ezzel kapcsolatban. Flutteres alkalmazást még nem láttam desktopon, gyakorlati tapasztalataim nincsenek, de azért alapvetően mobilra kitalált cucc. Az ilyenek pedig nem szoktak nagyon működni átvíve őket nagy monitorra. Ez még almáéknál sem sikerült hézagmentesen, de jó intő példa a Win8-as csempés-metrós ökoszisztéma buktája is.
Emellett a történet technikai oldalában sem érzem annyira a csít, elbaltázott döntésnek érzem a Dart használatát. Ha már úgyis valami scriptnyelvet használnak, lehetett volna Typescript, amit fejlesztők tömegei használnak, sőt, szeretnek. Én egy olyan múló trendnek érzem a Fluttert, mint a React Native. Pár év és jön a hasonló új, csillogó taknyológia, amire lovagol át majd megint mindenki, hiszen a CV-ben az mutat jól, ha új dolgokban is naprakész az ember.
- A hozzászóláshoz be kell jelentkezni
Rögtön a szívembe zárnám a Fluttert, ha lenne hozzá Python binding:-) Ha a Dart helyett a Pythont választották volna, akkor potenciálisan megtöbbszöröződött volna a fejlesztők száma.
- A hozzászóláshoz be kell jelentkezni
Egy ideje Dartban fejlesztek, előtte használtam Pythont. Ha most hozzá kell nyúlnom egy Python kódhoz, patakokban folynak a könnyeim. A Python szánalmas a Darthoz képest. Nagyon örülök, hogy a Flutter alatt Dart van, így most egyszer csak kaptam egy király eszközt a "mindenre is" fejlesztéshez. Eddig csak szerveren használtam Dartot, de mióta a Linux binding elég stabil, már csináltam egy-két hasznos GUI-s cuccot is.
- A hozzászóláshoz be kell jelentkezni
Részvétem. Nálam ez más nyelvek esetében fordítva van.
- A hozzászóláshoz be kell jelentkezni
Ez még almáéknál sem sikerült hézagmentesen...
Arra a Catalystra és SwiftUI-ra gondolsz, ami ~2 éve lett bejelentve a WWDC2019-en és kb. másfél éve használható, és (bevallottan) az első iteráció egy hosszútávú konvergenciában?
SwiftUI -> https://developer.apple.com/videos/play/wwdc2019/204/
iPad Apps for Mac is an easy way to bring your iPad app to the Mac while maintaining your single code-base. Learn about common Mac features that are automatically implemented for you. Find out how to work with iOS-only frameworks and what using them could mean for your app. Hear about some common usage patterns including how to use third-party frameworks and some setup tips and tricks. Get a taste for how you can make your new Mac app feel like a Mac app by incorporating platform-specific features.
iPad apps for Mac (Catalyst) -> https://developer.apple.com/videos/play/wwdc2019/205/
macOS Catalina provides an easy way to bring your iPad app to the Mac while maintaining your single code-base. Hear about ways in which you can take your app beyond the default behaviors to optimize its interface for the Mac. Get an overview of APIs you can use and macOS design guidelines that need to be considered. Learn how the iPad app lifecycle comes across on the Mac, and get distribution details for your application.
Taking iPad Apps for Mac to the Next Level -> https://developer.apple.com/videos/play/wwdc2019/235/
Discover how you can create a great Mac experience with your iPad app. Learn about essential techniques for adapting your iPad app's layout and architecture for Mac, considerations for type and color, and how you can take advantage of macOS interfaces such as the menu bar, sidebar and window toolbar.
Designing iPad Apps for Mac -> https://developer.apple.com/videos/play/wwdc2019/809/
Egy évre rá bejelentették az Apple Silicont, ami már natívan is tud futtatni iOS és iPadOS appokat. Egyelőre különbözik a Catalyst-tól olyan értelemben, hogy az M1 Mac-en futtatott iOS/iPadOS appok ablakai nem szabadon méretezhetőek (viszont ha az app támogatja, akkor elfordíthatóak), míg a Catalyst egyelőre a hivatalos út ahhoz, hogy UIKittel desktop appot készíts.
Ezek, ugyanúgy, ahogy az Apple Silicon és az M1 processzor, egy több éves folyamat első lépcsőfoka. A Catalyst azért lett megjelentetve 1 évvel korábban, még az Intel processzoros Mac-ek idejében, hogy a fejlesztők szokják a gondolatot, illetve kezdjék el felkészíteni az iPad appjukat desktop felhasználásra.
A konvergencia nem ért véget, épp csak elkezdődött. Ennek a háttérmunkájáról és a különböző frameworkok egységesítéséről az iPad apps for Mac előadásban, 2:19-től lehet hallani.
A hosszútávú cél az, hogy egy kódbázisból, SwiftUI + UIKit + AppKit használatával a platformnak megfelelő UI-jal és UX-szel rendelkező programot lehessen készíteni a fejlesztők részéről minimális efforttal.
- A hozzászóláshoz be kell jelentkezni
Az elmúlt 2,5 hónap alatt sikerült átkonvertálnom egy Android alkalmazás kb 99 ezer sorát Flutter+Dart-ra Windows-os platform miatt, 0 tudással indulva. Ez nem olyan rossz, tapasztalatom szerint nagyon gyorsan letet vele haladni. Pár napos munkával Linux-on is futna. Alapvetően jó választásnak tartom a Fluttert, főleg Java-s fejlesztőknek. A Dart lényegében, 80%-ban Java, kis Javascripttel. Extension-okkal meg 90%-os Java-t lehet belőle faragni. A Dart-ot egészíti ki a Flutter grafikus felület. A videóit átnézve túl sokat tud. Ha fele lenne is túl szép, hogy igaz legyen, de igaz, de azért közben pár nyűggel és problémával sikerült találkoznom, de így is nagyon ígéretes. Szóval összefoglalásképpen jónak tartom a Canonical döntését, főleg, hogy ezt így kommunikálja, reklámozza is. Ezzel alapvetően a Linux, mint felhasználói platform is fel fog emelkedni. Én is kitűztem célul, hogy Linux alatt is elérhetővé teszem programjaimat, és ezt a Flutter miatt. Sok más fejlesztő is hasonlóképpen fog dönteni. (Egy hiba Windows-on, hogy az exe túl nagy, 30 MB helyett 150 MB, de lehet, hogy ezen még lehet csiszolni)
- A hozzászóláshoz be kell jelentkezni
Én is használok Fluttert, hobbiszinten. Összességében nekem is pozitívak a tapasztalataim, Androidra már jelenleg is a legjobb választás. Ha nem használsz dev meg beta verziókat, mint én tettem, akkor visszafelé inkompatibilis változásoktól sem kell tartanod. A teljesítménye is kifejezetten jó. A Dart eddig kb a legkényelmesebb, leglogikusabb nyelv, amivel találkoztam, ugyanaz elmondható a frameworkről is.
Ugyanakkor az is látszik rajta, hogy van még hova fejlődnie. A flutter SDK előszeretettel rontja el a cachet-t, ami miatt az első hibakeresési lépés a flutter clean. Néha gyakorlatilag a csillagok állásától függ, hogy buildel-e vagy sem az alkalmazás. Ráadásul egy flutteres alkalmazás buldelése kifejezetten erőforrás-igényes, 4-5 GB-t simán felemészt, és üres cacheval 15-30 perc is lehet, géptől függően - bár ebben erősen benne van az Android SDK pazarlása is.
Asztalra el tudom képzelni, hogy jó lesz, de azért vannak kétségeim. Jelenleg az engine is szeret makrancoskodni, és gyakran hiányoznak alapvető csomagok, mert eléggé mobil-orientált a rendszer.
Összességében örülnék, ha elterjedne, mert az Electronnál már most is jobb, de jelen állapotában ezt túlzásnak érzem kicsit.
Psszt, elárulom az IP-címemet: 192.168.0.14
- A hozzászóláshoz be kell jelentkezni
IDE Android Studio nálad?
- A hozzászóláshoz be kell jelentkezni
Eleinte az volt, most VS Code. Kicsit kísérletezgettem a Vimmel is, de nem győzött meg.
Psszt, elárulom az IP-címemet: 192.168.0.14
- A hozzászóláshoz be kell jelentkezni
A vim nekem sem jött be, pedig linux kernel fejlesztéséhez ma is főként azt használják. Más generáció. :-)
- A hozzászóláshoz be kell jelentkezni