Tagi: "ohjelmointi"

Eroja regexp-kirjastoissa

24.1.2012 Kirjoittanut

Regexp-kirjastot ovat funktionaalisesti kaikki samanlaisia. Vai ovatko?

Eivät sittenkään. Osassa on mietitty vähän hämärämpiä käyttötapauksia, ja mahdollistettu muun muassa osittaisen matchin erottaminen epäonnistuneesta matchista. Kaikkein yleisikäyttöisin rajapinta olisi sellainen, joka mahdollistaisi täyden streamauksen, mutta se on harvinainen.

Otetaan esimerkki käyttötapauksesta: webissä on sivu, ja sivulla lomake, jossa on kenttiä, joilla on jotain muotovaatimuksia. Kehittäjä määrittelee [...]

Jatka lukemista

Single supplier -työkalut

14.12.2011 Kirjoittanut

Javaa, erityisesti enterpriseä kehittäessä testisykli käännös- ja deploymentaikoineen on aivan liian pitkä. Tätä paikkaamaan on kehitetty lukuisia ratkaisuja, joista tässä artikkelissa minua kiinnostaa JRebel.

JRebel korjaa Javan (ja JVM:n) ongelman, ettei luokkia voida muuttaa käynnistämisen jälkeen. Tästä seuraa useamman vaiheen kautta JEE:n hitaat turnaround-ajat. JEE-kehittäjät kautta maailman ovat ottaneet sen ilolla vastaan. Aikaisempina [...]

Jatka lukemista

Seikkailuja editorimaassa

20.10.2011 Kirjoittanut

Tilapäisessä mielenhäiriössä aloin taas toteuttaa pientä kirjastoa
C:llä. Ajattelin kokeilla samalla (olihan kyseessä puhdas
harrasteprojekti, ja näissä on hyvä aina kokeilla) namespace-ratkaisua
nimitörmäysten välttämiseksi.

No, aloin kirjoittaa:

#ifndef G #define G(symbol) pieni_ ## symbol #endif typedef struct G(foobar) *G(foobar_t); typedef …

Ja cc-moden autoindent hajosi pyytämättä ja yllättäen jo viidennellä
rivillä.

[...]

Jatka lukemista

Viime aikoina on tullut työstettyä kahtakin projektia, joissa edes jokin osa kehitystyöstä on C:llä kirjoitetun komponentin muokkaamista. Ei ehkä aivan sattumalta molemmissa tapauksissa päädyin olemaan se kehittäjä, joka tämän tehtävän saa. Vaikka projektien substanssit olivat kovin erilaiset, molemmissa tapauksissa silmään oikein erityisesti pisti, että C:llä on oikeastaan kivempaa koodata kuin esimerkiksi Javalla tai Pythonilla. Jäin [...]

Jatka lukemista

Luin yleisestä mielenkiinnosta molemmat toimistolla olevat Scala-kirjat [1]. Ne ovat Programming in Scala (Odersky, Spoon, Venners) ja Programming Scala (Wampler, Payne). Nimet ovat hämäävän samankaltaiset, toisaalta tämänlaisessa tietokirjallisuudessa näin vain käy. Ensimmäisen kirjoittajista yksi, Martin Odersky, on Scalan pääasiallinen suunnittelija ja liikkeellepaneva voima.

Lyhyesti, Oderskyn et. [...]

Jatka lukemista

On yleisesti tunnustettu totuus, että C:n operaattorien sidontajärjestys tarvitsee välttämättä vertailu- ja bittioperaatioiden vaihdon. Esimerkki: a >> 5 & 3 == 1 && b >> 7 & 15 == 8. Melko selkeästi tarkoitetaan (((a >> 5) & 3) == 1) && (((b >> 7) & 15) == 8), mutta C:ssä, ja sen vaikutuksesta yllättävän monessa [...]

Jatka lukemista

Kertakäyttökoodista

8.3.2010 Kirjoittanut

Ohjelmoijien kansanperinteeseen kuuluu erottelu kertakäyttökoodiin ja tuotantokoodiin. Tuotantokoodin erilaisia laatutasojakin nähdään yleensä olevan ainakin muutamia. Haluan kuitenkin tarkastella kertakäyttökoodin käsitettä.

Koska koodi kuitenkin jää olemaan, ja on riski sen uudelleenkäytöstä, pitäisi tunnustaa tosiasiat, eikä elää valheessa. Kaikki koodi pitäisi kirjoittaa vähintään minimaalisella tuotantokoodin tasolla: kehittäjän itsensä pitää ymmärtää se myös puolen vuoden päästä.

Ohjelmoijan tapa [...]

Jatka lukemista