From: tensu@cs.tut.fi (Tero Ahtee)
Subject: Olio-ohjelmointi -kirja
Originator: tensu@hemppo.cs.tut.fi
Keywords: t{m{ on vain oma kommenttini
Organization: Tampere University of Technology
Distribution: sfnet
Date: Thu, 13 Aug 1992 11:35:44 GMT


Muutama valikoitu poiminto kirjasta 

Risto P{{rni. Olio-ohjelmointi. 1991, Suomen Atk-kustannus Oy, 229 s.,
hinta kirjakaupassa noin 250 mk.


---------- 

M{{ritelm{n mukaisesti puhtaasti olioperustaisia k{{nt{ji{ sek{
tulkkeja ovat mm. Smalltalk, Turbo Pascal, C++, Actor sek{ CLOS. 

Ihmisen ja koneen v{linen vuorovaikutusolioperustainen ikkunointi.

Viime vuosina ovat erilaiset ikkunointij{rjestelm{t, kuten MSWINDOWS
ja XWINDOW, yleistyneet...

Viimeisen{ oliomallin osana on olemassaolo. Olemassaolo on ominaisuus,
jolla olion elinik{ tai sijainti m{{rittyy. 

Valitsin (selector) Connects
Operaatio joka avaa olion tilan, mutta ei muuta sit{.

Polymorfismi tarkoittaa, ett{ muuttujat voivat olla useaa eri tyyppi{
samanaikaisesti kutsun mukaisesti.

Luokkien k{ytt{missuhde sotketaan usein monenkertaiseen periytymiseen,
mutta kyseess{ on kaksi eri asiaa. 

Strukturoidulla analyysill{ suunnittelija kartoittaa reaalimaailman
ilmi|n tietovirroiksi ja ympyr{kaavioiksi, eli palloiksi (bubbles).

Boochmenetelm{

Uusin aluevaltaus on k{ytt|liittymien samankaltaistuminen MSWindowsin
yhteyteen.

Smalltalk /V Windows on yksi versio Digitalk Inc:n luomista
Smalltalkohjelmista. 

Perusideana Smalltalkissa on ns. kehysajattelu: Kunkin ohjelman
yhteydess{ on m{{ritelty kaikilla ohjelman tasoilla p{tev{t muuttujat.

Matalimmalla tasollaan Smalltalk on perinteinen ohjelmointikieli kuten
Pascal, C jne.

Oliot ovat itsens{kuvaavia (selfdescribing) tietorakenteita. 

Smalltalk /V for Windows on hyv{ ty\kalu suhteellisen pienten
projektien hallintaan.

K{ytt|liitynt{ Turbo Pascal for Windowsissa on kuten kaikki muutkin
MS-Windowsin alla toimivat ohjelmat.

My|h{inen sidonta yhdisty{{ yksik|n vanhat osat kirjoittamiisi uusiin
m{{rityksiin.

Oliot voidaan m{{ritell{ staattisiksi termill{ var, tai dynaamisisiksi
aliohjelmalla New.

Olioiden m{{ritt{minen dynaamisiksi tapahtuu New proseduurilla:

Rakentajat ja tuhoajat ovat vastaavia rakenteita kuin Turbo
Pascalissa. C++:ssa kyseiset operaatiot ovat new sek{ delete.

C++ sis{lt{{ my|s virtuaalit funktiot sek{ dynaamiset oliot. N{iden
toimintaperiaate on sama kuin Turbo Pascalissa. Yksityiskohtaisempaa
tietoa C++:sta on saatavissa lukuisissa ohjelmointioppaissa sek{
ohjelmistomanuaaleissa.

C-kieli on tehokasta, mutta siit{ puuttuu ajoaikaisen j{rjestelm{n
tarkistukset. T{m{ on yksi puutteista joka syntyy, koska C-kieliset
k{{nt{j{t perustuvat tietovirtoihin, joiden avulla juuri saavutetaan
k{{nt{jien nopeus ja tehokkuus.

Yhten{isen k{ytt|liittym{n edut ovat selvi{; ... Moniajo ...
Muistinhallinta ... 

---------- 

Mm. esimerkeiss{ normaalin tekstin seassa esiintyvist{ lukuisista
erikois- ja kontrollimerkeist{ ei kannata pit{{ edes lukua...

Vitsin{ kerrotaan ett{ "avaa ko. kirja satunnaisesti milt{ tahansa
sivulta ja laske montako asia- ja/tai kirjoitusvirhett{ l|yd{t...".


Miten t{m{ on mahdollista Suomessa ? Taustoista olen kuullut vain sen
verran, ett{ P{{rni valmistui Helsinki-Vantaan teknillisest{
oppilaitoksesta, ja t{m{ kirja oli h{nen lopputy|ns{ (suorat huonot
k{{nn|kset englanninkielest{ selittyv{t t{ll{), johon ohjaajat olivat
esitt{neet lukuisia korjauksia. Jollakin ihmeen tavalla t{m{ kuitenkin
painettiin hyv{maineisessa kustantamossa ilman insin||rity|n ohjaajien
korjausten huomioon ottamista. T{ss{ lopputulos. Kirjan hy|dyn
arvioikoon jokainen itse. 


	Tensu



-- 
Tero Ahtee * tensu@cs.tut.fi  *  Tampere  *  Finland  *  Europe 
Login ergo sum.   <>   Workload is not killing - it is challenging.
COMMERCIAL : Why should you pay less for a better computer - buy IBM !

-- 
Newsgroups: sfnet.atk,sfnet.huuhaa