Megjegyzések
- Úgy gondolom, hogy ez nagyban függ a tantárgyat tanuló személytől és az azt tanító személytől
Válasz
“2 nehéz probléma van a számítástechnikában: gyorsítótárazás, elnevezés és egyesével kapcsolatos hibák”
Megjegyzések
- I
d szálak hozzáadása …
Válasz
Őszintén, fordító szerkesztése!
Hozzászólások
- +1 A fordítók voltak a legnehezebbek és a legjobban megtérülők.
- Ott volt fent a legtöbb munka és jó felkészülés a morgás kódolására, de nem hiszem, hogy ez ennyire nehéz volt. Talán nehezebb a YACC vagy bármilyen általunk használt eszköz használata nélkül. Nem tudom.
- A fordítók valóban csak azért nehezek, mert az elmélet nagy része őrülten súlyos hardverkorlátozásokig nyúlik vissza, és sok formális utasítás nem volt ' nem haladt túl messze ezen. Vessen egy pillantást a Let ' s fordító létrehozására , hogy lássa, milyen egyszerű lehet a fordító írása, ha megközelíti azt más szögből.
- @Martin York, mint fordító író, úgy gondolom, hogy a fordítók megvalósításának bonyolultságát túlértékelik. Általában a fordító sokkal egyszerűbb, mint egy tolmács. Gyanítom, hogy ' a Sárkánykönyv és annak fajtája a hibás, ők ' az egyszerű dolgok és a fizetés legbonyolultabb módjait javasolják túl sok figyelmet fordítanak a legkevésbé fontos lépésre, nevezetesen az elemzésre.
- @Martin York, léteznek olyan technikák, amelyek lehetővé teszik az AST lehető legegyszerűbb és fenntarthatóbb fenntartását, bármennyire is bonyolult a forrásnyelv. Számos nagyon egyszerű, de hatékony technika létezik az összeállítás egyes szakaszainak triviális és elkülönítetten tartására.
Válasz
Design & Algoritmusok elemzése
Úgy gondolom, hogy ez a kérdés attól függ, hogy milyen tanárod volt, és hogy az adott tantárgy hogyan szerveződött karriered.
Az algoritmusok elemzése olyan nehéz lehet, amennyit csak akar. Számolja be, hogy vannak megoldatlan problémák, és nem csak: olyan problémák, amelyeket nem lehet megoldani.
Az a helyzet, hogy problémája lehet, és ha tudja, akkor nem is megoldható, ez tökéletes. De mi van, ha nem? Sok időt tölthet az NP-Complete bemutatásával, vagy annak megoldására polinomiális időbeli megoldást találhat.
Az NP-Completement bemutatása nem könnyű. Igen, sok probléma van ismert, de a lényeg az, hogy megtalálja a csökkentéseket annak bizonyítására, hogy NP-Complete. És mi van, ha sok órát / napot / hónapot töltesz annak demonstrálásával, és ez polinomiális idő alatt megoldható? 🙂
Vannak más tárgyak is, például Fordítók , Csoportelmélet és Primitív rekurzív függvények amelyek lehetnek keményen, ahogy a tantárgyterv vagy a tanár akarja;)
Hozzászólások
- s / Elemzés / Elemzés … egyébként pontosan az, amit gondolok … primitív rekurzív függvények, uargh !!
- Egyetértésképpen elrontottam az alapképzésemet, soha nem bízva abban, hogy valaha is sikeresen ' bebizonyítottam ' bármi (bár az algoritmusok osztálya túl egyszerű volt, a professzor miatt)
- Manapság megmutatom, milyen kemény algoritmusok lehetnek 🙂
Válasz
Mintafelismerés ie Mesterséges intelligencia. Ez az intelligens számítástechnikára és más mintázatfelismerő eszközökre, például az optikai karakterfelismerésre, a hangról szövegre, az arcazonosításra stb. Vonatkozik. támaszkodhat ezekre az algoritmusokra, és évtizedek óta próbáljuk őket tökéletesíteni sok siker nélkül.
Megjegyzések
- Ez ' nehéz, mert ' s nem valami, ami ' s determinista. A jó mesterséges intelligencia-minta-felismeréshez minden alkalmazáshoz kísérletezni kell, annak biztosításához, hogy a megfelelő algoritmust, a megfelelő funkciókat stb. Válassza ki.
- Éppen most kezdek felmászni erre a hegyre (mintafelismerés). ' nehéz. SOK matematika. Remek, hatalmas, félelmetes matematikai halmok, visszanézve rám, merek belépni.
- hát … a mintafelismerés alkalmazott statisztikának is tekinthető, ez ' s nem csak a CS tartományán belüli probléma
Válasz
A választásom kiszámíthatóság elmélete
(Hmm … talán nem is olyan fontos, de biztos, hogy nehéz volt)
Megjegyzések
- Egyetértek, és személy szerint általánosítanám hu.wikipedia.org/wiki/Theory_of_computation néven.
- Egyetértek ' azzal, hogy a számítás elmélete nehéz volt, de az egyik kedvenc tantárgyam is volt. Igaz, hogy matematikából kettős szakos voltam. ..
- +1 Én is kétszer szakosodtam. Tudtam kezelni egy intrót ezekhez a dolgokhoz, de a diplomás verzió … örülök, hogy elejtettem!
- nehéz volt, nem tudunk róla annyit, hogy nem számít ' sok.
Válasz
Csak két nehéz problémák a számítástechnikában: a gyorsítótár érvénytelenítése és a dolgok elnevezése. – Phil Karlton
Válasz
kategóriaelmélet (diszkrét matematika), de megéri
Kommentárok
- Milyen konkrét előnyöket kapott a tanulási kategória elmélet?
- @zvrba: az absztrakciós technikák és a probléma feltérképezésének mélyebb megértése
- Honnan tanultad?
- @zvrba: Nem ' nem látom a könyvet a könyvespolcomon, valószínűleg ' valószínűleg még mindig raktárban van (átalakítás), de azt hiszem, ez a könyv amazon.com/Category-Computer-Scientists-Foundations-Computing/…
Válasz
Titkosítás
Ha csak kissé rosszul csinálod, milliókba kerülhet egy vállalatnak.
Megjegyzések
- Bár egyre népszerűbb, a Cryp hogy nem ' t egyedülálló a szoftverek számára.
- A kripto nem olyan nehéz ' t. A probléma az, hogy a biztonságot ' nem lehet egyszerűen tesztelni, ezért csak akkor veszi észre hibáit, ha valaki feltör. De a tesztelhetőség hiánya az informatikai biztonság legtöbb formájára vonatkozik, nemcsak a kriptográfiára.
Válasz
Operációs rendszerek, különösen az a rész, amelynek köze van a menetfűzéshez.
És az oka nem “, mert olyan nehéz volt 5 filozófust villával pizzát fogyasztani. Ennek oka az, hogy a többszálas kód írása önmagában nehéz és nem feltétlenül könnyű kiszámítani az emberi (legalábbis férfi – feleségem szerint) elmének.
Megjegyzések
- Hagyd, hogy a feleséged írjon akkor a többszálas kód 🙂 🙂
- Ne feledje, hogy amikor a megosztott memóriájú többszálas programról van szó, a számítógép egy alattomos disznó, amely arra szolgál, hogy megszerezze Önt. Kétségtelen, hogy ha többmagos processzorral foglalkozik; egy mag lehet eltereli a figyelmét a szeme előtt, ahol ' figyel, és a másik ezután mögötted mehet és hátba szúrhat.
Válasz
Én is erre szavazok Compiler Design. Különösen ott, ahol a DFA és az NFA rész bejön. Én sem vagyok annyira tisztában az NP problémákkal és egyéb dolgokkal.
Megjegyzések
- Igen, én ' d nehezebben ment a fordítókkal, ha nem ' vettem volna először a számítás elméletét.
- DFA-k és NFA-k csirke takarmány. Várjon, amíg el kell végeznie a LALR (1) elemzését.
Válasz
Sorbaállítási elmélet
Műszakilag ez a matematika egyik ága, de nagyon fontos a CS-ben.
A CS-ben szinte minden sorokon alapul (látható (nyilvánvaló) és láthatatlan (nem annyira nyilvánvaló vagy hallgatólagos)).
A CS kezdeteiben a sorok nyilvánvalóak voltak.
A programok sora (mindegyik program egy pakli kártyát).
Manapság a sorok nem annyira nyilvánvalóak. Az internet például: csomagkapcsolt hálózat, de a csomagok sorokat alkotnak, és a csomagok átirányítása a sor minimalizálásának egyik formája.
Megjegyzések
- Hé ! (?Ön (Lisp programozó)
- Nem (Annyira, mint (Lehetne (megnézhetnénk), De (Megtörtént (ismert)). Hogy megtörténjen)).
Válasz
Numerikus elemzés
Nem túl nehéz azokra a játékproblémákra, amelyeket a tanfolyamon adott, de amint elkezdi mérlegelni a valódi problémákat, az súlyos mocskolódássá válik.
Válasz
A kliens követelményeinek értelmezése , amikor az ügyfél nem igazán tudja, mit akar. Ezt nem tanítják az egyetemen, és ez az egyik leglényegesebb készség.
Megjegyzések
- Nem vagyok biztos benne, hogy egyetértek-e ezzel, mint számítógép-tudományi koncepcióval. ne ' ne lássa, hogyan oldható meg a tudományos módszerrel.
- @ jmort253 – Ez igaz, de az informatika megpróbálja (véleményem szerint sikertelenül) formális módszerekkel vizsgálja meg ezt a területet n és érvényesítés.
- Egyetértek azzal, hogy nem " informatika " koncepció – hanem amikor elkezdtem a karrieremet Nem voltam tudatában / nem vettem tudomást arról, hogy az ügyfelek nem ' nem tudják, mit akarnak. Azt hittem, hogy MINDEN szoftverprojekt valamilyen formális követelményekkel jár. Esetleg egy szoftvermérnöki tanfolyam előadásának témája (talán a főiskolám nem ' foglalkozott vele)?
Válasz
Személy szerint az enyém a Formal Logic volt. Nehéz volt ezzel kezdeni, de ha egyszer lerombolod a szabályokat, és sikerül eléggé játszanod vele, az agyad Logic++;
megy, ami a fejlődésben nagyon jó dolog.
Mellékesen megjegyzem, hogy közvetlenül válaszolok a kérdésre – ez bizony nem volt a legnehezebb tantárgy, amikor diplomát szereztem, de valószínűleg ez volt a legnehezebb „a való életben alkalmazható” tantárgy.
Megjegyzések
- A formális logika olyan dolog, amellyel szerelmi / gyűlöletkapcsolatom volt. Tetszett végiggondolni a fogalmakat, de soha nem tudtam megérteni, hogy ez mennyire segít nekem, csak később, amikor olyan valós problémákkal találkoztam, amelyek logikus gondolkodást igényeltek.
- @ jmort253 – Nekem is igaz volt ez. Még azon a ponton is küzdöttem, hogy <
d kudarcot valljak, olyan sokáig és keményen tanultam, míg végül kattant a fejemben. Ezt követően az előnyök elképesztőek voltak.
Válasz
Compiler Constructions. Nehéz, de meg kell értenie a
Megjegyzések
- mögött rejlő fogalmakat megint ugyanazt a választ adva.
Válasz
Kernel Tervezz valakit? Nos, nem igazán tudom, hogyan történik, és mi az operációs rendszer célzott szolgáltatásai, de számomra a kernel tervezésére való gondolkodás ijesztő feladat lehet.
A számítógépes biztonság ; Nem igazán tudom, mi teszi a rendszert nem biztonságosá, kivéve természetesen a nyilvánvaló puffertúlcsordulást, az XSS és az SQL injekciókat.
Nem vagyok biztos benne, de úgy tűnik, hogy egyes algoritmusok is nem biztonságosak; nézd meg a MetaSploit projektet, amely felsorolja az összes típusú és típusú biztonsági megsértést: láthatja, hogy egy program sokféleképpen hibázható.
Válasz
Sok kínos téma létezik a mezőn, de a puszta állandó nehézségek miatt a globális rendszer tulajdonságai . Példák erre az általános témára:
- Biztonságos és holtpont nélküli multi-threading
- Biztonság
Ez azért nehéz, mert Ön ” valami után, ami csak akkor létezik, amikor minden rendben van; globális rendszertulajdonra van szüksége, és gyakorlatilag az összes rendelkezésre álló eszközre (és mind re, amelyek tapasztalataim szerint valós problémákra skálázódnak) csak a helyi érvelés folyik Ez a folyamat, amely a program darabjainak gondolkodásától az egész sejkig terjed, ami különösen nehéz, különösen azért, mert teljesen lehetséges, hogy olyan darabok legyenek, amelyek önmagukban is helyesek, de ahol még vannak finom hibák, mert a az alkatrészek helytelenül vannak elrendezve; a hibák nemkívánatos, esetlegesen megjelenő jellemzők lehetnek …
Válasz
Vezetési információs szolgáltatások Főiskolai időszakomban minden félévben egy vezetői tantárgyam volt, ami teljesen feldühített.
Kemény! olyan tantárgyak, mint Fordítótervezés , OS tervezés stb. kemények, de valóban érdekesek és kihívásokkal teliek.Nagyon elrontottam olyan tantárgyakat, mint a menedzsment információs rendszer / szolgáltatások stb., Mivel tele vannak unalommal, és sok elméletet kell átélni.
megjegyzések
- tele unalommal, mert ' az egyes rendszerek fogalmi bonyodalmairól beszélnek, míg az emberek fele soha nem írt magának semmilyen rendszert (de bizonyára sokfélét használtak). Ezenkívül a szemináriumok olyan sok betöltött szót használnak, mégsem képesek valós angol nyelvű példával szolgálni. Mint a döntéstámogató rendszerek … nem tudtam ' t dobni néhány képernyőképet a Google Analytics jelentésekből, az FML-ből, csak azért, hogy a hallgatók ugyanarra az oldalra kerüljenek, mielőtt elfutna intellektuális orgazmus a közönség előtt.
Válasz
Ha C / C ++ -on dolgozik, akkor a mutatók a legtöbbek fontos fogalom ismerni. De valahogy soha nem értettem meg teljesen az egyetemen.
Megjegyzések
- tényleg? Úgy értem, hogy minden ember más, de azt hiszem, hogy sok (mármint sok ) téma nehezebb, mint pusztán a mutatók . Például a Computer ' s architektúrája , Assambler , amelyek valamilyen módon kapcsolódnak a mutatókhoz ; )
- Igaz, de ' sokkal könnyebben találja meg az összeszerelőkön keresztül a memóriahivatkozások megértését, mert valójában nyers mutatókkal dolgozik, miközben a C / C ++ nyelven a mutatókra történő hivatkozásokkal dolgozik, ami csak megzavarja az embereket, mert az absztrakcióról soha nem beszélnek nyíltan.
- Ah assambler, a legjobb programozó ' s tea
- A srác nehéz, de fontos témákat kérdezett, ezért mutatók.
- @Matt: Éppen a napomat készítetted: D @Manoj R: A mutatók triviálisak ha csak tömb hozzáférésként gondol rájuk. Vagy nehéz a tömbhöz való hozzáférés?
Válasz
Algoritmusok megtervezése és elemzése. Annyira nem nehéz megérteni és elemezni az ismert algoritmusokat, hogy nehéz algoritmusok tervezése és elemzése nehéz problémákhoz nehéz, és sok terület és gyakorlat átfogó megértését igényli sokféle technika alkalmazásában.
Válasz
Korlátozás programozása. amely kombinatorikus problémákkal, NP-teljes problémákkal foglalkozik.
Válasz
Az algoritmus kihívást jelent a téma számára.
Válasz
Melyik a legnehezebb CS-tantárgy / elmélet, amelyet tanulmányoztál, de fontos a terület számára?
Diszkrét matematika.
Nehéz volt, mert az elméletek nagyon lazán kapcsolódnak egymáshoz, de CS-ben használják őket. Túl sok a memorizálás, azt hiszem …
Indukció, Big O, rekurzió, osztás és meggyőződés, Grafikonelmélet, bla bla .. argh!
Számomra a fordító egyszerű volt, mert nekünk kellett megvizsgálnunk az Automata elméletet. ^^
Válasz
Z jelölés / formális módszerek, amelyek az agyam sérülésére szolgálnak az egyetemen. Főleg azért, mert utáltam. A kemény sokkal könnyebb, ha élvezed, amit csinálsz, és sokkal nehezebb, ha nem.
Válasz
Tetszenek a válaszaid (és nem felejtettem el szavazni őket), például a fordító, a kernel stb., de a legtöbb programozó soha nem találkozott ezekkel a problémákkal. Van egy kicsit könnyebb, de gyakoribb probléma: egyidejűség – szálak, zárolás. Nagyon könnyű olyan programot írni, amely varázslatos hibákat eredményez, ha egy kis hibát is elkövetünk a párhuzamossági architektúrában.
Tehát, mondom, nem ez a legnehezebb probléma a számításban, hanem azért, mert általánosan használt, veszélyes.
Válasz
Objektumorientált programozás
Valószínűleg azért van, mert levágtam a fogam a FORTRAN-on és az APL-en, de a szigorúan eljárási nyelvekről az objektumokra való áttérés “évekig küzdöttünk velük. Nem segít, hogy az úgynevezett “szakértők” ellentmondásos cikkeket és oktatóanyagokat írnak arról, hogy mit jelent objektumorientáltnak lenni, valamint az objektumorientált programok elkészítésének legjobb / megfelelő módjairól.