Úgy értem, ami alapján eldönthetném valami egyszerű módon, hogy egy adott funkció melyikbe kerüljön?
Nem tudom van-e erre valami szabaly, ha nekem kene dontenem, akkor hierarchikusan epitenem fel a fuggvenykonyvtarakat. Azt vennem figyelembe, mire vonatkozik a fuggveny, mennyire "elemi" muvelet amit elvegez es az eredmeny mire/hol van hasznalva. Tovabba egy konyvtarba a logikailag osszetartozo fuggvenyek kerulnenek. Ha meg tudod fogalmazni mire valo a konyvtar az sokat segit eldonteni mi valo bele:
- math: matematikai muveletek. (es igy mar erezheto, hogy a szam->string konverzio az nem matematikai muvelet)
- dir: ezt atneveznem io-ra, es akkor fajlrendszer kezelessel kapcsolatos muveletek.
- str: string vizsgalo es manipulacios muveletek.
- terminal: megjelenitessel kapcsolatos muveletek. (igy erzesre minden megjelenitest segito fuggveny ide illik, szinkodos szam konverziot es szoveg jobbra-balra igazitast is beleertve)
- text processing: szovegfeldolgozassal kapcsolatos muveletek.
- stb..
A nyelv ismerete nelkul nehez ertelmes javaslatot tenni, de en pl valahogy igy csinalnam:
- "szokozok torlese a string vegerol" - stringen dolgozik, az eredmeny altalanos celu -> string konyvtar
- "konkret karakter torlese a string vegerol" - stringen dolgozik, az eredmeny altalanos celu -> string konyvtar
- "utvonal elvalaszto karakter torlese a string vegerol ha van" - stringen dolgozik, specialisan fajlrendszer kezeleshez segedfuggveny-> io(?) konyvtar (io fugg a string konyvtartol)
- "szam stringge alakitasa" - szamon dolgozik, az eredmeny altalanos celu -> string-be mint "create string from number" az egyszeruseg kedveert, de lehetne magasabb rendu "conversion" konyvtarba is rakni ami ide-oda tud konvertalni a tipusok kozott amit akarsz.
- "szam stringge alakitasa szinkodok beszurasaval" - szamon dolgozik, az eredmeny csak kijelzesre hasznalhato -> terminal konyvtar (terminal fugg a string konyvtartol)
- "string tomoritese hogy beferjen x karakterbe" - stringen dolgozik, az eredmeny kijelzesre hasznalando -> terminal konyvtar
- "string felbontasa tetszoleges karakter menten" - stringen dolgozik, az eredmeny altalanos celu -> string konyvtar
- "string felbontasa szokozok menten" - stringen dolgozik, az elozo egy specialis esete -> text processing konyvtar(?), text processing fuggene a string konyvtartol. De ilyenre nem is biztos hogy csinalnek kulon fuggvenyt, egyszeruen az elozo fuggveny parameterezesevel helyettesitheto.
- "fajl soronkenti beolvasasa string tombbe" - fajlon dolgozik, string tombot ad vissza -> io konyvtar (io fugg a string konyvtartol)
- "c stilusu kommentek torlese" - stringen dolgozik, osszetett muvelet -> text processing konyvtar(?)
De sok minden nezopont kerdese, ha 10 embert megkerdezel nem lepodnek meg ha 12 kulonbozo valaszt kapnal hogyan jo felbontani a fuggvenyeket, es nagyban fugg attol mire helyezed a nyelvben a hangsulyt. Pl. ha a nyelv celja statisztika szamitasok tamogatasa, akkor a "math" konyvtar valoszinu tobb reszre lesz bontva, mig ha szovegfeldolgozas a cel, akkor a "math" konyvtar kicsi lesz, az "str" viszont terjedelmes, stb. Nincs egy igaz megoldas.