cyanic-selkie/wikianc huggingface dataset:
Olio-ohjelmointi
Menetelmiä
Käyttäytymismallit ovat vastuussa tehokkaasta komponenttien välisestä kommunikaatiosta. Nämä mallit huolehtivat olioiden välisestä vuorovaikutuksesta ja vastuiden määrittelystä. Näiden mallien tavoite on tehdä näistä prosesseista mahdollisimman yksinkertaisia ja helppoja ymmärtää. Yksi esimerkki käyttäytymismalleista on observer (tarkkailija), jota käytetään usein, kun jokin olio on vuorovaikutuksessa monen muun olion kanssa. Malli toimii siten, että oliot, jotka tarkkailevat yhtä tiettyä oliota saavat heti tietää, jos tarkkailtu olio muuttuu tai vaihtaa tilaa. Käyttäytymismalli kuvaa myös ohjelmiston luokat. Malli voi olla luokkiin perustuva, olioihin perustuva tai toiminnallisuuden kapselointi olioon perustuva. Olioihin perustuva yksi käyttäytymismalli on Chain of Responsibility (vastuuketju), joka perustuu siihen, että toiminnot delegoidaan olioille. Tiedonsiirto, joka tapahtuu olioiden välillä perustuu pyynnön käsittelevien olioiden muodostamasta ketjusta, jossa pyyntö käsitellään siinä olevasta oliossa, joka on kyvykäs toteuttamaan pyynnön.
Olioteknologioiden käyttö ohjelmiston suunnittelussa ja toteutuksessa ei ohjaa minkään tietyn prosessimallin käyttöön tai muuta ohjelmiston laadunvarmennuksen perusperiaatteita. Olioteknologian asiantuntijat ovat kuitenkin osallistuneet aktiivisesti keskusteluun ohjelmistoprosesseista. Ketterät menetelmät, käyttötapausmallinnus ja testivetoinen kehitys syntyivät pienessä Smalltalk-kehittäjien yhteisössä, josta ne ovat levinneet yleisempään käyttöön vuosituhannen vaihteen jälkeen.
Polymorfismi - monimuotoisuus
Alatyypitys (subtyping) on yksi monimuotoisuuden ilmentymä. Alatyypityksessä kutsuttu koodi voi olla riippumaton siitä, missä tuetussa hierarkiassa se toimii, esimerkiksi kantaluokka tai jokin kantaluokan lapsiluokka. Samaan aikaan, esimerkiksi saman niminen metodi eri luokissa voi toimia eri tavalla, kun on kyse periytymisestä.
Esimerkiksi luokat, jotka ovat tyyppiä Ympyrä ja Neliö, ovat periytyneet kantaluokasta Muoto. Piirrä-metodi jokaisella luokalla, jotka ovat periytyneet Muoto-luokasta, implementoivat metodin itselleen vaatimallaan tavalla, jotta vaadittu muoto piirtyy. Samalla koodin kutsuminen ei muutu, vaikka käsiteltäisiinkin monia eri Muoto-luokan lapsiluokkia, koska jokaisella lapsiluokalla on Piirrä-metodi ja sitä voidaan kutsua yleisesti Muoto-luokan kautta.
Luokka- vs. Prototyyppipohjainen
Luokkapohjaisessa ohjelmoinnissa luokat on määritelty etukäteen ja oliot on luotu luokkiin pohjautuen. Jos kaksi oliota omena ja appelsiini ovat luotu luokasta hedelmä, ovat molemmat hedelmiä ja on taattu, että voit käsitellä niitä samalla tavalla; esim. Ohjelmoija voi olettaa kummallakin olevan samat ominaisuudet, kuten väri, sokeripitoisuus tai on_raaka.
Prototyyppipohjaisessa kielessä oliot ovat itsenäisiä kokonaisuuksia. Luokkia ei ole. Olion prototyyppi on vain toinen olio, johon olio on linkitetty. Jokaisella oliolla on prototyyppilinkki (vain yksi). Uusia olioita voi linkittää jo valmiina oleviin olioihin linkittämällä se tämän prototyypiksi. Voit kutsua kahta eri objektia, omena ja appelsiini, Hedelmäksi, jos olio Hedelmä on olemassa sekä molemmilla olioilla, omenalla ja appelsiinilla, on asetettu Hedelmä prototyypiksi. Hedelmä ei ole tässä luokkana vaan olion jakavana ekvivalenssiluokkana. Olion attribuutit ja metodit on delegoitu kaikille tämän prototyypin määrittämän ekvivalenssiluokan olioille. Olion omistamia atribuutteja ja metodeja ei siis voi jakaa muille ekvivalenssiluokan olioille; esim. Attribuutti sokeri_pitoisuus voi puuttua oliosta omena. Prototyypin kautta voidaan toteuttaa vain yksi perintö.
Agenttiohjelmointi
Agenttiohjelmoinnin historia ulottuu vuoteen 1990, kun Yoav Shoham esitteli käsitteen tekoälytutkimuksessaan. Hänen luomansa agentit olivat erityisiä, koska niillä on vain yksi metodi yhdellä parametrillä. Agenttiohjelmoinnin käsite alkoi vakiintua 1990-luvun lopulla, kun useat tutkijat alkoivat kiinnostua siitä. Esimerkiksi vuonna 1998 James Odell julkaisi kirjan ”Object-Oriented Analysis, Design and Implemention”, jossa hän puhui myös agenttiohjelmoinnista. Vuonna 2000 agenttiohjelmoinnista tuli virallisesti IEEE:n (Institute of Electrical and Electronics Engineers) standardi.
Avoin rekursio
Kielissä, jotka tukevat avointa rekursiota, voivat luokan metodit kutsua toisia metodeja, jotka ovat samassa luokassa, tai itseään. Metodeja kutsutaan yleisesti käyttäen erikoismuuttujia tai avainsanoja nimeltään "this" tai "self".
Konstruktori
Konstruktoria voidaan kutsua myös muodostimeksi tai rakentajaksi. Luokkapohjaisessa olio-ohjelmoinnissa muodostin on funktio, jota kutsutaan luomaan olio. Se vastaa uuden olion alustamisesta ja asettaa jäsenmuuttujat alkuarvoihin. Sillä ei ole eksplisiittistä palautustyyppiä eikä se ole implisiittisesti peritty. Muodostaja on usein saman niminen kuin luokka. Muuttumaton olio täytyy alustaa muodostajassa. Useimmissa ohjelmointikielissä (Java, Python, C++ jne.) luokalla voi olla useampi kuin yksi muodostaja, joilla on erilaiset parametrit.
Olio-ohjelmoinnissa muodostaja tyyppejä on erilaisia. Parametrilliset muodostajat (parameterized constructor) voivat ottaa vähintään yhden argumentin ja ne mahdollistavat tietojen asettamisen, kun luokkaa luodaan. Oletusmuodostaja (default constructor) on parametriton muodostaja ja sen toiminta on kielestä riippuvainen. Javassa oletusmuodostajan luo kääntäjä automaattisesti, jos luokalle ei ole sitä määritetty. Tyyppien arvot ovat silloin oletusarvoissa eli kokonaislukutyypit jätetään arvoon 0, liukulukutyypit arvoon 0,0 ja boolean-tyyppi arvoon false ja viitetyypit ovat null. Kopiontimuodostajassa (copy constructor) on yksi muodollinen parametri, joka on luokan tyyppi ja parametri voi olla viittaus olioon. Tätä käytetään, kun halutaan luoda kopio saman luokan olemassa olevasta oliosta. Muunnoskonstruktori (conversion constructor) tarjoaa keinon luoda implisiittisesti yhteen luokkaan kuuluvan olion erityyppisen olion perusteella. Muunnoskonstruktori mahdollistaa tietotyypin automaattisen muuntamisen toiseksi oliota luodessa. C++:ssa siirtomuodostajat (move constructor) ottavat Rvalue-viittauksen luokan olioon. Niitä käytetään resurssien omistajuuden siirtämiseen.
Rooli suuntautunut ohjelmointi
Roolipohjainen ohjelmointi on ohjelmoinnin muoto, jossa asioita ilmoitetaan termien avulla, jotka yrittävät ilmoittaa ihmisen näkökulmasta, tämä tekee koodin lukemisesta sekä
ymmärtämisestä helpompaa kuin tavallisen koodin.
Pääajatus rooli pohjaisessa ohjelmoinnissa on se, että ihmiset ajattelevat koodin toimintaa roolien läpi. Esimerkkinä rooli pohjaiselle ohjelmille käytetään ihmistä jolla on useita eri rooleja kuten työ rooli tai koti rooli. Tämän henkilön vuorovaikutukset riippuvat siis pitkälti hänelle annetuista rooleista ja niiden ominaisuuksista. Ominaisuudet jaetaan usein delegoimalla tietyt tehtävät tietylle oliolle.
Roolipohjaisen ohjelmoinnin edut eivät myöskään rajoitu vain koodin ymmärrettävyyden paranemiseen. Roolipohjainen ohjelmointi myös helpottaa ohjelmiston testaamista sekä ylläpitoa. Kun ohjelmisto on rakennettu roolien ja niiden ominaisuuksien ympärille tekee se toimintojen testaamisesta helpompaa, sillä jokainen rooli ja sen vastuut on määritelty tarkasti.
Jolloin mahdollisten virheiden löytäminen on helpompaa
Vanhoissa ohjelmointi oppaissa sekä muissa opetusmateriaaleissa rooli pohjaista ohjelmointia on käsitelty huomattavan vähän. Se on kuitenkin hyödyllinen osa olio ohjelmointia ja sen merkitys on lisääntynyt uusien ohjelmistojen kehityksessä. Tämän tyylisessä ohjelmoinnissa roolit pyrkivät helpottamaan kontekstin ymmärtämistä. Roolilla voidaan myös tarkoittaa tiettyä joukkoa kuten ohjelmiston palveluita, jotka esimerkiksi mahdollistavat paremman paremman palvelimen suorituskyvyn tietyistä toiminnoista verkossa.
Tulevaisuudessa roolipohjaisen ohjelmoinnin merkitys ja käyttö tulee todennäköisesti kasvamaan, kun kehitetään yhä monimutkaisempia ohjelmistoja, joissa on useita toimintoja ja rooleja, jotka tarvitsevat erillistä huomiota ja käsittelyä.
(Role-oriented programming)
Sovellusalueita
Olio-ohjelmoinnin ensimmäisiä käyttökohteita olivat diskreetit tapahtumasimulaatiot, joissa mallinnettiin esimerkiksi puhelinjärjestelmien tai logististen järjestelmien toimintaa.
Olio-ohjelmointi soveltuu erityisen hyvin graafisten käyttöliittymien toteuttamiseen. Käyttöliittymäkirjastot, kuten Swing, SWT tai MFC sisältävät luokkahierarkian, joissa käyttöliittymän komponenttien yhteisiä ominaisuuksia hallitaan perinnän avulla.
Olio-ohjelmointi on hallitseva paradigma myös tietojärjestelmien suunnittelussa. Reaalimaailman käsitteet mallinnetaan olioanalyysissä ja käsitteitä vastaavat luokat toteutetaan ohjelmointikielellä. Yleinen ongelma tietojärjestelmissä on olioiden avulla esitetyn mallin tallentaminen relaatiotietokantaan, sillä relaatiomalli voi esittää käsitteiden välillä monesta moneen suhteita, mutta ei toisaalta pysty esittämään perintäsuhteita.
Suosittu olio-ohjelmointikieli on C++. Se on yleiskäyttöinen ohjelmointikieli, joka laajentaa C-kieltä lisäämällä tuen olio-ohjelmointiin. C++:n avulla kehittäjät voivat toteuttaa objekteja, periytymistä, moninkertaisuutta ja muita olio-ohjelmointikonsepteja. C++:n ominaisuudet tekevät siitä tehokkaan ja joustavan kielen, jota käytetään laajalti esimerkiksi pelien kehittämisessä, grafiikkasovelluksissa ja sulautetuissa järjestelmissä. Olio-ohjelmointi ei rajoitu C++:aan, vaan muita suosittuja olio-ohjelmointikieliä ovat C#, Python ja Ruby. Näiden kielten avulla kehittäjät voivat hyödyntää olio-ohjelmoinnin etuja, kuten koodin uudelleenkäyttöä, kapselointia ja helpompaa ohjelman ylläpitoa. Olio-ohjelmointia käytetään laajasti erilaisissa sovelluksissa, kuten web-kehityksessä, mobiilisovelluskehityksessä, tietokannassa ja tekoälyssä. Sen avulla voidaan luoda modulaarisia ja laajennettavia ohjelmistoja, jotka on helpompi ymmärtää, ylläpitää ja laajentaa.
Olio-ohjelmoinnin periaatteiden ymmärtäminen ja sen soveltaminen ohjelmointiin on tärkeää nykyajan ohjelmistokehityksessä. Se antaa kehittäjille mahdollisuuden työskennellä tehokkaasti ja auttaa rakentamaan laadukkaita ja joustavia ohjelmistoja.
Hajautetuissa oliosovelluksissa oliot on sijoitettu hajalleen eri palvelinten välille. Olioiden välinen viestintä hoidetaan sovitun protokollan, esimerkiksi SOAPin, CORBA tai RMI:n avulla. Olion luominen ja purkaminen tapahtuvat näennäisesti oliota kutsuvalla koneella, mutta itse olion suorittama proseduuri voidaan ajaa jollakin toisella tietoverkossa sijaitsevalla palvelimella.
Olio-ohjelmoinnin käyttö verkko protokollassa
Viestit, jotka liikkuvat palveluja pyytävän tietokoneen ja kyseistä palvelua tarjoavan palvelimen välillä voidaan suunnitella lineaarisiksi objektijonoiksi, jotka on määritelty luokka objekteina, nämä luokka objektit ovat tietokoneen ja palvelimen tiedossa. Esimerkiksi yksinkertainen lineaarinen objekti koostuisi pituuskentästä ja koodipisteestä, joka tunnistaa tarvittavan luokan ja saa kyseiseltä luokalta data arvon palautuksena. Jokainen viesti tulee suunnata palvelimelta objektille, jonka luokka objekti tunnistaa viestissä lähetetyn käskyn ja pystyy tarjoamaan pyydetyn palvelun. Palvelua käyttävän asiakastietokoneen ja palvelimen välistä yhteyttä mallinnetaan usein parhaiten kompleksina olio-orientoituneena rakenteena. Distributed Data Management Architecture (DDM) otti tämän lähestymistavan ja käytti luokkia määritelläkseen objekteja neljän tason muodollisella hierarkialla:
Olio-ohjelmoinnin käyttö pelien kehittämisessä
Videopelit voivat koostua muutamista tuhansista koodiriveistä miljooniin koodiriveihin. Sen vuoksi on tärkeä kirjoittaa koodia, joka on helposti muokattavissa ja ylläpidettävissä. Ohjelmointi tyyleistä olio-ohjelmointi on yksi mahdollinen tapa, jolla saadaan luotua ylläpidettävää koodia, joka on mukautuvaa, ymmärrettävää ja laajennettavissa. Sen avulla voidaan luoda uudelleen käytettävää koodia noudattamalla DRY (Don’t Repeat Yourself) -menetelmää, eli suomennettuna, älä toista itseäsi menetelmää, joka tarkoittaa, että jokin tietty toiminnallisuus kirjoitetaan kerran ja tätä käytetään uudelleen, kopioimisen sijasta. Tämä tapa sopii hyvin pelien kehittämiseen, koska peleissä on asioita, joita halutaan tehdä monesti uudelleen. Olio-ohjelmointi tarjoaa tiettyjä erityisominaisuuksia, jotka voidaan nähdä etuina pelien kehittämisessä.
Pelin kehityksen kannalta koheesiota voidaan käyttää tilanteessa, jossa haluamme liikuutta esimerkiksi avaruusalusta. Tällöin meillä voi olla luokka nimeltä liike, joka hoitaa liikkumisen ja sitä voidaan käyttää uudestaan. Kytkeytymien tulee huomioida peliä tehdessä esimerkiksi siten, että mitä tapahtuu tilanteessa, jossa avaruusalus törmää asteroidiin, tuhoutuuko se vai ei? Abstraktiota voidaan soveltaa useampien olioiden liikutteluun pelissä. Tietty toiminnallisuus voidaan abstraktoida abstraktiksi luokaksi. Esimerkiksi avaruusalus ja asteroidi tarvitsevat samoja tietoja liikkumiseen, joita ovat esimerkiksi, nopeus ja sijainti. Objektin liikkuminen voidaan periyttää abstraktista luokasta avaruusalukselle, jolloin sitä ei tarvita avaruusalus luokassa.
Esimerkkejä peleistä, jotka ovat tehty Javalla, joka on olio-ohjelmointi kieli:
Ongelmia
Olio-ohjelmointi ei eduistaan huolimatta ole täysin ongelmatonta. Siinä missä proseduraalisessa ohjelmassa yhdessä kohtaa esiintynyt virhe saattoi vaikuttaa vain paikallisesti, olio-ohjelmoinnissa virheet monistuvat välittömästi kaikkiin oliota käyttäviin tahoihin. Olio-ohjelmoinnissa hyvän suunnittelun ja automatisoidun yksikkötestauksen merkitys korostuu. Väärin käytettynä olioilla voi myös olla suorituskykyvaikutuksia. Koska jokainen olio rakennetaan aina kokonaisuudessaan tietokoneohjelman muistiin, suurten oliomäärien käsittely voi viedä huomattavasti muistia.
Olio-ohjelmoinnin perusfilosofian (eli ohjelmointiparadigman) opettelu vie myös usein aikaa. Perinteisestä proseduraalisesta ohjelmoinnista olio-ohjelmointiin siirtyminen on joskus vaikeaa jopa kokeneille ohjelmistosuunnittelijoille. Nykyisin olio-ohjelmointia opetetaan useilla eri koulutustasoilla ja sen peruskäsitteet hallitaan yleisesti ottaen paremmin kuin ennen. Tästä huolimatta moni ohjelma suunnitellaan näennäisesti olioilla, mutta käytännössä ne noudattavat aikaisempaa ohjelmointityyliä, johon tekijä on tottunut. Olio-ohjelmointi ei siis tee kenestäkään parempaa ohjelmoijaa eikä automaattisesti anna mitään etuja suhteessa perinteiseen ohjelmointiin, ellei olio-ohjelmoinnin etuja osata oikealla tavalla hyödyntää.
Luokkien periyttämisen heikkoutena on eri luokkien käytännön toteutuksen sitominen toisiinsa, mikä saattaa aiheuttaa ongelmia siinä vaiheessa kun ohjelmistosta tehdään uusia versioita. Näiden ongelmien ennalta ehkäisemiseksi on tehty suunnittelumalleja, jotka perustuvat hyväksi havaittuihin ratkaisuihin.
Luca Cardelli on väittänyt, että olio-ohjelmoitu koodi on "luonnostaan vähemmän tehokas" kuin proseduraalinen koodi, että olio-ohjelmoidun koodin kääntäminen voi kestää kauemmin ja että olio-ohjelmointikielillä on "erittäin huonot modulaarisuusominaisuudet luokan laajennuksen ja muokkauksen suhteen" ja että ne ovat yleensä erittäin monimutkaisia. Jälkimmäisen seikan toistaa Joe Armstrong, Erlangin pääkeksijä, jota lainataan sanomalla: "Olioperustaisten kielten ongelma on, että heillä on kaikki tämä implisiittinen ympäristö, jota he kuljettavat mukanaan. Halusit banaanin, mutta sait gorillan, joka piti banaania ja koko viidakkoa."Potok et al.:n tutkimus ei ole osoittanut merkittävää eroa tuottavuudessa olio-ohjelmoinnin ja proseduraalisten menettelytapojen välillä.
Eräässä artikkelissa Lawrence Krubner väitti, että verrattuna muihin kieliin (LISP-murteet, funktionaaliset kielet jne.) olio-ohjelmointikielillä ei ole erityisiä vahvuuksia, ja niiden tarpeettomasta monimutkaisuudesta aiheutuu raskas taakka.
Clojure-ohjelmointikielen luoja Rich Hickey on kuvaillut oliojärjestelmiä liian yksinkertaisiksi todellisen maailman malleiksi. Hän korostaa olio-ohjelmoinnin kyvyttömyyttä mallintaa aikaa kunnolla, mikä on yhä ongelmallisempaa ohjelmistojärjestelmien samanaikaistuessa.
Unix-ohjelmoija ja avoimen lähdekoodin ohjelmistojen puolestapuhuja Eric S. Raymond on kritisoinut väitteitä, joiden mukaan olio-ohjelmointi esitetään "ainoana oikeana ratkaisuna", ja on kirjoittanut, että olio-ohjelmointikielet kannustavat yleensä paksukerroksisiin ohjelmiin, jotka tuhoavat läpinäkyvyyden. Raymondin mukaan tämä korostuu, kun olio-ohjelmointia verrataan Unixin ja C-ohjelmointikielen lähestymistapaan.
Olion ja luokan ero
Aloittavalle olio-ohjelmoijalle luokan ja olion merkityksen ero voi olla vaikeaa hahmottaa. Yksikertaistettuna voidaan ajatella, että olio on konkreettinen asia ja luokka ei.
Eroa on usein helpompi ymmärtää erilaisten konkreettisten esimerkkien avulla.
Kun joillakin esineillä tai asioilla on monta yhteistä ominaisuutta, olisi hyödyllistä pystyä käsittelemään näitä asioita tai esineitä jotenkin kaikkia kerralla. Voidaan ajatella esimerkiksi autoa. Autoja on erilaisia, joilla on kaikilla tiettyjä samoja ominaisuuksia, kuten malli, valmistusvuosi ja hinta. Kun halutaan ajatella kaikkia autoja kerrallaan voidaan muodostaa Auto-luokka.
Toisena esimerkkina voidaan ajatella tilastoa, jossa yhdellä rivillä on monta eri tietoa, kuten sähkönkulutuksessa voisi olla aika, hinta ja kulutetun sähkön määrä. Tällöin voidaan muodostaa luokka joka sisältää jäsenmuuttuija nämä rivin sisältämät tiedot. Nyt kun tietoja halutaan siirtää paikasta toiseen voidaan ajatella pelkkiä rivejä, jotka sisältävät halutut tiedot. Tällöin tiedon siirtämisestä tulee yksinkertaisempaa, kun ei tietoa on vähemmän näkyvillä.
Olio luodaan luokasta, joka toimii ”muottina” luotavalle oliolle. Luokat nimetään aina isolla alkukirjaimella ja oliot pienellä. Esimerkiksi ”henkilö” -olio luodaan ”Henkilö” -luokasta. Jäsenmuuttujat ovat hyvin tavallisesti määritelty yksityisiksi (private) jolloin ne ovat käytettävissä vain kyseisen luokan sisällä. Jotta yksityisiin muuttujiin päästään käsiksi, tähän tarvitaan jäsenfunktio (metodi). Alla esimerkki luokan, olion, jäsenmuuttujan ja jäsenfunktion käytöstä:
Luokka Henkilö
- nimi   (jäsenmuuttuja)
+ asetaNimi   (jäsenfunktio)
+ haeNimi   (jäsenfunktio)
Luokasta Henkilö luotu henkilö olio:
Nimi = Kalle
Yksinkertainen Henkilö-luokka pitää sisällään jäsenmuuttujan: ”nimi” sekä tarvittavat jäsenfunktiot (metodit) esimerkiksi ”haeNimi” (noutaja = getter) ja ”asetaNimi” (asettaja = setter). Kun luokasta: Henkilö, luodaan olio: henkilö, uusi olio tarvitsee nimen, joka annetaan luokalle parametrina. Koska luokan jäsenmuuttujat määritellään yksityisiksi, jolloin muuttujiin päästään käsiksi ainoastaan jäsenfunktioiden kautta. Tässä tapauksessa nimen hakeminen tapahtuu jäsenfunktiota haeNimi käyttämällä seuraavasti: henkilö.haeNimi ja tämä palauttaa kyseisen olion jäsenmuuttujassa olevan arvon. Jos taas olemassa olevan olion nimeä halutaan muuttaa, se tapahtuu käyttämällä jäsenfunktiota henkilö.asetaNimi(Matti), jolloin olemassa olevan olion nimi muuttujaan asetetaan "Kalle" tilalle "Matti". Aseta nimi tarvitsee parametrinä uuden nimen muttei palauta mitään.
Tukevia kieliä
Olio-pohjaiset ohjelmointikielet tarjoavat kehittäjille joukon työkaluja ja ominaisuuksia helpottaakseen olioiden luomista ja manipulointia. Vaikka on olemassa monia olio-ohjelmointia tukevia kieliä, Simula nähdään yleisesti ensimmäisenä kielenä, jossa on olennaiset piirteet olio-ohjelmoinnista. Toinen varhainen ohjelmointikieli on Smalltalk, jolla kehitettiin merkittävä osa olio-ohjelmoinnin teoriasta.
Olio-ohjelmointikielet voidaan jakaa "puhtaisiin" oliokieliin (joissa kaikki käsitellään olioina), olio-painotteisiin kieliin (jotka sisältävät joitain proseduraalisia elementtejä) tai alun perin proseduraalisiin kieliin, jotka ovat laajennettu olio-ohjelmointiominaisuuksilla. Joissakin kielissä on suurin osa olio-ominaisuuksista mutta eri muodossa (esim. Oberon). Toisissa kielissä on abstraktien tietotyyppien tuki, mitkä muistuttavat olio-ohjelmointia, mutta joilta puuttuu joitain ominaisuuksia (esim. JavaScript).
On kuitenkin tärkeää huomata, että pelkän oliopohjaisen ohjelmointikielen käyttö ei takaa, että koodi noudattaa parhaita käytäntöjä olio-ohjelmoinnissa. Monet nykyaikaiset ohjelmointikielet ovat suunniteltu tukemaan olio-ohjelmointia ja niissä on erilaisia ominaisuuksia, kuten luokkien määrittelyjä, perintämekanismeja, polymorfismia, jne. Olio-ohjelmoinnin käyttö mahdollistaa ohjelmistojen paremman järjestelmällisyyden, luettavuuden ja ylläpidettävyyden, mikä tekee siitä tärkeän kehitystyökalun modernissa ohjelmistokehityksessä.
Yleisimmät olio-ohjelmointia tukevat ohjelmointikielet ovat:
Jay Heimowitz
Heimowitz aloitti pokerin pelaamisen yhdeksänvuotiaana. Armeijassa hän voitti 10 000 dollaria pelaamalla ja kotiin palattuaan hän käytti rahan pienen olut- ja virvoitusjuomayrityksen ostamiseen. 23-vuotiaana hänestä tuli nuorin Budweiserin toimittaja Yhdysvalloissa. WSOP:ssa Heimowitz pelasi ensi kertaa vuonna 1975. .
World Series of Poker
Heimowitz on voittanut kuusi WSOP-turnausta. Hänellä on voittoja neljällä eri vuosikymmenellä. Pääturnauksessa hän on parhaimmillaan ollut kolmas vuonna 1980.
Rip Taylor
thumb|[[Jack Betts ja Rip Taylor ]] Charles Elmer "Rip" Taylor (13. tammikuuta 1931 Washington D.C. – 6. lokakuuta 2019 Beverly Hills, Kalifornia ) oli yhdysvaltalainen koomikko ja näyttelijä. Hän syntyi Washington DC:ssä ja palveli Korean sodassa.
Chunlan
pienoiskuva|Chunlan Logo Chunlan konserni on kiinalainen vuonna 1986 perustettu yritys, joka valmistaa ilmalämpöpumppuja. Suomessa on vain muutama Chunlan-merkkistä ilmalämpöpumppuja.
Oppimistyyli
thumb|250px|Joidenkin teorioiden mukaan oppimisprosessin yksilöllisiä eroja voidaan luokitella esimerkiksi aistikanavien mukaan. Oppimistyylit perustuvat valtaosin tieteellisesti kumottuihin teorioihin. Niiden mukaan yksilöllä on yleinen, tiedostamaton taipumus oppia paremmin tietynlaisilla oppimisstrategioilla tai opiskelutavoilla. Teorioiden mukaan oppijat tulee jakaa oppimistyylimallien mukaan eri tavoilla toimiviin ryhmiin. Yksilöllinen oppimistyyli selvitetään kyselylomakkeella tai psykologisella kokeella. Osa malleista perustuu ajatukseen oppimistyylien biologisesta alkuperästä, toisten mukaan oppimistyyli on ajan myötä muuttuva ja kehittyvä ominaisuus. Oppimistyyleihin kategorisointi ja niiden perusteella opettaminen on monissa tutkimuksissa osoitettu jopa haitalliseksi, ja teorioiden suosiota levittävät ennen kaikkea niitä hyödyntävät kaupalliset tahot. Silti oppimistyyliajattelu on merkittävä suuntaus kasvatusalalla, ja sitä tapaa kaikilla tasoilla lastentarhoista yliopistoihin.
Myliobatis peruvianus
Myliobatis peruvianus on kotkarauskuihin kuuluva rustokala. Samuel Garman kuvasi lajin ensimmäisen kerran vuonna 1913.
Oppimistyyli
Lukuisiin oppimistyylimalleihin liittyvästä laajasta ja pitkäaikaisesta tutkimuksesta huolimatta oppimistyylien olemassaoloa ja diagnosoitavuutta ei ole osoitettu eikä niiden mukaisen opetuksen tehosta ole saatu luotettavaa näyttöä. Tutkimuksissa on päinvastoin havaittu, että kaikenlaiset oppijat hyötyvät enemmän yhden hyvän opetusstrategian käyttämisestä kuin oppijoiden jakamisesta oppimistyyliryhmiin. Tutkijoiden mukaan erityisesti havaintokanavateoriat lukeutuvat opetusalan "neuromyytteihin", joilla ei ole tieteellistä pohjaa, vaikka monet opettajat uskovat niiden pohjautuvan aivotutkimuksiin.
Myliobatis peruvianus
Levinneisyys ja elinympäristö
M. peruvianus -lajin levinneisyysalue käsittää hajanaisia alueita pitkin Tyynenmeren rannikkoa Perun pohjoisosasta aina Chilen rannikon eteläosiin saakka. M. peruvianus elää enemmän avomerellä kuin aivan rannikon tuntumassa. Sitä esiintyy 1–100 metrin syvyydellä. Lajia ei ole juurikaan tutkittu.
Melodifestivalen 1973
Melodifestivalen 1973 oli Ruotsissa järjestetty laulukilpailu, jossa valittiin Ruotsin edustaja vuoden 1973 Eurovision laulukilpailuun. Kilpailu pidettiin kutsukilpailuna, jossa kymmenen ruotsalaissäveltäjää kutsuttiin säveltämään kappale kilpailuun. Kilpailu pidettiin 10. helmikuuta SR:n studiossa Tukholmassa. Voittajan valitsi 11-henkinen asiantuntijaraati, jonka jäsenistä kukin antoi kolmelle suosikilleen pisteitä kaavalla 1-3-5. Kilpailun voitti yhtye Malta kappaleella "Sommar'n som aldrig säger nej". Koska Malta on myös valtio Euroopassa, sekaannuksen välttämiseksi kansainvälistä Eurovision laulukilpailua varten yhtyeen nimeksi vaihdettiin Nova. Myös kappale käännettiin kansainvälistä kilpailua varten englanniksi nimellä "You're Summer".
Oppimistyyli
Historia
Vaikka erityisesti aistipohjaiset oppimistyylit ovat olleet käytössä jo pitkään, oppimistyylien nykyisen suosion alku voidaan tulkita olleen vuonna 1979, kun yhdysvaltalainen Walter Burke Barbe julkaisi kirjan ”Teaching through modality strengths: concepts and practices”. Barbe kuitenkin huomautti jo vuonna 1982 esitteessään, että oppijoita tulisi rohkaista käyttämään muitankin aistejaan jos he vaikuttavat nojaavan vain vahvimpaan aistiinsa. Barben teorian julkaisun jälkeen oppimistyylien suosio nousi, ja tutkimuksia oppimistyylien tehokkuudesta tehtiin paljon 1980-luvun lopulle asti. Menetelmän suosiosta huolimatta eri oppimistyyleihin diagnosoivat menetelmät osoittautuivat epäluotettaviksi. Esimerkiksi Kavalen ja Fornessin tutkimuksessa 39 tehdystä kokeesta koostettiin meta-analyysi, joka edusti noin 3100 koehenkilöä. Keskimääräisellä efektikoolla 0.14 aistimoodeihin perustuva opetus todettiin yhdeksi tehottomimmista menetelmistä, joita erityisopetuksessa on käytetty. Johtopäätöksenä todettiin, että opettajien kannattaa kiinnittää enemmän huomiota opetettavaan asiaan kuin oppilaiden yksittäisiin oppimistyyleihin. Vuonna 2008 oppimistyylien tutkijoille tarjottiin rahapalkinto. Saadakseen rahapalkinnon, tutkijan tulisi esittää luotettavaa tieteellistä todistusaineistoa oppimistyylien tehokkuudesta. Palkinto on kasvanut vuosien varrella, eikä kukaan ole onnistunut tuottamaan tarpeeksi luotettavaa tutkimustietoa ansaitakseen nyt 5000 dollarin suuruista palkintoa. Tutkimusten tuloksista huolimatta teorioiden totuudenmukaisuus nähdään yhä itsestäänselvyytenä erityisesti kasvatustieteen ammattilaisten keskuudessa   ja jopa kasvatustieteen oppikirjoissa  Syynä myytin sitkeydelle on ehdotettu esimerkiksi sitä, että erilaisten oppijoiden huomioiminen luokkahuoneessa sopii yhteen länsimaisten individualististen arvojen kanssa.
Myliobatis peruvianus
Biologia ja lisääntyminen
M. peruvianus on ovovivipaarinen eli se hautoo munat sisällänsä ja synnyttää poikaset elävinä. Poikanen saa ravintonsa alkuun ruskuaispussista, mutta myöhemmin se saa lisäravintoa suoraan emon kohtunesteistä. Naaraiden kerralla synnyttämien jälkeläisten määrää ei tiedetä, mutta sen arvellaan olevan alhainen samoin kuten Aetobatus narinari ja Aetomylaeus nichofii rauskulajeilla jotka saavat yhdestä neljään jälkeläistä.
Melodifestivalen 1973
Kilpailun tuloksissa kohua herätti, että Ruotsin kansan suosikki, tuolloin vielä melko tuntematon ABBA-yhtye ei tullut valituksi Ruotsin edustajaksi.
Myliobatis peruvianus
Biologia ja lisääntyminen
Rauskun suurin tunnettu pituus on 47,0 cm.
Oppimistyyli
Historia
Oppimistyylien suosio erityisopetuksessa kasvoi 2000-luvun alussa opetushallituksen suositeltua niitä oppimisvaikeuksien hoitoon. Joidenkin oppimistyylimallien tarjoajien mukaan varsinaisia oppimisvaikeuksia ei ole olemassa, vaan oppijoiden kohtaamat vaikeudet johtuvat siitä, ettei heitä opeteta heidän oppimistyylinsä mukaisesti. Erityisopetuksessa on käytetty varsinkin visuaalista, auditiivista ja kinesteettistä oppimistyyliä (VAK) mukailevaa opetusta, josta on tutkimuksessa käytetty termiä modality-based instruction (aistimoodeihin perustuva opetus).
Oppimistyylimalleja
pienoiskuva|VARK-oppimistyylimallissa oppijat jaetaan visuaalisiin, auditiivisiin, kinesteettisiin, sekä niihin, jotka oppivat parhaiten lukemalla ja kirjoittamalla. Laajalti tunnettuja oppimistyylimalleja on noin 80. Näistä on saatavilla materiaalia suomeksi ainakin seuraavista:
Monista malleista on olemassa erillinen sovellus, jota käytetään liike-elämän koulutuksissa tai työhönottohaastatteluissa.
Tutkimuksia ja kirjallisuutta
Oppimistyylejä tutkittiin eniten 1980-luvulla. Vuonna 2004 brittiläinen tutkimusryhmä arvioi koko siihenastisen tutkimuksen valitsemalla 13 merkittävintä mallia lähemmän tarkastelun kohteeksi:
Yksikään malleista ei ole osoittanut riittävää tehoa. Sen sijaan niihin liittyvästä tutkimuksesta löytyi huomattavia puutteita. Yleisenä ongelmana on riippumattoman tutkimuksen puuttuminen, sillä monissa tapauksissa tutkimusta johtavat samat tahot, jotka markkinoivat menetelmää. Osa menetelmistä, kuten Dunn & Dunnin malli, on tutkimuksissa todettu tehottomiksi, mutta tämä ei ole vaikuttanut tapaan, jolla niitä markkinoidaan. Oppimistyyleistä on tehty lukuisia tutkielmia, joissa on havaittu ihmisten jakautuvan kyselyn perusteella erilaisiin mieltymysryhmiin. Useimmat näistä eivät täytä tieteen laatuvaatimuksia, koska niissä käytetyt menetelmät (esim. diagnosointi) ovat epäluotettavia. Ne harvat kokeelliset tutkimukset, jotka ovat menetelmiltään päteviä, ovat toistaiseksi tuottaneet negatiivisia tuloksia. Oppimistyylien lisäksi on tutkittu episteemisiä eli tiedonhankkimistyylejä sekä kognitiivisia tyylejä.
Kromosomi
framed|[[Mitoosin metafaasissa oleva kromosomi. 1: kromatidi 2: sentromeeri 3 kromosomin lyhyt käsivarsi (p) ja 4: kromosomin pitkä käsivarsi (q).]]
Kromosomi on yhtäjaksoinen DNA-rihma, joka on kietoutunut kromatiiniksi histoniproteiinien ympärille. Kromosomit voivat sisältää geenejä kymmenistä tuhansiin. Kromosomien rakenne ja ulkonäkö vaihtelee huomattavasti solusyklin aikana. Mitoosin ja meioosin aikana kahdentunut kromosomi kiertyy tiiviiksi, yleensä X:n muotoiseksi rakenteeksi. Kromosomit kuvataan useimmiten juuri tämänkaltaisina metafaasikromosomeina.
Historia
Kromosomit löysi yhtä aikaa vuonna 1842 sekä sveitsiläinen kasvitieteilijä Karl Wilhelmi von Nägeli että belgialainen tutkija Edouard Van Beneden. Ensimmäisen kromosomien värjäysmenetelmän kehitti Walther Flemming. Hän teki kokeita soluille erilaisilla värjäysaineilla ja huomasi, että väriaine imeytyy vain tiettyihin solun osiin. Erään väriaineen avulla hän löysi solun tumasta X:n muotoisia kappaleita. Ne nimettiin kromosomeiksi. Nimi syntyi kreikankielisistä sanoista khroma eli väri ja soma eli kappale tai ruumis.
Normaali kromosomisto
Ihmisellä kromosomit 1–22 ovat autosomeja, eli niillä ei ole vaikutusta sukupuolen määräytymiseen. Sukupuolen määräävät X- ja Y-sukupuolikromosomit. Naisen sukupuolikromosomipari on XX ja miehen XY.
Kromosomipoikkeavuudet
Kromosomipoikkeavuudet ovat DNA-molekyylien rakenteen ja lukumäärän muutoksia, joilla voi olla hyvin erilaisia vaikutuksia yksilön kehitykseen. Kromosomipoikkeavuuksia voi esiintyä kromosomien lukumäärän poikkeavuutena eli aneuploidina, tai kromosomin rakenteen poikkeavuutena eli aneusomiana.
Kromosomipoikkeavuudet ihmisellä
Suurin osa kromosomipoikkeavuuksista johtaa ihmisellä spontaaniin aborttiin, joten ne ovat yleisin keskenmenon aiheuttaja. Tästä huolimatta kromosomiston poikkeavuuksia esiintyy noin viidellä tuhannesta elävänä syntyneestä lapsesta. Näistä 2/3 on sukupuolikromosomien poikkeavuuksia, ja 1/3 muiden kromosomien poikkeavuuksia.
Autosomien poikkeavuudet aiheuttavat yleensä kehityksessä vaikeampia ja laaja-alaisempia häiriöitä kuin sukukromosomien poikkeavuudet. Esimerkiksi tunnetuimmassa kromosomistomutaatiossa eli Downin oireyhtymässä (21-trisomia), jossa kromosomia 21 on poikkeuksellisesti kahden sijasta kolme, yksilöllä esiintyy useita fyysisiä erityispiirteitä ja vaihtelevanlaatuista kehitysvammaisuutta. Sen sijaan ylimääräiset sukupuolikromosomit eivät yleensä aiheuta vaikeaa kehitysvammaisuutta. Niiden poikkeavuuksien vaikutukset voivat olla hyvin spesifejä ja fyysiset erityispiirteet ovat usein hyvin lieviä tai puuttuvat kokonaan. Naisella voi olla kolme, neljä, viisi tai kuusi X-kromosomia, miehellä sekä X- että Y-kromosomeja voi olla poikkeava määrä (esimerkiksi karyotyyppi XXY tai XYY).
Rengaskromosomissa kromosomiparin päät ovat liimautuneet toisiinsa. Koska sekä pitkän että lyhyen varren päissä on häviämä, ja tärkeää perimäainesta saattaa puuttua, seuraa poikkeavuudesta muun muassa kehitysvammaisuutta.
Trisomia on tila, jossa kromosomistossa on parin sijasta kolme kromosomia. Useimmat trisomeista aiheuttavat keskenmenon tai kuoleman nuorella iällä. Henkiin jääneillä saattaa esiintyä kehitysvammaisuutta ja muita ongelmia.
Empire (Queensrÿchen albumi)
Empire on metalliyhtye Queensrÿchen syyskuussa 1990 julkaistu neljäs studiolevy.
Albumi on yhtyeen kaupallisesti menestynein. Se nousi Billboard 200 -listalla seitsemänneksi ja myi Yhdysvalloissa triplaplatinaa (3 000 000), Kanadassa platinaa (100 000) ja Yhdistyneessä kuningaskunnassa hopeaa (60 000).
Albumilta julkaistiin useita singlejä, joista balladi ”Silent Lucidity” nousi Yhdysvalloissa Billboard Hot 100 -listan yhdeksänneksi.
20-vuotisjuhlajulkaisun bonuslevy
14. syyskuuta 2010 albumista julkaistiin 20-vuotisjuhlapainos, joka sisältää vuoden 2003 painoksen varsinaisesta levystä sekä 15. marraskuuta 1990 Lontoon Hammersmith Odeonissa äänitetyn livelevyn.
Huhtamo
Huhtamo on kylä Huittisten kaupungissa, Vampulan, Punkalaitumen ja Alastaron rajalla. Huhtamon alueen pinta-ala on noin 34 neliökilometriä ja sen asukasluku on 222 (vuonna 2021). Kylässä toimii kirkko ja vanhan kyläkaupan tiloissa aloittanut kahvila ja lounasruokala Huhtamokka.
Huhtamo on maastoltaan monipuolista aluetta. Ilmiönsuo kuuluu suurimmalta osin Huhtamoon. Kylän "läpi" kulkee soraharju (Huhtamonkangas-Kankaanpäänharju), joka on myös merkittävää pohjavesialuetta.
Huhtamossa toimii aktiivisesti järjestö, Huhtamon Nuorisoseura, jonka toimintaan kuuluu muun muassa miesten jalkapalloa Satakunnan 4. divisioonassa ja myös tyttö-jalkapallo on vahvalla pohjalla. Nuorisoseuran omistamalla Honkapirtillä järjestetään bingoiltoja. Kylän viimeinen pankkikonttori lopetti toimintansa vuoden 2016 lopussa.
Kylälle on suunnitteilla myös laavu ja näkötorni.
Historia
thumb|175px|left|[[Huhtamon kirkko on rakennettu harjun päälle.]] Huittisissa kylien ulkopalstat tunnettiin ”maakuntina”, jollainen oli myös Huhtamon seutu. Ne olivat ikivanhoja takamaita, kylien ja yksityisten talojen eräpalstoja. Seudulle syntyi 1800-luvun alkupuolella kaksi maakirjataloa, Kalliokorven yksinäistalo Jylhänmaalle ja Riesolan Riihikoski Kodisjoenmaalle.
Kun Huittisten takamaat muuttuivat torppariasutukseksi, ruvettiin 1860-luvulla tekemään Huhtamon tietä, joka paikoin oli kärryillä ajettavassa kunnossa. Huhtamon kangas tarjosi hiekanottopaikan tietyölle. 1900-luvun alkuvuosikymmenet olivat kehityksen aikaa. Huhtamon kulmakunnalle valmistui koulurakennus vuonna 1908 Oskar Lydéniltä vuokratulle tontille. Koulun ensimmäinen opettaja oli Frans Fredrik Punovuori, ja hänestä tuli pitkäaikainen opettaja, vuoteen 1945 asti. Punovuoren aloitteesta ovat saaneet alkunsa monet Huhtamoa kehittäneet toimenpiteet, ja ne ovat tänäkin päivänä nähtävillä. Loimaalta tullut liikemies Kustaa E. Rantanen oli myös mukana Huhtamon kehitystyössä.
Punovuori ja Rantanen panivat alkuun vuonna 1911 Huhtamon kulmakunnan itsenäistymishankkeen. Alueeseen olisi kuulunut osia Punkalaitumesta, Alastarosta ja Vampulasta. Uuden seurakunnan ja kirkon keskuspaikaksi olisi muodostunut Kouvolan kylä eikä Huhtamon Jylhänkangas. Huhtamon kunnassa olisi ollut 1 750 asukasta, ja alue olisi ollut kooltaan noin sata neliökilometriä. Asia kuitenkin raukesi, kun alueen kunnat, tuomiokapituli ja lääninhallitus vastustivat asiaa, ja senaatti hylkäsi kulmakuntalaisten hakemuksen vuonna 1917. Seurakuntahuoneyhdistys oli kuitenkin perustettu vuoden 1911 lopussa, ja Huhtamon kirkko valmistui 1928. Kirkon vihkiäiset pidettiin 1929.
Pankkitoiminnan aloitti 1909 Frans Punovuori. Punovuori itse toimi ensimmäisenä kassanhoitajana 27 vuotta. Pankki toimi kansakoulun tiloissa. Kruununvoudin papereissa pankki sijaitsi Huittisten pitäjän Löysälän kylän Huhtamon metsäseudulla. Opettaja Punovuori ehdotti vuonna 1910, että Huhtamoon pitäisi saada Huittisten Osuuskaupan sivumyymälä. Osuuskaupan hallitus otti kuitenkin kielteisen kannan esitykseen. Myymälä saatiin lopulta muutamaa vuotta myöhemmin vuonna 1916. Huhtamossa oli parhaimmillaan 1950-luvulla viisi kauppaa. Autokalusto oli vielä vähäistä, joten tarvikkeet hankittiin lähikaupasta. Ensimmäinen postivuoro saatiin Alastaron kautta neljästi viikossa. Huittisten Telefooni Oy:n ensimmäinen sivukeskus perustettiin vuonna 1911 Huhtamoon, kun kahdeksan osakasta ilmoittautui puhelimen käyttäjiksi. Kustaa Rantanen perusti Ilmiönmaahan 1907 yksityisen turvepehkutehtaan, jonka yhteydessä oli mylly ja sahaliike.
Ensimmäisen maailmansodan päätyttyä Suomi oli itsenäistynyt. Maanomistusoloissa tapahtui suuria muutoksia, kun torpparit itsenäistyivät. Peltoa raivattiin lisää, karjatalous vahvistui ja rakennustoiminta elpyi. Seuraava todellinen uusjako tapahtui toisen maailmansodan jälkeen. Maa-alueiden luovuttamisen seurauksena Karjalan siirtoväen oli asetuttava asumaan uusille asuinsijoilleen, joista yksi oli Huhtamo. Uudet asukkaat tulivat pääosin Sakkolasta ja Pyhäjärveltä. Siirtoväki oli maatalousväestöä, ja uusia maatiloja perustettiin 22. Uudet tilat muodostuivat entisistä tiloista luovutetuista alueista. Väkiluvussa tapahtui lähes sadan asukkaan lisäys. Yhteistyö siirtoväen ja alueen valtaväestön kesken sujui alusta lähtien kitkattomasti.
Hector Hogan
Hector Dennis Hogan (11. heinäkuuta 1931 – 2. syyskuuta 1960) oli australialainen pikajuoksija. Hän tuli tunnetuksi vuoden 1956 kesäolympialaisista Melbournessa, jossa hän voitti pronssia 100 metrin juoksussa.
Hogan kuoli leukemiaan Brisbanessa vain 29 vuoden ikäisenä.
Knives Out (albumi)
Knives Out on Jermainen esikoisalbumi. Se ilmestyi 6. syyskuuta 2006. Levyn tuotti, äänitti ja miksasi Antto Tuomainen, ja masteroi Svante Forsbäck. Äänitys tapahtui huhti-kesäkuun 2006 aikana. Kappaleesta "The Snipers" julkaistiin single, joka sijoittui Suomen virallisen singlelistan sijalle 8. Kappaleen albumiversio on miksattu ja masteroitu uudelleen, ja demoilta löytyvät Boston Massacre ja Goodbye Sign on äänitetty kokonaan uudestaan.
AN-94
thumb|AN-94-rynnäkkökiväärin prototyyppi AN-94 "Abakan" (5,45-мм автомат Никонова обр. 1994 г. «Абака́н») on Gennadi Nikonovin suunnittelema rynnäkkökivääri.
Nikonov työsti kivääriä Iževskin asetehtaassa 1970-luvun loppupuolelta, ja sen tarkoitus oli korvata AK-47 ja sen seuraajat. Ase valittiin jatkokehitettäväksi vuonna 1981 järjestetyssä "Abakan"-kilpailussa (kts. Abakan), ja lopullinen malli valmistui 1986.
Aseen erikoisuus on kahden laukauksen pursketulimuoto, joka ammutaan erittäin suurella tulinopeudella (1800 rpm). Tarkoitus on lisätä läpäisyä luotiliivejä vastaan. Mekanismi pystyy siirtämään ensimmäisen laukauksen rekyylin toisen laukauksen jälkeiseen aikaan, jolloin tulen tarkkuus pysyy kertalaukauksen tasolla. Vuonna 1991 järjestetyissä kokeissa ase osoittautui huomattavasti AK-74:aa tarkemmaksi pursketulella, ja sitä suositeltiin hyväksyttäväksi. Tämä kuitenkin viivästyi, ja ase otettiin käyttöön 1997 nimellä AN-94. Vaikka vuoden 1980 suunnitelmissa oli koko kaluston uusiminen, Kalašnikovin mallit säilyivät edelleen käytössä uuden aseen monimutkaisuuden ja hinnan vuoksi. Aseen valmistus lopetettiin vuonna 2006.
AN-94:ää tuotettiin Iževskissä vuoteen 2006 asti pienissä erissä.
Tšetšenian sodassa aseen haittapuolet tulivat esiin. Mekanismi sietää huomattavasti huonommin likaa ja huollon puutetta kuin AK-74.
Van Dyke Parks
Van Dyke Parks (s. 3. tammikuuta 1943 Hattiesburg, Mississippi) on monipuolinen yhdysvaltalainen muusikko ja näyttelijä.
Mississippissä syntynyt Parks kävi New Jerseyn Princetonissa sijaitsevan American Boychoir Schoolin ja kiersi maata sen edustuskuorossa. Vuonna 1954 hänen perheensä muutti länsirannikolle Hollywoodiin, jossa poika opiskeli pianon- ja klarinetinsoittoa ja toimi lapsinäyttelijänä muun muassa Charles Vidorin elokuvassa Joutsen. Hän aloitti soolouransa muusikkona 1960-luvulla, mutta tuli tunnetuksi myös sessiomuusikkona; hän teki yhteistyötä muiden muassa The Byrdsin ja The Beach Boysin kanssa.
Parksin ensimmäinen kokonainen sooloalbumi on Song Cycle (1968). Hän on muiden projektiensa ohella työskennellyt myös elokuvamusiikin säveltäjänä. Jo nuorena hän kiinnostui trinidadilaisesta steelband- ja calypsomusiikista, joita kuullaan hänen toisella ja kolmannella albumillaan Discover America (1972) ja Clang of the Yankee Reaper (1975).
Van Dyke Parks on osallistunut mm. Aaron Nevillen vuonna 1991 ilmestyneen albumin Warm Your Heart tekemiseen.
Anapestinen dimetri
Anapestinen dimetri on antiikin kreikkalaisesta metriikasta peräisin oleva runomitta, jossa dimetrisäkeet koostuvat kahdesta anapestisestä metronista. Sitä käytettiin muun muassa kreikkalaisen tragedian kuoro-osuuksissa. Runomitan muunnelma on paroimiakos eli anapestinen katalektinen dimetri.
Kaava
Runomitan säkeen peruskaava on ( = lyhyt tavu, = pitkä tavu,  = anceps eli lyhyt tai pitkä tavu):
Yksi anapestimetron on ja se koostuu poikkeuksellisesti yhden sijasta kahdesta anapestijalasta. Muiden kreikkalaisten runomittojen tapaan anapestinen dimetri on saanut nimensä siinä olevien metroneiden eikä jalkojen määrästä. Runomitassa kaksi lyhyttä tavua voidaan korvata yhdellä pitkällä ja yksi pitkä kahdella lyhyellä, millä anapestijaksoihin saadaan vaihtelua. Ajoittain säe voi koostua myös vain yhdestä metronista.
Esimerkki
Aiskhyloksen Persialaisten alku:
Ruona (Kuortane)
Ruonan kylä sijoittuu Kuortaneen kunnan pohjoisosaan. Kylä on levittäytynyt pääasiassa Kuortaneenjärven pohjoisrannalle ja Nisosjärven ympärille. Lisäksi laajalla alueella olevassa kylässä on asutusta myös Haarajärven, Reunan ja Sauna-ahon alueille. Kylä rajoittuu pohjoisessa Lapuan kaupunkiin, idässä Alajärven kaupunkiin, etelässä Kuortaneen kirkonkylään, lännessä Kuortaneenjärveen ja Salmen kylään.
Ruonan kylään muutti ensimmäinen asukas Simo Juhonpoika vuonna 1549 hyville kaski- ja pyyntimaille. Hän oli myös koko Kuortaneen ensimmäisiä asukkaita.
Lapuan hiippakunnan koulutuskeskus Haapaniemen hiippakuntakartano sijaitsee Ruonalla Kuortaneenjärven rannalla.
Suomen sodan ratkaisutaistelut käytiin Ruonan Nurminiemessä 31.8.–1.9.1808.
Vuonna 2008 Ruona valittiin vuoden eteläpohjalaiseksi kyläksi.
Birger Maununpoika
Birger Maununpoika (, n. 1280 – 31. toukokuuta 1321) oli Ruotsin kuningas 1290–1318. Hänen isänsä Maunu Ladonlukko antoi julistaa poikansa kuninkaaksi jo vuonna 1284. Maunun kuoltua vuonna 1290 maata johti Torkkeli Knuutinpoika (joka mm. teki ristiretken Karjalaan vuonna 1293) aina vuoteen 1298 asti.
Kairon yliopisto
Kairon yliopisto (, ; aikaisemmin tunnettu nimillä Egyptin yliopisto 1908–1940 ja Kuningas Fuad I:n yliopisto 1940–1952) on Egyptin merkittävin julkinen yliopisto, jonka pääkampus sijaitsee Gizassa. Yliopisto vihittiin vuonna 5. joulukuuta 1908.
Birger Maununpoika
Birger meni naimisiin Tanskan kuninkaan Eerik Klippingin tyttären Märta Eerikintyttären kanssa vuonna 1298. Birger kruunattiin vasta vuonna 1302.
Eerikinkronikan mukaan hän vangitsi veljensä Eerikin ja Valdemarin Nyköpingin linnaan, jossa he nääntyivät nälkään. Tämä tapaus tunnetaan nimellä Nyköpingin pidot.
Kairon yliopisto
Kairon yliopisto arvioidaan yleensä tasoltaan Afrikan yliopistojen parhaimmistoon ja Egyptin parhaimmaksi tai parhaimpien joukkoon kuuluvaksi. Vuonna 2017 Kairon yliopisto oli parhaana yliopistona maastaan kansainvälisen Shanghain Jiao Tong -yliopiston ARWU-yliopistorankingissa, joka arvioi yliopiston 401.–500. korkeatasoisimmaksi yliopistoksi maailmassa. Times Higher Education sijoitti Kairon yliopiston vuoden 2018 listallaan jaetulle 11. sijalle Afrikassa ja jaetulle 801.–1000. sijalle maailmassa.
Hässelbyn linna
thumb|315px|Päärakennus ja etupiha. Hässelbyn linna on linna Tukholman Hässelby Gårdin kaupunginosassa, Hässelby-Vällingbyn kaupunginosa-alueella. Bonden suku käytti linnaa lähes kolmensadan vuoden ajan. Nykyisin linna toimii pohjoismaisena konferenssikeskuksena.
Linnan rakennuttamisen aloitti valtaneuvos Carl Bonde 1640-luvun alkupuolella, ja alkuperäisenä arkkitehtina toimi todennäköisesti Simon de la Vallée. Työtä jatkoi myöhemmin Jean de la Vallée, ja linna valmistui vuoden 1660 tienoilla. Sitä on kunnostettu tulipalojen jälkeen vuosina 1731 ja 1860. Tukholman kaupunki osti rakennuksen vuonna 1931. Vuosina 1961–1963 se restauroitiin ja muutettiin pohjoismaisten pääkaupunkien kulttuurikeskukseksi. Linnan puistoon rakennettiin arkkitehti Sören Thurellin piirtämä erillinen konferenssisiipi vuonna 1986.
Kirjallisuutta
59.36556°N, 17.85444°W
Kiinan Taipein naisten jääkiekkomaajoukkue
Kiinan Taipein naisten jääkiekkomaajoukkue edustaa Kiinan Taipeita eli Taiwania kansainvälisissä naisten jääkiekko-otteluissa. Vuonna 2022 maassa oli 144 rekisteröityä naisjääkiekkoilijaa. Vuoden 2022 lopulla maajoukkue oli Kansainvälisen jääkiekkoliiton IIHF:n ylläpitämällä naisten maailmanrankinglistalla 26. sijalla.
Ensimmäisen kerran joukkue sijoitettiin maailmanrankingiin vuonna 2017, jolloin se oli 38. sijalla. Maa nousi vuoden 2018 helmikuusta vuoden 2022 helmikuuhun peräti 12 sijaa maailmanrankingissa.
VOR
Lyhenne VOR voi tarkoittaa seuraavia:
AEK-971
thumb|250px|AEK-971. AEK-971 on Sergei Kokšarovin johdolla Kovrovin konetehtaalla suunniteltu, Konstantinovin SA-006-kiväärin mekanismiin perustuva rynnäkkökivääri. Aseen kaliiperi on venäläinen 5,45x39 mm.
Kivääriä alettiin kehittää 1974 Neuvostoliiton puolustusministeriön kilpailua varten, jonka kuitenkin voitti Nikonovin AN-94. Puolustusministeriö piti monia aseen ratkaisuja liian monimutkaisina, joten asetta yksinkertaistettiin. Kilpailijansa tavoin se perustuu aseen rekyyliä sarjatulella vähentävään mekanismiin. Aseessa on tämä vuoksi kaksi kaasukammiota ja -mäntää.
Aseesta on 5,56 mm NATO -kaliiperinen versio AEK-972 ja 7,62×39 mm -kaliiperinen AEK-973.
Asetta valmistettiin 2000-luvulla pieniä sarjoja sisäministeriön joukoille, mutta tuotanto päättyi 2006, jolloin Kovrovin konetehdas hankkiutui eroon sotilastuotannosta. Suunnitelmat ja koneet siirrettiin saman kaupungin ZID-tehtaalle, joka ei ole aloittanut tuotantoa pienien sarjojen kannattamattomuuden vuoksi.