Új hozzászólás Aktív témák

  • Gregorius

    őstag

    válasz nyaralasptt #83 üzenetére

    Az autoboxing valami eszmeletlen szar lett a Javaban, syerintem iszonyu nagy hiba volt abban a formaban bevezetni
    Nem az autoboxinggal van baj - azt a .NET is csinálja - hanem azzal, hogy akkor is azt használja, amikor nem kell.

    Ha rajtam mulna, akkor eleve nem lennenek primitiv tipusok a nyelvben, mert legtobbszor csak szopas van veluk
    Viszont a primitív típusokkal sokkal könnyebb jobban teljesítő kódot csinálni. Csak ugye valahol belerondítanak a platformfüggetlenségbe.

    A generics viszont mast jelent/legalabbis amennyire tudom/: kb. olyasmi mint a C++ template-ek /kicsit talan gyengebb annal/ es pusztan forditasi ideju technologia, ezert akadtam fenn a ''teljesitmeny'' szon
    Nem egészen. A template sokkal több mindenre használható, mint a generikus típus (leginkább makróhoz hasonlítható), akár faktoriálist lehet számoltatni a fordítóval. Viszont fordítás után teljesen eltűnik.
    A Javában és a C#-ban jóval több megkötés van az ilyen paraméterekre, úgyhogy sokkal kevesebb dolgot lehet vele csinálni. A Java forrás->bájtkód fordító kiszervezi a kódból a vonatkozó cast-olások behelyettesítésével, vagyis nagyjából az a szint érhető el generikus cuccokkal felvértezett Javával, mint anélkül.
    A C# fordító ellenben veszteség nélkül letolja az egészet a köztes kódba, ahol a JIT olyasmit csinál, mint a C++ fordító, ami típustól függően nagyságrendekkel gyorsabb futást eredményezhet.

Új hozzászólás Aktív témák