Beste svaret
Sizzle er jQuerys selector engine.
Det lar deg unngå å bruke nettlesere «native DOM-grensesnitt for å få en referanse til et DOM-element (er), for eksempel:
var tableCell = document.getElementById (» getElementsByClassName («bar»). getElementByTagName («td»);
og bruk i stedet den (vanligvis) mer kjente og konsise CSS-syntaksen:
var tableCell = Sizzle («#foo .bar td»);
Det er faktisk et ganske trivielt eksempel. Sizzle støtter også avanserte CSS3-velgere, samt spesielle tilpassede velgere som gjør det enkelt å bruke CSS-lignende syntaks til isoler DOM-elementer som skal opereres.
Sistnevnte eksempel skaper en referanse til et «pakket sett» – et array-lignende objekt som inneholder metoder som lar deg få tilgang til og operere på DOM-noder du har isolert. I tilfelle av Sizzle har API ganske begrenset bruk (og derfor er Sizzle ikke et spesielt kjent bibliotek i seg selv), men det er faktisk * kjernefunksjonen i jQuery. Ved å bruke jQuery, kan enkelt skjule alle tabeller med CSS-klassen «foo» på siden slik:
$ («table.foo»). skjul ();
Det kan » blir ikke enklere enn det. Sizzle og jQuery er kompatible i flere nettlesere, noe som betyr at de har en konsistent API i alle moderne nettlesere. Som Jamie Mason nevnte, er document.querySelector () og document.querySelectorAll () nå tilgjengelig i moderne nettlesere, noe som reduserer Sizzles nytte, men langt fra helt. Sizzle har eksistert i over 6 år, lenge før nettlesere hadde standardisert. spørrevalgsmetoder.
Svar
Wasm – ikke bare Blazor – vil være den neste store tingen, ja. Javascript-biblioteker vil fortsatt være rundt, og etter min mening vil de sakte konverteres over til Wasm. Imidlertid er det noen store kodebasesystemer som ikke nødvendigvis gjør konverteringen med en gang. Fordi Wasm og JS kan samarbeide, vil det sannsynligvis være en langsom overgang for de større systemene.
Når det er sagt, vil enhver ny webutvikling på klientsiden mest sannsynlig bli gjort i Wasm ved å bruke teknologien til selskapets valg. Wasm er ikke spesifikk for Blazor. Blazor er bare Microsofts implementering av Wasm ved å bruke C # /. Net. Jeg er sikker på at Go , Rust, C / C ++, C #, Java / Kotlin og mange andre språk vil ha sitt n implementeringer på toppen av Wasm som utviklere kan bruke.
Hva betyr dette? Det betyr absolutt ikke at bare Microsoft vil lede Wasm-revolusjonen. Men det betyr at det nå vil være en Full Stack utviklingsplattform for alle språk. Litt av hvorfor NodeJS ble så populær for noen år tilbake. Problemet med det var å designe et system på det mindre enn ønskelige Javascript-språket. Imidlertid kan bedrifter nå ikke bare standardisere på valgplattformen deres, men de vil ha tilgang til massevis av utviklere med ekspertkunnskap i sin valgmulighet. Så – Java-butikker vil forbli Java-butikker, .Net-butikker. Net-butikker, Go-butikker vil forbli…. etc, etc …
Når det er sagt – Javascript vil se en langsom nedgang i popularitet. Men – hvem skal si at en Javascript -> Wasm-kompilator ikke vil bli utviklet? Jeg ser ikke dette som populært med tanke på at mange programmerere ikke liker språket, men det er mulig.
Blazor.Net er et flott verktøy. sett og vil være en STOR del av verktøykjeden for .Net butikker. Hovedproblemet med C # /. Nettspråk er at det er kjøretid. Samme for Java og Kotlin. Men – for .Net spesifikt – .Net CoreRT ( dotnet / corert ) vil prøve å oppnå AOT for å lage innfødte binære filer. Hvis det lykkes, vil det ikke være behov for å pakke en .Net-kjøretid (for øyeblikket Mono) som et Wasm-bibliotek ved siden av applikasjonen.
Så kort fortalt, Javascript vil dø langsomt. Blazor er en fantastisk fremtidig teknologi og har potensial til å gjøre noen virkelig gode ting, og vil definitivt gi oppmerksomhet fra utviklere med alle bakgrunner. C # er utvilsomt et av de mest elegante språkene der ute. .Net-kjerne er en av de mest performante stakkene på markedet. Med .Net Core + C # + Blazor – hvordan kan en utvikler / dev-butikk gå galt !?
Husk også at DOM-tilgang er relevant for Wasms suksess. Uten det vil det forferdelige Javascript-tyranniet forbli.