Kuinka oppisin suunnittelemaan ohjelmia?

noviisipythonisti

Olen aloittelija ohjelmoinnissa, ja osaan Pythonin perusteet. Olen koettanut tehdä vähän isompaa ohjelmaa ja ongelmani tuntuu olevan siinä, että suunnittelen aina liian isoja funktioita. Onko olemassa kätevää opasta tai neuvoa sille, miten tehdään ohjelmat siten, että funktioilla olisi vaikka korkeintaan kaksi parametriä?

2

107

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Tästä varmaan apua: https://en.wikipedia.org/wiki/Cyclomatic_complexity

      Huolehdi siitä, että cyclomatic complexity on korkeintaan 10. Vain erikoisissa poikkeustapauksissa sitten enemmän.

      Prosessi siihen miten saat riittävän yksinkertaiseksi funktiot menee niin, että kirjoita ensiksi testin millä testataan toimiiko funktio oikein. Sitten vasta kirjoitat sen funktion. Jos tarvitset lisää monimutkaisuutta niin kirjoita testejä lisää.

      Huomioi se, että testien määrän funktiota kohden pitäisi olla sama kuin tuo cyclomatic complexity, eli maksimissaan 10 testiä funktiota kohden.

      • noviisipythonisti

        Ainakin keskimääräinen kompleksisuus on alle 10:
        radon cc ahdruud.py -a -na
        ahdruud.py
        F 9:0 last_coordinates - B
        F 70:0 can_put_on_board - B
        F 25:0 next_x_coordinate - A
        F 34:0 next_y_coordinate - A
        F 44:0 digits_corresponds - A
        F 1:0 printboard - A
        F 61:0 does_overlap - A

        7 blocks (classes, functions, methods) analyzed.
        Average complexity: A (4.42857142857)


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

    Luetuimmat keskustelut

    1. IL - Patteriauto syttyi parkkihallissa Tampereella - 50 autoa LUNASTUKSEEN!

      "Palon aikaan parkkihallissa oli 90 autoa, joista noin 50 tuhoutui palossa korjauskelvottomiksi. Lisäksi palo vaurioitti
      Maailman menoa
      237
      45159
    2. Polttomoottoriauto tulessa parkkihallissa Tampereella

      Pystyy näkemättä jo sanomaan, koska sähköautoissa ei ole palavia nesteitä lainkaan. Ihme ettei polttomoottoriautoja ole
      Maailman menoa
      121
      25963
    3. SDP palauttaa Suomen kansalle kulta-ajat

      Hyvinvointivalto on pääosin SDP:n ja osin myös Maalaisliiton rakentama. Hyvinvointivaltion ylläpito edellyttää oikeude
      Maailman menoa
      323
      15654
    4. Persut JYTKYTTÄÄ ylös, ohi kepun! +2,1 %

      Persut palasi kolmen suurimman joukkoon ja on matkalla kohti kevään 2027 eduskuntavaalivoittoa. Sosialistit ovat syöksy
      Maailman menoa
      163
      10782
    5. Älkää vassarit kuvitelko, että Marinin kulta-ajat palaavat

      Vaikka demarit voittaisivat seuraavat vaalit, se ei palauta Marinin taskut-täyteen-kelasta-aikaa takaisin, ei voi eikä h
      Maailman menoa
      122
      9697
    6. Sanna Marin saa ylistystä Hillary Clintonilta

      Jos joku ei tiedä kuka tämä rouva Hillary Clinton on, niin kerrottakoon "fun fact", eli hän on se keneltä Donald Trump
      Maailman menoa
      36
      9311
    7. Ja jälleen uusi latauksessa olleen sähköauton palo! Nyt Keravan Prisman parkkihallissa.

      IS 3.10.2025 Latauksessa ollut sähköauto syttyi yöllä tuleen Keravan Prisman parkkihallissa, Keski-Uudenmaan pelastusla
      Maailman menoa
      84
      8456
    8. Kristillisistä Siionisteista asiallista tietoa Hesarissa.

      KD ja Persut ovat kaiken takana avoimesti!
      Maailman menoa
      30
      7923
    9. 242
      6814
    10. Gallup, PS:lle JÄRISYTTÄVÄ nousu, SDP suurin laskija

      https://yle.fi/a/74-20186114 PS kovaa vauhtia nousemassa ennen 2027 vaaleja suurimmaksi puolueeksi. Nyt mennään jo etua
      Maailman menoa
      221
      6476
    Aihe