Koodaamista yhteen vai moneen tiedostoon?

Anonyymi-ap

Ohjelmoinnin kurssilla neuvottiin, että koodia kannattaa jakaa eri tiedostoihin. Kuulin myös ohjelmoijasta, joka tekee ainakin osan muistiinpanoista lähes mielivaltaiseen tiedostoon, josta automaattinen skripti siirtää esimerkiksi datat oikeaan paikkaan. Mitä etuja ja haittoja kummallakin lähestymistavalla on?

11

422

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Tyhmä kysymys. Mieti nyt vähän itsekin.

    • Anonyymi

      Jos on koodia jota voi käyttää useasti niin kannattaa pitää se eri tiedostossa joka sitten import tarvittaessa. Niin ei ole turhaan silmissä.

    • Anonyymi

      Erillistä dokumentaatiota voi olla paljonkin ennen koodausvaihetta. Koodin dokumentointiin on työkaluja esim. Doxygen osaa poimia koodista tietyllä tavalla kirjoitettuja kommentteja ja tehdä niistä nätin dokumentaation - tuo on vain esimerkiksi, voi löytyä parempiakin maailmalta tai johonkin kieleen voi liittyä omia tottumuksiaan dokumentaation suhteen ja yleensä niistä on tapana pitää kiinni, koska se nopeuttaa dokumentaation lukemista.

    • Anonyymi

      Eihän Legotalokaan ole yksi palikka, vaan osista, jolloin sitä on helppo muokata.

    • Anonyymi

      Yksi osakokonaisuus yhteen tiedostoon. Se helpottaa koodin omaksumista mm. sitten, kun sinä taikka joku muu joutuu ylläpitämään sitä joskus vuosien kuluttua.

      Yksi tiedosto on periaatteessa yksi moduuli, jonka linkkeri ottaa (kirjastosta) tai jättää linkittämättä ohjelmaan. Nykyään kääntäjä saattaa osata pilkkoa moduulin yksittäin linkitettäviksi funktioiksi, mutta vanha periaate on hyvä lähtökohta edelleen.

    • Anonyymi

      Ainakin jos haluaa kääntää tiedostoja rinnakkaistetusti (kun kääntää koko projektin puhtaalta pöydältä), kannattaa koodi olla mahdollisimman monessa tiedostossa, esim oma projekti kääntyy 32 tiedostoa kerralla, linuxissa noin 19s ja Windowsissa 35s, kooririvejä noin 93t.

      • Anonyymi

        Rinnakkaisuus ei välttämättä toimi toivomallasi tavalla. Sehän edellyttää jo lähtökohtaisesti sitä, että prosessori(t) ja käyttis tukevat rinnakkaisuutta h/w-tasolla. Jos koneessasi on 32 prosessoriydintä, edellytys saattaa täyttyä.

        Mutta useinhan on näin, että ohjelmamoduuliin luetaan iso nippu headereita tms., jotka saattavat olla kooltaan / rivimäärältään moninkertaisesti sen mitä itse projekti. 32 kertaa näiden headereiden läpikäynti on helposti suurempi työ kuin noin 93t koodirivin kääntäminen.

        Ajatus hyvä, mutta väitän, että kääntäjän suoritustehoa on vaikeaa nostaa koodin pilkkomisella.


    • Anonyymi

      Ohjelmakoodi kannattaa ehdottomasti jakaa useaan eri lähdekoodikooditiedostoon. Ohjelmakoodi on syytä jakaa loogisiin osiin , jotka kukin on omassa lähdekooditiedostossaan Yksittäinen lähdekooditiedosto voi sisältää johonkin tiettyyn tehtävään tehdyn luokan, komponentin tai moduulin jne. Ylipäätänsä ideana on pilkkoa lähdekoodi selkeisiin loogisiin osiin sensijasta, että kaikki tungettaisiin samaan lähdekooditiedostoon. Lähdekoodin pilkkominenuseisiin lähdekooditiedostoihin mahdollistaa mm. nämä:

      - uudelleen käytettävät lähdekoodikomponentit, joita voidaan käyttää useaan kertaan ilman, että pyörää tarvitsee jns keksiä uudelleen aina kun samaa toiminnallisuutta tarvitaan samassa tai eri projektissa.

      - Paljon selkeämmän ja helpommin ylläpidettävän lähdekoodin

      - uudelleen käytettävän komponentin muuttamisen ja jatkokehittämisen niin, että muutokset tarvitsee tehdä vain kerran ja jatkokehitettyä komponenttia voidaan sitten heti käyttää useassa paikassa saman tai eri projektin sisällä.

      jne.

    • Anonyymi

      100 tiedostoa, 10 riviä per tiedosto = lukukelvotonta.
      Vielä 10000 riviä menee yhdessä tiedostossa hyvin kun käyttää funktioiden ja luokkien supistamista editorissa.

      • Anonyymi

        Niinno, hyväkin asia voi kääntyä huonoksi liian pitkälle vietynä.


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

    Luetuimmat keskustelut

    1. En minä kyllä enää odota sinua

      Olet siellä sen harmaan kanssa. Niin, annoit minun nähdä lämpimät tunteesi siitä huolimatta. Se merkitsi kyllä paljon. O
      Ikävä
      49
      2398
    2. Kehutaan vaihteeksi Perussuomalaisia

      Perussuomalaiset ovat olleet melkoisen lokakampanjoinnin kohteena, vaikka ovat saaneet paljon hyvää aikaiseksi. Nyt on
      Maailman menoa
      54
      2170
    3. Niin surullinen

      onnettomuus taas. Voimia ihan kaikille läheisille,kavereille ja kouluun 🙏
      Lapua
      32
      1690
    4. Joka kolmas työtön on työkyvytön

      Viime vuonna työnhakuvelvoitteen ulkopuolella oli noin kolmannes työttömistä työnhakijoista. Huhheijaa, mihin suomalais
      Maailman menoa
      208
      1688
    5. Jos joku luulee että kaikki käy

      Sanon vain tämän. Minun kanssani ei neuvotella. Minun kanssani eletään tasavertaisesti. Jos se on liikaa, niin ovi rinn
      Ikävä
      68
      1640
    6. Paloautoko se oli kolarissa Juntusrannan risteyksessä?

      Oli kuva paloautosta nettijutussa.
      Suomussalmi
      19
      1477
    7. Sakin hivutus - ilmiö

      Miten tuollainen tuollainen ilmiö kuin ”sakin hivutus” syntyy? Mitä syitä ilmiön syntymiseen tarvitaan? Onko sakissa jok
      80 plus
      86
      1404
    8. Roiskeläpät takaisin niin alkaa lasit kestämään

      "Tuulilaseja hajottava talvi-ilmiö on ehkä ratkennut" Tämän päivän autoissa kun on esimerkiksi vanhempaa autokalustoa s
      Yleistä autoilusta
      8
      1389
    9. Julkinen saunatilanne Haapavedellä, tämä on täyttä paskaa!

      Eilen Haapaveden uimahallin saunassa koettu tilanne oli täysin käsittämätöntä ja helvetin järkyttävää. Ladyboy harjoitti
      Haapavesi
      19
      1304
    10. Ei ole rohkeutta tulla jututtamaan

      Voidaan me nähdä ja tervehtiä, sitäkin harvoin, mutta iso kynnys on edes mennä lähelle ja kysyä kuulumisia. Ymmärrät var
      Tunteet
      8
      1291
    Aihe