English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés
Σ: 16 post

saxus  (statz) Agyfasz
#9, Agyfasz (419)
1218 | #2750 | ^ | Idézet | Sun, 25 Aug 2013 01:28:10 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
"Elhiszem, de szerintem ne is bánd, az a cég amelyik papíron kéri a próbafeladatot, az teljesen komolytalan, akkor is, ha nagy cég."

Ezzel vitatkoznék: papírnak az a hatalmas nagy előnye, hogy csak és kizárólag magadra vagy utalva. Sok apróság lejön belőle, ami gépen nem jönne le. Pokhálónál is volt egy olyan gyerek, akit felvettünk, mert valaki volt olyan okos, hogy gép elé ültette le a gyereket (amit mai napig nem értem hogy gondolták, miután az előtte lévő 20-at is papíron teszteltettük) és ott meg tudta oldani a tesztünket, de simán papíron már lehet elvérzett volna.

C bool témához:

C-ben konkrétan egyébként sincs bool típus. A C99 már definiál egy _Bool nevű típust meg egy bool nevű makrót rá (illetve a true/false-ra is egy 1/0 értéket), de valójában attól még ugyanúgy egy int a háttérben.

http://pubs.opengroup.org/onlinepubs/007904875/basedefs/stdbool.h.html

Viszont az and/or/bitand/bitor stb. operátorok is egyértelműen definiálva vannak, hogy melyik, melyik, de mivel 10000000 kóderből ha egy használja, emiatt a C kóderek ütni tudnak érte rendesen. (Hozzáteszem jogosan, senki nem rajong ha feleslegesen unortodox megoldásokkal fárasztják, mikor ott a szokásos, triviális módszer.)


TCH  (statz) Főfasz
#1, Főfasz (10443)
3354 | #2751 | ^ | Idézet | Sun, 25 Aug 2013 03:36:18 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@saxus:
Ezzel vitatkoznék: papírnak az a hatalmas nagy előnye, hogy csak és kizárólag magadra vagy utalva.
Bullshit.
Ezt gépen is el lehet játszani, kihúzom a netet, oszt nem tud puskázni, csak magára van utalva. Viszont had ne kelljen már kilométer hosszú kódsorokat kézzel írni, aztán ha valamit törölni kéne akkor nincs backspace, marad a firkálás, áthúzás, mocskolás. Aztán mi van, ha a kézzel írt kódot nem tudják elolvasni? Kidobják a fószert? Aki nem tud szépen írni kézzel (mindezt billentyűzethez szokott programozónál), az repül? Ja bocs, ez volt a következő Steve Wozniak, csak jó rondán írt...
Ja és az idő. kemi kapott tíz percet. Ha gépelhet, akkor elég, mert legépelni pillanatok alatt le lehet, leírni meg elmegy vele a fele idő, rohadtul nem mindegy, hogy másodpercenként öt karakter, vagy kétmásodpercenként egy! Ahelyett, hogy lenne 9 percem gondolkodni és 1 percem legépelni, lesz 1 percem kigondolni és 9 percem lekörmölni?! Ne röhögtess már! És ugye az elírások, elbaszott sorok javítása is kézzel nagyon sok időt vesz igénybe, gépen egy pillanat.
Azonfelül a valóságban a gépen kell helytállni, ahol alkalmasint van internet, vagy valami súgó az IDE-ben; mégis miért kéne fejből emlékeznem arra, hogy whatever.akarmi.nemtommi.lofasz.jajjdejo(), vagy valami_kecske_func(x, y, z, a, b, c, i, j, k, qrwaanyad)?
Bár elismerem egy próbafeladaton majdnem 100%, hogy nem kell, mert sosem gyakorlati tudást kérnek számon, hanem valami ostobaságot, pl. prímkeresés... Nem is tudom, ilyenkor miért nem mondod a szokásos dumádat, hogy miért kell megírni valamit, amire százezer megoldás van már?
Meg mi a fasz, hát profilja a cégnek a prímkeresés? Rossz helyre jöttem, azt hittem ez a kabbefasz ungáricse kkv., nem a kibaszott náza, vagy kérjek két nullával nagyobb fizetést és azt is dollárban???
@saxus:
C bool témához:

C-ben konkrétan egyébként sincs bool típus. A C99 már definiál egy _Bool nevű típust meg egy bool nevű makrót rá (illetve a true/false-ra is egy 1/0 értéket), de valójában attól még ugyanúgy egy int a háttérben.

http://pubs.opengroup.org/onlinepubs/007904875/basedefs/stdbool.h.html
Tudom, hogy típus nincs, de művelet az van, a bitwise műveletek az összes bittel foglalkoznak, míg a logikaiak csak a legalsóval, mert C-ben az true az 1, holott valójában -1-nek kéne lennie. De ez C++-ra is vonatkozik.
Ezért szeretem jobban a Pascal nyelvet, ott simán el van választva a kettő típus egymástól.
#include <stdio.h>
void main()
{
	if ((~(1 == 1)) == (!(1 == 1))) // if (-2 == 0)
	{
		printf("yes\n");
	}
	else
	{
		printf("no\n");
	}
}
root@Csabi:~# gcc fostalicska.c
root@Csabi:~# a.out
no
root@Csabi:~#
@saxus:
Viszont az and/or/bitand/bitor stb. operátorok is egyértelműen definiálva vannak,
Ja, hogy van külön bites verzió a nem írásjeles operátorokra is? My bad, kemi, visszaszívva.
Viszont most nézem, C/C++-ban nincs is logikai kizáró vagy kapcsolat???
Bár, ha jobban meggondolom nem is meglepő, pont a fent említett 1 vs. -1 probléma miatt, ugyanis a logikai és ill. vagy kapcsolatokban hóttmindegy, hogy csak a legalsó bit egyes vagy az összes, kizáró vagyban meg nem...
Hát azért a C-nek is kijárna egy Fractal of bad design titulus...

BTW, kemi, hova jelentkeztél?


saxus  (statz) Agyfasz
#9, Agyfasz (419)
1768 | #2752 | ^ | Idézet | Sun, 25 Aug 2013 05:44:18 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
"oszt nem tud puskázni, csak magára van utalva. "

Meg esetleg a fordító hibaüzeneteire.

"Viszont had ne kelljen már kilométer hosszú kódsorokat kézzel írni, "

Eddig akárhány tesztet láttam, mindenhol max 5-10 sor volt, amit írni kellett egy feladatnál.

"aztán ha valamit törölni kéne akkor nincs backspace, marad a firkálás, áthúzás, mocskolás. "

Huhú, ha tudnád mennyit mesél az, hogy ki mit javított. Ez az, amit gépen sosem látsz, hogy hogyan gondolkodott az illető. Papíron még néha van valami nyoma. És jellemzően nem arra kiváncsiak, hogy tudod-e, hogy melyik függvény csinálja meg az adott feladatot, hanem arra, hogy magadtól tudsz-e algoritmizálni. Amikor picit tovább lép az ember attól, hogy php-ben while-ban ki tud listázni 10 cikket, akkor már szokott ilyen is játszani.

"Meg mi a fasz, hát profilja a cégnek a prímkeresés?"

Azért egy primitív prímkereső algoritmust az embernek magától ki kell tudnia találni. (Azon kívül, mindenhol tanítanak rá egy módszert kb. ált. suliban matek órán..)

"mert C-ben az true az 1, holott valójában -1-nek kéne lennie."

Melyik C-ben? Az ANSI-ban semmit nem mond, csupán annyit, hogy a logikai hamis értéke az integer 0, minden más igaz érték. Ez van a szabványban.. A C99-be is kb. csak azért került bele, mert _olvashatósági okok_ miatt mindenki definiálta magának a true-t 1-nek a false-t 0-nak, meg hogy kissé igazodjon a C++-hoz. De te is tudod jól, hogy pont az ilyenek miatt inkább egy hordozható assembly a C, mintsem egy alkalmazásfejlesztő nyelv (azt maximum a hupuk hiszik, akik leragadtak 40 évvel ezelőtt...). Bár erre a feladatra a C++ is megbukott, még Stroustrup szeirnt is. (Mondjuk a C++11-el vagy 8-10 évnyi lemaradást behoztak a 20-ból...).


saxus  (statz) Agyfasz
#9, Agyfasz (419)
1264 | #2753 | ^ | Idézet | Sun, 25 Aug 2013 06:10:43 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
Hopp, a kommented vége lemaradt:

"Viszont most nézem, C/C++-ban nincs is logikai kizáró vagy kapcsolat???"

C-ben sincs "logikai" xor. Csupán azért működik, mert integerre működik.

"Bár, ha jobban meggondolom nem is meglepő, pont a fent említett 1 vs. -1 probléma miatt, ugyanis a logikai és ill. vagy kapcsolatokban hóttmindegy, hogy csak a legalsó bit egyes vagy az összes, kizáró vagyban meg nem..."

Ez inkább abban különbözik, hogy míg a Pascal egy oktatási/alkalmazásfejlesztésre jól használható nyelv volt (nem véletlen, hogy egy időben DOS-on nagyon erős volt - igaz ebbe belejátszott az is, hogy könnyű volt ASM kódot beletúrni -, de nem kevés régi NextSTEP/MacOS-es program is ebben készült), addig a C csak valami kényelmesebb cucc az Assembly helyett.

De ez igazából nem probléma, máshogy definiálja a dolgokat a két nyelv. Egyébként ennek szerintem nagyon egyszerű az oka: PDP-11-en volt egy BIT nevű utasítás, ami lényegében a bitenkénti AND-nak felel meg és csak flag registert állít. Így két utasításból megvan az if. Ha -1-et követelsz meg mindenképp, akkor előtte még kell egy MOV és egy CMP. De ugyanez van x86-on is most is x86-on.

http://en.wikipedia.org/wiki/PDP-11_architecture#Double-operand_instructions


saxus  (statz) Agyfasz
#9, Agyfasz (419)
215 | #2754 | ^ | Idézet | Sun, 25 Aug 2013 06:11:43 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
Arról nem is beszélve, hogy ezzel, hogy a logikai igaz-t úgy definiálták, hogy "minden, ami nem 0", kizárták azt, hogy legyen definiálatlan eset. Viszont húzok aludni, mert már látom, fogalmazni nem tudok.


kemi  (statz) Főfasz
#2, Főfasz (2970)
1695 | #2755 | ^ | Idézet | Sun, 25 Aug 2013 08:26:20 +02
77.234.*.* Linux x86 Google Chrome Hungary *.pool.digikabel.hu
@TCH:
Hát amennyiben heurisztikus optimalizációval tolja - amit kétlek - és kiszúrja, hogy nem nyúlsz a tömbhöz a ciklusban, akkor lehet, de akkor meg a fordítási idő lesz sokkal több.
Normál esetben nem optimalizálhatja ki.
A Python nem soronként interpretál, hanem behúzza az egész kódot, gépi kódra fordítja, majd futtatja.
@TCH:
Én ezt is óvatosan kezelném a helyedben, mert ez nem Pascal, ahol boolean és integer közti művelettől hanyattvágja magár a compiler, hanem C, ahol simán végrehajtja, márpedig az and, or, xor, not az mind kétértelmű, mert vonatkozhatnak int-re és bool-ra egyaránt. Hogy érthetőbb legyek, ezek a bool-algebrás műveletek: && || ^^ !, ezek pedig az integerre vonatkozóak: & | ^ ~, ezek az operátorok implicit módon hordozzák a művelet típusát, míg az and, or, xor, not nem, ami mint mondtam Pascalban oké, mert mismatch error lesz ha kevered, de C-ben végrehajtja.
Egy példa:
and, or, not vonatkozik a logikai műveletekre, bitand, bitor, compl, xor vonatkozik a bitenkénti műveletekre.

http://en.wikipedia.org/wiki/C_alternative_tokens
@TCH:
Elhiszem, de szerintem ne is bánd, az a cég amelyik papíron kéri a próbafeladatot, az teljesen komolytalan, akkor is, ha nagy cég.
Jártam másik cégnél, ahova linuxos rencergarázdának vettek volna fel, ott az volt a feladat, hogy ki kellett olvasni júzerneveket, és júzerjogosultságokat kellett állítani a userpasswords fájlban, papíron. Fejből fingom nem volt hogy néz ki annak a fájlnak a struktúrája, úgyhogy ott hasaltam el. Valahogy kezdem úgy érezni, hogy ez nem tudás/képességfelmérés, hanem arra megy ki, hogy kibasszanak mindenkit aki nem csókos.


TCH  (statz) Főfasz
#1, Főfasz (10443)
7432 | #2756 | ^ | Idézet | Sun, 25 Aug 2013 14:59:10 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@saxus:
Meg esetleg a fordító hibaüzeneteire.
Bazmeg...
Ki mondta, hogy adj neki compilert? Szerkesztésről/gépelésről volt szó! Szövegszerkesztő vs. toll-papír! Nem igaz, hogy nem akarod már érteni!
@saxus:
Eddig akárhány tesztet láttam, mindenhol max 5-10 sor volt, amit írni kellett egy feladatnál.
Én kaptam már olyat, ahol 3x annyit kellett, de irreleváns, mert ezt nem sorra mérjük, hanem karakterekre!
unsigned long long int whatever(signed char x, signed int y, unsigned char z, signed long int a, signed char b, signed long long int c, unsigned char i, signed char j, signed char k)
{
	return c ^ (((x & 0x80) >> 6) | ((y < 50 ? y : ~y) << 5) | ((z << 24) & (a ^ ((i >> 4) | ((i & 15) << 60)))) | (j > k ? k * k : (j < k ? j * j : j * k)));
}
Tessék ez tkp. két sor, lényegtelen, hogy van-e értelme, vagy nincs, csak próbáld meg ezt leírni kézzel! Csak mérd az időt! Aztán számold a hibákat!
@saxus:
Huhú, ha tudnád mennyit mesél az, hogy ki mit javított. Ez az, amit gépen sosem látsz, hogy hogyan gondolkodott az illető. Papíron még néha van valami nyoma.
Persze, ha egy egész kódtömböt húzott ki! De én most elsősorban az elírt zárójelekről, operátorokról beszélek, amiből nem derül ki, hogy most hogy gondolta, viszont a firkálással egyre olvashatatlanabbá válik az, amit ír! Azonfelül, ha én húzom át a kódot amit leírtam, akkor azt én vastagon kisatírozom, azt ugyan el nem olvasod.
@saxus:
hanem arra, hogy magadtól tudsz-e algoritmizálni.
Az szövegszerkesztőből is kiderül!
@saxus:
Azért egy primitív prímkereső algoritmust az embernek magától ki kell tudnia találni.
Elhiheted nem az volt a bajom, hogy én nem tudtam megírni! Megsúgom, még arra is volt precedens, hogy assemblyben írtam meg. Az a bajom vele, hogy ÉRTELMETLEN!

Ehhez a témához en-bloc: az amiről itt te beszélsz, az álszent fontoskodás! Ó hát ide csak a szakma krémjének a krémje kerülhet be, nekünk látnunk kell, hogy gondolkodik, be kell látnunk a fejébe, még grafológushoz is elküldjük a kódját,
Kibelezlek, te rohadt, szemét, hülye állat szuka!
- Az ipszilon hurkolásából egyértelműen kiderül, hogy egy nyugodt, derűs személyiséggel van dolgunk!
Szmodis Imre karikatúrája
mert ide csak szuperprogramozókat veszünk fel! És mire kell? Ja hát itt valami ultrahulladék bytecode-os/interpreteres nyelvben (dzsuva, ciszta, piton, péhápé, rubi) íródott ultrahulladék keretrendszerben gányoltatunk valami ultrahulladék alkalmazást, le van szarva, ha nem megy, csak legyen meg időre!

No comment.
@saxus:
Melyik C-ben? Az ANSI-ban semmit nem mond, csupán annyit, hogy a logikai hamis értéke az integer 0, minden más igaz érték. Ez van a szabványban.. A C99-be is kb. csak azért került bele, mert _olvashatósági okok_ miatt mindenki definiálta magának a true-t 1-nek a false-t 0-nak, meg hogy kissé igazodjon a C++-hoz.
Én ezt értem, de láttad a példakódomon, hogy nem használtam libraryt és nem definiáltam semmit, maga a compiler csinálja. És gyanítom, hogy nem csak a GCC, hanem a CLang és az MSVS is...
@saxus:
De te is tudod jól, hogy pont az ilyenek miatt inkább egy hordozható assembly a C, mintsem egy alkalmazásfejlesztő nyelv (azt maximum a hupuk hiszik, akik leragadtak 40 évvel ezelőtt...).
Tudom. Nem is használom alkalmazásfejlesztésre. FreePascal/Lazarus kombót használok. Lehet, hogy a végeredmény feleolyan lassú lesz, mintha C-ben írtam volna, viszont ötször gyorsabban írom meg és még mindig ötször gyorsabb, mintha dzsuvában vagy valami szkriptben írtam volna meg...
@saxus:
Bár erre a feladatra a C++ is megbukott, még Stroustrup szeirnt is.
Hát szerintem megbukni azért nem bukott meg. Én sem vagyok érte oda, de a C++ baromira nem ugyanaz a szint, mint a C. A C++-ban van támogatás a sztringektől elkezdve a GUI vezérléséig mindenre; a C++ alkalmas alkalmazásfejlesztésre. Hogy a nyelv alkotója szerint megbukott, az az ő véleménye, a világé más, a használható - értsd: nem dzsuvás vagy dotnetes erőforrászabáló atomhulladék - alkalmazások elég jelentős százaléka C++-ban íródott.
@saxus:
(Mondjuk a C++11-el vagy 8-10 évnyi lemaradást behoztak a 20-ból...).
Ezt a lemaradás dolgot hagyjuk, jó? Attól, hogy régi, még nem lesz szar! Az újak között tízszer annyi hulladék van, mert manapság minden buzi (hint: gaygle) csinálhat és csinál is valami ótvaros szar, elbaszott, atomhulladék szkript vagy bytecode-os nyelvet.
Mitől lenne jobb egy kibebaszott ciszta, mint a C++? Csak mert már négy keresztje van? (Ami azt illeti egy is elég lenne, ha az a földbe lenne szúrva...) Vagy mert minden ójektum benne, az is aminek nem kéne annak lennie? * Vagy hogy van benne támogatás olyanra, amire szükség sem nagyon lenne? Pl. seggkinyaló megengedő fasságok, hogy a hülyék nehogy el tudják baszni, viszont a parser ötszörakkorára hízik, mire ezt mind meg tudja enni?

*Tudom, szerinted minden legyen ojjektum. Idéznék tőled:
bazeg nekem se tetszett először a Pascal, utána rohadtul nem fogtam az OOP lényegét a Delphiben, aztán most meg még ott is objektumot kreálok, ahol nem biztos, hogy kéne
Dogmatikus képzésed sikeres volt. OOP az OOP kedvéért.
@saxus:
de nem kevés régi NextSTEP/MacOS-es program is ebben készült
Pl. Photoshop.
@saxus:
De ez igazából nem probléma, máshogy definiálja a dolgokat a két nyelv. Egyébként ennek szerintem nagyon egyszerű az oka: PDP-11-en volt egy BIT nevű utasítás, ami lényegében a bitenkénti AND-nak felel meg és csak flag registert állít. Így két utasításból megvan az if. Ha -1-et követelsz meg mindenképp, akkor előtte még kell egy MOV és egy CMP. De ugyanez van x86-on is most is x86-on.
Ezzel csak az a baj, hogy a BIT számára mindegy, hogy a többi nem vizsgált biten mi van, vagyis neki tök mindegy, hogy 1 (0x01) vagy -1 (0xff), mert (1 & 1) == (-1 & 1), tehát a vizsgálat szempontjából mindegy, viszont az aritmetika szempontjából és főleg a forward compatibility szempontjából baromira nem mindegy.
@saxus:
Arról nem is beszélve, hogy ezzel, hogy a logikai igaz-t úgy definiálták, hogy "minden, ami nem 0", kizárták azt, hogy legyen definiálatlan eset.
Ld. előző: (1 & 1) == (-1 & 1), ha úgyis csak egy bitet vizsgálunk, akkor ez tök mindegy, viszont az értéke a regiszternek nem az, ld. feljebb.
@kemi:
A Python nem soronként interpretál, hanem behúzza az egész kódot, gépi kódra fordítja, majd futtatja.
Tudom, hogy nem soronként interpretál, de egyfelől nem gépi kódra fordít, hanem bytecodera (forrás), mint minden más szkriptnyelv, másfelől alig hinném, hogy heurisztikus optimalizáló van benne, ami végignézi, hogy manipulálják-e a tömböt.
@kemi:
and, or, not vonatkozik a logikai műveletekre, bitand, bitor, compl, xor vonatkozik a bitenkénti műveletekre.
Ok, nem tudtam, én mindig az írásjeles operátorokat használtam.
@kemi:
Valahogy kezdem úgy érezni, hogy ez nem tudás/képességfelmérés, hanem arra megy ki, hogy kibasszanak mindenkit aki nem csókos.
Hajjaj! :(
Meg a fontoskodás. Ld. a saxusnak írt válaszom konzekvenciája.
https://wiki.theory.org/index.php/YourLanguageSucks
XDDD
Nézitek, hogy a Pascal nincs rajta? :)


kemi  (statz) Főfasz
#2, Főfasz (2970)
1108 | #2757 | ^ | Idézet | Sun, 25 Aug 2013 16:50:28 +02
78.131.*.* Linux x86 Google Chrome Hungary *.pool.hdsnet.hu
Akkor viszont az elsővel megegyező elemeket kell számolni, és úgy már helyesen le van kezelve az az eset, ha csak azonos értékekből áll.
int max2nd(int* a, int len_a) {
    if (len_a <= 1) return NULL;
    int max = INT_MIN;
    int lastmax = INT_MIN;
    int count = 0;
    int first = a[0];

    for (int i = 0; i < len_a; i++) {
        if (a[i] > max) {
            lastmax = max;
            max = a[i];
        }

        if (a[i] > lastmax and a[i] < max) lastmax = a[i];

        if (a[i] == first) count++;
    }

    if (count == len_a) return NULL;
    return lastmax;
}


Azért a C++-os részbe itt-ott bele lehet kötni:
- Van multithreading support, a pthread. Igaz, hogy nem C++ standard, hanem POSIX, az majdhogynem egyenértékű, szerintem még az MSVC is támogatja.
- C++11-től van unicode support.
- Az miért baj, hogy nem kényszeríti ki se az OOP-t, se a strukturált programozást?
- string s(); helyett írhatod úgy is, hogy string s = string(); hogy egyértelműbb legyen.


TCH  (statz) Főfasz
#1, Főfasz (10443)
1180 | #2758 | ^ | Idézet | Sun, 25 Aug 2013 18:48:59 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@kemi:
Akkor viszont az elsővel megegyező elemeket kell számolni, és úgy már helyesen le van kezelve az az eset, ha csak azonos értékekből áll.
Ja, asszem ez így már jó, bár most nem másztam bele mélyebben.
@kemi:
Azért a C++-os részbe itt-ott bele lehet kötni:
Bármelyik részbe bele lehet kötni, én csak a poén kedvéért linkeltem.
Ha úgy véled, hogy a C++ rész fasság, akkor csatlakozz az odavágó vitalaphoz.
Ami azt illeti, még értelmes emberek is előfordulnak, pl.
@CppThis @ https://wiki.theory.org/Talk:YourLanguageSucks#Object-oriented_programming_sucks.3F_Perhaps_not.:
OOP doesn't suck, but a lot of OOP fanboys make it suck by expecting it to be a magical panacea to all problems everywhere. A well-architected procedural application scales just fine, and crappy OOP is impossible to leverage for anything beyond its intended purpose. My professional experience is due to the rise of ".NET communities" there is a lot more bad OOP (.NET) out there than bad procedural.
Azért jó látni, hogy az OOP támogatói között vannak értelmes emberek is.


saxus  (statz) Agyfasz
#9, Agyfasz (419)
2670 | #2759 | ^ | Idézet | Sun, 25 Aug 2013 20:02:00 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
"A Python nem soronként interpretál, hanem behúzza az egész kódot, gépi kódra fordítja, majd futtatja."

Ez erősen függ attól, hogy mivel futtatod. Pythonhoz is van többféle runtime. A CPython ("A Python") pl. sima interpreter, nem fordít az semmit se gépi kódra. A Jython meg az IronPython meg pl. JVM/CLI kódot generál, ott már JIT-elés után valóban natív kód fut.

"Tessék ez tkp. két sor, lényegtelen, hogy van-e értelme, vagy nincs, csak próbáld meg ezt leírni kézzel! Csak mérd az időt! Aztán számold a hibákat!"

Mondjuk ahol ilyet írnak, így egy sorban, azt ütném szívlapáttal...

"és nem definiáltam semmit,"

De az stdbool.h igen.

"Én sem vagyok érte oda, de a C++ baromira nem ugyanaz a szint, mint a C. A C++-ban van támogatás a sztringektől elkezdve a GUI vezérléséig mindenre; a C++ alkalmas alkalmazásfejlesztésre. Hogy a nyelv alkotója szerint megbukott, az az ő véleménye, a világé más, a használható"

Na az stl egy trágya. Ugyan nagyon kellett a C++ második verziójához (nem véletlen vették bele, holott eredetileg az SGI-nek volt egy belső libje), de a mai napig hiányzott belőle rengeteg dolog, amitől igazán használható lett. Nem véletlen, hogy rengetegen használták pl. a boost-ot. Pl. most került bele ilyen apróság, mint threading az stl-be. Amúgy Stroustrup szerint ott bukott meg a C++, mint alkalmazásfejlesztő nyelv, hogy magas szintű programnyelvnek nem elég magas szintű, mert túl sok mindenre kell figyelned így is, viszont ahhoz már magas szintű, hogy, a C-vel egy lapon lehessen említeni.

"- Van multithreading support, a pthread. Igaz, hogy nem C++ standard, hanem POSIX, az majdhogynem egyenértékű, szerintem még az MSVC is támogatja."

W32-n ott volt a saját threading megvalósítás (meg kb. mindenhol). Jellemzően meg valamivel körbe volt bástyázva, hogy most W32 thread, vagy phread (vagy valami egyéb, ha se nem w32, se nem posix). Egyébként érdekesség: Windows (NT-n) a Win32 alrendszer mellé lehetett telepíteni POSIX alrendszert is. Valamint a .NET is egy külön alrendszerként települt. (Ezért volt az, hogy kezdetben csak annyit írt XP-n a .NET-es programokra, hogy szerinte ez hülyeség és nem alkalmazás, aztán valahol az SP2 környékén megtanították a rendszerrel, hogy inkább azon csipákoljon, hogy kellene neki ilyen vagy olyan verziójú .NET FW.) Ha valaki nagyon akarná simán lehetne ezt bővíteni tetszőleges alrendszerrel.

Ha meg már OOP, egy kis érdekesség:

Egyik NetBSD-s arc mesélte múltkor, hogy ki akarja próbálni az OOP-s/C++-os megközelítést a NetBSD-n, mondván, hogy sokszor ugyanazt csinálják meg C-ben, amit egyébként a C++ nyújt nyelvi szintén.


TCH  (statz) Főfasz
#1, Főfasz (10443)
969 | #275a | ^ | Idézet | Sun, 25 Aug 2013 20:35:53 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@saxus:
Mondjuk ahol ilyet írnak, így egy sorban, azt ütném szívlapáttal...


Mondom KARAKTERSZÁM! Ha több sorba tördelem, akkor is ugyananyi betűt kell papírra körmölnöm, ennyire nem érted?!
@saxus:
De az stdbool.h igen.
Nem volt behúzva.
@saxus:
Amúgy Stroustrup szerint ott bukott meg a C++, mint alkalmazásfejlesztő nyelv, hogy magas szintű programnyelvnek nem elég magas szintű, mert túl sok mindenre kell figyelned így is, viszont ahhoz már magas szintű, hogy, a C-vel egy lapon lehessen említeni.
&? A C-nél lassabb, de gyorsabban lehet benne fejleszteni, a Pascalnál gyorsabb, de lassabban lehet benne fejleszteni. Egy középút, ha úgy tetszik.
@saxus:
Egyik NetBSD-s arc mesélte múltkor, hogy ki akarja próbálni az OOP-s/C++-os megközelítést a NetBSD-n, mondván, hogy sokszor ugyanazt csinálják meg C-ben, amit egyébként a C++ nyújt nyelvi szintén.
C-ben hogy csinálnak ojjektumot?


kemi  (statz) Főfasz
#2, Főfasz (2970)
344 | #275b | ^ | Idézet | Sun, 25 Aug 2013 20:44:32 +02
84.236.*.* Linux x86 Google Chrome Hungary *.pool.digikabel.hu
@TCH:
A C-nél lassabb, de gyorsabban lehet benne fejleszteni, a Pascalnál gyorsabb, de lassabban lehet benne fejleszteni. Egy középút, ha úgy tetszik.
Pascalt manapság az égvilágon senki nem használ, a manapság használt fosnet meg dzsuvához képest meg milliárdszor jobb, még alkalmazásfejlesztésre is, mert mindent támogat ami ahhoz kell.


TCH  (statz) Főfasz
#1, Főfasz (10443)
389 | #275c | ^ | Idézet | Sun, 25 Aug 2013 23:08:45 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@kemi:
Pascalt manapság az égvilágon senki nem használ
De. Több olyan profit is ismerek, akinek az a primer nyelve. De egyébként a Delphi is Pascal, tehát azért nem annyira jelentéktelen a Pascal jelenléte.
@kemi:
a manapság használt fosnet meg dzsuvához képest meg milliárdszor jobb, még alkalmazásfejlesztésre is, mert mindent támogat ami ahhoz kell.
Ezzel viszont egyetértek.


saxus  (statz) Agyfasz
#9, Agyfasz (419)
1476 | #275d | ^ | Idézet | Sun, 25 Aug 2013 23:32:39 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
"Nem volt behúzva."

A példakódodban? Na ne már...

"C-ben hogy csinálnak ojjektumot?"

Már milliószor elpofáztam, hogy nem az a lényege az OOP-nek, hogy objektumokat csinálsz ész nélkül, ha nem akarod érteni, ne értsd. C-ben is lehet OOP szemlélettel fejleszteni... OOP nem ott kezdődik, hogy objektumaid vannak, hanem, hogy elkezdesz interface-kban, egységekben gondolkodni. OOP nyelvekben erre ott van az interface, absztrakt osztály, stb. (C++ -ban mondjuk csak annyi, hogy tele van pure virtual fv-kkel az osztály). C-ben ezt jellemzően úgy oldják meg, hogy csinálnak egy struct-ot, ott van egy halom fv pointer (pl. egy driver interface-ja), majd arra felaggatják az egyes fv-k pointerét. Aztán persze, lehet még játszani a különféle alignmentekkel, ha mondjuk valaki valami öröklődés szerű dolgot akar csinálni.

Mondanám, hogy nézd meg, hogy a composit application-ra mik az ajánlások .NET témakörben: az egyes modulok között nincs közvetlen hívás, mindenhol maximum egy interface-t látsz a másik modulból. Ettől lesznek cserélhetőek a komponensek. Mondanám azt is, hogy olvasd el a porgramtervezési minták című könyvet, de úgy se tennéd...

"Pascalt manapság az égvilágon senki nem használ"

Hahaha, az ügyviteli rendszerünk frontendje Delphi (+ egy halom MSSQL tárolt eljárás). Azért ne becsüld le a legacy kódokat. Egyébként is, Total Commandert láttál már? Sokáig azért nem volt belőle 64 bites verzió, mert nem volt 64 bites Delphi.


saxus  (statz) Agyfasz
#9, Agyfasz (419)
84 | #275e | ^ | Idézet | Sun, 25 Aug 2013 23:36:31 +02
84.3.*.* winhate Mozilla Firefox Hungary *.catv.pool.telekom.hu
Ja ilyen OOP imitáció C-ben látni pl. az SDL-ben vagy akár a Quake 2-ben is jócskán.


TCH  (statz) Főfasz
#1, Főfasz (10443)
2952 | #275f | ^ | Idézet | Mon, 26 Aug 2013 01:34:12 +02
84.3.*.* Linux x86 Opera Classic Hungary *.catv.pool.telekom.hu
@saxus:
A példakódodban? Na ne már...
Tanulj meg olvasni, ez volt a példakód:
#include <stdio.h>
void main()
{
	if ((~(1 == 1)) == (!(1 == 1))) // if (-2 == 0)
	{
		printf("yes\n");
	}
	else
	{
		printf("no\n");
	}
}
és ebben nem húztam be a stdbool.h headert. De egyébként be is baszna, hogy egy komparáláshoz be kéne húzni, bazdmeg! Próbáld ki magadnál: printf("%d", 1 == 1); és nem kell behúznod a stdbool.h-t, hogy kiderüljön, hogy az egy kibaszott egyes!
@saxus:
Már milliószor elpofáztam, hogy nem az a lényege az OOP-nek, hogy objektumokat csinálsz ész nélkül, ha nem akarod érteni, ne értsd.
De értem buzikám, csak az a baj, hogy pl. cisztában MINDEN objektum és te azt állítod, hogy a ciszta nagy királyság! So, WTF? Just being paradox or just being idiot?
@saxus:
OOP nem ott kezdődik, hogy objektumaid vannak, hanem, hogy elkezdesz interface-kban, egységekben gondolkodni.
Bullshit.
Persze, mert az OOP nem az, hogy a kódod alapvetően objektumokkal dolgozik, hanem az, hogy interface meg egység van. LOL. Jó tudni, hogy az alábbi kód OOP:
unit anyad;

interface

procedure lofaszt_a_seggedbe(name: string);

implementation

procedure lofaszt_a_seggedbe(name: string);
begin
	write('Lófaszt a seggedbe ' + name + '!' + #10);
end;

end.
@saxus:
C-ben ezt jellemzően úgy oldják meg, hogy csinálnak egy struct-ot, ott van egy halom fv pointer (pl. egy driver interface-ja), majd arra felaggatják az egyes fv-k pointerét.
A struct nem objektum, ennek megfelelően a struct-okkal dolgozó függvényeknek semmi köze az OOP-hoz, ezt csak a hozzád hasonló O3P High Priestek akarják bemagyarázni!
@saxus:
Mondanám azt is, hogy olvasd el a porgramtervezési minták című könyvet, de úgy se tennéd...
Ebben látod igazad van. Két okból sem tenném. Egyfelől én nem mosom magamnak az agyam. Másfelől meg nincs rá szükségem, vagy rájövök, hogy egy adott problémát hogyan lehet és kell megoldani, vagy azt úgyis baszhatom.
Annak semmi értelme, hogy többszáz oldalon keresztül rizsázzanak nekem, hogy de mekkora jó az OOP, de főleg a fosnet vagy a dzsuva. Ezt meghagyom neked.

De egyébként őszintén, te elolvasol bármit amit ajánlok neked? Egyáltalán elolvasol bármit, amit itt leírok? Mert nekem olybá tűnik, hogy csak beleolvasol abba amit írtam, aztán meg beszólsz szarul.

És ezt nem csak itt és velünk csinálod. A MySQL-ben szerinted 255 karakter (omg) a varchar, szerinted WebKit egyenlő gugli, szerinted papíron kell próbafeladatot csináltatni és szerinted ha a vulva szándékosan elbassza a halflájf windózos meg OSX-es verzióját, akkor annak nem az az oka, hogy geci a vulva, hanem, hogy szaralinuksz. Ha windózon vagy OSX-en valami nem működik, akkor szaralinuksz.(Miért nem használod az eggyel régebbi verziót belőle.)


English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés

Név: (max 255 byte)

Email: (max 255 byte) Nem kötelező!

Üzenet: (max 65536 kar.) 65536-0=65536




crap_vkn v4.34.0 by TCH
Thx to saxus for the escaped string decoder function (PHP), the realIP function (PHP) & the SQL handle layer (PHP), to thookerov for the int_divide function (PHP), to Jeff Anderson for the getSelText function (JS), to Alex King for the insertAtCursor function (JS), Flood3r for the new CSS styles, Pety for the spamprotection idea and some design and comfort ideas, MaxMind for the IP2Country database, famfamfam for the flags of countries and an unknown PHP programmer for the removeAccents function.



Kecskebaszók ide!