Gå till innehåll
Just nu i M3-nätverket

Synpunkter på moln -- vad tror ni om framtiden?


set_lo

Rekommendera Poster

"Webben skall funka som tillämpningarna på skrivbordet"

 

 

 

 

Skall inte repetera hela historien om hur utvecklingen varit på webben sedan den började, eftersom det spelar mindre roll för argumentationen. Jag vill dock bara notera att det vacklat mellan att köra viss skript i klienten och viss skript på servern, historiskt sett. Just nu är det mycket aktuellt att köra det mesta på klienten. Argumentet är att få webben att bete sig mer som en "native" tillämpning.

 

 

 

 

 

 

 

Lite historia ändå

 

 

 

 

Det har ju länge varit på väg åt det hållet. Tunga ramverk i C++ som t.ex. det som finns i både Windows eller Cocoa i Objective-C i Mac OS X är definitivt inte lämpade för webb. Men fortfarande är kanske idéerna det. Åtminstone menar man på Apple att det är önskvärt att webb-applikationer ser ut som om de var installationer man hade gjort på sin egen dator. Microsoft har också noterat att detta borde vara önskvärt. Deras Outlook Live (som jag tror den heter idag) byggde tidigt på just det som idag används så flitigt "Ajax". Microsoft uppfann faktiskt den som idag uppfattas riktigt smarta kopplingen (lite bortglömd ett tag dock).

 

 

 

 

 

 

 

SproutCore

 

 

 

 

Apple med sitt initiativ SproutCore visar idén att "utvecklarna" skall ta över skrivandet av tillämpningar och kompilera över dessa till en bunt som statiskt kan ligga på servern. En koppling görs sedan mot en molnservice, ett REST-gränssnitt till en databas. Det är klart att både fler ramverk som t.ex. grafiska interaktiva diagram eller andra bakgrundskörningar än databaser behövs. Dessa kan dock stoppas in utan problem tillsammans med själva den kompilerade applikationen.

 

 

 

 

 

 

 

Bytekod?

 

 

 

 

Jag kan tänka mig en vidare utveckling av detta som kan tyckas tämligen naturligt, nämligen att istället för JavaScript som källkod föra över en bytekod (semikompilerad kod). Detta skulle snabba upp körningen och även minska den mängd data som förs över; säkerheten får man tänka över naturligtvis. Men då har vi lämnat HTML och enkelheten i uppbyggnaden av dokument. Webben blir inte längre dokument man bläddrar mellan. Den blir snarare precis som med program i datorn, webb-tillämpningar.

 

 

 

 

 

 

 

Hybrider

 

 

 

 

Idag har vi ur "moln"-synvinkeln ett slags hybrider. Fortfarande så bygger vi ju ofta webb-sidor i viss mån för hand. Vi sätter in HTML, CSS, och ibland skript. På senare tid har ramverken för JavaScript ökat med ExtJS, jQuery, Mootools, etc. Det krävs dock en del jobb för att få till snygga skript som kopplar t.ex. jQuery med ett formulär. Sedan lägger vi mycket också på servern. Ibland kör vi större program som t.ex. WordPress, färdiga saker. Men vi kör allt ifrån enklare sidräknare till stora och komplexa applikationsservrar på servrar. Svårt att underhålla, svårt att se överskådligt var saker och ting hände när det blir komplext både på servern och på klienten. Ett ställe vi bara kompilerade tillämpningarna vore onekligen enklare att få översikten. Apple förslag är att lägga det på klienten. I princip nästan helt och hållet.

 

 

 

 

 

 

 

Men varför har vi hamnat här?

 

 

 

 

Jo, det hänger samman med att givetvis man väntar sig mer av vad webben skall utföra. Idag är det inte bara att en hemsida för bildmanipulering skickar små kommandon och servern svarar med att göra om någon bild. Idag skall man interaktivt kunna se vad effekterna blir direkt. Man skall kunna göra detta oavsett om man råkar ha en uppkoppling eller ej. Detta är bl.a. poängen bakom HTML5. Men för att utföra det kommer komplexiteten som brev på posten. Om man inte kan ha uppkoppling måste ju sakerna på någotvis finnas på klienten. Så varför inte lagra allt där.

 

 

 

 

 

 

 

Vad tror du?

 

 

 

 

Nu om tillämpningarna skall ligga på klienten och en mycket tunn brygga finnas mot servern. Tror du programmeringen blir enklare eller blir det ännu mer besvärligt och komplicerat? Vi har ju t.ex. haft Java-servrar som har varit ganska omständliga att bygga. För att skala upp så har komplexiteten och hänsyn till diverse omständigheter såsom t.ex. trådar bara ökat. Därför kan man se det som att det faktiskt blir enklare att skriva tillämpningar. Å andra sidan får vi nästan "kompilerade" tillämpningar där JavaScript agerar assembler. Inte det lättaste att felsöka, utan vi får precis som när vi kompilerar C, C++, Objective-C eller Java, lita på kompilatorn. Å andra sidan kanske vi kommer att se att design flytta till vad som i SproutCore fall kallas Greenhouse, dvs. det ställe där vi sätter ihop komponenterna för tillämpningen.

 

 

 

 

Om receptet Apple tänker sig lyckas, kan vi nog se mot en del av webben som liknar skrivbordets tillämpningar både till utseeende och till funktion. Om det är bättre än dagens hybrid? Tja, det får vi väl se ... ;)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.



×
×
  • Skapa nytt...