c++ aloitus

c-kielenAloitus

Jos haluaisi aloittaa c ohjelmoinnin ( ihan kotona ) niin mistä tai miten aloitetaan

30

1987

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Koita nyt saada aluksi käännettyä Hello World.

      • 3.14159x

        Hello world on idiootein ensiprojekti. Kyseisellä sovelluksella ei ole mitään käytännön arvoa.

        Parempi on tehdä jo heti alusta saakka joku hyödyllinen ohjelma. Esimerkiksi piin likiarvoa laskeva, johon tarvitaan mm. stdlib-kirjastoa.


      • 3.14159x kirjoitti:

        Hello world on idiootein ensiprojekti. Kyseisellä sovelluksella ei ole mitään käytännön arvoa.

        Parempi on tehdä jo heti alusta saakka joku hyödyllinen ohjelma. Esimerkiksi piin likiarvoa laskeva, johon tarvitaan mm. stdlib-kirjastoa.

        "Hello world on idiootein ensiprojekti. Kyseisellä sovelluksella ei ole mitään käytännön arvoa."

        Tässä tapauksessa ihan hyvä koska onhan tuossa kielen lisäksi ymmärrettävä se lähdekoodin kääntäminen ja linkkaus valmiiksi ajettavaksi ohjelmaksi. C kun ei ole mikään tulkattava kieli.


      • 3.14159x kirjoitti:

        Hello world on idiootein ensiprojekti. Kyseisellä sovelluksella ei ole mitään käytännön arvoa.

        Parempi on tehdä jo heti alusta saakka joku hyödyllinen ohjelma. Esimerkiksi piin likiarvoa laskeva, johon tarvitaan mm. stdlib-kirjastoa.

        "arempi on tehdä jo heti alusta saakka joku hyödyllinen ohjelma. Esimerkiksi piin likiarvoa laskeva, johon tarvitaan mm. stdlib-kirjastoa."

        Öö...eikös "hello world" vaadi stdio kirjastoa? :) Vai mikä oli sun pointti?


      • keps

        std::cout << "Hellou World!" << std::endl; // #include <iostream>


    • samaasia

      Meinasin että tarviiko se jonkun ohjelman millä ruvetaan laulamaan

      • C kääntäjän. Parhaiten ohjeistusta löytynee yleisimpään GCC:n mikä on useimmissa käyttöjärjestelmissä valmiina.

        Clang olisi toinen ja sitä käytetään FreeBSD:ssä ja MacOS:ssa.

        Parasta on lähteä ihan siitä Hello Worldista ja opetella se kääntäminen, perus Make kuuluu myös tähän. Näillä kun saa C :lla tehtyä toimivan ohjelman ja hahmoittaa perusteet niin voi sitten siirtyä kunnon IDE:n ja valmiiksi mussutettuihin työympäristöihin. Qt Creatoria suosittelen.


    • c-kielinaloitus

      Mitä tällä ohjelmalla tehdään Visual Studio Professional

      • Liityy Windows ympäristössä ohjelmistojen kehitykseen. On kuitenkin vähän väärä juttu C :n opiskeluun. Käytä vaan sitä GCC:tä tässä vaiheessa ja ennenkaikkea unohda Windows. Windows ei ole suositeltava ympäristö C :lla harjoitteluun koska Windowsille ei pahemmin tehdä natiivisti ohjelmia C :lla.


    • koodaillen

      Samaa mieltä, Linux-käyttiksessä on valmiina kaikki työkalut, suoraan hyllystä ottaa ja alkaa koodailemaan. Maken käyttöä tosiaan kannattaa myös opetella, etenkin huomaa heti kun koodin määrä kasvaa, nopeutuu kääntäminen kun sillä kääntää vain muuttuneet tiedostot.

    • Tässä_

      Jos tarkoitit C :n opiskelua...

      Lataa joku hyvä kehitys alusta jossa kääntäjä mukana. Jos käytät Windowsia, niin esimerkiksi Microsoft Visual Studio (https://www.visualstudio.com/). Se on erittäin laadukas ja helppo asentaa. Sitten vaan se auki ja valitse "File -> New -> Project -> Visual C " (ensimmäisellä kerralla se ehdottaa C kääntäjän laatamista jos sitä ei valinnut asennuksen yhteydessä).

      "Hei mailma" ohjelmasta on hyvä aloittaa. Kun opiskelet niin kannattaa pysyä erossa C :n C -yhteensopiivuus kirjastoista (kuten stdio.h, stdlib.h, file.h, jne.) ja niiden rutiineista (printf, fopen, jne.), sillä niitä käyttämällä ei opi C kieltä vaan C:ta.

      Seuraavista on vaikka hyvä aloittaa.

      std::cout
      std::cin
      std::string
      std::vector
      std::map
      ...

      Hyvä kehitys ympäristö on tosiaan ohjelmoinnissa must just, sillä ilman sitä aikaa turhautuu kaikkeen muuhun kuin itse kielen opiskeluun.

      • Eihän Windows ole mitenkään erityisen hyvä C :lle kehittämiseen ja siinä kielessä on kyllä olennaista ymmärtää se miten se koodi käännetään ja miten se prosessi menee. Siinähän lähdekoodin sekaan laitetaan mm. esikääntäjän direktiivejä.


      • Tässä_
        M-Kar kirjoitti:

        Eihän Windows ole mitenkään erityisen hyvä C :lle kehittämiseen ja siinä kielessä on kyllä olennaista ymmärtää se miten se koodi käännetään ja miten se prosessi menee. Siinähän lähdekoodin sekaan laitetaan mm. esikääntäjän direktiivejä.

        Windows vs. Linux asian pohtimen on tässä asian yhteydessä vähän sama kuin sen miettiminen pitäisikö ostaa Android vai Aple jos haluaa opiskella soittamaan kännykällä. Jos käyttää jo valmiiksi Windows:ia niin Windows varmasti on hyvä lähtökohta, ja jos puolestaan käyttää Linuxia niin Linux on hyvä lähtökohta. Jos taas haluaa tehdä softaa eri alustoille, niin varmasti kumpaakin käyttöjärjestelmään pitää tutustua, huolimatta siitä millä alustala kehitys tapahtuu...

        C :n on samalaista Windows:ssa ja Linuksissa, sillä kieli on standardoitu. Esikääntäjän komennot on standardissa, ja ne toimivat kumassakin, ellei sitten tieten tahtoen käytä jotain työkalu riippuvaisia esikääntäjän komentoja. Myös suurin osa kaikkista isoita ulkopuolisista C kirjastot ovat moni alustaisia, joten ne ovat suunniteltu toimimaan sekä Windows/Linux/Mac alustoilla.

        C ohjelman kääntäminen, debuggaus, linkkaaminen, jakelu- ja asennus pakettien tekeminen, version hallinta, yksikkö testaus, yms.. eivät ole osa C standardia. Näihin jokaiseen on lukuisia työkaluja, ja jokaisen niistä opiskeluun voi kuluttaa aikaa vaikka viiko tolkulla. Tästä syystä suosittelisin vasta alkajalle juuri jotakin IDE:a (oli sitten Windows tai Linux) joka tekee hommat ohjelmoijan puolesta (esim. "Play" -nappi josta saa ohjelman käyntiin). Tällöin varsinaisen kielen opiskelu pääsee sutjakkaasti käyntiin, sen sijaan että aikaa menee kaikkeen muuhun (jos sujut Linux:n komentorivin kanssa, niin ilman muuta sekin on OK, mutta kyllä silloinkin pitää varmistaa että kääntäjän versio on tätä päivää).

        Samasta syystä suosittelen myös aloittamaan opiskelun käyttämällä
        ja tukimalla niitä C standarikirjastoja, sen sijaan että aloittaa opiskelun
        käyttämällä heti jotain ulkopuolisa kirjastoja (Boost, Qt, WxWidget, jne.). Tällöin ei tarvitse miettiä miten ulkopuolisen kirjaston saa asennettua ja toimimaan omassa kehitys ympäristössä. Toinen, ja tärkein syy, on se, että iso osa näiden ulkopuolisten kirjastojen lähdekoodeista, ja sitä myöten useimmat esimerkit, noujautuvat vuoden miekka ja kirves C standariin (yhteensopivuutta ei haluta rikkoa vanhoihin kääntäjiin), joten niistä aloittamalla jää helposti kehityksestä jälkeen (koodi näyttää samalta miltä se näytti 7 vuotta sitten). Parempi siirtyä ulkopuolisiin komponentteihin vasta sitten kun opiskellut ensin perusteet ja sen mitä moderni C tarjoaa.

        Kaikki C ohjelmointi opukset jotka eivät eivät perustu vähintäin C 11:sta tai C 14:sta kannattaa myös suoraan hylätä. Ja kannattaa varmistaa että kääntäjässä tukee vähintään C 11:sta.


      • Tässä_ kirjoitti:

        Windows vs. Linux asian pohtimen on tässä asian yhteydessä vähän sama kuin sen miettiminen pitäisikö ostaa Android vai Aple jos haluaa opiskella soittamaan kännykällä. Jos käyttää jo valmiiksi Windows:ia niin Windows varmasti on hyvä lähtökohta, ja jos puolestaan käyttää Linuxia niin Linux on hyvä lähtökohta. Jos taas haluaa tehdä softaa eri alustoille, niin varmasti kumpaakin käyttöjärjestelmään pitää tutustua, huolimatta siitä millä alustala kehitys tapahtuu...

        C :n on samalaista Windows:ssa ja Linuksissa, sillä kieli on standardoitu. Esikääntäjän komennot on standardissa, ja ne toimivat kumassakin, ellei sitten tieten tahtoen käytä jotain työkalu riippuvaisia esikääntäjän komentoja. Myös suurin osa kaikkista isoita ulkopuolisista C kirjastot ovat moni alustaisia, joten ne ovat suunniteltu toimimaan sekä Windows/Linux/Mac alustoilla.

        C ohjelman kääntäminen, debuggaus, linkkaaminen, jakelu- ja asennus pakettien tekeminen, version hallinta, yksikkö testaus, yms.. eivät ole osa C standardia. Näihin jokaiseen on lukuisia työkaluja, ja jokaisen niistä opiskeluun voi kuluttaa aikaa vaikka viiko tolkulla. Tästä syystä suosittelisin vasta alkajalle juuri jotakin IDE:a (oli sitten Windows tai Linux) joka tekee hommat ohjelmoijan puolesta (esim. "Play" -nappi josta saa ohjelman käyntiin). Tällöin varsinaisen kielen opiskelu pääsee sutjakkaasti käyntiin, sen sijaan että aikaa menee kaikkeen muuhun (jos sujut Linux:n komentorivin kanssa, niin ilman muuta sekin on OK, mutta kyllä silloinkin pitää varmistaa että kääntäjän versio on tätä päivää).

        Samasta syystä suosittelen myös aloittamaan opiskelun käyttämällä
        ja tukimalla niitä C standarikirjastoja, sen sijaan että aloittaa opiskelun
        käyttämällä heti jotain ulkopuolisa kirjastoja (Boost, Qt, WxWidget, jne.). Tällöin ei tarvitse miettiä miten ulkopuolisen kirjaston saa asennettua ja toimimaan omassa kehitys ympäristössä. Toinen, ja tärkein syy, on se, että iso osa näiden ulkopuolisten kirjastojen lähdekoodeista, ja sitä myöten useimmat esimerkit, noujautuvat vuoden miekka ja kirves C standariin (yhteensopivuutta ei haluta rikkoa vanhoihin kääntäjiin), joten niistä aloittamalla jää helposti kehityksestä jälkeen (koodi näyttää samalta miltä se näytti 7 vuotta sitten). Parempi siirtyä ulkopuolisiin komponentteihin vasta sitten kun opiskellut ensin perusteet ja sen mitä moderni C tarjoaa.

        Kaikki C ohjelmointi opukset jotka eivät eivät perustu vähintäin C 11:sta tai C 14:sta kannattaa myös suoraan hylätä. Ja kannattaa varmistaa että kääntäjässä tukee vähintään C 11:sta.

        "Windows vs. Linux asian pohtimen on tässä asian yhteydessä vähän sama kuin sen miettiminen pitäisikö ostaa Android vai Aple jos haluaa opiskella soittamaan kännykällä."

        Ei se nyt näin mene kun pitäisi käsittää se, että eri ekosysteemeissä käytetään eri kieliä ja eri käyttötarkoitkuksiin.

        "Jos käyttää jo valmiiksi Windows:ia niin Windows varmasti on hyvä lähtökohta"

        Ei missään nimessä C ohjelmointiin. Jos tarkoitus olisi ohjelmoida C#:lla sovellusta niin Windows on oikein hyvä tähän. Vastaavasti jos käytössä on Apple niin sillä tehdään natiivisti sovelluksia ObjektiveC:llä.

        Työkalut valitaan tietysti käyttötarkoitusten mukaan. Kysyjä voisi ehkä ennemminkin tarkentaa mitä oikein on tekemässä, että onko opeteltava työkalu valittu oikein.

        "C ohjelman kääntäminen, debuggaus, linkkaaminen, jakelu- ja asennus pakettien tekeminen, version hallinta, yksikkö testaus, yms.. eivät ole osa C standardia."

        Ekosysteemi sanelee nämä asiat ja jotkut asiat on kyllä standardoitu vaikka ei olisikaan siinä C standardissa. Esim. buildijärjestelmien pohjalla on enemmän tai vähemmän make joka on standardointu, ja se kääntöprosessi missä koodi menee esikääntäjän, assemblerin, objektikoodin ja linkkauksen läpi on olennaista työkalun ymmärtämiseksi.


      • VastaAlkaja
        M-Kar kirjoitti:

        "Windows vs. Linux asian pohtimen on tässä asian yhteydessä vähän sama kuin sen miettiminen pitäisikö ostaa Android vai Aple jos haluaa opiskella soittamaan kännykällä."

        Ei se nyt näin mene kun pitäisi käsittää se, että eri ekosysteemeissä käytetään eri kieliä ja eri käyttötarkoitkuksiin.

        "Jos käyttää jo valmiiksi Windows:ia niin Windows varmasti on hyvä lähtökohta"

        Ei missään nimessä C ohjelmointiin. Jos tarkoitus olisi ohjelmoida C#:lla sovellusta niin Windows on oikein hyvä tähän. Vastaavasti jos käytössä on Apple niin sillä tehdään natiivisti sovelluksia ObjektiveC:llä.

        Työkalut valitaan tietysti käyttötarkoitusten mukaan. Kysyjä voisi ehkä ennemminkin tarkentaa mitä oikein on tekemässä, että onko opeteltava työkalu valittu oikein.

        "C ohjelman kääntäminen, debuggaus, linkkaaminen, jakelu- ja asennus pakettien tekeminen, version hallinta, yksikkö testaus, yms.. eivät ole osa C standardia."

        Ekosysteemi sanelee nämä asiat ja jotkut asiat on kyllä standardoitu vaikka ei olisikaan siinä C standardissa. Esim. buildijärjestelmien pohjalla on enemmän tai vähemmän make joka on standardointu, ja se kääntöprosessi missä koodi menee esikääntäjän, assemblerin, objektikoodin ja linkkauksen läpi on olennaista työkalun ymmärtämiseksi.

        Tästä voit lukea microsoftin perusteluja, miksi kannattaa c Windowsilla:

        https://www.visualstudio.com/vs/cplusplus/


      • VastaAlkaja kirjoitti:

        Tästä voit lukea microsoftin perusteluja, miksi kannattaa c Windowsilla:

        https://www.visualstudio.com/vs/cplusplus/

        Tuo on vain mainos.

        Kannattaa muistaa se, että Microsoft suosi sitä C :aa 90-luvulla. Vuodesta 2002 lähtien se kieli millä tehdään Windowsille on ollut C#. Toki C :aa käytettiin edelleen silloin kun tehtiin siirrettäviä ohjelmia jotka ei muuten onnistunut tai jossain muussa erikoisemmassa.

        Microsoft sitten laiminlöi sitä C :n välineiden kehitystä jotain 10v mutta näköjään aika tarkalleen vuosi sitten Microsoft teki Modern C for the Windows Runtime -kirjastoa. Tämä kuitenkin on tehty Visual Studio 2015:n jälkeen: https://moderncpp.com

        Tuo nähtävästi tuli mahdolliseksi Windows 10:n UWP:n myötä.

        Mutta, edelleen tuossa ei vaan ole yhtään mitään järkeä. Tarvitaan joku poikkeussyy, että yks kaks olisikin C :n käyttö järkevämpää kuin C#:n kun tekee Windowsille.


      • VastaAlkaja
        M-Kar kirjoitti:

        Tuo on vain mainos.

        Kannattaa muistaa se, että Microsoft suosi sitä C :aa 90-luvulla. Vuodesta 2002 lähtien se kieli millä tehdään Windowsille on ollut C#. Toki C :aa käytettiin edelleen silloin kun tehtiin siirrettäviä ohjelmia jotka ei muuten onnistunut tai jossain muussa erikoisemmassa.

        Microsoft sitten laiminlöi sitä C :n välineiden kehitystä jotain 10v mutta näköjään aika tarkalleen vuosi sitten Microsoft teki Modern C for the Windows Runtime -kirjastoa. Tämä kuitenkin on tehty Visual Studio 2015:n jälkeen: https://moderncpp.com

        Tuo nähtävästi tuli mahdolliseksi Windows 10:n UWP:n myötä.

        Mutta, edelleen tuossa ei vaan ole yhtään mitään järkeä. Tarvitaan joku poikkeussyy, että yks kaks olisikin C :n käyttö järkevämpää kuin C#:n kun tekee Windowsille.

        Niinhän se on.

        Sen perinteisen suoraan natiivi binääriksi kääntyvän C :n järkevä käyttö windowsilla on lähinnä silloin kun halutaan kerta kaikkiaan kaikki suorituskyky irti raudasta.


      • VastaAlkaja kirjoitti:

        Niinhän se on.

        Sen perinteisen suoraan natiivi binääriksi kääntyvän C :n järkevä käyttö windowsilla on lähinnä silloin kun halutaan kerta kaikkiaan kaikki suorituskyky irti raudasta.

        No Windows nyt on sellaiseen vähän väärä valinta kun halutaan kerta kaikkiaan kaikki suorituskyky irti raudasta.

        Tavallisesti sovelluksia tehdään Windows päätelaitteisiin esim. Typescriptillä tai sitten natiivisti C#:lla jos tarvitaan enemmän, ja Windows palvelimiin sitten ASP.NET.

        C on sitten jotain hyvin poikkeuksellista Windowsille. Sitä käytetään Windows päätelaitteille siirrettävissä sovelluksissa Qt:llä, kun joku Typescript tai vastaava ei riitä. Toinen poikkeuskohde missä sitä käytetään on muutamat pelikehityksessä käytettävät pelimoottorimiddlewaret jotka on tehty siirrettäviksi pelilaitteiden välillä. Tätä varten sitten on Xboxissakin vanha rajapinta olemassa.

        Kolmas poikkeuskohde on joku erikoisempi middleware esim. FEA käyttöön, kuten vaikka Nastran tai vastaava.

        Toki Windowsilla ajetaan paljon legacykoodia ja silloin kun halutaan paljon suorituskykyä niin Windows on vähän huti silloin.

        Suorituskyky ei yleensä ole mikään ongelma.


      • VastaAlkaja kirjoitti:

        Niinhän se on.

        Sen perinteisen suoraan natiivi binääriksi kääntyvän C :n järkevä käyttö windowsilla on lähinnä silloin kun halutaan kerta kaikkiaan kaikki suorituskyky irti raudasta.

        Tietysti jos haluaa, että suorituskyvyn viilauksella voisi olla merkitystäkin niin voisi miettiä jotain Raspberry Pi 3:sta.


    • Miksi ihmeessä haluaisit sen aloittaa? Modernimpia ja helpompia vaihtoehtoja tehdä mitä tahansa on pilvin pimein.

      • Mitä-ehtoja

        Kuten ?


      • Mitä-ehtoja kirjoitti:

        Kuten ?

        Pitäisi nyt ensiksi määritellä mitä oikein ollaan tekemässä.


      • Vaikka-tämä

        Ajatellaas nyt sitten niin että haluaisin tehdä ohjelmien asentajan, ruksi ruutuu periaatteella.

        Ohjelma kelpuuttaa seuraavista pakettilähteistä saatavat ohjelmat

        - APT
        - RPM
        - Epäviralliset pakettilähteet

        Ohjelma tarkistaa onko jo ennestään asennettu, ja jollei ole asentaa. Ja myös poistaa ja päivittää halutessa.

        Ohjelma ei itsessään sisällä asennus, päivitys eikä poisto skriptejä. Vaan käyttäjä luo niitä ja ohjelma varastoi ne.

        Ja eläkä nyt yritä selittää että niitähän on jo pilvinpimein valmiina, voi ollakin, mutta minä haluan ihan itse tehdyn, piste.


      • VastaAlkaja
        M-Kar kirjoitti:

        Pitäisi nyt ensiksi määritellä mitä oikein ollaan tekemässä.

        Eiköhän aloittaja halua vain opiskella omaksi ilokseen.


      • VastaAlkaja kirjoitti:

        Eiköhän aloittaja halua vain opiskella omaksi ilokseen.

        No sitten varmaan kannattaa valita välineet sen mukaan mikä sopii siihen opiskeluun parhaiten. Puhdasta, standardia C :aa ohjelmoitaessa voisi hyvinkin toimia parhaiten FreeBSD mutta ekosysteemeistä sitten olisi se Ubuntu tähän sopiva kun tässä sitä C :aa suositaan natiiveissa sovelluksissa.


      • VastaAlkaja kirjoitti:

        Eiköhän aloittaja halua vain opiskella omaksi ilokseen.

        Pitää olla masokisti jos vääntää C :aa omaksi ilokseen.


      • outsider1 kirjoitti:

        Pitää olla masokisti jos vääntää C :aa omaksi ilokseen.

        Se vähän riippuu mitä on tekemässä.


      • outsider1 kirjoitti:

        Pitää olla masokisti jos vääntää C :aa omaksi ilokseen.

        Esimerkiksi jos harrastaa raskasta laskentaa niin käyttöjärjestelmä jossa tuore GCC ja siihen OpenMP on aika kova juttu C :n kanssa.


      • M-Kar kirjoitti:

        Esimerkiksi jos harrastaa raskasta laskentaa niin käyttöjärjestelmä jossa tuore GCC ja siihen OpenMP on aika kova juttu C :n kanssa.

        Kuka hemmetti harrastaa raskasta laskentaa?


      • outsider1 kirjoitti:

        Kuka hemmetti harrastaa raskasta laskentaa?

        Vaikka tämä porukka kuka aika ajoin käyttää näitä isompia laskimia. Onhan tuolla CSC:llä esim. parikin järeätä laskinta, että selvästikin on ihmisiä joilla on kiinnostuksia tähän.

        Eli siis jos nyt omaksi iloksi jotain ohjelmoi niin kyllähän silloinkin se työkalu valitaan sen mukaisesti.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Simula, rakkaus, Aittakumpu

      Milloin tämä rakkaus on roihahtanut? Onko molemmat herätysliikkeen jäseniä - kristillisiä etnonationalisteja ?https://ww
      Perussuomalaiset
      116
      1998
    2. Yläkoulun seksiopas neuvoo harjoittelemaan

      anaaliyhdyntää lämpöisellä ja pitkällä porkkanalla https://www.is.fi/kotimaa/art-2000010859818.html
      Maailman menoa
      157
      1477
    3. Pormestari käräjille?

      Ei mene Puolangalla häpösesti, rinnekeskus&hotelli suljettuna ja käräjäasiana, naudat tapetaan nälkään, poliisi tutkii j
      Puolanka
      55
      1347
    4. Millaista naista ikävöit

      Ulkonäkö/persoona
      Ikävä
      55
      1118
    5. Joukko oppilaita terrorisoi koulua Helsingissä niin

      että osa opettajista pelkää töihin tulemista https://www.hs.fi/helsinki/art-2000010857587.html
      Maailman menoa
      155
      1097
    6. Susta ei saisi nättiä vaikka miten paljon

      meikkaisit. 😁 anna siis sen miehen olla rauhassa! Sivusta tutulta mieheltä
      Ikävä
      75
      966
    7. Voisimmeko seuraavan kerran kun

      Nähdään tehdä toisille selväksi että kiinnostaa enemmän kuin kaveri mielessä. Jos keksit vielä keinon niin napakymppi
      Ikävä
      36
      867
    8. Nyt on hyvä laittaa

      kirjaimet kohdilleen. Kuka kaipaa ja ketä. Onko oma kaivattu täällä ?
      Ikävä
      52
      864
    9. Norjan tilaama koruton raportti mitä NATO-jäsenyys aiheuttaa Suomelle

      Iltasanomat: "Miksi vaikenemme? Asiantuntijoiden mukaan Suomessa ei vieläkään ymmärretä, mitä Nato-jäsenyydestä seuraa
      Maailman menoa
      62
      852
    10. Kuinka nättinä

      Sitä pitää olla että huomataan 🙃
      Ikävä
      56
      811
    Aihe