Kezdőoldal » Számítástechnika » Programozás » A függvénykönyvtárak függvénye...

A függvénykönyvtárak függvényei milyen nyelven íródtak?

Figyelt kérdés
2016. jan. 7. 22:21
1 2
 1/12 Piert ***** válasza:
programozási. Melyik függvénykönyvtárra gondolsz?
2016. jan. 7. 22:35
Hasznos számodra ez a válasz?
 2/12 anonim ***** válasza:
Melyik nyelv melyik függvénykönyvtárai? Még a hivatalos könyvtárakból is sok ezer van! Melyikre gondolsz? :D
2016. jan. 7. 22:36
Hasznos számodra ez a válasz?
 3/12 anonim ***** válasza:
A hivatalos C++ könyvtárak általában C++ nyelven íródnak. A hivatalos C# könyvtárak (vagy más köztes és interpreteres nyelvek könyvtárai) gyakran valamilyen performancia hatékony nyelven íródnak és API-kon keresztül hívhatóak.
2016. jan. 7. 22:44
Hasznos számodra ez a válasz?
 4/12 A kérdező kommentje:
Igazából az a problémám, hogy fel eve tanulok egyetemen c programozást. Tanultunk minden félét strukturák, lancolt lista, binaris fa, fajlkezeles stb. Eddig oké, de ezekből hogy lesz egy használható program? Pl egy szoftver ami képes bluetooth kapcsolaton keresztül fileokat küldeni telefon és pc között. Nos ahogy néztem, ezt különböző könyvtárak függvényeinek a használatával lehet megvalósítani. Ezekre lennék kíváncsi hogy milyen nyelven íródtak. Vagy esetleg mindenféle könyvtár használata nélkül is lehetséges ez, csak nem tanították?
2016. jan. 7. 22:47
 5/12 anonim ***** válasza:
Vannak szabad könyvtárak, például a Boost, bár az nem tudom, hogy csak C++ e. Megnézheted a forrását.
2016. jan. 7. 22:59
Hasznos számodra ez a válasz?
 6/12 anonim ***** válasza:

Az a gond, hogy össze kevered a szezont a fazonnal.


A programozási nyelv nem arra van, hogy hálózaton (TCP/IP, bluetooth) külj információt, hanem valamilyen probléma megoldására.

Példának kedvéért: PHP Piros-Fekete fát használ a dinamikus tömb kezelésre. Ha már használtál PHP-t, akkor tudod milyen az ottani tömb kezelés.

Továbbá lásd: gráfok (Navigációs programok). Ha veszel egy pontot, és onnan minden irányban minden pontot beveszel, kivéve a már az érintett pontokat, akkor kapsz egy fát. Ebből is csomó mindent lehet csinálni.

Avagy tanulni fogott később ha lesz Mesterséges intelligenciád, hogy fát használnak az Alfa-Béta algoritmushoz. (Google/Youtube)


Az, hogy hálózaton hogyan kell küldeni anyagokat, vagyis ez hogy valósul meg, arra meg: Operációs rendszerek c. kurzus ad majd választ. Mert mint tudni illik: az operációs rendszer nem az a több GB anyag (lásd Windowsok), hanem csak alig pár megája a tényleges oprendszer. A többi csak plusz. (Lásd linux kernel + pl. bash shell méretét összeadva grafika nélkül)


Nos akkor térjünk át a lényegre:

Hálózaton hogy küldünk adatot? Hát az operációs rendszert kérjük meg erre. Ami kezeli a hálózatot is, így onnantól ő gondoskodik róla. Természetesen ezt programkönyvtárból kell/lehet megvalósítani. De a kérdésed az: hogy ezek milyen nyelven íródtak?


Válasz: Mindegy is, mert lefordítva úgy is bináris adatok és processzor szintű utasítások. De ha tényleg érdekel akkor:

Operációs rendszer szinten legtöbbször C.

Matematikai esetekben: FORTAN (ezt építették bele a C-be, PHP-ba és Java-ba is)


De sose az a lényeg, hogy mi a forrás nyelv, hanem hogy adott körülmények között tudod-e használni.


Csoki.

2016. jan. 7. 23:36
Hasznos számodra ez a válasz?
 7/12 anonim ***** válasza:

Hát az iskolában általában azokat az algoritmusokat tanítják meg, amiket a leggyakrabban szokás használni a mindennapi programozói életben. Ezek úgymond az alap építőkövek. Ugyanakkor minden programnyelvhez tartoznak függvénytárak, ahol ezek az alap algoritmusok már le vannak programozva és csak meg kell őket hívni. Persze ettől még neked is értened kell a logikájukat és le kell tudnod programozni őket, ezért tanítják meg.


Technikailag szinte minden általános programozói problémára létezik előre megírt függvény. Neked már nem kell bajlódnod ezek megírásával. Neked csak azokat a programrészeket kell megírnod, amik speciálisak.


C-ben feltételezem az előre megírt függvények 99%-át C-ben írták, mivel elég alacsony szintű nyelv, nem sok értelme lenne más nyelvben írni hozzá könyvtárat.


Ha az érdekel, hogy ebből hogyan lesz bonyolultabb program, akkor állj neki egy ilyen program megírásának, olvasgass utána neten, less bele más programok forráskódjába és majd menet közben ez kialakul. Ez kicsit olyan, mintha azt kérdeznéd, hogy a legóból hogyan lesz robot tyrannoszaurusz.


Amúgy az egyetemen nem fogsz megtanulni programozni, mert az semmi, amit ott leadnak. Érdemes otthon tanulni mellette. Én is anno suli után 2-3 órát programozgattam otthon minden nap. Mondjuk én élveztem nagyon. Érdemes konkrét feladatoknak nekiállni, úgy könnyebb megérteni a dolgokat. Kezdésnek programozd le a 8 királynő probléma megoldóját, meg a Convay game of life algoritmusát, később snake, tetrist ... stb.

2016. jan. 7. 23:40
Hasznos számodra ez a válasz?
 8/12 anonim ***** válasza:

Persze, hogy lehetséges megoldani függvénykönyvtár nélkül is. De akkor neked kell leprogramoznod a bluetooth protokol alacsonyszintű utasításait. Amihet azt kell, hogy tudd hogyan is működik a protokol. Ha egyáltalán nem akarod más kódját használni akkor akár a bluetooth drivert is megírhatod :) Ehhez tudás kell és idő, amibe neked nem biztos hogy kifizetődő belevágni mert mondjuk a bluetoothos file küldés a programod csak egy nagyon extra feature. Ettől függetlenül megcsinálhatod, de a végeredmény ugyanaz lesz mint ha a függvény könyvtárat használtad volna (ha semmit nem rontasz el). Vagyis újra feltaláltad a kereket. Ami a gyakorlatban csak akkor éri meg ha te jobb kereket tudsz feltalálni mint az eredeti. De sok esetben még akkor sem.


Visszakanyarodva az eredeti kérdésre a függvénykönyvtárak általában abban a nyelvben íródnak amihez használod, vagy ha olyan műveletről van szó ami ezt indokolja akkor valami bindingon keresztül egy shared libraryben végződnek amiket C/C++-ban szokás írni.


Amit te tanultál C-ben azok az alapok. Ebből úgy lesz program, hogy megtanították hogyan építed fel az alap programot, hogyan fordítod le, és hogyan húzol be függvénykönyvtárakat. Ismered az alapvető típusokat és adatszerkezeteket és nem fogsz meglepődni ha egy pointert látsz.

Ha a példádat akarod megvalósítani akkor mivel gondolom annyira nem vagy otthon bluetoothban hogy összedobj egy stacket magadtól, szükséged lesz egyre. Legyen mondjuk a bluez mert nekem pont az van fenn. Keresel hozzá egy reference manualt és megnézed milyen függvényekre is van szükséged ahhoz hogy file-t tudj küldeni. Nagy valószínűséggel találsz is rá példát.

2016. jan. 7. 23:43
Hasznos számodra ez a válasz?
 9/12 anonim ***** válasza:

#6:

A hálózaton való információ küldés nem probléma?

Mutass már nekem egy modern programot ami NEM akar hálózaton adatot küldeni. Fileokat? Hangot? Videót? Ezekre n+1 különböző megoldás és protokol van definiálva/implementálva. (rfc esetleg?)



Nem tudom te hova jártál de az op. rendszerek nem hálózatokról szólt hanem op. rendszerekről, memória használatról, processekről, szálkezelésről, "írjál shell"-tről stb. Hálózatokról a hálózatok tantárgy szólt, aminek a gyakorlati része pont C-ben tcp/udp volt...

Tehát a te definíciód alapján a C nem programozási nyelv :) Vagy csak én használtam valami olyasmire amire "nem való". Ha jobban belegondolok már évek óta rosszul használom az összes programozási nyelvet amivel dolgom volt...mert mindnél meghatározó probléma volt a hálózat kezelése.

2016. jan. 8. 00:03
Hasznos számodra ez a válasz?
 10/12 anonim ***** válasza:
2016. jan. 8. 00:45
Hasznos számodra ez a válasz?
1 2

További 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!