| Ahti's profile.NET sovelluskehitysBlogListsSkyDrive | Help |
|
Public folders
August 14 Visual Studio 2008 SP1Hei,
olen pitkästä aikaa taas täällä. Ei ole ollut oikein blogitettavaa, mutta nyt olen tekemässä asiakasprojektissa Linq to Sql sovelluskehystä, josta on paljonkin kerrottavaa. Aloitan kertomuksen työkoneen päivityksestä 08-aikaan.
Olen aikaisemmin asentanut
Ja nyt oli aika päivittää kone tuotantoversioihin. Aluksi tein seuraavat siivousoperaatiot
Ja tämän jälkeen varsinaiseen asennukseen.
Nyt kone tuntuu pelittävän OK. Palaan L2S FX:n (==Linq to Sql Framework) tekoon seuraavissa viesteissä.
//ahti April 06 EntLib versio 3Enterprise Librarystä näytti juuri tulleen 3-versio. Täällä: http://www.microsoft.com/downloads/details.aspx?FamilyID=62ef5f79-daf2-43af-9897-d926f03b9e60&displaylang=en
Siinä on .NET 3-ominaisuuksia (WCF tuki) ja on SN-signeerattu, joten nyt sen voi ottaa käyttöön binäärinä (=ilman kääntämistä). Ja on näin ollen mahdollista sijoittaa GACiin. Toi itse tehty signeeraus olikin pahuksen työläs, koska se vaikutti konfigurointitiedostoihin.
--ahti
WCF suorituskykyWCF:stä (Windows Communication Foundation) oli aikoinaan - siis beta-aikakaudella - useitakin suorituskykyvertailuja. Lähinnä koskien eri autentikontimenetelmiä ja protokollia.
MS julkaisi äskettäin laajan suorituskykyvertailun, jossa WCF:ää verrattiin muihin hajautusmenetelmiin. Artikkeli on täällä: http://msdn2.microsoft.com/en-us/library/bb310550.aspx
Yhteenveto puhukoon puolestaan: To summarize the results, WCF is 25%—50% faster than ASP.NET Web Services, and approximately 25% faster than .NET Remoting. Comparison with .NET Enterprise Service is load dependant, as in one case WCF is nearly 100% faster but in another scenario it is nearly 25% slower. For WSE 2.0/3.0 implementations, migrating them to WCF will obviously provide the most significant performance gains of almost 4x.
--ahti Sarjassa hyviä luentojaSattui jälleen silmään erinomainen luento, tällä kertaa tekoälystä. Täällä: http://video.google.com/videoplay?docid=-9075198068763651344&hl=en
--ahti March 07 Visual Studio 2005 Service Pack 1 Update for Windows VistaViimeinen puuttuva osa Visual Studio / Vista sovelluskehitystä on valmistunut. Visual Studio 2005 Service Pack 1 Update for Windows Vista on täällä. Tietty Vistassa on paljon vain-unmanged APIa, joihin osaan tulee managed wrapperi Visual Studio Orcasin myötä, mutta Visual Studio 2005 on nyt Vista-valmis.
//ahti February 13 Harmaita pilviä WebServices rintamallaSuurimmat pelintekijät ovat olleet liikuttavan yksimielisiä WS:n merkityksestä etenkin loosely-coupled integroinnissa (onko muunlaista kuin loosely-coupled integrointia olemassakaan, sanan perimmäisessä merkityksessä?)
Se, että jokin yritys tukee WSiä, ei enää voi olla mikään uutinen. Toisinpäin on.
Suuren yleisön suosikki - Google - on siirtymässä WS APIsta AJAXin siivittämänä JSONin käyttöön. Ote heidän blogistaan:
On December 5th, we stopped accepting new sign-ups for the Google SOAP Search API. This change does not impact current users of the SOAP Search API -- you can continue to execute queries, and we have no plans to turn off the service in the future.
While the product was Google's first API and inspired a lot of Google's current developer products, we are no longer devoting resources to increase the capacity of the service, instead focusing our efforts on the AJAX Search API. While the AJAX Search API does not provide server-side access to search results, it has a number of more powerful features, including access to Video, Maps, Blog Search, and News search results.
Onkin yllättävää, että lopulta käyttöliittymätekniikka AJAX voi olla uhka WS:n suosion edelleen kasvamiselle. MS toki yrittää kaikin keinoin saada ujutettua WS protokollapino myös AJAXiin, mutta toki JSON, POX (plain old XML), RELAX NG, REST ovat siellä luontevampia ja tietty kevyempiä. Tässä hyvä yhteenveto REST vs. WS:stä.
Toinen harmaa pilvi WS rintamalla on standardoinnin älyttömän hidas eteneminen. On toki niin, että aluksi standardointi etenee nopeasti. Yhteisymmärrykseen on helppo päästä, kun puhutaan vielä yksinkertaisista, helposti toteutettavista tekniikoista - "Loosely specified" asioista. Mutta kun mukaan otetaan enemmän ominaisuuksia (kuten Web Service Security), niin eteneminen hidastuu. Ehdotettuja ominaisuuksia on yhä vaikeampi toteuttaa omiin tuotteisiin tai ne ovat ristiriidassa jo tehtyjen ratkaisujen kanssa. Näin on ehdottomasti käynyt WS standardoinnissa. On kiusallista, että tämä kuva on pysynyt samana ainakin kolme vuotta (en saa sisennettyä kuvaa tähän pahuksen blogi-softaan, mutta tuolla sivulla puolivälissä on Figure 3 - Adoption of Web Service Protocols).
Jos haluat ylipäänsä seurata WS-standardoinnin kehitystä, niin täällä on hyvin laadittu yhteenvetotaulukko standardien nykytilasta. Taulukko p Valitettavasti.
//ahti February 04 Animaatiot PPT-esityksissäEn yleensä pidä esityksissä olevista animaatiotsta. Muutta tässä esityksessä sitä käytetään todella hienosti. Hieno esitys muutoinkin. November 03 Tehokas VoimaPiste-käyttöSaan työni puolesta paljon seurata ja pitääkin PowerPoint-esityksiä. Powerpoint onkin tullut yhdeksi tärkeimmäksi kommunikointimuodoksi yritysmaailmassa, jätetäänhän tarjouksetkin nykyään usein PPT-esityksen kera.
Olen usein miettinyt, millaisia nuo kelmut oikein pitäisi olla. Toisaalta tiedän, että vähemmän on enemmän, mutta toisaalta kelmut ovat usein se ainoa dokumentti. Tämä aiheuttaa painetta laittaa kalvoihin paljon asiaa.
Yksi hyvä keino miettiä sopivaa esitystapaa on ottaa mallia hyvistä esityksistä. Paras (webistä) näkemäni esitys on tämä: http://www.identity20.com/media/OSCON2005/oscon_videos/oscon_wmf_lg.html
Se kannattaa ehdottomasti käydä katsomassa, vaikka tarkasti ottaen se ei ole PPT-esitys : ) Loistava, poikkeava tapa käyttää kalvoja. Tietty koko päivää ei tuollaista jaksaisi seurata, mutta piristävä poikkeus se varmasti on. Ja on muuten hyvä luento ylipäänsäkin user-centric autentikoinnista - Identity 2 :sta.
Tässä (http://presentationzen.blogs.com/presentationzen/2005/11/the_zen_estheti.html) on mielestäni hyvä blogi (seminaari)esiintymisestä. Tässä nimenomaisessa kirjoituksessa kiinnitetään huomiota ja analysoidaan MS:n keynote-esitysten (Bill Gates) kalvojen heikkoutta. Olen sattumoisin itsekin kiinnittänyt tähän huomiota, BG:n keynoten kalvot sisältävät aivan liikaa tavaraa. Vähemmän on enemmän. Muutamia muita aihetta käsitteleviä linkkejä
Cliff Atkinson: http://www.sociablemedia.com/ * hänen blogi: http://www.beyondbullets.com/ Täällä hänen esityksensä: How to Prevent PowerPoint Overload
Edward R. Tufte näyttää kanssa kirjoittaneen ja tutkineen aihetta. Web-sivusto ei kuitenkaan ole kovin hyvä: http://www.edwardtufte.com/tufte/index //ahti
PS paras tapa voittaa esiintymisjännitys kerrotaan täällä : )
Linuxissa on enemmän .NET -sovelluksia kuin VistassaKyllä, näin on!
Vistaan kyllä asentuu oletuksena .NET 3.0, mutta siinä ei ole (ilmeisesti) yhtään varusohjelmaa, joka olisi kirjoitettu .NETillä. .NETin voi, jos haluaa, jättää asentamattakin ja kaikki toimii.
Sen sijaan muutamissa Linux distroissa tulee Mono (Novellin tekemä GPL-lisensoitu .NET toteutus Linuxin ym. käyttiksiin) sekä muutamia ohjelmia, jotka on tehty sen päälle. Distroja, joihin sisältyy Mono, ovat: Fedora Core 5, SuSE Linux Enterprise Desktop 10 ja Ubuntu 6.10. Distrojen mukana jaettavia Mono-sovelluksia on ainakin Media Player ja F-Spot (kuvagalleriasovellus).
Mono sai tuulta purjeisiin tällä viikolla, kun Ballmer lupautui olemaan peräämättä patenttioikeuksiaan SuSe Linuxin mukana toimitetuista ohjelmoistoista. Monon ongelmahan on (mm.) ollut se, että siinä on jouduttu rikkomaan MS:n patentteja. .NETin standardoitu, avoin CLI-osuus, joka on jopa ISO-standardi, sisältää ainoastaan merkkipohjaisen sovellukseen riittävät kirjastot. Windows.Forms, ASP.NET tai ADO.NET eivät sisälly CLI:hin. Ne kuitenkin sisältyvät Monoon, jolta osin on ollut tämä patenttirikkomusuhka. Aikaisemmin MS:n johto ei ole antanut tähän liittyen mitään lausuntoa, joka on tehnyt vaikeaksi käyttää Monoa yrityssovellusten alustana. Mutta nyt siis Ballmerin suulla saimme kuulla, että Monoa voidaan huoletta käyttää. MS ei tule laittamaan kapuloita rattaisiin. Hyvä näin.
//ahti May 24 Beta2 päiväWinHec-sempun avajaispäivä oli tietysti se päivä, jolloin Beta 2:t tulivat jakeluun. Nyt on saatavilla Beta 2-versiot
Olen muutamaan otteeseen yrittänyt siirtyä työkoneessani Vistan käyttöön, mutta joutunut palaamaan takaisin XP:hen. Viikonlopun aikana teen jälleen uuden yritykset. Jospa nyt!
//ahti May 19 CodePlex, uusi GotDotnetwww.codeplex.com kisaa www.gotdotnet.com -saitin kanssa .NET-projektien hallinnasta. Outoa, koska molemmat ovat puolivirallisia MS:n saitteja ja niiden tavoitteet ovat lähes identtiset.
GotDotNet on ollut kiusallisen hidas ja toiminnaltaan epävarma, joten on ihan hyvä, että se korvautuu uudella tekniikalla. Mutta eikö olisi ollut parempi korjata vanha kuin tehdä kokonaan uusi yhteisö?
Codeplexin tekniikka on mielenkiintoinen. Se on ainakin oman ilmoituksen mukaan tehty Team Foundation Serverin päälle, ja onkin paljon edeltäjäänsä tehokkaampi.
Ote heidän sivulta: "CodePlex is an online software development environment for open and shared source developers to create, host and manage projects throughout the project lifecycle. It has been written from the ground up in C# using .NET 2.0 technology with Team Foundation Server on the back end. CodePlex is open to the public free of charge."
//ahti March 06 WinFXMinulle on tullut muutamia kyselyjä siitä, mikä WinFX oikein on, uusi .NET 3? Tässä lyhyt katsaus WinFX:ään 'kilometrin korkeudesta'.
WinFX (Windows Framework) on yleisnimi .NET tekniikoille, jotka laajentavat .NET Framework 2.0:aa. WinFX julkaistaan vuoden 2006 loppupuolella samaan aikaan kun Windows Vista. WinFX:llä ei sinänsä ole tekemistä Vistan kanssa, tämä julkaisuaikataulujen yhteneväisyys on enemmänkin markkinallinen. WinFX toimii Windows XP:n, 2003 Serveriin ja Vistaan asennettujen .NET Frameworkin päällä, ei siis Windows 2000:ssa, vaikka se on .NET Frameworkin tuettujen käyttöjärjestelmien joukossa.
WinFX on ennenkaikkea uusi API; se on uusia DLL:ä, joita sovelluskehittäjä voi omassa Visual Studio 2005-projektissaan referoida ja ottaa käyttöön. Tämän lisäksi WinFX SDK tuo uusia designereita ja projekti-templateja Visual Studio 2005:een, se siis myös laajentaan Visual Studio 2005:n toimintaa. WinFX:ää käyttöönotettaessa on huomioitava, että
WinFX:n osa-alueet ovat
WinFX on tällä hetkellä (WinFS:ää lukuunottamatta) Beta 2-vaiheessa. WinFX-ohjelmointia on voinut kokeilla jo noin reilun vuoden ajan. Vuoden vaihteessa tuli myös ”go-live” lisenssimalli, joten WinFX:ää voi käyttää jo nyt tuotannollisissa sovelluksissa. Ensimmäinen virallinen versio on aikataulutettu tämän vuoden loppupuoliskoon.
January 26 Hibernate-ongelma ja sen ratkaisuMinä (tai paremminkin minun työkoneeni :) olen kärsinyt pitkään hibernate-ongelmasta - hibernate ei onnistu, vaan tulee virheilmoitus: "Insufficient System Resources Exist to Complete the API".
Asensin tämän hotfixin: http://support.microsoft.com/?kbid=909095 ja ongelma on poistunut. Ei pelkästään minulla, vaan esim. Aalille koitti myös "uusi elämä" tämän hotfixin asentamalla.
Kiusallista, että tämäkin on jälleen (ainakin osittain) muistin määrään liittyvä ongelma "This problem typically occurs when the computer uses 1 gigabyte (GB) or more of RAM." Olen aikaisemmin blogannut muutamissa verkkoajureissa havaittuun bugiin, joka niinikään ilmenee silloin, kun koneessa on yli 1 Gtavu muistoa. Olisiko vanhaa assembler-koodia (tai sen luonteisesti koodattua) ja väärässä kohdassa optimoitua muistinkäsittelyä?
//ahti
January 25 WinFX January CTPTeen kuumeisesti ensi viikolla pidettävää Windows Workflow Foundation lurssimusta. Olen tehnyt sitä tähän asti koiralevyllä (=VPC:llä, joka on ulkoisella levyllä). Kyllästyin ulkoisen levyn raahaamiseen ja rohkenin eilen asentaa uuden WinFX January CTP-ympäristön Host-käyttikseen (Windows XP SP2). Näyttää pelittävän hyvin, nätisti rinnakkain Visual Studio 2005 / .NET 2 kehitysympäristön kanssa.
WinFX sisältää (asennusjärjestyksessä)
Microsoft Expression Graphic Designer January 2006 Community Technology Preview (CTP) on myös ladattavissa täältä. Tuote on ensimmäinen Avalonia käyttävä Web-sivujen (miksei myös WPF Windows-sivujen) suunnittelu- ja maalausväline. Asensin myös sen host-WinXP:hen, mutta käyttökokemuksia ei vielä ole.
//ahti BTW, Enterprise Library 2.0 (for .NET 2) on myös valmistunut. Ladattavissa täältä.
November 19 Julkistusten viikotMarraskuu on ollut MS-koodarille uusien tuotteiden kuukausi. Tässä minulle tärkeimmät tuotteet
Tärkeimmät WinFX APIt ja muut esiversiot ovat myös päivitetty VS 2005 RTM-versioiksi, kuten
Nyt voi siis vihdoinkin jättää VS2005 Beta 2:n arkistoon (siis Vista-levylle), ja päivittää kaikkiin tuotanto-VPC:hin VS2005 RTM. Hetkinen... DSL Tools toimii edelleen vain Beta 2:ssa, mutta siitäkin pitäisi tulla RTM:ssä toimiva versio näinä päivinä.
//ahti November 16 32-bit aikakauden loppu läheneeLonghorn Server tulee olemaan viimeinen 32-bit palvelinkäyttöjärjestelmä MS:lta (http://www.infoworld.com/article/05/11/15/HNms64bitplans_1.html)
"The server version of Microsoft's Longhorn operating system will come in both 32-bit and 64-bit versions, but Release 2 of Longhorn, scheduled for 2009, will be 64-bit only, Bob Muglia, senior vice president of Microsoft's Servers and Tools Business, said in a speech here. " Tämä on tietysti odotettu ja positiivinen asia, kolkutteleehan läppäritkin jo tätä 4 Gtavun rajaa. I386:n kuoppaaminen on kuitenkin minulle itselleni haikea asia. Sattumoisin tein diplomityön I386:n käskykannasta ja sen vaikutuksesta sovelluskehitykseen (todellakin : ). Kirjoitin diplomityön Suomen ensimmäisellä 386-prosessorisella PC:llä - tai ainakin näin haluan asian ymmärtää. Kyseinen Compaqin386 Deskpro ostettiin KT-messuosastolta, jonne se lännätettiin ensiesittelyyn "suoraan tehtaalta". Koneessa ei ollut edes kovalevyä, mutta tehokas 32 bit 386 korvasti kyllä moisen puutteen. Olen muuten aina ihmetellyt, miksi OS/2 v.3 (nykynimeltään NT) käyttää vain yhtä muistisegmenttiä, jolloin maksimi muistimäärä rajautuu tähän 4 Gtavuun? I386 sisältää käsitteen muistisegmentti, ja Intellin ajatus oli se, että kukin prosessi toimisi omassa segmentissään, jolloin muistiraja olisi 4 Gtavua/prosessi. 90-luvun alussa, jolloin NT-käyttäjärjestelmän tekniset ratkaisut tehtiin, tuntui tästä asiasta keskustelu perin "akateemiselta" - olihan muistiavaruutta kylliksi yhdessäkin segmentissä. Ja nyt lienee helpompi pidentää muistiosoitetta kuin alkaa pitäämään kirjaa segmenteistä.
//ahti
PS. [19.11.] Lisään näin jälkikäteen tähän merkintään myös samaisessa seminaarissa tehdyn julkistuksen, että seuraava Exchange-palvelin (Exchange 12) on myös vain 64-bittinen. November 15 Virtual PC - Host muistin vapauttaminenKäytän hyvin paljon Virtual PC:tä sekä sovelluskehityksessä että myös esityksien demoissa. Ohessa on käyttämäni CleanHost.BAT, jonka avulla pyrin vapauttamaan niin paljon Host-käyttiksen muistoa kuin mahdollista client-käyttiksen eduksi.
Aluksi stoppaan "kaikki" mahdolliset palvelut, ml. käyttämämme virustorjunnan (tätä käytän siis vain demojen esittämistä varten). Lopuksi suljen taskkill.exe:llä muutamia vakioprosesseja, mm. msn desktop search:in. Tämä on kyllä rumaa mutta usein kyse on siitä, että nopeasti pitäisi saada muistia sen verran, että VPC lähtee käyntiin.
//ahti
net stop mssqlserver
net stop "Sql Server (SQLEXPRESS)" net stop "SQL Server FullText Search (MSSQLSERVER)" net stop "SQL Server Integration Services" net stop "SQL Server VSS Writer" iisreset /stop
net stop "Message Queuing Triggers" net stop "Message Queuing" net stop "Automatic Updates"
net stop "Background Intelligent Transfer Service" net stop "Dell Wireless WLAN Tray Service" net stop "Symantec Antivirus Definition Watcher" net stop "Symantec Antivirus Event Manager" net stop "Symantec Antivirus Settings Manager" net stop "Symantec Antivirus" net stop "DirectX Debug Service" net stop "Machine Debug Manager" net stop "InCD File System Service" net stop "Help and Support" net stop "Firewall Client Agent" net stop "Print Spooler" net stop "Windows Image Acquisition (WIA)" net stop "Terminal Services" net stop "Task Scheduler" net stop "SSDP Discovery Service" net stop "IT Connection Manager" net stop "Smart Card" net stop "Infrared Monitor" net stop "Error Reporting Service" net stop "Web Client" taskkill /IM WindowsSearch.exe taskkill /IM WindowsSearchFilter.exe taskkill /F /IM WindowsSearchIndexer.exe taskkill /IM gcasDtServ.exe taskkill /F /IM msnmsgr.exe October 22 Microsoft Business FrameworkMicrosoft Business Framework (MBF) oli yksi niistä tuotteista, jotka MS julkaisi hyvin etukenossa vuoden 2003 PDC:ssä (esityksen kalvot ovat täällä). MBF näytti erittäin lupaavalta (täällä on sen kehityksen seurantaan keskittynyt saitti), mutta sen kehityspolku on ollut takkuinen. Tuote on siirtynyt Business Solutions -divisioonasta Visual Studio-divisioonaan ja nyt julkaistussa tilannekatsauksessa jälleen takaisin MBS:n hoiviin. Kuten tässä Mary Jo Foleyn artikkelissa todetaan, MBF ei tule olemaan oma tuotteensa, vaan se on osa useaa tuotetta, kuten:
Varsinainen MBF:n entity- ja pattern-suunnittelualusta toimitetaan vain MBS:n uusien Dynamics-tuotteiden mukana. Harmi. Se, mitä olen MBF:stä nähnyt, on ollut erittäin mielenkiintoista ja lupaavaa.
//ahti September 20 PDC 2005 matkaraporttiTämän matkaraportin olen kirjoittanut yhdessä Timo Jokisen kanssa.
Yleistä
Professional Developer Conference (PDC) 2005 oli jälleen loppuunmyyty. Lähes 10 000 osallistujaa kokoontui kuuntelemaan ja keskustelemaan Windows sovelluskehityksen tulevista suuntaviivoista Microsoftin henkilöstön kanssa. Suomalaisia PDC:ssä oli parikymmentä. PDC:n esiintyjäkaartin muodostavat perinteisesti Microsoftin asiantuntijat, ne jotka todella vastaavat ja toteuttavat sovelluskehitysvälineet. Esitysten lisäksi järjestetään paljon keskustelutilaisuuksia, joissa jokainen asiasta kiinnostuneen on mahdollista vaihtaa mielipiteitä toistensa ja MS:n henkilöstön kanssa. Los Angeles oli kolmannen kerran peräkkäin PDC:n ”alustana”. LA:ssa oli lähes shortsikeli, mutta messukeskuksen viileydessä se ei haitannut. Järjestelyt sujuivat totutun varmaan sävyyn, tosin pre-conferencepäivänä sattunut muutaman tunnin sähkökatkos vaikutti omalla mielenkiintoisella tavalla järjestelyihin. Bill Gates lohkaisikin avauspuheenvuorossaan, että kun hän on useaan otteeseen verrannut ja asettanut tavoitteeksi sen, että softasta pitäisi tulla yhtä helppokäyttöistä ja luotettavaa kuin vaikkapa sähkönjakelusta, niin hän tarkoitti kyllä toteutusmallia toisinpäin – siis softan luotettavuuden olisi parannuttava.
Vaikka PDC tilaisuutena on nimenomaan sovelluskehittäjille suunnattu, voidaan sen antia tarkastella myös käyttäjien ja infran näkökulmasta.
Käyttäjänäkökulmasta katsottuna keskeisimpinä asioina tuli esiin Office 12 uusi käyttöliittymämalli ja Windows Vista käyttöjärjestelmäversio. Vaikka näiden välillä ei olekaan suoraa teknistä riippuvuutta, niin ilmestymisaikataulut pyritään kuitenkin nitomaan toisiinsa siten, että seuraava iso muutos olisi uuteen käyttöjärjestelmään ja uuteen Office versioon siirtymisen aloittaminen ensi vuoden lopulla.
Infranäkökulmasta mielenkiintoisia asioita ovat esim. Vistan asettamat tekniset vaatimukset laitteistoille ja toisaalta käyttöjärjestelmäpalveluiden ja palvelinsovellusten kehittyminen ja aikatauluarviot. Tällä saralla mielenkiintoisimpana asiana tuli esiin IIS 7 ja merkille pantavaa oli myös Windows SharePoint palveluiden esiin nostaminen monessa eri yhteydessä.
Office12
Dokumentin tekemisen tuottavuuden parantaminen on haastavaa – softa osaa jo kaiken. MS:n tekemien tutkimusten mukaan kun käyttäjältä kysytään toivomuksia Officeen lisättävistä ominaisuuksista, niin yhdeksän kertaa kymmenestä toivottu ominaisuus on jo olemassa Officessa, mutta käyttäjä ei ole vain sitä löytänyt. Office 12 kehittyykin nimenomaan käyttöliittymältään. Menu ja toolbar heitetään menemään! Ribbon tulee tilalle. Toki Context –valikot säilyvät. Käyttöliittymän muutosten keskeisenä motivaationa onkin ollut juuri keskittyä siihen, kuinka käyttäjät löytäisivät oikeat toiminnot oikeaan aikaan. Käyttöliittymää on pyritty muokkaamaan nykyisestä komento-ohjauksesta enemmän lopputulosohjautuvaksi. Mielenkiintoista nähdä kuinka tämä uusi käyttöliittymämalli lopulta toimii ja kuinka se saadaan sujuvasti käyttöön. Ensivilkaisulla uusi käyttöliittymä vaikuttaa kuitenkin erittäin hyvältä.
Officen perussovellusten muutosten lisäksi etenemistä on tapahtunut myös dokumentin elinkaaren hallinnassa. Sharepoint Portal Server ja tuleva Windows Workflow Foundation on integroitu Officeen saumattoman tuntuisesti. Office System pyrkii yhä pidemmälle hallitsemaan dokumentin tuottamisen lisäksi sen koko elinkaaren: työnkulun, dokumentin käsittelyketjut ja jakelun.
Iso muutos Office-tuoteperheessä on myös dokumenttien uusi tallennusformaatti. Oletusformaatiksi tulee XML- ja tiedostopohjainen järjestelmä. Office-dokumentti on itse asiassa zipattu hakemisto, jossa kukin dokumenttiosa (esim. kuvat) ovat omina tiedostoinaan. Itse dokumenttikin on useana tiedostona, esim. itse teksti on erillään muotoilusta. Uusi tiedostoformaatti tulee korjauspakettina myös Office XP ja 2003 ympäristöön. Avoin tiedostoformaatti mahdollistaa Office-dokumenttien tuottamisen ja modifioimisen ilman Office-tuotetta suoraan tiedostojärjestelmän avulla.
Ribbon korvaa perinteiset valikot ja toolbarit Microsoft Word, Excel ja PowerPoint –sovelluksissa. Windows Workflow Foundation Windows Workflow Foundation (WWF) on uusi, suoraan käyttöjärjestelmän hallitsema palvelu. Työnkulku voidaan suunnitella ja ohjelmoida Visual Studiolla. Työnkulun moottori ohjelmoidaan itse, tai käytetään Microsoftin tuotteita (tällä hetkellä niitä olisi Biztalk Server ja SharePoint Server). Myös kolmansien osapuolten tuotteet tulevat käyttämään tätä käyttöjärjestelmän uutta palvelua. WWF vaikuttaa todella lupaavalta. Lähes kaikki yrityssovellukset tarvitsevat työnkulun hallintaa (yli sovelluksen tai Wizardin elinajan) ja tällä hetkellä ne toteutetaan pääsääntöisesti sovelluskohtaisesti (tai jätetään manuaalisesti toteutetuksi). WWF merkitsee samaa kuin aikoinaan relaatiokantojen tuleminen sovellusten pysyvän datan hallintaan tai Visual Basic 1 tapahtumaohjatun graafisen sovelluksen tekemiseen.
Windows Vista ja Longhorn Server
Windows Vista on aikaisemmalta koodinimeltään Longhorn Client. Longornin Server-versiosta käytetään edelleen nimeä Longhorn Server (tai Windows Server 2007). PDC ei tuonut erityistä uutta näiden projektien aikatauluun tai sisältöön. Nyt julkistetun arvion mukaan työasemaversio valmistuu ensi vuoden loppupuolella ja palvelinversio vasta vuonna 2007. Melko suuri osa esityksistä ajettiin Windows Vista Beta 1:llä, mutta laiteajurien ja Virtual PC Additionsien puute tekee siitä vielä melko haastavan testattavan. Infranäkökulmasta miettimisen aihetta antaa myös tarvittava laitealusta. Vaikka Vista sinänsä on asennettavissa ”nykystandardin” mukaisiin laitteisiin, saadaan paras toiminnallisuus aikaiseksi laitteissa, joissa grafiikkakiihdytinkortit ovat nykyistä huippuluokkaa. Eikä lisähertsien ja -gigojenkaan määrästä koneissa haittaa olisi. Uusi, .NETin korvaava (tai sen seuraava versio, kuinka halutaankaan sanoa) ohjelmointirajapinta on Windows Framework, lyhenteenä WinFX. WinFX julkaistiin vuoden 2003 PDC:ssä, ja silloin sen piti tulla vain Longhorniin (ja sitä seuraaviin käyttöjärjestelmiin). Sittemmin suunnitelmia on tarkennettu, ja WinFX:stä tulee hieman suppeammin toimivat versiot myös Windows XP:hen ja Windows Server 2003:een. Tosin WinFX:ää ei toteta ensivaiheessa ”kokonaan”, vaan WinFS (future fileSystem) valmistuu myöhemmin. WinFx:n aikataulu ei seminaarissa erityisemmin tarkentunut, se on edelleen ”Windows Vista timeframe”, siis ensi vuoden loppupuoli.
WinFX – Windows Presentation Foundation WinfFX:n käyttöliittymätekniikka WPF (aikaisemmin Avalon) tulee poikkeamaan huomattavasti nykyisistä Win32, Windows Forms ja ASP.NET käyttöliittymistä. Se perustuu XAML sivunkuvauskieleen ja tapahtumamalliin. Eräs suurista kysymysmerkeistä on WPF:n siirrettävyys muille selaimille, muihin käyttöjärjestelmäalustoihin ja/tai mobiiliympäristöön. PDC:ssä mainittiin WPF/E (Windows Presentation Foundation/Everywhere), jonka tavoitteena on tuoteuttaa siirrettävä XAML-kuvauskieleen perustuva käyttöliittymäalusta, mutta sen onnistumisen todennäköisyyttä on vielä liian aikaista arvioida. Seminaarissa demottiin muutamia erittäin hienoja XAML-käyttöliittymiä. Lomakkeet ovat koreita, zoomaus ja videostreemit luonteva osa käyttökokemusta. Näiden ominaisuuksien todellinen ”business value” operatiivisten sovellusten parantamisessa jäi vielä ohueksi. WinFX – Windows Communication Foundation Indigo on nyt nimeltään Windows Communication Foundation (WCF). WFC yhdistää Microsoftin kaikki hajautus- ja palveluohjelmointimallit (esim. DCOM, .NET remoting, ASP.NET Web Services, MSMQ) yhden ohjelmointimallin taakse. Kaikki hajautus perustuu Web Service standardeihin, etenkin uusimpiin WS-Security-standardeihin (WS-*) sekä SO arkkitehtuuriin. WCF tukee hyvin siirtymävaihetta, joten nykyisistä ohjelmointimalleista on suoraviivaista siirtyä joko kerralla tai vaiheittain WCF:hen. LINQ ja C# 3 / VB.NET 9 Eräs mielenkiintoisimmista sovelluskehitykseen vaikuttavista pitkän aikavälin julkaistavista asioista oli .NET Language Integrated Query (LINQ). LINQ esiteltiin tässä vaiheessa suurelle yleiselle lähinnä kokemusten keräämistä varten. Kehittäjien antaman palautteen perusteella tämä tekniikka tulee vasta muutamien vuosien kuluttua käyttöön. LINQ:ssa on kysymys C#:iin ja VB.NET –kieliin tehdyistä laajennuksista, joiden avulla voidaan suoraan ohjelmointikielissä tehdä kyselyja kaikkeen kokoelmadataan. LINQ:sta on laajennukset relaatiokantojen ja XML dokumenttien (ja myöhemmin DataSetien) käsittelyyn. Nämä laajennukset tekevät LINQ:sta myös ORM:n (Object relational Mapper). LINQ ei vaadi muutoksia itse CLR:ään, vaan on toteutettavissa kääntäjiin tehdyillä laajennuksilla. LINQ:n toteutusaikataulua ei seminaarissa tarkennettu, mutta siitä on jo nyt käytettävissä tutustumista varten Beta1 versio. Mielenkiintoinen ”irtiotto” VB kielessä tulee olemaan XML ohjelmointituen tuominen suoraan kieleen (versiossa VB.NET 9). Muuttujalle voidaan suoraan sijoittaa xml-muotoista dataa (siis ei merkkijonoa) ja käsitellä sitä sen jälkeen tyypitetysti. Datan joukkoon voidaan myös sijoittaa ”täyttökohtia”, jotka mahdollistavat dokumentin helpon muokkaamisen ilman oliomallin käyttöä. Toisaalta voidaan myös kysyä, onko XML:n ja VB.Netin sitominen toisiinsa näin vahvasti siinä mielessä perusteltua, että nyt kieli tulee riippuvaiseksi toisesta tekniikasta, jonka kehittymisen suuntaviivat eivät ole kielen kehittäjien ohjailtavissa.
Northwind db = new Northwind(…);
var contacts = from c in db.Customers where c.City == "London" select new { c.Name, c.Phone }; Kuva: tietokantakysely LINQ:n avulla (C# -kielinen)
Vaikutukset sovellusarkkitehtuuripäätöksiin nyt PDC:ssä keskitytään aina pitemmälle menevään tulevaisuuteen, eikä tämän päivän tekniikoihin (esim. .NET 2.0 oli tämän seminaarin näkökulmasta jo ”valmis ja käytössä”, vaikka tuotantoversion ilmestymiseen onkin vielä muutama kuukausi). Tänä päivänä aloitettavat projektit toteutetaan melko varmasti nyt olevilla (tai tulevilla, kuten Visual Studio 2005) välineillä eivätkä nämä uudet tekniikat vielä vaikuta niihin. Microsoft panostaa edelleen voimakkaasti SOA arkkitehtuurin toteuttamisvälineisiin. Web Service ja etenkin sen laajennetut standardit (WS-*) ovat MS arkkitehtuurissa etusijalla, joten niitä on syytä suosia jo nyt tehtävissä projekteissa. Open Office-paine näkyy siinä, että MS panostaa yhä enemmän dokumenttien tuotannon lisäksi niiden elinkaaren hallintaan. MS Office System on alati kehittyvä ja muuttuva maalitaulu ja tavoite Open Source –toteutuksille. MS tarjoaakin todennäköisesti jatkossakin edullisimman vaihtoehdon dokumenttihallintakokonaisuuden ratkaisuksi. Pidemmän aikavälin sovellusarkkitehtuurivaikutukset ovat lähinnä käyttöliittymän, workflown ja tietokantaliitynnän toteutusmuutokset. Näitä koskevien usean vuoden päähän tähtääviä ratkaisuja ei voi tehdä turvallisesti ennen kuin WPF:n ja LINQ:n onnistumisesta on näyttöä.
//timo jokinen ja ahti, LA, CA Vista tuskaaTyöni puolesta saan ottaa käyttöön puolivalmiita tuotteita, usein jo beta-vaiheen alkaessa. NT 5:n otin pääasiallisen tuotantokoneeni (=läppäri) käyttikseksi hieman ennen Beta 1:n aikaa, Windows XP:n Beta 2 versiosta lähtien. Visual Studio 2005:sta olen käyttänyt jo kaksi vuotta - pääasiallisena koodausvälineenä. Tulen mielestäni hyvin toimeen beta-versioiden kanssa. Windows Vista on koettanut olan takaa kärsivällisyyttäni. Olen törmännyt lähes koko ajan kiusallisiin ongelmiin ja ne ovat työllistäneet "enemmän kuin laki sallii". Tässä lyhyt historia Vista-kokemuksistani. Asensin Vistan Technology Previewn (silloin toki nimeltään Longhorn Tech. Preview) vuoden 2003 kesällä PDC:n jälkeen. Se asentui kauniisti Virtual PC:hen (sen mukana tulivat VPC:n vaatimat Addtionsit). Tuotteen mukana tulivat myös Visual Studio Whidbeyn esiversio kuten myös WinFX esiversio. Opiskelin muun muassa Object Spacen täysin tässä ympäristössä. Yritin käyttää tätä VPC käyttistä pääasiallisena ympäristönä, mutta Longhorn esiversioon ei tullut lähes vuoteen uusia buildejä eikä asiakkaitamme näin varhaiset tuotteet kiinnostaneet, joten sen käyttö vähitellen jäi. Palasin päivittäisien rutiinien pyörittämisessä Windows XP / Windows Server 2003 ympäristöön. Otin uuden alun tämän kesän lopulla kun Windows Vista Beta 1 ilmestyi. Asensin sen (varoituksista huolimatta) Virtual PC-ympäristöön (VPC). Asennus oli _niin_ hidas, että vasta kolmannella kerralla uskoni riitti suorittamaan sen loppuun (asennus kesti ilmeisesti (en jaksanut päivystää :) yli 6 tuntia). Vista toimi VPC:ssä, mutta sikahitaasti. Siis todella hitaasti, hiiren liikettäkin/ikkunan avautumista sai odottaa sekuntikaupalla. Tästä toki varoiteltiin, mutta oli se yllätys, varsinkin kun 2 vuotta sitten julkaistu esiversio toimi paremmin (ilman additionseja), ja onhan toki VPC:n käyttö tullut lähes standardiksi uusien ympäristöjen koekäytössä. Vista Beta 1:een on olemassa tiskin alta jaettava VPC Additionsit, mm. täällä. Tämän asentamalla Vista toimii VPC:ssä jossain määrin kohtuullisesti, mutta uudet käyttöliittymäominaisuudet (mm. aero ja class) eivät ole 'näyttäviä'. Toki VPC-imagea voi käyttää esim. WinFX koealustana, mutta kyllä se vaatii hermoja. VPC-kokeiluni tyssättyä päätin palata vuosien tauon jälkeen dual-boottiin. Dualboot vaatii sen, että koneessa on useampi partitio. Ulkoinen kovalevy (USB-levy) voisi toki olla se toinen partitio, mutta läppärin käytettävyyttä ulkoinen levy haittaa tosi paljon. Koska koneen sisäinen levyni on ollut varmaan jo 5 vuotta yhtenä partitioina, jouduin asentamaan PowerQuest:n PartitionMagic 8.0n, jolla onnistuneesti pilkoin C-levynin kahteen partitioon. Tuli melankolinen déjà vu fiilis, kun joutui pähkäilemään minkä kokeiseksi partitiot jättäisi. Lohkaisin lopulta Vistalle 20 gigan partition (se on muuten riittänyt). Asensin tähän uuteen partitioon Vista Beta 1:n. Suorituskyky oli kohtuullinen, mutta verkkokortit (sekä WLAN että kiinteä) eivät toimineet - tai toimivat todella epävarmasti. Kooneeni kaatui usein. Tähän ongelmaan löytyi lopulta vastaus täältä (okei, se on uudempi linkki, mutta Tim Sneathin blogi on kullan arvoinen Vistaa käyttäville):
Jouduin siis asentamaan Windows XP-ajurit verkkokorteilleni, ja nämä ajurit (siis myös WLAN) kaatuvat, jos koneessa on yli 1 giga muistoa. Kyllä alkoi luottamus ajurien luotettavuuteen ja testausten kattavuuteen horjua. Toki ajurit joudutaan kirjoittamaan erittäin 'unsafe' kielillä, kuten C:llä ja C++:lla, mutta silti. Että tälläinen todennäköisesti pointteriaritmetiikkavirhe on olemassa näinkin yleisesti käytetyissä ajureissa. Yhtä kaikki, rajoittamalla muistin gigaan Vista pelittää. Tosin uutta Glass-käyttöliittymää ei vieläkään voi demota, koska koneenin näyttökortille GeForce FX Go5200 ei ole Vista ajuria. Monille muille GeForcen korteille kyllä on esiversioita, mutta ei näille läppäreissä käytettäville versioille. Grafiikkamuistia olisi riittävästi (64 M) ja DirectX 9 tuettu, mutta ei ajuria (nämä ovat Glass-käyttöliittymän vaatimuksen, ihan niin kuin Tim blogissaan mainitsee). Läppärit ja VPC:t ovat huonommin tuettuja kuin varsinaiset desktop koneet - vaikka asian pitäisi olla juuri päinvastoin. Jos päivität Vista Beta 1:n dual-boot koneessa, niin huomaat, että asennuksen jälkeen Vistaa käynnistäessä kone kaatuu. Tämä johtuu siitä, että uudelleenasennuksessa Boot.ini -tiedostoon tulee kaksi kertaa Vista-osion tiedot (kiitos Aali asian ratkaisemisesta :). Asia korjautui korjaamaalla C:n rootissa oleva Booti.ini tiedosto käsin (=poista toisteinen Vista-rivi). Office 2003 asentuu Vista Beta 1:lle ongelmitta. Ohjelmointia (VSTO - Visual Studio Tools For Office) varten muista asentaa .NET Programming Support. Visual Studio 2005 beta 2:n asennuksessa törmäsin myös MSXML6 parserin asennusongelmaan (kuten Tim blogissaan mainitsee. Jos aiot asentaa Visual Studion, lue tarkasti kohta "Windows Vista and Developer Tools"). XML parseri pitää asentaa Vistan asennuslevyltä ennen Visual Studion asentamista. Muihin ongelmiin en sitten törmännytkään. Paitsi tietysti se, että kaikki .NET ohjelmointivälineet ovat hyvin framework-versiosidonnaisia ja että aliversioltaan (kaksi jälimmäistä versionumeroa) kahta eri versiota koneeseen EI voi asentaa. Koneessa voi hyvin olla frameworkin versiot 1.0. 1.1 ja jokin 2.0 -versioista mutta ei kahta eri whidbey-versiota. Tämä hankaloittaa uusien asioidan tutkimista, esimerkiksi WinFX ja LINQ (Language Integrated Query) toimivat vain ja ainoastaan Beta 2- versiolla eivätkä uudemmalla RC1-versiolla. Puhumattakaan SQL Server 2005 / Visual Studio 2005 versioyhteensopivuusongelmista. Onneksi tämä versiorajoitus koskee vain aliversiota, ja on beta-vaiheen ohimenevä ongelma (nyt ristin sormeni ja koputin puuta - useasti :) Yhtä kaikki: en ole halustani huolimatta voinut ottaa vielä Vistaa pääasialliseksi ympäristöksi. Whidbeyn, SQL CLR:n ja .NET APIen rinnakkainen kehittäminen on tehnyt beta-vaiheen testaamisesta erittäin hankalaa. Edes VPC ei ole auttanut, koska Vista ei siinä kunnolla toimi. Odotan todella .NET 2.0:n valmistumista. Oletettavasti odotukseni ei ole (enää) pitkä.
//ahti August 22 Visual Studio 2005 julkaisuaikatauluMS julkaisi (tai paremminkin bloggasi) ensimmäisen VS 2005/SQL 2005 aikataulun täällä: http://blogs.msdn.com/somasegar/archive/2005/08/22/451026.aspx.
MS nimesi jo kesän alussa 7.11.2005 alkavan viikon "Launch Week":ksi, mutta jätti tarkemmin speksaamatta, mitä se oikeastaan tarkoittaa. Toki oli kohtuullista olettaa, että julkaistavien tuotteiden RTM:t (release to manufacturing) olisi lähellä tuota päivää, mutta tarkkaavaiset lukijat kyllä näkivät, että näin ei välttämättä olisi.
Tässä lyhennelmä Somarsegarin (Corporate VP of Developer Division) blogista ja vähän muualtakin:
Marraskuussa julkaistavista tuotteista RTM:ssä ollee SQL Server 2005 ja VS 2005. TFS ja BizTalk Server valmistuvat siis 2006 alkupuolella.
//ahti
July 05 TechEd AmsterdamOlen TechEDin Ask the Expert (ATE) deskilla seuraavasti:
Kaykaapa moikkaamassa,
ahti June 02 MS:n "virallinen" MDD-kantaMSDN-sitelle tuli vihdoin Greenfieldin ja kumppaneiden jo blogeissaan julistama mallinnus(väline)kritiikki ja kanta tulevaan kehitykseen (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/vstsmodel.asp). Artikkelissa on suoria otteita kavereiden blogeista, joita mm. Aali seuraa ja kommentoi aktiivisesti. MS:n virallinen kanta on siis kovasti pro MDD (Model Driven Development) ja DSL (Domain Specific Languages) ja samalla kritiikki UML:ää vastaan jatkuu.
Tässä minun suosikkilainaus: To summarize, we would recommend using UML and UML-based tools for:
//ahti June 01 Virtual PC ja hyper threading (ongelma ratkaistu)Jokisen Timpalla ja minulla on ollut jo jonkin aikaa VPC ongelma (meillä on samanlaiset Dell Inspiron 5150 / Pentium 4 3.2 HT / 2 Gt ) läppärit. VPC SP1 / Win XP SP2 asentamisen aikoihin VPC (nimenomaan client-käyttikset) jumiutuivat aika ajoin muutamiksi sekunneiksi. Tämä on erittäin kiusallista, teki esim. VPC:n käyttämisen esityksissä mahdottomaksi. VPC:tä ei ole myöskään voinut käyttää sovelluskehityksessä. Ongelmaa on googlattu aikalailla, eikä ratkaisua ole löytynyt. Vihdoinkin tänään Timppa mailasi "Valoa tunnelin päässä", linkkinä tämä: http://blogs.msdn.com/dglover/archive/2005/03/30/403508.aspx Ongelma johtui siis hyper threadingistä. Ja siihen saatiin patch. Ja nyt pelittää :)
//ahti Dynaamiset kielet ja .NETKarannan Antti, FCS:n UML ja Java-asiantuntija, on useaan otteeseen 'meuhkannut' dynaamisten kielten, kuten Ruby, Python, kehittymisestä. Ja hän ennustaa että niiden merkitys kasvaa merkittävästi muutaman vuoden kuluessa. Antti esitti kysymyksen, että mikäs niiden rooli onkaan .NET maailmassa? MS on jossain määrin ilmaissut mielenkiintoaan dynaamisia kieliä kohtaan. Maaliskuussa pidetyssä Muutoin en näe .NET leirissä erityisempää kiinnostusta dynaamisia kieliä kohtaan. Tästä herää kysymys: miksi? Uskon, että syitä on kaksi
Dynaamisia kieliä käytettäessä (yksikkö)testaus on must, sehän korvaa paljolti kääntäjän tekemän 'testauksen'. Tämä edellyttää, että testauksen pitää olla hyvin organisoitua ja automaattista. Team System tuo näitä ominaisuuksia Visual Studio IDEen, joten tämä ei estä dynaamisten kielten tuloa .NET maailmaan. Katsotaan näitä seikkoja yksityiskohtaisemmin Late Binding Intellisense //ahti |
|||||||||
|
|