28 2026
Maapu Kan naa, Ona Meta: SVG, Rust ati Flutter

EVnSteven ti dé ibi itunu. Ilẹ-iṣẹ naa duro ṣinṣin ati pe ko nilo itọju pupọ, eyi ni gangan ohun ti a fẹ nigba ti a bẹrẹ: eto kekere kan ti n ṣiṣẹ ni idakẹjẹ. Eyi fi aaye diẹ silẹ fun idanwo, ati pe o ti fun awọn oludasilẹ wa ni akoko lati bẹrẹ diẹ ninu awọn iṣẹ akanṣe miiran, eyiti iwọ yoo rii ni ipari.
Nitorinaa a ṣe idanwo kan. A mu maapu lori oju-iwe ile wa ki a tun kọ ọ lẹmeji: lẹẹkan ni Rust ti a kọ si WebAssembly, ati lẹẹkan ni Flutter. Àpilẹkọ yìí fi gbogbo mẹta sí ojúewé kan àti ṣe àfíwọ́kọ wọn.
1. Ẹya atilẹba: SVG, CSS ati JavaScript kekere kan
Ní èdè tó rọrùn: eyi ni maapu lori oju-iwe ile wa. A kọ ọ ni ọna ti a ṣe kọ oju-iwe wẹẹbu miiran: iyaworan ti a ṣe pẹlu awọn apẹrẹ ti aṣàwákiri rẹ ti mọ bi a ṣe nfi han ati ṣe ere idaraya. Eyi ni irọrun julọ ninu mẹta, ati pe o jẹ eyi ti awọn alejo julọ rii.
Ready Charging Check in Check out
O jẹ iyaworan SVG kan ṣoṣo. Aṣàwákiri naa n ṣiṣẹ pupọ ninu awọn ere idaraya lati CSS, ati akọwe kekere kan n ṣakoso iyokù.
Nínú ànfààní rẹ: kò sí ìgbésẹ́ kọ́, nítorí náà àdàkọ Hugo nikan ni o nilo. O jẹ vekito, nítorí náà o duro ṣinṣin ni iwọn eyikeyi. Gbogbo awọn aaye 44 le de pẹlu bọtini itẹwe, ọkọọkan pẹlu aami fun awọn oluka iboju. Ati awọn ọrọ diẹ rẹ ni a tumọ si gbogbo awọn ede wa.
Ìye owo rẹ ni iwuwo ninu oju-iwe. Aami maapu jẹ nipa 107 KB (nipa 30 KB ti a fi pamọ), ati lẹ́yìn tí ó ti n ṣiṣẹ o ni nipa awọn eroja 670 ati nipa awọn ere idaraya CSS 200. Ọgbọn naa tun nira lati ṣe idanwo: akoko wa ninu awọn fireemu bọtini CSS ati akọwe kan ninu oju-iwe, nítorí náà idanwo nikan ni lati wo o.
2. Rust àti WebAssembly
Ní ọ̀rọ̀ tó rọrùn: Rust jẹ́ èdá èdá ìṣàkóso tó mọ̀ọ́mọ̀ fún jíjẹ́ kíákíá àti fún mímú àwọn aṣìṣe púpọ̀ ní kíákíá kí ìṣàkóso kan tó bẹ̀rẹ̀ sí í ṣiṣẹ́. Níbí a kọ “ọpọlọ” maapu náà ní Rust, a sì pèsè é sínú fọ́ọ̀mù kékeré tó lè ṣiṣẹ́ ní àwọn aṣàwákiri (tó ń jẹ́ WebAssembly), a sì jẹ́ kí ó yá gbogbo maapu náà fúnra rẹ̀, bí olùyá ṣe ń tún àwòrán kan ṣe lẹ́ẹ̀kọ̀ọ̀kan ní ìsẹ́jú ààyá. Sí ẹ̀, ó dàbí pé kò yá.
Gbogbo maapu náà ni Rust tó ti jẹ́ kí a kọ́ ọ́ sí WebAssembly ṣe yá lórí àpótí àwòrán kan ṣoṣo. Kóòdù Rust náà ní gbogbo ìṣàkóso maapu náà, ó sì tún yá gbogbo nǹkan ní gbogbo àkókò kóòdù náà bá ń ṣiṣẹ́.
Apá tí a fẹ́ràn ni pé ìmọ̀ ọgbọ́n náà jẹ́ Rust tó mọ́ọ́mọ̀ pátápátá tí kò ní nǹkan kankan láti inú aṣàwákiri: ìṣirò fún ibi tí nǹkan máa lọ àti nígbà tí wọ́n máa yípadà, àti onítẹ̀tí tó ń kà àwòrán ilẹ̀. Ó ní ìdánwò mẹ́tàlá tó ń ṣiṣẹ́ ní ìsẹ́jú ààyá díẹ̀, tí ìpẹ̀yà àkókò ìṣàkóso bá jẹ́ aṣìṣe, ìdánwò kan máa kuna dípò kí ẹnikẹ́ni rí i pé ó dàbí ẹni pé kò bójú mu. Nípa ìṣirò, ìdá mẹ́ta nínú àwọn ìlà Rust tó tó 1,070 jẹ́ apá àṣẹ tó ní ìdánwò (pẹ̀lú àwọn ìdánwò rẹ̀); àwọn tó kù ń yá sí àpótí àwòrán àti ń ṣakoso àwọn ìṣẹ̀lẹ̀ asin.
Ojú ìwé náà parí ní ìfẹ́fẹ́ púpọ̀: àpótí àwòrán kan ṣoṣo. Ṣùgbọ́n ìgbàgbọ́ ìkópa rẹ̀ tóbi. Àmúlò tó ti kọ́ sílẹ̀ jẹ́ tó 254 KB (tó tó 92 KB ní ìpamọ́) pẹ̀lú tó tó 28 KB JavaScript tó jẹ́ ìdáná tó ọ̀pa ìkọ́lé ń ṣe. A sì ní àwọn owó tí a ń rí nígbà tá a bá ń ṣiṣẹ́ lórí rẹ̀:
- Ẹ̀rọ amúlétutù. Kíkó ń bẹ̀rẹ̀ pẹ̀lú Rust, ibi-afẹ́fẹ́ WebAssembly àti irinṣẹ́ ìlànà-láàrọ̀ọ̀rọ̀ tó ní àtúnṣe tó yẹ kí ó bá ìkànsí ìkànsí ṣe pẹ̀lú. Ìṣàkóso ìkó wa máa ṣe ìdánwò àkọ́kọ́ kí ó sì dáwọ́ dúró bí ẹ̀yà kan bá ṣìṣé.
- Kò sí ìmúlò bọtìnì tàbí olùkà àtọkànwá fún àwọn ìlú kọọkan. Àwòrán àpẹrẹ jẹ́ àwòrán. Àwọn àmì 44 tó lè ní ìfọkànsìn SVG ti parí.
- Èdè Gẹ̀ẹ́sì nìkan. Àwọn àkọlé kọ sínú ètò náà.
- Ìfọ́jú. Ògùṣù ojú ojiji rọrùn lo àlẹmọ ìfọ́jú àpẹrẹ, tí kò ṣeé ṣe ní gbogbo aṣàwákiri. A kò ti ṣe àdánwò Safari, níbi tí ojú ojiji lè nira.
3. Flutter
Ní ọ̀rọ̀ tó rọrùn: Flutter jẹ́ irinṣẹ́ láti Google fún kíkó àwọn àpamọ́ tó ń ṣiṣẹ́ lórí fóònù, kọ̀ǹpútà àti wẹẹbù láti inú kóòdù kan ṣoṣo. Kò lo àwọn ẹ̀rọ ìkó ojú-iwe wẹẹbù fúnra rẹ̀. Ó fa gbogbo ohun tó wà. Níbi, maapu jẹ́ àpamọ́ kékeré tí a fi hàn nínú ojú-iwe yìí, irinṣẹ́ náà tó ń ṣe agbára fún àpẹẹrẹ ìṣírí ẹ̀rọ ìṣàkóso.
Ó ń yà maapu náà pẹ̀lú oníṣàṣà àtọkànwá, ó sì hàn nínú àyàfi ìkànsí. Flutter tún lè kó àwọn àpamọ́ fóònù àti kọ̀ǹpútà tabili láti kóòdù kan náà, èyí tó jẹ́ ìdí pàtàkì rẹ̀: kọ maapu lẹ́ẹ̀kan, ṣe é ní ọ̀pọ̀ ibi.
Ó jẹ́ ìmọ̀ràn tó jọ́ra pẹ̀lú Rust map, tí a ti kọ́ sí Dart, pẹ̀lú ìdánwò mẹ́tàlá. Nípa líní 1,100 pẹ̀lú àwọn ìdánwò. Flutter ń fún ọkọ̀ọ̀kan ìlú ní àpótí bọtìnì tó ní àkọlé fún àwọn olùkà iboju, èyí tí ẹ̀dá canvas kò ní (a kò tíì ṣàyẹ̀wò bí ó ṣe ń ṣiṣẹ́ pẹ̀lú olùkà iboju gidi). Ó tún jẹ́ ìkànsí jùlọ fún ìgbàlà: àpérò náà jẹ́ nípa 1.8 MB (nípa 535 KB tí a ti dín kù). Ẹ̀rọ àwòrán Flutter jẹ́ ìgbàlà míì, ṣùgbọ́n ojúlé náà ti pín ẹ̀dá kan pẹ̀lú àpérò kálíkúlétà, nítorí náà alejo tí ó ti ṣí kálíkúlétà kò ní gba a lẹ́ẹ̀kansi. Ọ̀rọ̀ rẹ̀ wà ní fọ́ńtì ojúlé náà, Merriweather, tí aṣàwákiri ń gba ní àkókò ìṣiṣẹ́.
Ohun tí a rí
| SVG + CSS + JS | Rust + WebAssembly | Flutter | |
|---|---|---|---|
| Gbigbasilẹ fún maapu | nípa 107 KB, nínú ojúlé | nípa 254 KB module + 28 KB glue | nípa 1.8 MB àpérò (ẹ̀rọ àwòrán pín) |
| Àwọn eroja nínú ojúlé | nípa 670, pẹ̀lú nípa 200 CSS ìṣeré | 1 canvas | 1 fireemu |
| Ìdánwò fún ìmọ̀ràn | kò sí | 13, abinibi | 11, abinibi |
| Ìlú tó lè dé pẹ̀lú bọ́ọ̀dù kọ̀ǹpútà | béè ni, gbogbo 44 | rárá | fi hàn sí àwọn olùkà iboju (a kò ṣe ìdánwò) |
| Tún túmọ̀ sí èdè míì | béè ni | rárá, Gẹ̀ẹ́sì nìkan | rárá, Gẹ̀ẹ́sì nìkan |
| Ó máa ń dára ní gbogbo ìtóbi | béè ni (àwòrán vẹ́kítọ̀) | tún ṣe fún píksẹ́lì iboju | tún ṣe fún píksẹ́lì iboju |
| Ohun tí ó nílò láti kọ́ | kò sí | Rust toolchain, ẹ̀dá tó bá mu | Flutter SDK |
Ìkìlọ̀ míì nípa iyára. Nínú ìṣàyẹ̀wò wa, SVG maapu àti Rust maapu méjèèjì ń ṣiṣẹ́ ní ìtẹ̀sí iboju (nípa 120 fireemu ní ìṣẹ́jú kan lórí àpapọ̀ ìdánwò), nítorí náà iye fireemu kò yà wọn sílẹ̀. A kò ṣe ìṣàyẹ̀wò iye fireemu Flutter, a kò sì ṣe ìṣàyẹ̀wò lílo batiri tàbí CPU, nítorí náà a kò lè sọ ẹni tó rọrùn jù lọ lórí fóònù.
Àwọn ohun tó yà wa lẹ́nu
Diẹ ninu awọn alaye rọrun lati ṣe aṣiṣe. Awọn ẹda akọkọ wa fa bọtini ati awọn aago ni ipin ipin ti maapu, nitorina wọn dinku lori awọn iboju kekere ati pe wọn dabi kekere lẹgbẹẹ atilẹba. Atilẹba naa ṣe iwọn wọn ni iwọn fonti ti oju-iwe naa funrararẹ (rem, eyiti o yipada pẹlu iwọn iboju). Awọn ẹda bayi ka iwọn yẹn lati oju-iwe naa. Awọn aago naa yatọ paapaa: awọn ọwọ atilẹba n gbe ni awọn igbesẹ iṣẹju 15, lakoko ti ninu awọn ẹya Rust ati Flutter wọn yipo ni igbagbogbo.
Awọn agbegbe akoko ko kọ sinu. Ko si Rust ti a ṣe akopọ si WebAssembly tabi Dart ti o ni ibi ipamọ data agbegbe akoko ti o mọ “Asia/Dubai”. Mejeeji beere lọwọ aṣawakiri dipo, nipasẹ iṣẹ Intl ti a ṣe sinu rẹ, eyiti o tun gba akoko ifipamọ oorun ni deede.
Gbogbo mẹta pin awọn ifunni wọn. Awọn maapu Rust ati Flutter ka atokọ ilu ati àwòrán ilẹ lati oju-iwe ti wọn wa lori, data kanna ti maapu SVG nlo. Yi ilu pada, ati gbogbo mẹta yipada. Eyi tun tumọ si pe awọn maapu le ṣiṣẹ nikan lori oju-iwe ti o pese wọn.
Flutter wẹẹbu rántí. Flutter wẹẹbu fi kaṣe tirẹ sori ẹrọ, nitorina lẹhin atunṣe a tẹsiwaju lati rii ẹya atijọ titi ti a fi nu u.
Ipari wa
Maapu SVG duro lori oju-iwe ile. Fun iyaworan iwọn yii o jẹ fẹẹrẹ julọ, o wa fun gbogbo eniyan, o ti tumọ, ati pe ko nilo ohunkohun lati kọ. Rust jẹ oludije ti o nifẹ diẹ sii: ti a ba nilo nigbakugba fun ọgbọn maapu lati jẹri pe o tọ, tabi nilo lati ṣe iṣiro iwuwo ni aṣawakiri, ipilẹ Rust ti a ti danwo jẹ ọna ti o dara lati ṣe e. Flutter ni oye ti maapu ba nilo lati gbe ninu ohun elo Flutter kan nigbakugba.
Idanwo kan ko nilo lati yi ọja pada lati tọsi ṣiṣe. A pari pẹlu aworan ti o mọ diẹ sii ti ohun ti ọna kọọkan na, apejuwe ti a ti danwo ti bi maapu ṣe n ṣiṣẹ, ati oju-iwe kan nibiti o ti le rii gbogbo mẹta fun ara rẹ.
Ohun ti awọn oludasilẹ wa n kọ ni atẹle
Pẹpẹ iduroṣinṣin n fi akoko silẹ fun awọn imọran miiran. Yato si EVnSteven, awọn oludasilẹ wa n ṣiṣẹ lori awọn wọnyi:
Ajo alaanu, orisun ṣiṣi
StrayCats (opens in a new tab)
Ise agbese lati ọdọ David lati ran awọn eniyan ti o n tọju awọn ologbo ita, awọn ologbo alaimọ, tabi eyikeyi ologbo, paapaa ti ologbo naa ba jẹ aja. O ṣi wa ni ipele imọran, ko si ohun elo sibẹsibẹ, ati David yoo fẹ awọn imọran ati esi rẹ. Ti a yàn si Saibo, 2010–2026.
Itọpa owo, ọfẹ, n bọ laipẹ
Effectivo (opens in a new tab)
Iṣiro ti ko pe pẹlu iyipada, fun awọn ti o n lo owo. Forukọsilẹ rira ni awọn tẹ diẹ, ka ohun ti o wa ninu apamọwọ rẹ, ki o si wo ohun ti o tọsi. Iyipada ni pe gbogbo eniyan ti o tẹsiwaju lati lo owo n ṣe iranlọwọ lati jẹ ki o wa fun gbogbo eniyan miiran. Ọfẹ ati laisi ipolowo, n bọ si Android ati iPhone, pẹlu beta ati demo oju opo wẹẹbu ti n ṣiṣẹ bayi.Ilé rẹ ti ṣetan fun gbigba agbara EV.
Ṣaja EVs ní àwọn ẹnu-ọna tí o ti ní. Awọn awakọ sanwo fún àkókò tí wọ́n lo.
Gba EVnStevenForukọsilẹ si EVnSteven Notes
A n lo imeeli rẹ nikan lati fi awọn akọsilẹ wọnyi ranṣẹ. Yọ kuro ninu eyikeyi imeeli. Ilana ìpamọ́ ìkọ̀kọ
