Kezdőoldal » Számítástechnika » Programozás » Próbálkozott már innen valaki...

Próbálkozott már innen valaki azzal, hogy C#-ban vagy C++-ban egy szoftvert csak és kizárólag pure függvényekkel valósítson meg? Ha igen, mesélne a tapasztalatairól?

Figyelt kérdés
2018. szept. 13. 12:12
 1/6 anonim ***** válasza:
Miért lenne ez jó? Amúgy c++-ban az átadott paraméterek alapvetően hard copy-k, nem referenciák/pointerek. Szóval ha úgy vesszük egy normál függvény ha akarja sem tudja módosítani az argumentumokat.
2018. szept. 13. 13:00
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:

"Miért lenne ez jó?"

A mellékhatások és függőségek minimalizálása érdekében. Nem mondom hogy ez jobb bárminél, de lehet vannak előnyei. Csak egy gondolatkísérlet részemről.

2018. szept. 13. 14:13
 3/6 anonim ***** válasza:
Nem, mivel a C++ alapvetően nem funkcionális nyelv, hiába valósíthatóak meg benne olyan elvek, tehát csak azt érném el vele, hogy sokkal ocsmányabb és átláthatatlanabb kódot írnék, ahelyett, hogy valamilyen funkcionális nyelvet használnék.
2018. szept. 13. 17:18
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:

"A mellékhatások és függőségek minimalizálása érdekében."

A mellékhatások attól függnek, hogy az adott külső (nem built-in) könyvtár írója vétett-e hibát, esetleg hogy megfelelő módon használjuk-e. A legtöbb általánosan használt könyvtár évek óta tesztelt és javított, de legalábbis ismertek a hibái vagy érzékeny pontjai. A saját megoldásokban ennél nagyobb a hibalehetőség, külön munka eljutni csak erre a szintre is.

A függőségek csökkentésének pedig csak akkor van értelme, ha dinamikusan linkelem a könyvtárakat, statikus linknél belefordul a kész kódba, szóval nem jelent valódi függést.

Egyébként a "pure" (beépített?) függvények használata nem sokban különbözik a külsők használatától, a C/C++ nyelvek eleve függvénykönyvtárakra épülnek, azok nélkül (kis túlzással) nem sokra használható maga a nyelv. Nehéz lenne olyan értelmes progit írni, amiben nincs egy include sem. A C#-ban pedig inkább az osztályok és azok metódusai vannak túlsúlyban, de a lényeg kb. ugyanaz, magunknak kellene megírni azokat az osztályokat, amiket valaki már megírt és a fél világ használja.

2018. szept. 14. 08:06
Hasznos számodra ez a válasz?
 5/6 anonim ***** válasza:
56%

#4: Te meg mi a fenéről beszélsz? Fogalmad sincs, hogy miről van szó.


"A mellékhatások attól függnek, hogy az adott külső (nem built-in) könyvtár írója vétett-e hibát, esetleg hogy megfelelő módon használjuk-e."

Egyáltalán nem, attól függ, hogy egy függvény módosít-e saját magán kívüli állapotot, például egy globális változót.


"Egyébként a "pure" (beépített?) függvények használata nem sokban különbözik a külsők használatától, a C/C++ nyelvek eleve függvénykönyvtárakra épülnek, azok nélkül (kis túlzással) nem sokra használható maga a nyelv."

Ha ennyire nem vagy képben a dolgokkal, minek küldesz be ilyen félrevezető hozzászólást? Egy függvény attól lesz pure, hogy nincs nem rendelkezik mellékhatásokkal és egy adott paraméterre mindig ugyanaz lesz a visszatérési értéke.

2018. szept. 14. 09:07
Hasznos számodra ez a válasz?
 6/6 anonim ***** válasza:

"Te meg mi a fenéről beszélsz? Fogalmad sincs, hogy miről van szó."

Javíts ki, ha máshogy gondolod, de nem legyél paraszt, fogd vissza magad.

2018. szept. 14. 19:07
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!