Skip to main content

Ohjelmistokehitys

Go Search
ITpro.fi
Asiantuntijaryhmät
IT-Wikistö
Keskustelut
Materiaalit
Jäsenyys
Jäsenyhteisöt
Hakusivu
ITpro ry
TechNet 110 videotallenteet
  

 Ryhmän

  Kuvaus
  Keskustelut
  IT-Wikit
  Dokumentit
  Linkit
  Jäsenet
  Kuvat
ITpro.fi > Asiantuntijaryhmät > Ohjelmistokehitys

 Ohjelmistokehityksen asiantuntijaryhmä


Ryhmän vetäjänä toimii
Jani Järvinen, MVP - Visual C#
Microsoft julkaissut Outlookin PST-tiedostojen rakenteen

Outlookin PST-tiedostot ovat olleet jo vuosikaudet monelle hyvinkin tärkeä tiedostomuoto sähköpostin tallentamiseen. Välillä ne ovat helpottaneet tiedonsiirtoa koneelta toiselle, ja välillä aiheuttaneet harmaita hiuksia vaikkapa korruptoitumalla juuri kun pitäisi päästä tietoihin käsiksi.

Onneksi Microsoft on viime viikolla julkaissut PST-tiedostojen speksit. Tekninen dokumentaatio on koottu parisataasivuisiin PDF-tiedostoon, josta ainakin ohjelmoijat saavat tärkeää informaatiota siitä, miten PST-tiedostot on rakennettu.

Vaikka markkinoilla onkin jo pitkään ollut ohjelmistoja joilla esimerkiksi rikki menneistä PST-tiedostoista on voinut palauttaa tietoja, on tämä julkinen rakennekuvaus varmasti omiaan helpottamaan ohjelmistovalmistajien työtä.

Mainittu dokumentaatio löytyy MSDN-sivustolta nimellä “Outlook Personal Folders File Format (.pst) Structure Specification”.

Windows 7:n paikannusominaisuuksista kehittäjille

Yksi Windows 7:n uusista ominaisuuksista on tekniikka nimeltä Sensor and Location Platform, lyhyesti SLP. Tämä tekniikan tarkoituksena on helpottaa erilaisten mittalaitteiden (esim. lämpötila-, liike- ja vaikkapa valoisuusmittareiden) käyttöä ja ohjelmointia.

Perinteisesti jokaista laitetta on ohjelmoitu eri tavoin, mikä on ollut kehittäjille hankalaa. Windows 7:n myös SLP pyrkii luomaan kaikille laitteille yhteisen ohjelmointimallin, jolloin yhden COM-pohjaisen ohjelmointirajapinnan kautta voidaan helpommin ohjelmoida erityyppisiä laitteita. .NET-ohjelmoijille on tarjolla Windows API Code Packissä valmiita luokkia, jotka toimivat näiden COM-luokkien päällä helpottaen ohjelmointia vaikkapa C#:sta käsin.

Geneeristen mittalaitteiden ohjelmoinnin lisäksi SLP tuo mukanaan tuen paikannuslaitteiden helpolle käytölle. Windows 7:ssa Ohjauspaneeliin (Control Panel) tulee uusi kohta “Location and other sensors”, josta voidaan hallita yhteensopivia mitta- ja paikannuslaitteita. Näiden laitteiden ajurit ovat muuten käyttäjätilan ajureita (user-mode), eli niitä on helppo ohjelmoida itsekin, ainakin kernel-ajureihin verrattuna.

Kehittäjiä kiinnostaa varmasti myös se, että .NET 4.0:n myös Windows 7 -yhteensopivia paikannuslaitteita voidaan ohjelmoida uuden System.Device.Location-nimiavaruuden luokkien avulla. Ideana on, että kunhan laite on yhteensopiva, sitä ohjelmoidaan samoilla API-kutsuilla riippumatta siitä onko laittteen paikannustoiminto GPS-, kännykkä- tms. -pohjainen. Alkuun pääsee GeoCoordinateWatcher-luokan avulla, josta löytyy kätevästi nimetty Start-metodi. Sillä pääsee liikkeelle, ja paikkatiedon voi hetken päästä lukea Position-ominaisuudesta.

Vielä kun jostain löytyisi lista laitteista, jotka ovat jo yhteensopivia Windows 7:n Sensor and Location Platformin kanssa. Sitä metsästäessä...

Windows Phone 7:lle kehitetään Silverlightilla ja XNA:lla

Microsoft julkaisi Barcelonassa 15.2. Windows Phone 7 Series –puhelinalustan. Alusta sai kelpo vastaanoton, ja johti jopa siihen, että osa lehdistöstä ryhtyi luonnehtimaan iPhonen käyttöliittymää vanhentuneeksi. Lisätietoja Windows Phone 7 Seriesistä saa tuotesarjan omalta saitilta.

WP7:n kehittäjäkokemuksesta luvattiin kertoa vasta MIX10-tapahtumassa muutaman viikon päästä, mutta kuumilla tiedoilla on tapana vuotaa. Niinpä nyt onkin jo selvää, että WP7:n ohjelmointialusta tulee olemaan hyvin pitkälti .NET-pohjainen, ja tarkemmin ottaen taustatuotteet ovat Silverlight ja XNA Framework.

XNA:n mukanaolo onkin luontevaa, sillä WP7:ssa on vahvasti mukana myös XBoxista tuttu Live-pelaaminen. XNA:n alkuperäinen lupaus yhden koodin kääntämisestä niin PC:lle kuin konsolillekin tuskin laajenee tätä myötä mobiilimaailmaan, mutta ainakin pelikehittäjät voivat hyödyntää täysveristen pelien toteutusratkaisuja jatkossa entistä helpommin myös mobiilimaailmassa.

WP7-puhelimet tulevat markkinoille joulumyyntiin.

Visual Studio 2010 Release Candidate ladattavissa

Microsoft julkaisi eilen Visual Studio 2010:stä ja .NET 4.0:sta ensimmäisen Release Candidate -version (RC 1). Tätä versiota osattiinkin jo odottaa, sillä varsinaisen RTM-version pitäisi olla valmis jo huhtikuussa.

Scott Guthrien blogista löytyy tuttuun tapaan lisätietoja uudesta versiosta, jonka suunnittelussa on keskitytty varsinkin IDE:n suorituskykyvyn parantamiseen. Varsinainen lataussivusto löytyy täältä. Muistahan antaa palautetta, joko Connect-palvelun kautta, tai esim. vastaamalla tähän kyselyyn.

Ei siis muuta kun piuhat kuumiksi!

ASP.NET MVC 2:sta ulos RC2

ASP.NET MVC:n tulevasta kakkosversiosta on eilen tullut ulos Release Candidate 2 -versio (RC 2). Uusia ominaisuuksia ovat mm. parempi tietojen validiointi, HtmlHelper-olion vahva tyypitystuki sekä jQuery 1.4.1 –tuki vakiona.

RC2:n voi ladata Downloads-sivustolta, ja tarkempi postaus ominaisuuksista löytyy täältä.

IronJS: JavaScriptin .NET-pohjainen toteutus

Jo pidemmän aikaa Ruby- ja Python-ohjelmointikielistä on ollut saatavilla .NET-pohjaiset Iron-toteutukset IronRuby ja IronPython. Nyt joukkoon on liittynyt länsinaapuristamme liikkelle lähtenyt IronJS, jonka tarkoitus on siis toteuttaa JavaScript-moottori .NET:n päälle.

Projekti on avoimen lähdekoodin projekti Ms-PL -lisenssillä, ja löytyy GitHubista. Suorituskyvyn kannalta tulokset voi arvata, eli .NET-toteutus on selvästi perinteisiä tulkattavia versioita vauhdikkaampi. Nyt ollaan menossa alpha-tasoisessa koodissa, joten valmiiseen toteutukseen on tosin vielä matkaa.

Jos projekti kiinnostaa, käy tutustumassa projektin pääsivuilla asiaan.

Nopeaa käyttöliittymäprotoilua SketchFlowlla

Käyttöliittymiä suunnitellessa tulee usein tarvetta protoiluun. Kenties asiakkaille halutaan esitellä nopeasti muokattavissa olevia malleja, joiden pohjalta keskustelu jatkosuunnittelusta konkretisoituu. Protoiluun on tietysti useitakin erilaisia ratkaisuja (eräs low-tech -ratkaisu on vaikkapa fläppitaulu tai PowerPoint-esitys), mutta jos sattuu olemaan tekemässä WPF- tai Silverlight-sovelluksia, voi käyttää apuna Expression Blend 3:n SketchFlow-ominaisuutta.

SketchFlow kuuluu Blend 3 -ohjelmistoon, ja se on tarkoitettu juurikin protoiluun. SketchFlowin avulla piirretään normaaleja WPF- tai Silverlight-käyttöliittymiä, kuitenkin käyttäen normaalien kontrollien sijaan erityisiä kontrolleja, jotka näyttävät käsin piirretyiltä. Käsin piirrettyjen kontrollien käyttö on tärkeää siksi, ettei huomio kiinnittyisi kontrollien ulkoasuun, vaan toiminnallisuuteen sekä esimerkiksi liikkumiseen ruutujen/lomakkeiden välillä (SketchFlow-termein screen).

Alkuun SketchFlowlla

SketchFlown käyttö vaatii erillisen projektin avaamisen Blendiin. Valitaan siis File-valikosta uusi projekti:

Sekä Silverlight- että WPF-projekteille on omat SketchFlow-projektimallinsa. Tässä valitaan WPF-sovelluksille sopiva malli. Kun projekti on luotu Blendiin, ruudulla pitäisi näkyä tyhjä valkoinen Screen 1. Nyt voidaan mennä Assets-ikkunaan ja valita sieltä kohta SketchFlow, ja edelleen sen alta kohta Styles/SketchStyles.

 

Tästä kohdasta löytyy joukko kontrolleja, joilla voidaan suunnitella karkeasti sovelluksen käyttöliittymä ruutu kerrallaan. Kontrolleja voidaan pudottaa ruutuun kuten mitä tahansa muitakin WPF-kontrolleja:

Ruutuja voidaan helposti luoda lisää käyttämällä lomakesuunnittelijan alta löytyvää SketchFlow Map -toimintoa käyttäen. Tämän kartan ideana on määritellä liikkuminen ruutujen välillä. Pienillä ruutua esittävän ikonin alle ilmestyvillä napeilla on helppo lisätä uusia ruutuja sovellukseen. 

Proton esittely ja kommentointi

Kun proto on edellä kuvatulla keinoilla suunniteltu, voidaan prototyypistä tehdä ajettava sovellus (kokoa kertyy pakattuna noin pari megaa), joka voidaan lähettää asiakkaalle vaikkapa sähköpostilla. Asiakas voi ajaa prototyypin erillisessä Player-ohjelmassa (kuuluu Blendiin), ja käyttää sitä liikkumaan ruutujen välillä navigaatio-toimintojen avulla. Navigaatiovaihtoehdot perustuvat suoraan aiemmin tehtyyn ruutukarttaan (map).

 

Player on siitä kätevä, että käyttäjä voi käyttää sitä palautteen antamiseen. Ruutujen päälle voidaan piirtää korostusvärillä, ja sanallistakin palautetta voidaan antaa ruutukohtaisesti. Palautteen voi tallentaa levylle yhdeksi tiedostoksi, ja tämä tiedosto voidaan lähettää takaisin suunnittelijalle/kehittäjälle. Palautteen saa sitten näkyviin uudelleen Blendissä avaamalla luodun XML-tiedoston (tiedostopääte on .feedback) Feedback-ikkunassa.

Visuaalinen palaute taas näkyy suoraan ruudulla:

 

Yhteenveto

SketchFlow on näppärä tapa tehdä käyttöliittymäprotoja, varsinkin jos sattuu olemaan tekemässä WPF- tai Silverlight-sovelluksia. Hienoa on, että ruutujen välillä liikkuminen on tehty helpoksi. Myös palautteen kerääminen hoituu näppärästi, varsinkin jos suunnittelija/kehittäjä ja käyttäjä/asiakas eivät pääse istumaan saman pöydän ääreen.

Windows Azuren euro-hinnat selvillä

Microsoft julkisti viimeinkin myös euro-pohjaiset hinnat Windows Azure -pilvialustalle. Hinnat löytyvät jo aiemmin käytössä olleelta hinnastosivulta, mutta uutta on, että nyt kohdemaaksi voi valita Finland, jolloin hinnat näkyvät euroissa.

Tässä nopea yhteenveto perushinnoista:

Windows Azure

  • Compute
    • Small instance (default): € 0.0852 per hour
    • Medium instance: € 0.1703 per hour
    • Large instance: € 0.3405 per hour
    • Extra large instance: € 0.6809 per hour
  • Storage
    • € 0.1064 per GB stored per month
    • € 0.0071 per 10,000 storage transactions
  • Content Delivery Network (CDN)
    • Service currently available as a Community Technology Preview (CTP) at no charge

SQL Azure

  • Web Edition – Up to 1 GB relational database
    • € 7.085 per database per month
  • Business Edition – Up to 10 GB relational database
    • € 70.913 per database per month

AppFabric

  • Access Control
    • € 1.4114 per 100,000 transactions
  • Service Bus
    • € 2.8298 per connection on a “pay-as-you-go” basis
    • Pack of 5 connections € 7.0566
    • Pack of 25 connections € 35.2827
    • Pack of 100 connectionss € 141.1308
    • Pack of 500 connections € 705.654

Data Transfers

  • North America and Europe regions
    • € 0.071 per GB in
    • € 0.1064 per GB out
  • Asia Pacific Region
    • € 0.2128 per GB in
    • € 0.3192 per GB out.

Lisää hintoja löytyy siis Azuren sivuilta.

Bing Maps -karttapalveluiden SDK-paketit päivittyneet

Muutaman kuukauden tauon jälkeen tuli jälleen tarvetta tutustua Bing-karttapalveluihin ja erityisesti niiden liittämiseen omiin web-sovelluksiin.

Vielä syksyllä ongelmana oli, että Live Search -palvelusta siirtyminen Bing Maps –brändin alle oli kesken, eivätkä kehittäjien SDK-paketit siksi enää toimineen uusien Binh-palveluiden kanssa. Nyt tämä näyttäisi korjaantuneen.

Tässä linkit kahteen hyödylliseen SDK-pakettiin:

Nämä uudet kehittäjäpaketit on päivitetty marras- ja joulukuun päiväyksin, joten suhteellisen tuoretta tavaraa on tarjolla.

Hyvää Uutta Vuotta 2010!

Hyvää Joulua!

Joulun aika on hyvä hetki istahtaa alas ottaa rennosti, ja kenties jopa viettää hetki ilman nettiyhteyttä ja konetta.

Ohjelmistokehitysryhmä toivottaa kaikille ITpro.fi-yhteisön jäsenille rauhallista ja iloista Joulua! Palaamme taas asiaan pyhien jälkeen.

1 - 10 Next

 Jäsenet

BerglundMika
HeikniemiJouni
JärvinenJani
PoimalaSami
SuniNiko

 ‭(Hidden)‬ Toiminnot

 Linkit

  C# MVP Bloggers

 Aiemmat kirjoitukset

Microsoft julkaissut Outlookin PST-tiedostojen rakenteen
Windows 7:n paikannusominaisuuksista kehittäjille
Windows Phone 7:lle kehitetään Silverlightilla ja XNA:lla
Visual Studio 2010 Release Candidate ladattavissa
ASP.NET MVC 2:sta ulos RC2
IronJS: JavaScriptin .NET-pohjainen toteutus
Nopeaa käyttöliittymäprotoilua SketchFlowlla
Windows Azuren euro-hinnat selvillä
Bing Maps -karttapalveluiden SDK-paketit päivittyneet
Hyvää Joulua!
Pikakuvake Windows 7:n tehtäväpalkkiin verkossa olevalle sovellukselle
Visual Studio 2010 RC helmikuussa, ASP.NET MVC 2 RC saatavilla nyt
Missä Visual Studion mallipohjat oikein majailevat?
Whitepaper: Mitä uutta .NET 4.0:ssa?
Hyödynnä Windows 7:n tehtäväpalkin uusia toimintoja Windows API Code Packin kautta
Yksinkertainen lokiinkirjaus ASP.NET MVC -sovelluksissa
Mikä Visual Studio 2010:n Lab Management -toiminto oikein on?
Ohjelmistomallit testiin Spec Explorerilla
Visual Studio 2010:n tuotteistus muuttuu
Microsoft Ajax CDN – JavaScript-tiedostot jakoon Microsoftilta
ITpro-bloggauksen henkilökohtainen kunniataulu
Mitä uutta Silverlight 3:ssa?
Verkkovirralla vai akuilla? – selvyys koodista tai skripteistä
Kattava Mastering PowerShell -ekirja ilmaiseksi
Web-sovellusten ongelmien selvittäminen IIS 7:n Failed Request Tracing -ominaisuuden avulla
Doloto pilkkoo JavaScriptisi
SQL Serverin paikkatietotyyppien käsittely C#:lla
Miten tunnistaa lukitut BitLocker To Go -muistitikut koodissa?
Säätietoja verkkoon ja Twitteriin
Code Contracts -laajennus ja staattiset analyysit
SQL Server 2008 R2:n ensimmäinen CTP-versio tuli saataville
Valmista tuli: Windows 7 MSDN:ssä
ASP.NET MVC 2:sta ensimmäinen preview-versio
Kuinka profiloin sovellukseni suorituskykyä Visual Studio 2008:lla?
Verkkokirjastojen uudistuksia .NET 4.0 Beta 2:ssa
Windows 7 on valmis
Windows Azuren hinnat julki
Windows 7 E – pian täällä, mitä sitten?
Oracle-tuki putoamassa pois ADO.NET:stä
Lisäturvaa ASP.NET -sovelluksille
Lapset koodaamaan Kodulla
Putkimerkki FTP-käyttäjätunnuksissa Expression Web 2:ssa
SQL Server Compact toimimaan ASP.NET-web-sovelluksissa
.NET Servicesin workflow katoaa loppuvuodeksi
PowerShell kertoo, ketkä ovat ITpron aktiivisimmat
Uusista rinnakkaisuusluokista .NET 4.0:ssa
Uudet verkkovarmistusratkaisut vaativat sovelluksilta yhteistyötä
Visual Studio 2010 ja .NET 4.0 Beta 1 ladattavissa
SQL Server 2008 Training Kit saatavilla
Työpöytäsovellusten levittäminen muuttumassa
1 - 50 Next