-
IT café
Új hozzászólás Aktív témák
-
sztanozs
veterán
válasz pmonitor #15594 üzenetére
Igazából senkit sem érdekel, hogy minél gyorsabban fusson valami, az érdekes, hogy az elvárt időn belül lefusson. Ha az elvárt idő 7 mp és lefut 2 mp alatt, akkor nem fogják árírni c-be vagy assy-ba, hogy 0.05 mp alatt lefusson.
Ja és sokkal valószinűbb, hogy ha 10 mp alatt futna le, akkor se keresnek másik programozási nyelvet, hanem csak egy gyorsabb implementációt ugyanarra a problémára (ha van ilyen).[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
kovisoft
őstag
válasz pmonitor #15603 üzenetére
Nem gondolnám off topicnak a témát, bármit meg lehet értelmesen vitatni, de ha valaki úgy kezdi, hogy ez meg az milyen sz@r, ezek meg azok milyen hülyék, stb, akkor azzal óhatatlanul belegázol valaki másnak a lelkébe, aztán nem győznek takarítani a modik.
Az adott feladat és a rendelkezésre álló erőforrások döntik el, hogy elfogadható-e ez a futásidő vagy nem. Sokszor elfogadható, máskor meg nem. Ha nem elfogadható, akkor valahogy gyorsítani kell a programot, és ennek többféle módja is lehetséges, nem csak a váltás egy másik programnyelvre, pláne ha több millió soros kódbázisról van szó. Első körben nyilván az ember az adott programnyelven az adott programrészt próbálja optimalizálni (pl. gyorsabb algoritmusok használata, heurisztikák beépítése, caching, párhuzamosítás, stb). Bizonyos esetekben lehet hardvert bővíteni vagy nagyobb teljesítményűre cserélni. Nyilván szóba jöhet a kódnak vagy egy részének egy másik programnyelvre való átültetése is, de mit csináljon pl. az, aki már eleve C-ben (vagy akár Assemblyben) oldotta meg a feladatot, és még így is lassú?
Aztán meg olyan is van, hogy ugyan tudnánk gyorsítani a kódon, de ez túl nagy munka lenne és sokba kerülne a cégnek vagy a megrendelőnek, és így máris elfogadhatóvá válik a hosszabb futásidő.
-
martonx
veterán
válasz pmonitor #15603 üzenetére
Nem off topik ez. Csak egyszerűen nem kell butaságokat írni. Annak, hogy egy programnyelv jó-e vagy rossz, egy csomó szempontja lehet, nem csak a futásidőben nyújtott teljesítmény. Hiszen, ha így lenne, akkor nem lenne feljövőben a Python, a PHP már vagy egy évtizede ki kellett volna, hogy haljon, a javascriptről nem is beszélve
Ugyanakkor nyilván azt se lehet kijelenteni, hogy nem számít a futásidejű teljesítmény, mert igenis van sok olyan eset, amikor meg erre kell kihegyezni valamit. De ekkor is több mindent figyelembe kell venni. Pl. van-e értelme natív nyelvben újraírni valamit, csak azért, hogy pár százalék gyorsulást hozzon a konyhára? Vagy inkább egyszerűbb egy szerver alá betolni plusz két processzormagot, és a fejlesztők meg a hónapokig / évekig tartó újraírás (nem is beszélve egy új nyelv megtanulásáról) helyett inkább olyan új feature-ökön dolgozhatnának, amikkel megtöbbszörözik a cég bevételeit?
Vagy említetted, hogy pl. elég csak a teljesítmény kritikus részeket megírni natív kódban, és azokat dll-ként behivatkozni. Ekkor vajon mennyire fog jól működni a közös logolás, monitoring? Mennyire lesz fájdalmas CI/CD rendszert több repository-ból kiindulva felépíteni, és egy sikeres build/deploy/testing fázist végig verni az X féle nyelven készült komponensken? Mekkora szopás van ebben az esetben, ha akár csak egy szerver frissítéskor eltörik valamelyik ilyen "külső" komponens? Netán linuxról windowsra váltanak vagy vissza? Vagy csak 32-ről 64 bitre? És máris cseszhetik a dll komponensüket. Ráadásul mi van, ha az a kolléga már nincs is a cégnél, aki ezt anno készítette?
És még hosszasan lehetne sorolni a kismillió szempontot, amiket fejlesztéskor számításba kell venni. Ahelyett, hogy csak az lebegne a fejlesztők szeme előtt, hogy hú, használjuk pont azt a nyelvet, amivel most éppen 50% teljesítmény növekedést lehetne elérni.Én is dolgoztam olyan projekten, ahol a futásidő kritikus volt. Nálunk C# projektnél az volt a mondás, hogy 5 másodperc alatt kell kiszolgálni egy HTTP requestet (kellemesen bonyolult háttér logikákat futtatva több millió adatsoron), mert az előző PHP-s csapat ezt se tudta felülről még csak megközelíteni se. Nálunk ez végül 40-80ms között szórt. Vajon elégedettebb lett volna-e a megrendelőnk, ha mindezt C-ben oldja meg egy másik csapat mondjuk négyszer ennyi fejlesztési időből, és a végén 30-60ms a requestek válaszideje? Miközben ő csak annyit akart, hogy 5 másodpercen belül menjenek a válaszok.
Szóval a világ korántsem olyan fekete-fehér, mint ahogy te látod.
Én kérek elnézést!
-
Silεncε
őstag
válasz pmonitor #15613 üzenetére
És szerintetek a webalkalmazás miben íródott/íródik? Ha jól tudom C++-ban
Én itt érteni vélem, mire gondolsz, de akkor ennyi erővel mondhatjuk, hogy minden alkalmazás, ami oprendszer felett fut, C program és készen vagyunk.
(pl. a C# mehet a levesbe linux esetén) Bár ha jól tudom, arra is van C#, de az aztán korántsem olyan elterjedt.
A .Net Core (illetve mostmár csak simán .Net) igen elterjedt cucc, sokan használják productionben is
-
Livius
őstag
válasz pmonitor #15613 üzenetére
Ezért mondom hogy menj el dolgozni, mert látszik hogy nem látod mi a helyzet a jelenlegi technológiákban! C-ben az programozgat aki Linux-ban HW közeli dolgokat csinál, aki ott userspace dolgokat csinál az is már jobban jár a C++-val Linuxon. Vagy C-ben az programozgat, aki mikrokontrollereket használ. Ha nagyon fontos a sebesség desktop gépen, akkor C++ kell, vagy pl Windows 10 driver C++-ban ajánlott, ha még GUI is kell akkor vagy lehet maradni a C++-nál, vagy tovább kell lépni C#-ra (ma már mindenhez kell GUI, konzol alkalmazás nem eladható). A scriptnyelvek pedig gyors kipróbálásokra jók, vagy épp valami webes háttér feladatokra, amik ilyen mappákból másolgatunk ezt azt ide-oda, meg szöveges dolgokban keresünk pl. Ez a mostani trend, fogadd el. Ha a C a mindened, akkor kezdj el nézelődni a Linux kernel programozás terén, vagy mikrokontroller programozás terén, ott tényleg számít minden ms, ez való neked.
És egy C csapat igen is lassú, amint követelménybe kapja hogy legyen GUI, webes interface meg ilyesmi, már +1 év fejlesztés.
Előre megírt dolgok meg nehogy azt hidd hogy nagyon vannak, max a régi dolgokat copy-pastje van általában, de ez is kis mértékben.
[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
martonx
veterán
válasz pmonitor #15613 üzenetére
"És szerintetek a webalkalmazás miben íródott/íródik? Ha jól tudom C++-ban." - nem állítom, hogy pl. a C# egyik komponensének sincs köze a C/C++-hoz, de a C# konkrétan úgy működik, hogy megírod a kódodat C# nyelven, amiből a compiler (na, ez a compiler éppen simán lehet, hogy C/C++, de lehet, hogy Rust vagy tudja isten, lusta vagyok github-on kikeresni a Roslyn forráskódját) készít egy köztes nyelven lévő általános kódot (Intermediate Language), és futásidőben (pontosabban első futáskor) ebből készít a JIT egy arra a hw architektúrára optimalizált assembly kódot.
Bővebben: [link]
A C# nagyon sokáig windows only nyelv volt, de ez 2017 óta már nem így van. Így 2021-ben ideje lenne elfelejteni ezeket a rég berögzült paradigmákat (rakás C# rendszerünk fut Linuxon jelenleg is). Java, Javascript, PHP, Go, Python, stb. nyelvek meg soha nem is voltak windows only-k.
A konkrét példám éppen C#-os volt, ezzel nem egy C# vs. más nyelv flame-et akartam kelteni, hanem az mellett érvelni, hogy mennyi aspektusa van annak, hogy egy nyelvre azt mondjuk, hogy jó vagy csak játékszer, és ezek között a nyelv sebessége csak egy (sokszor tök lényegtelen) szempont a kismillió közül.
De látom, te most éppen a C/C++-ba beleszeretőbe vagy, amivel semmi baj nincs, én meggyőzni se akarlak semmiről. A C/C++ is teljesen jó nyelv bizonyos programozási feladatokra. Sőt minden nyelvben meg lehet oldani minden problémát, más kérdés, hogy egyes problémákat egyes nyelvekkel jóval egyszerűbben, gyorsabban meg lehet oldani, más nyelvekkel meg csak nyögvenyelősen.Ahonnan ez az egész thread elindult, hogy a C-ben lévő kódod vs. a C# kódod között futásidőben mértél némi eltérést (50% semmiképp sem drasztikus, majd ha a C-s kódod tizedannyi idő alatt lefut, akkor arra én is azt mondom, hogy na az már sebességkülönbség - és ezzel meg is válaszoltam egy korábbi kérdésed). És ezen eltérés alapján nagy hévvel kijelentetted, hogy a C# (de ide bármelyik nyelvet érthetnénk a kontextusod alapján) csak egy játékszer a C-hez képest. Miközben ez nem igaz, sőt butaság.
Én kérek elnézést!
-
martonx
veterán
válasz pmonitor #15620 üzenetére
Egy dolgot felett siklasz el. Te most a saját szórakozásodra programozol pár jópofa ciklust, és ezzel szórakozol, hogy hogyan lehet hatékonyabbá tenni, akár nyelv váltás árán is. Abba ne hagyd, ez egy nagyon hasznos hobbi!
DE ezzel szemben a rideg valóság az, hogy egyrészt a programmal szembeni követelményeket szinte SOHA nem a programozók határozzák meg. Ha az ügyfél már attól is boldog, ha az eddigi 20 másodperces futásideje 5 másodperc lesz, akkor ezt fogja beleírni a követelményei közé. Mert elképzelni sem tudja (hidd el, sokszor a programozók se látják előre a jövőt ), hogy amit szeretne az 40ms alatt is megoldható.A hardvert pedig azért kell fejleszteni, mert képzeld el a következő szitut (direkt kicsit kisarkítva):
Jón egy ügyfél, hogy kellene neki egy program, amit jelenleg 20 párhuzamos user használ, legyen gyors meg minden. Elkezd a csapat kódolni, menet közben jönnek változtatási igények, előjönnek csúszások, néhol kompromisszumos megoldásokkal kell élni stb...
Végül elkészül a kód, mindenki kipróbálja, zokszó nélkül viszi a 20 párhuzamos usert, szép, gyors, határidőre kész lett, mindenki happy.Igen, ám, de mi van akkor, ha visszajön az ügyfél, hogy nyitott még 4 másik telephelyet, ebből kettő már külföldön van, és hát a rendszer lassulgat igaz, hogy már 100 párhuzamos user van rajta. És ekkor az ügyfél választhat, beletol plusz X processzormagot Y összegért a rendszerbe, vagy elkezdi újra íratni a programját, ekkor már 100 párhuzamos userre méretezve mondjuk 5Y összegért (és ez az újraírás el fog tartani mondjuk 2 évig, miközben Y összegért azért a plusz hw erőforrást is bele kell tolnia, mert a rendszernek addig is mennie kell). Szerinted melyik opciót választja az ügyfél? Elárulom: roppant ritka az az ügyfél, aki a másodikat választja, ő is inkább csak azért, mert hardveresen már közelít a falhoz, ahonnan már nincs tovább.
És ekkor te, mint ügyfél, ott állsz az 300-adik párhuzamos user ügyfelessel szemben, és nem érted, hogy miért lett olyan szarul megírva a program, hogy várnia kell az ügyintézőnek, mire valamire reagál a rendszer. És hogy lehetnek ezek a magukat programozóknak mondó kóklerek ennyire faszok, hogy egy ilyen szart tettek le az asztalra.Én kérek elnézést!
-
MODERÁTOR
válasz pmonitor #15620 üzenetére
Most az 5 másodpercet így képzeld el:
- indul egy request magyarországon, ami átmászik még 5 microservicen
- az egyik kilő az usába és csak oda vissza kb. 500 ms tart az adat utazása (tegyük fel, hogy megkerüli a földet kb. fénysebeséggel)
- majd a végén még utófeldolgozás következikA való életben az 5 mp, vagy 3 vagy 10 mindig egy olyan meghatározott érték amit a user úgymond "kibír" stressz nélkül. Igen erről vannak kutatások. Nyilván célszerű a lehető leggyorsabb megoldásra törekedni.
A miért C#, Java, Python és nem C vagy ASM kérdésre a válasz pedig egyszerű. Az idő pénz és a felesleges implementációt megúszod. Nem neked kell a sokmindent is leimplementálnod.
Nem véletlenül van Spring és VM is pl.
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
sztanozs
veterán
válasz pmonitor #15626 üzenetére
Amúgy visszatérve az eredeti felvetére - egyetemi jegyzet vs optimalizált kód.
Legtöbbször az egyetemi jegyzetben levő kód az optimalizáció rosszabbik végén van (nem pedig középtájon), hogy a hallgatók jobban megértsék a kód működését és képesek legyenek elsajátítani az alapvető programozási technikákat.
Hacsak nem optimalzációs techikákról szól az adott tantárgy/témakör, szvsz nem fogsz találni még közepesen optimalizált kódot se.
#15628 - szerintem a StackOverflow-n van több olyan bejegyzés is, ami az adott eljárás optimalizációját tárgyalják ki.
Alapvetően ez nem egy programozási fórum, vsz nem fogsz találni túl sok fórumozót, akit ez különösképp megmozgatná (ráadásul úgy, hogy nyelvfüggetlen / nyelvek közötti optimalizációt szeretnél kibeszélni). Egyébként semmi nem akadályoz meg abban, hogy Logouton indíts erről egy sorozatot, és ha lesz rá kereslet a hozzájuk tartozó fórumtémák is aktívak lesznek...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
fatal`
titán
válasz pmonitor #15628 üzenetére
Ezek adott esetben ipari titkok (persze nem az általános algoritmusokra gondolok itt), szóval nem csoda.
Sok esetben pedig a gyorsaságnál sokkal fontosabb, hogy másoknak is olvasható maradjon a kód.
Az egyetemi jegyzetben egyszerűbb algok vannak, amiket könnyebb megérteni (vagy legalábbis ez a célja, nem mindig sikerül).
Egyszerű példaként sosem voltam képes megérteni, hogy miért a buborékrendezést tanítják elsőnek, ami lassú is és szerintem abszolút nem egy logikus megközelítés. Teljesen kezdőknek egy maxker/minker rendezés sokkal logikusabb (és gyorsabb is, persze nem a leghatékonyabb), mert szerintem sokkal közelebb áll ahhoz, ahogy az életben is rendez az ember.
[ Szerkesztve ]
-
Livius
őstag
válasz pmonitor #15628 üzenetére
Már régebben írtam neked hogy erre van a GitHub meg a többi ilyen nyílt repo kezelős közösségi oldal. Ha az utókornak és másoknak akarsz hasznosat alkotni, akkor oda kell felrakni a kódokat, lehetőleg angol leírásokkal. A jelenlegi privát weboldalad az internet süllyesztőjében elvész, nem sokra jó.
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Livius
őstag
válasz pmonitor #15639 üzenetére
Igazából mindegy milyen nyelven publikálsz a GitHub-on. A lényeg hogy a GitHubon legyen fent, mert a Google és minden kereső a legjobb találatokat onnan hozza. Tehát ha valaki magyar nyelven keres valami olyat, amiről te csináltál ott valami repot és szép dokumentációt, akkor azt eléggé az első találatokban hozza majd elő, és innentől kezdve igen hasznos lehet az amit oda felraksz. Nyilván ha angol leírásokat írsz, azt világszinten még többen betalálnák a Google-vel. Amúgy minden mappádba rakhatsz egy Readme.md text fájlt, amiben a markdown syntaxissal csinálhatsz elég jó féle dokumentációkat és leírásokat. Ezek a legfontosabbak, hogy valaha valaki rád találjon a neten. Példa: [link]
[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Silεncε
őstag
válasz pmonitor #15655 üzenetére
Az, hogy nem azzal kódot ad valaki, szerintem nem probléma. Néha eltévedek az említett portálra és beleolvasgatok a kérdésekbe. Egy nagyon nagy része a topikoknak gyakorlatilag házifeladat megoldás, a lusta infós egyetemistáknak. Pont ilyenkor jó, ha nem egyből a megoldást írják le, hanem megpróbálják rávezetni a delikvenst. Hátha szándékozik némi munkát is beletenni, nem csak nulla munkával várja az eredményt
tomko9710: én amikor hasonlót csináltam, a beautifulsoup nevű Python package-et használtam hozzá ([link]).
[ Szerkesztve ]
-
Ispy
veterán
válasz pmonitor #15655 üzenetére
A programozáshoz az egyik legfontosabb skill a problémamegoldás (leánykori nevén gugli). Ezeken a fórumokon felrakott kérdések 99%-a olyan kérdés amilyenekkel egy programozó naponta találkozik 20 darabbal. Igen, kell kutatni, ki kell próbálni, ki kell gondolni, tehát melós sokszor. Sokan pont a meló részét akarják megspórolni. Én most kezdtem nodejs-ezni, kb percenként jöhettem volna ide a bajaimmal, inkább szoptam vele 1 órát, 2 órát, 1 napot, ha kellett.
A kódadás is olyan dolog, hogy aki napi 12 órát dolgozik, annak nem biztos, hogy van kedve mások helyett megoldani dolgokat. Van akinek ehhez van kedve, de ennek semmi köze ahhoz, hogy az illető tud-e kódolni vagy sem. Szóval ebből következtetéseket levonni elégé fail.
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
Ispy
veterán
válasz pmonitor #15663 üzenetére
Szerintem azért nincsen, mert a programozók munkája, hogy algoritmusokat írnak...meg fogod találni a neked szükséges eljárásokra a mintákat, részproblémákra a megoldást, de a feladatot neked kell megfogalmazni megtalálni a végeredményhez vezető utat, majd ezt kód formájába önteni. Pont ez az a része a programozásnak, ami izgalamas, ami kihívás, amiért én például szeretem csinálni. Sokszor én is refaktorálom a saját kódomat, először megcsinálom, csúnyán, behegesztve fix értékekkel, minél inkább lényegre törő módon, hogy minél gyorsabban eljussak az elejétől a végéig. Majd ha már így megcsináltam mindent, amire szükségem van, kitörlöm és megcsinálom szépen, kultúrált formában, elnevezésekkel, optimálisan, amennyire tudom. Senki nem fogja megmondani mi az ideális kód, mert mindenkinek más, mindenki másképp gondolkodik, jut el A-ból B-be. Így a net nem megoldások forrása, hanem sokkal inkább egy ötletbazár, ahonnan lehet ihletet meríteni.
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
kovisoft
őstag
válasz pmonitor #15666 üzenetére
Mivel angolszász nyelvterületen más a terminológia. Ők - különféle jelzőket ráaggatva - több mindenre használják a permutation elnevezést, mi ezek egy részét szintén permutációnak, más részét (német mintára) variációnak hívjuk.
Ez talán a hivatalos angol elnevezés, de láttam már ezeket másképp is emlegetve:
ismétlés nélküli permutáció = permutations
ismétléses permutáció = permutations with repetitions
ismétlés nélküli variáció = k-permutations
ismétléses variáció = permutations with replacements
ismétlés nélküli kombináció = combinations
ismétléses kombináció = combinations with repetitions -
sztanozs
veterán
válasz pmonitor #15663 üzenetére
Amit keresel azokat úgy hívják, hogy nyelvi csomagok. Általában vannak az adott (magasabb szintű) programozási nyelvekhez 'hivatalos' tárolók, ahol elérhetők ilyen kódtárak (vagy már lefordított függvénykönyvtárak.
Természetesen az esetek nagy részében ezek hatékonyságát és/vagy gyorsaságát senki nem fogja ellenőrizni (legfeljebb a kód tényleges felhasználói). Pythonhoz ilyen pypi, de ilyen a github is nyelvfüggetlenül (vagy a github előtti időkben a sourceforge).Amúgy szerinted ki töltené az értékes (és meg nem fizetett) idejét azzal, hogy más kódjait túrja hibák, optimalizálatlanság, memory leak, vagy csak hanyag implementáció után kutatva? Legfeljebb a "biztonsági kutatók", akik ezen hibákon keresztül, ilyen kódot futtató rendszerekbe juthatnak be (de a hibákat javítani ők sem fogják). De pl az, hogy egy sort vagy permutációs algoritmus nincs jól optimalizálva szerintem még az ő érdeklődési szintjüket se üti meg...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
I02S3F
őstag
válasz pmonitor #15669 üzenetére
Sziasztok! Beszéltem dokimmal, hogy a programozás lassan megy. Konkrétan sokat töröm a fejem és ebbe el is fáradok.
Kávé és csokoládé fogyasztását javasolta. Meg ajánlotta, hogy vegyek ginko bilóbát.
Utólag rájöttem, hogy adott keretrendszer szintaxisát nem ismerem. Hiába is törtem volna rajta magam, segítség nélkül nem jövök rá.
Ti mivel serkentitek, frissítitek a gondolkodásotokat?
Szükséges beismernem, hogy nagyon lassan haladok a kódolással (szakdolgozat), de ez az első produktumom is.
-
sztanozs
veterán
válasz pmonitor #15669 üzenetére
Esetleg itt lehet feltenni még a kérdést - egyébként is szerintem ez inkább matematikai, mint programozástechnikai kérdés:
https://math.stackexchange.com/questions/tagged/optimization[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz pmonitor #15675 üzenetére
Meg kell nézni, hogy a szerző milyen liszensszel tette közzé a kódot. Az hogy a kód milyen formában oszható tovább nagyrész ettől függ.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
disy68
aktív tag
válasz pmonitor #15675 üzenetére
Oldal alja: Content is available under GNU Free Documentation License 1.2 unless otherwise noted.
Magyarul, igen.
“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
-
Livius
őstag
válasz pmonitor #15721 üzenetére
A C# továbbra sem játékszer, én inkább abban látom a problémát, hogy amikor valamit meg akarsz benne oldani akkor azt a low level szinten akarod, amikor pont azért van a C# hogy ne abban kelljen. A Google tele van olyan C# drive partícionáló és formázó példákkal, amik a windows alap diskpart.exe-ével együttműködve mindent megold, de gondolom ez neked úgyse jó, mert csak azért se.
Ha meg nem tetszik hogy lassú a .Net akkor tanuld meg azokat benne amitől gyors lesz. Általában amikor feltételezzük hogy lassú valami a .Net ben vagy valamiben a végén mindig kiderült hogy a user a hülye, és 10 szer optimálisabban is csinálhatta volna azt hogy már ne látszódjon lassúnak.
[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Ispy
veterán
válasz pmonitor #15723 üzenetére
A probléma inkább továbbra is ott van, hogy nem arra akarod hasznáni a c#-ot, amire azt alapvetően kitalálták és mindenféle elméleti matematikai problémák megoldását erőlteted rá.
Google 1. találat a wiki:
C# (C-Sharp) is a programming language developed by Microsoft that runs on the .NET Framework.
C# is used to develop web apps, desktop apps, mobile apps, games and much more.Tehát ha majd c++ akarsz nekiállni egy web app-nak vagy desktop appnak akkor fogod megérteni miért is létezik egyáltalán a c#, azt hogy egyéként ki lehet belőle erőszakolni win32 hívásokkal mindenfélét, az még nem azt jelenti, hogy ez a normális. Ezért van a keretrendszer.
És igen, lassú, mert a c# egy magas szintű programnyelv, azaz az oprendszer felett futtatja a kódokat, amik emiatt mindent a keretrendszeren keresztül intéznek. A c++ meg natívan tud futni cserébe minden 100x bonyolultabb benne megcsinálni.
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
nevemfel
senior tag
válasz pmonitor #15723 üzenetére
Nagyon benneragadtál ebbe a "ez a kód gyorsabban fut natívan" elnevezésű értelmetlen e-penis összeméregetésben. Legtöbb ember 20, legkésőbb 30 évesen kinövi ezt.
Oké, a permutáció gyorsabban fut C++-ban. És akkó mivan?
[ Szerkesztve ]
Forget your troubles, c'mon get happy
-
Livius
őstag
válasz pmonitor #15723 üzenetére
Kezdésnek például próbálkozz unmanaged tömbbel a C#-ban, és googlez rá, hogy Garbage Collector dolgaival hogy tudsz optimalizálni. VS2019-ben amúgy van performance analyzer, játszani kell vele, és googlezni a megoldásokat. A For loopban és akár if-ben pedig, könyörgöm, használd a { } blokk elválasztásokat és a ; után legyen már minden új sorban, mert így olvashatatlan a kódod. VS2019-ben far auto-formázás a cs fájlra, kezdésnek azt nyomd be.
[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Ispy
veterán
válasz pmonitor #15734 üzenetére
Mondjuk egyfajta kommunikációs platform, ahol az azonos érdeklődésű emberek egymással gondolatokat tudnak cserélni úgy, hogy egyébként soha sem találkoznának egymással. Ebben benne van a segítség kérése és annak megoldása is, de ezt számonkérni enyhén furcsa. Eddig az ilyen fórumokon eddig 2 fajta kérdést láttam: az egyik max 30 perc guglival megtalálható, a másikért meg emberek fizetést kapnak, nem egy ilyen mond meg hogy kell kérdés, ki kell találni, ki kell taposni az utat, mindenkinek magának. Van egy harmadik is: nincs megoldás rá valamiért.
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
Livius
őstag
válasz pmonitor #15728 üzenetére
Arra írtam választ amit ezelőtt linkeltél, ott aztán semmi sincs optimalizálva abból amit említettem. "Ezt légyszíves csináld már meg úgy..." erre most jössz mással...
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Livius
őstag
válasz pmonitor #15732 üzenetére
Ha már linkelsz valamit, legalább az angolul írt hibaüzenetet írd be mert így semmi sem kereshető ezen Google-val, hogy mi ment férre nálad. Amúgy, ha neked az az igényed, hogy beírsz valami problémát, és egyből böfögjék vissza a helyes hibajavtást és választ akkor barátom elég rossz helyen jársz. Erre ott van Stack Overflow oda írd be, jah de bocs igen ahhoz angolul kell tudni írásban, és jól kommunikálni ott, különben nem értenek majd meg. Gyanítom azért vagy állandóan elveszve abban, hogy mi a megoldás, mert nem megy az angol nyelvű keresgélés a neten, már pedig IT-ban angolul kell tudnod kötelezően, különben nem tudsz megoldani semmi komolyabb dolgot egyedül, és neked is angolul kell publikálnod, különben haszontalan az egész.
[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
dabadab
titán
válasz pmonitor #15734 üzenetére
Szerintem az állandó nyavalygásoddal elérted, hogy senki nem akar neked segíteni.
Eleve úgy jöttel erre a fórumra, hogy a saját oldaladat promóztad, ahol amiatt nyavalyogtál, hogy milyen emberek vannak itt és azóta is úgy viselkedsz, hogy semmi köszönet nincs abban, ha valaki segíteni próbál neked.
Ki mint vet, úgy arat.DRM is theft
-
Livius
őstag
válasz pmonitor #15743 üzenetére
Képzeld nem tudom és nem látom értelmét se, mert azt full máshogy fordította le egy fordítóiroda az MS-nek, ahogy én gondolnám azt, és innentől kezdve a Google nem fogja azokat a találtokat hozni ami valójában kéne rá.
Netán ha lenne annyi eszed és angol nyelven használnád a fejlesztőkörnyezetet, akkor bármi ami előjön hiba, a Google-ba csak be kellene írni "... " idézőjelek közé és jönne 100 találat angolul, amiből az első három átlagosan tartalmazza azt ami neked is kéne. Googlezni is meg kell tanulni angolul, ez az első lépés ahhoz hogy valaki zökkenőmentesen tudjon programozni.
Ez meg amúgy elég indokolt eset, mert szakmai nyelv itt az angol, hiába linkelgetsz itt álalános fórum szabályokat, amik nyilván a hétköznapi topikokra lett átgondolva.[ Szerkesztve ]
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
Ispy
veterán
válasz pmonitor #15742 üzenetére
Mondjuk a játékot annyira nem vágom...a .net alól win32 hívás nekem a hack kategória, akkor látom max. jogosultságát, ha sehogy nem lehet valamit megoldani a keretrendszeren belül. A lényeg szerintem, hogy egyszerűen fogad el, hogy a c gyorsabb, ennyi. És ne fikázd, hogy a c# mekkora egy...játéknyelv, mert nem az, egyáltalán nem. A c# egy gui fejlesztésre készített nyelv, ami hozzáfér a .net teljes libjéhez.
Ebbe a játéknyelvbe nekünk komplett TMS-ünk van, ráadásul nem is c#-ban, hanem vb-ben, tudom mire képes.
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
Silεncε
őstag
válasz pmonitor #15742 üzenetére
Lehet, hogy igazad van. Bár volt aki segített. A permutációk témában pl. 2-en is. Sok kérdésem meg nem is volt azon kívül, mint ez. Sztem inkább arról van szó, hogy lövésük sem volt a megoldáshoz, hiába programozók vannak itt.
Definiáld már légyszives, hogy mikortól hívhatja valaki magát programozónak szerinted. (még mielőtt: én nem hívom magam annak, mégha papírom van is róla)
Korábbi hsz-ed:
Tegnap délelőtt tettem fel ezt a kérdést a fórumban. Még választ sem kaptam rá. Azóta megoldottam ezt is, sőt, az egész feladatot, amit célul tűztem ki magamnak.
Azért egy progos topicban szerintem nem olyan kirívó, hogy egy nap alatt nem érkezik válasz
[ Szerkesztve ]
-
Livius
őstag
válasz pmonitor #15750 üzenetére
Figyu, szerintem mostantól inkább beszélgess itt a valódi programozokkal, és minket kerülj el. Ezen az oldalon pont az a lényeg, hogy solutiont kapj és csak várnod kell a sültgalambot a kérdéseidre.
Gigabyte GA-Z170-D3H, Intel Core i7-7700K, Corsair Vengeance 2x8GB DDR4-3600MHz, Intel 545s 256GB SSD, EVGA GeForce GTX 1060 GAMING 6GB
-
cattus
őstag
válasz pmonitor #15750 üzenetére
Egy alapvető dolgot úgy látom még mindig nem veszel figyelembe: ez egy önkéntes fórum, ahova emberek a szabadidejükben járnak hogy másoknak segítsenek / segítséget kérjenek másoktól. Nem egy szolgáltatás, senki sem kap kompenzációt azért mert ide kommenteket ír. Mindezt ennek megfelelően kell kezelni, ezt te jól láthatóan nem érted vagy nem akarod megérteni.
Do the thing!
-
Silεncε
őstag
válasz pmonitor #15750 üzenetére
Első: hát ő... lelked rajta, bár nem tudom, neked miért jó, ha egy nicknév helyett Kovács Béla ad segítséget (illetve sejtem...)
Második: ezzel a meghatározással akkor egy autoteszter (nem megsértve egyetlen ilyen munkakörben dolgozó személyt) teljeserteku programozonak számít, míg mondjuk egy architekt nem. Azért én itt érzek kis problémát.
Harmadik: ez egy fórum, ahova az emberek a szabadidejükben járnak. Nem gondolom, hogy nekem vagy itt bárkinek kötelessége lenne folyamatosan lesben állni és minden kérdésre azonnal válaszolni, főleg, hogy vannak témák, amikhez nem is értek (pl a C#-os kérdésed, mivel C#ot egyedül az egyetemen láttam egy kurzuson, akkor is csak futólag). De pl a JS topicban szoktam segíteni, ha tudok, de ezt nem várhatod el bárkitől, hogy ingyen és bérmentve azonnal megoldja a problémáidat
Livius: nekem ezt úgy szokta mondogatni a leadunk, hogy KISS. Keep it stupid simple
[ Szerkesztve ]
-
-
válasz pmonitor #15820 üzenetére
ne terelj, az, hogy egy magyar 'zúgcég' (sic!) mit csinált, annak semmi köze ahhoz, hogy egyrészt leszólsz olyan embereket, mint K&R, másrészt az indoklásod tévedés.
most kicsomagoltam az 5.11-es stock linux kernelt (ez volt kéznél) és ebben 173527 olyan sor van, amit első ránézésre goto-nak lehet nézni (pontosan nem néztem meg, mert pl. azt sem, hogy előtte-utána volt-e megjegyzés nyitás-zárás.)
tehát kijelenthetjük, hogy ahol linuxot használnak, ott van goto.
tartok tőle, hogy K&R vagy L.T. hitelesebb forrás számomra, mint te.
egyébként tudtad, hogy a unixok is sima txt-ben tárolják a jelszavakat? vagy csak keverted a txt-ben tárolás kifejezést a kódolatlan tárolás kifejezéssel?
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
Ispy
veterán
válasz pmonitor #15818 üzenetére
Már megint a fingot fűrészeljük?
Nem értem miért mond ellen a goto használata az oop programozásnak.....de lehet az én ismereteim hiányosak.
Igaz linuxban nem prograrozok, VBA-ban viszont sokat használtuk a goto, főleg hibakezelés céljából, try catch hiányában. Sőt volt még on error resume next is, ami hasonló a try catch-hez.
De a goto egy eljárás vagy függvény belsejében fut, attól még az egész lehet oop, ez semmiben sem ütközik egymással.
Ez csak egy eszköz, aki akraja használja vagy sem, nem kötelező, mint ahogy én sem szarom tele a kódjaimat ész nélkül try catch-el, mert lassítja, meg kicsit olyan, hogy mittudoménmilesz, try catch. De ettől még vannak olyan szituk, amikor a váratlan eseményeket ezzek a legjobb megoldani.
Na, nálam a goto is kb. ez a kategória.
[ Szerkesztve ]
"Debugging is like being the detective in a crime movie where you're also the murderer."
-
sztanozs
veterán
válasz pmonitor #15825 üzenetére
Aha persze... látom túl sok tisztességes hibakezeléssel megáldott vba kód nem került ki a kezed közül
Egyébként ahogy elnézem nem csak nekem kezd sok lenni belőled. Miért nem mész el máshova osztani azt észt ha már segíteni nem tudsz csak a feszültséget szítani?[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
addikt
válasz pmonitor #15831 üzenetére
Nem innen a fórumról, de sikerült találni egy juniort akivel hamarosan kezdünk, aztán majd meglátjuk, hogyan fog működni. Azon a szinten, amin én vagyok, egy junior is hasznosan taníthat.
Időközben viszont éppen a jövőhéten tárgyaluk a munkahelyen a további célokról és felvetettem egy-két szkriptelős és egy szoftverfejlesztős ötletet, ami tetszett nekik. Lehetséges, hogy támogatni fognak benne és akkor már munkahelyen is tudnék programozgatni.
A szkriptek amúgy nagyon kicsik és könnyűek, amiket írnánk az általunk használt szoftvernek a Python API-jába, de a másik program megalkotásához, amit az ötlet tartalmaz, ennyire kevés skillel talán túl nagy fába vágnám a fejszét... de talán éppen időközben, a fejlesztése közben szerezném meg a jártasságot, plusz mellette ezekkel a hétvégi órákkal. -
sztanozs
veterán
válasz pmonitor #15891 üzenetére
Ahogy már többen is írtuk, nem mindenki a nagyközönség számára alkot. Ráadásul amikor az ‘ős nickek’ programozni tanultak még nem voltak publikus kódbázisok sem, ahova ilyen játszási hülyeségeket fel lehetett volna töleteni.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- ÚJ Apple Watch Ultra 2 GPS + Cellular 49mm - titántok, alpesi szíj
- APPLE MacBook Air 2020 13" Retina - M1 / 8GB / 256 GB SSD / MAGYAR / 96% akku, 81 ciklus / Garancia
- LG NanoCell 55NANO766QA Halvány píxel csík
- Philips 58PUS8545/12 1 ÉV GARANCIA Játék üzemmód
- Tyű-ha! HP EliteBook 850 G7 Fémházas Szuper Strapabíró Laptop 15,6" -65% i7-10610U 32/512 FHD HUN