Old news

Yleensä veppiuutisoinnin paras puoli on ajantasaisuus. Aina niin ei ihan ole. Eilen Digitoday julkaisi uutisen otsikolla Novellin Ximian naittaa Microsoftin .netin Linuxiin. Perässä seurasi Tietokone.fi, joka otsikoi Novell julkisti Mono-projektin aikataulun. Huvittavinta tässä kilpailijan apinoinnissa on se, ettei kumpikaan taho ole huomannut referoivansa lehdistötiedotetta, joka on julkaistu 18. marraskuuta 2003. Tai sitten on huomannut eikä ole välittänyt. Kumpikaan vaihtoehto ei ole kovinkaan mairitteleva.

Sinänsä uutinen on – vai pitäisikö sanoa oli – tärkeä ja hyvä että aiheesta Suomessakin puhutaan.

Hyviä uutisia

Päivän uutisia lukiessa ei voinut olla toivomatta olevansa Microsoft-onnelassa PDC-tapahtumassa. MS julkisti paljon mielenkiintoisia asioita sekä tulevasta Windowsista, Longhornista että Visual Studio .Netin ja .Netin 2.0-versiosta, Whidbeystä. Kaikki Longhorn-hypen on tietysti mukavaa kuultavaa, mutta todellisuudessa mielenkiintoisinta on Whidbey. Klassinen Steve Ballmerin räppi tulee vääjäämättä mieleen näitä lukiessa.

Vihdoinkin ASP.NET järkevöityy siten, että kääntämisrumbasta päästään eroon. Tämä tapahtuu uudella codebeside-mallilla, jossa vanhasta codebehind-mallista luovutaan. Kuvauskieli ei enää perikään kooditiedoston Page-implementaatiota vaan nämä kaksi ovat osa samaa luokkaa, vaikkakin edelleen eri tiedoistoissa. Sivutuotteena ainaisesti epäsynkronissa olevista ja muutenkin turhaa kirjoitustyötä vaativista kaksinkertaisista objektien määrittelyistä päästään eroon. Ei kauniin OOP:n mukaista, mutta tehokasta.

Whidbeyn panostaa muutenkin kääntämisen vähentämiseen. Tutun bin-hakemiston kumppaniksi esitellään uusi code-hakemisto. Se nimensä mukaisesti nielee lähdekoodia joka käännetään vasta sovellusta ajettaessa. Ja jotta loppukäyttäjä ei kärsisi kehitystyön helpottumisesta, esitellään uusi tapa kääntää ennalta kaikki web-sovelluksen kooditiedostot (aspnet_compiler.exe).

Kymmeneen kertaan kopiotu HTML vähenee uuden Master Pages -tekniikan avulla. Käytännössä sillä korvataan vanhan ASP:n includet isäsivulla, jota eri toiminnallisuutta tarjoavat sivut käyttävät. Yhtenäisen ulkoasun ylläpitäminen on siten jatkossa huomattavasti helpompaa. Kevyeen kehitystyöhön on tarjolla uusia tapoja yhdistellä dataa kontrolleihin entistä vähemmällä tai jopa täysin ilman koodia.

IDE:n tulevat ominaisuudet vaikuttavat myös lupaavilta. Varsinkin versionhallintaa käyttävässä monen ohjelmoijan ympäristössä ongelmallisista projekti- ja solution-tiedostoista päästään eroon. Visual Studio tulee sisältämään oman kehitystyöhön tarkoitetun web-palvelimen joka vastaa vain koneen sisältä tuleviin sivupyyntöihin. Paketti sisältää pitkään paikallaan polkeneen SourceSafen uuden 2004-version, joka arvatenkin pohjautuu SQL Serveriin.

Kaikkien hyvien ideoiden lisäksi on aina oltava huonojakin. Kehnoimmalta kuulostaa idea adaptereista, joilla voidaan palvella erilaisia asiakasohjelmia tarjamalle niille erilaista kuvauskieltä. Tämä johtaa aivan väärälle tielle. Oikea tie on tarjota selaimesta riippumatta mieluummin taulukotonta XHTML:ää.

Mainitsematta jääneet asiat ilman turhaa kritiikkiä voi lukaista MSDN:n sivuilta (toimimaton linkki poistettu 9.7.2009). Pakollista luettavaa ovat myös vasta julkistetut, mutta jo vanhaa tietoa olevat C# 2.0:n speksit (toimimaton linkki poistettu 9.7.2009).

Kehitys kehittyy ja muita kliseitä

Microsoft on julkaissut kehitystyökalujensa roadmapin vuosille 2003-2005. Pakko sanoa, että paljon on tulossa uutta oikeasti tarpeellista. Yksi kohta kuitenkin lähinnä huvitti, viimeinen kappale otsikon “Web Application Development (ASP.NET)” alla. Siinä kerrotaan ASP.NET:n tulevasta teema- ja skinituesta.

ASP.NET:n suurimpia ongelmia on mielestäni se, että väen väkisin erottamalla koodi ja markup toisistaan on saatu aikaan kasa puolivillaisia itse keksittyjä “XHTML”-komentoja. Vaikka näillä muotoiluohjeilla päästäisiinkin riittävän siistiin lopputulokseen yrityksen sisäiseen käyttöön tarkoitettujen sovellusten tapauksessa (joissa ohjelmoija luo käyttöliittymän ulkoasun), niin yritysten välisessä tai kuluttujaviestinnässä vaatimustaso on toinen. Vaikka ASP.NET:n kontrollit olisivatkin aina säädettävissä haluttua ulkoasua vastaaviksi on tämä työ tehtävä täysin uudella, epästandardilla tavalla. Webdesignerit, www-suunnittelijat, HTML-koodaajat – miksi heitä kutsutaankaan – eivät halua, eikä heidän pidä joutua opettelemaan uutta kuvauskieltä.

Tässä valossa teemoista ja skineistä on vähän iloa. Sopivilla väri- ja kirjasinvalinnoilla saadaan varmasti yhtenevä ulkoasu läpi verkkopalvelun, mutta ei satavarmasti saada aikaan mitään silmiä hivelevää ja – ennen kaikkea – täysin kontrolloitua ulkoasua.

Roadmap muuten mainitsee ohimennen kehittäjien voivan tulevaisuudessa kirjoittaa tallennetut proseduurit SQL Server -kantaan .NET:in tukemilla kielillä. Tämä sinänsä mielenkiintoinen kehityssuunta saa kuitenkin tarkemman selosteen täällä. T-SQL ei ole siis kuolemassa vaan kehittyy.