Symbiatch - maailma on rikki

Utopia vs. todellisuus

31.01.2007 14.39 - ohjelmointi 

Aloin tässä lueskella ensimmäistä Symbian-aiheista kirjaa (siis en ole aiemmin moisia lukenut, ei niin että tuo kirja olisi välttämättä ensimmäinen kirjoitettu), Symbian OS Explained. Ehkä sitä voisi tutkia miten asiat pitäisi oikeasti tehdä ja tuo valmentaisi Accredited Symbian Developer -tutkintoonkin, jos sellaisen jaksaisi kokeilla. Tuota kirjaa lukiessa tuli heti alussa mukava kohta vastaan:

The user expects the phone to be responsive, not sluggish to respond to each key press; the operating system and hardware must carefully balance demands for good performance speed with the consumption requirements of power-hungry processors.
Besides being efficient, the operating system must be robust when the limited resources are exhausted. It must be engineered to cope with low memory conditions, loss of power or when a communications link is unavailable. Memory management is key. The operating system must track precious system resources accurately and free them when they are not required. It’s not acceptable for memory to slowly leak away, resulting in disintegration in performance and usability until the user is forced to reboot. The operating system should make it easy for software engineers to write code that runs without memory leaks and can handle out-of-memory conditions when they occur.
So when a phone is shipped, it’s shipped. It must not have any serious defects. Not only must the platform on which a phone is based be well-engineered, it must also provide the means for developers to build, debug and test robust code.

Näistä viisaista sanoista voisi ottaa varsinkin eräät valmistajat oppia. Jostain syystä ei tajuta, että ei se puhelin oikeasti saa miettiä puolta sekuntia näppäinpainalluksissa, muistia pitäisi oikeasti olla käytettävissä eikä systeemi saa vuotaa sitä omiin touhuihinsa taustalla. Eikä puhelin saisi sekoilla ja jumitella kun verkko katoaa, sanoo erään yrityksen tukipuolen päähenkilö mitä tahansa.

Hassua sinänsä, että Symbian-kirjan kirjoittaja ja kehittäjä kirjoittaa tuollaisia kirjan alkuun, varmasti tietää itse etteivät asiat Symbian-alustoilla yleensä näin ole.

Tai no, tämä kohta kyllä vähän vihjaa ettei tiedä (tämä on juuri ennen Symbian 8.0:n tuloa kirjoitettu):

The huge demands upon a mobile operating system have shaped Symbian OS, from resilient power-management and careful use of memory resources, to the sophisticated use of C++ and object-oriented programming techniques.

Kukaan täysjärkinen ei varmaankaan sano, että Symbian (tuolloin varsinkaan) käytti sofistikoidusti C++:aa, sen deskriptorit ja muut ovat vihan ja kauhistelun kohde suurimmalle osalle jne. Muistin tuhlailusta en voi kyllä syyttää, esimerkiksi bitmapit pakataan muistiin ja muuta mukavaa, eli se on aika oikein.

[developing software is] not easy, but opting to work on Symbian OS gives you the benefits of a purpose-built platform.

Näinpä.

Kommentoi

Kommentit

(anon, 31.01.2007 18.41)

Josko et ole huomannut, niin Symbian kirjallisuuteen sisältyy hyvin hyvin paljon markkinahakuisuutta. Kirjat ovatkin taitavasti naamioituja ei mitään todellista tietoa antaavaa teknisesti suuntautuneelle lukijalle. Ennenmuinoin manuaalit ja kirjat sisälsivät
insinööritietoa insinöörille ja näillä 200-sivusilla manuaaleilla pärjättiin hyvin suunnitelutoimistoissa. Siis, Symbian-kirjoissa jostain syystä ei haluta esittää asioiden todellista laitaa.

Muuten, oletko koskaan nähnyt sellaista webbisivua (Symbian-kirjaa), jossa Symbian C++ esimerkkinä parseroidaan merkkijonoa (deskriptoria), joka sisältää kokonaislukuja eroittimella eroitettuna, ja sitten nuo eroittimien välissä olevat numerot muutetaan kokonaisluvuksi? Esim. "1|2|3". Minä en ole tällaista esimerkkiä nähnyt vielä missään Nokian enkä muidenkaan Symbian-evankelistojen dokumenteissa.

Symbiatch (31.01.2007 21.11)

Tämä kirja itse asiassa vaikuttaa (ensimmäisten kymmenen sivun perusteella jotka nyt ehdin vasta lukea) ihan mukavalta. Kirjoittaja kovasti kyllä vihjailee että antaa vinkkejä suuntaan jos toiseenkin, katsotaan miten käy.

Moista esimerkkiä en ole nähnyt mutta en sitten tiedä onko kovin tarpeellinenkaan. TLex kuitenkin hoitaa homman melko helposti, kunhan itse varmistaa että erottimet ovat ne mitä pitää (jos se on vaatimus, muutenhan riittää vain "lue luku, hyppää yhden yli, toista"-tyylinen ratkaisu).

anon (anon, 01.02.2007 18.28)

Katso TLex esimerkki vaikka täältä: http://www.tol.oulu.fi/kurssit/mobo/files/html_solution/BuildableProperty_8cpp-source.html#l00047

Koodi parsii esimerkiksi tämän näköisen rivin tekstiä deskriptoreiksi ja numeroiksi:

PROPERTY,Korkeavuorenkatu,400,150,1000,850

(anon, 02.02.2007 18.56)

Hienoa, nyt löytyi joku, joka postasi sivustollesi linkin kuinka parseroidaan merkkijonoa Symbia C++:ssa. Josko linkin lähettäjä vielä tekisi sen, että lähestyisi
Jo Stichburyä, ja lähettäisi tämän linkin/esimerkin Jo'n Descriptor-sivustolle :
"http://descriptors.blogspot.com/"

Jutut.fi  |  Omat jutut  |  Muiden jutut  |  Kategoriat  |  kirjaudu