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

432

    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. Persuja ei aluevaltuustoissa näy

      Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.
      Maailman menoa
      59
      3727
    2. Päivän Riikka: Uudenkaupungin autotehdas hiljeni

      Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j
      Maailman menoa
      87
      3118
    3. Riikka vie Suomen kohta ykköseksi työttömyyskisassa

      Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin
      Maailman menoa
      69
      2326
    4. Mikä ihme teitä savolaisia tuossa

      p*rs*reiässä niin kiinnostelee? Että siitä pitää päntönnään huutaa.
      Tuusniemi
      14
      1530
    5. Laita tunniste josta kaivattusi tietää sun kirjoittavan täällä

      Joku yksilöity yhteinen juttu joka on sun ja kaivattusi välillä. Tuntomerkkinä esim. punainen pipopää, tonttu-ukko tai m
      Ikävä
      65
      1319
    6. Mikä tekee naisesta

      Seksikkään ja viehättävän? Entä miehestä?
      Ikävä
      87
      1169
    7. Varusmiehen kuolema

      Ei ollut vahinko, ei aiheuttanut vaaraa muille, eikä ollut rikos, mitä jää jäljelle? Oliko kyseessä oman käden kautta lä
      Kajaani
      29
      1039
    8. Kumpaan rahat, mummojen vaippoihin vai Nalle WahIroosille?

      JOS siis sinä saisit päättää?
      Maailman menoa
      1
      991
    9. Huippu, kaupunki ostaa hotellin

      Hyvä juttu meillä on oma hotelli iloitsi Pirtihirmukin. Nyt vaan rekryt päälle ja uusi henkilökunta. Tarvitaan tekijöitä
      Ähtäri
      55
      965
    10. Mitä ajattelet rakkaastasi tällähetkellä?

      Itse haluaisin jo hänen viereen..
      Ikävä
      47
      952
    Aihe