HOVD 2009 - Kedvenc programnyelv

Címkék

c
13% (132 szavazat)
c++
14% (147 szavazat)
c#
5% (51 szavazat)
haskell, erlang, caml, ... (funkcionális nyelvek)
2% (18 szavazat)
java
16% (163 szavazat)
pascal
4% (44 szavazat)
perl
9% (96 szavazat)
php
19% (190 szavazat)
python
14% (143 szavazat)
ruby
3% (32 szavazat)
Összes szavazat: 1016

Hozzászólások

hova lett az assembly?????????????????????????

A'rpi

haskell-re szavaztam, de szívem szerint nyomtam volna egyet még a python-hoz

Érdekes, hogy eddig akárkivel beszéltem a PHP5 OOP és más hasonló advancedebb képességeiről, mindenki belefutott már legalább 10 olyan fasságba, ami más nyelveknél egyszerűen nem fordulhat elő.

Csak egy példa: próbáltál már komplexebb objektum-kompozíciót tartalmazó szerkezetet serializálni? Esetleg picit is típusbiztos kódot írni?

----------------
Lvl86 Troll

LOL, Probaltal mar PHP modon kodolni PHP -ben , es nem mas stilust raeroltetni ? De gyanitom egy Bad practice miatt jott elo eleve ez a kerdes.
Fogadjunk, hogy fogalmad sincs mik a tenyleges hatranyai.
Es nefeledd szinte minden elony/hatrany mogott von egy masik hatrany/elony.

Amit nem lehet megirni assemblyben, azt nem lehet megirni.

A php a nyelvek ubuntuja, suzukija, teszkogazdaságosa. egyszerű, működik, elvisz A-ból B-be olcsón, miegymás.

Ám, ha megnézed egyszerűen egy jó választás a legtöbb webes feladatra. És messze többre, mint mennyire lesajnálják sokan. Nyugodt szívvel használható összetett, vagy nagy látogatottságú cucc alá, nem ezen fog múlni a siker. Elit helyeken is szívesen látják, nézzetek utána mik futnak php-n.

Az oop-s, meg komplexrendeszeres érvek pedig 6 éve még dobálhatók voltak, ma már jó társaságban is vállalható kódokat találsz php-ban netszerte.

Persze ez már csak ilyen, hiába az elegáns öltöny, attól nektek már mindig is csak egy ócska cigány marad. :)

Más a cél. A PHP eleve egy egyszerű, gyorsan tanulható nyelvnek készült, és mint ilyen, nem sikerült. Hiszen gyorsan dolgoznak benne sokan és gányul. A C++-t próbálták egyszerűen tartani, de maga a nyelv túl sokat tud. Nem hiszem, hogy bármiben is összehasonlítható egy fordított, rendszerprogramozásra és alkalmazásfejlesztésre készült nyelv egy weboldalgenerátorral.

Messze vagyok az igazságtól, ha azt állítom, hogy minden nyelv el van rontva?
Sőt kiterjesztem. Nem csak a programozási nyelvek, hanem az emberi, nemzeti, beszélt és írott nyelvek is?
--
не закурить! (Ne gyújts rá!) не куриться! (Ne dohányozz! Ne füstölögj!)

Attol meg, hogy bonyolultabb konstrukciok kellenek ahhoz, hogy egyesek szerint "gany" dolgot valosits meg nem jelenti feltetlen, hogy ganyolas lesz.
Az hogy valamit nehez megvalositani, mert elveszi az ezkozt vagy bonyolulta teszi a nyelv, szint ugy vezethet szar kodhoz avatatlna kezekben.

Amit nem lehet megirni assemblyben, azt nem lehet megirni.

Kezdj el float-okkal komolyabban számolgatni PHP-ben. Lesz meglepetés bőven.

A robotika törvényeit megszegő automatikus típuskonverziójától a falra mászok (2 _string_ összehasonlításakor integer-ré konvertálja, ha annak tűnik). Arról nem is beszélve, hogy az implicit és explicit típuskonverziókat _teljesen_ más kód hajtja végre (ami néha változik, hogy melyik). Olyan apróságokról, hogy 32 és 64 bites adattípusok körül teljes homály van az egész nyelvben, vagy tele van az egész nyelv ok nélküli kivételekkel már nem is beszélve.

Nem látom az ellentmondást. Természetesen minden nyelvben _lehet_ gányolni, de van olyan nyelv, ami ezt nem támogatja (nehéz benne nagyon gányolni, egyszerűen nem tűnik helyesnek), és van olyan nyelv, amiben egyes problémákat kizárólag úgy lehet megoldani. Ez azért különbség.

De az már erősen a nyelven múlik, hogy azokat, amiket beleraknak a nyelvbe (és a hozzá tartozó függvénytárakba), hogy azokat mennyire igényesen, használhatóan írják meg.

És de, igencsak a nyelven múlik, mert a PHP-sok előszeretettel emelnek át jó ötleteket más nyelvekből úgy, hogy egyáltalán nem képesek megérteni az adott ötlet lényegét. Így valami használhatatlan, gányolásra kényszerítő megoldás lesz a végeredmény.

----------------
Lvl86 Troll

másik topikban programfejlesztést segítő eszköznek tartják a vimtől kezdve a notepad*-ig,
itt is php, most meg awk...

hmm, a nagyim is programozó, ő is szeretne szavazni, de nem tudja mi a neve a kedvenc programnyelvének, de arra lehet használni hogy a videón gombokat nyomogatva be lehet programozni melyik gomb megnyomására melyik csatorna jöjjön be, de nem is ezért tartja magát programozónak, hanem azért mert ő már advanszd és a felvételt előre be tudja programozni mikor történjen

én még kezdő vagyok a liftet programozom, már majdnem az össze gombot tudom mire való, esetleg nem tudja hogy ennek a programnyelvnek mi a neve?

:D

Ami nekem fura a szavazásban, hogy jelenleg a C++ veri a C-t (ha nem is sokkal), a Java veri a C#-t és a Python veri a Perl-t. Az első és a harmadik pont olyan, hogy nem várnám egy linuxos közösségtől, a középsőt meg abszolút nem értettem soha, de az mondjuk hitvitába torkollna...

Jól mutatja a szavazás, hogy az olvasói tábor milyen informatikai közegben mozog/dolgozik. A Java, C++, PHP és a Python magas arányának az oka, hogy ezekben a nyelvekben a leggyakoribb az alkalmazásfejlesztés.
C++ és a Java kedvelt a különféle UI-t igénylő alkalmazások fejlesztésél. Az előbbi a Visual C++ az utóbbi a hordozhatóság miatt.
A Python elég kóderbarát és jóformán az atyaúristent is lekódolták már benne, tehát alkalmas gyors, hackkelésekhez.
--
"Maradt még 2 kB-om. Teszek bele egy TCP-IP stacket és egy bootlogót. "

Értem én, én speciel a C++-t preferálom a C felett, mivel mindent meg lehet csinálni amit C-ben, csak jobban. De a Unix/Linux világ még mindig eléggé C központú, azért fura. A Java azért furcsa, mert a C# mint nyelv (könyvtár nélkül) sokkal kiforrottabb (hiszen tanultak a hibákból), és lassan ugyanazt tudja a könyvtár is, mint a Java böhöm nagy könyvtára. A Python-Perl párhuzamnál ugyanaz, mint fentebb: én speciel látom az előnyeit a Py-nek, de a Perl valahogy sokkal népszerűbbnek tűnik ilyen embereknél. Hiába, elrepül az idő... valahogy sokkal több embert látok gányolni Perlben, mint bármit csinálni Pythonban, és a Perl valahogy vallásos szeretetet szokott kiváltani, és egy kedvencszavazáson ez erős szempont :)

Azért, mert vannak nyelvek, amik érzelmeket váltanak ki. Amint fentebb írtam, a Perl vallásos imádatot, a C++ speciel sokak általi lenézést, a C pedig a linuxosok odaadó csüggését. Hidd el, sokat beszélgettem emberekkel erre-arra, és sokkal több a C-fan mint a C++. Úgy látszik ezen a téren nem reprezentatív a hup vagy az én mintám.

Az, hogy a Java veri a C#-ot eleg egyertelmu. Jelenleg a vilagon a java a legelterjedtebb nyelv, es azt hasznaljak a legtobben komoly alkalmazasok fejlesztesere. Itt nem zenelejatszo programra, hanem mondjuk mobilszolgaltatoknal, bankoknal futo belso szerverekre gondolok. En egy eleg nagy internacionalis cegnel dolgozok mint programozo, es nalunk mindenki java-ban programoz (jo van par szazalek specialis c/assembly/scriptek). Es tobb mas nagy ceget ismerek ahol ugyanez a helyzet. C# az egy java utanzat ami "csak" Windows-on megy. En nem szivesen biznek komoly szervert Windows-ra. Jo ott a mono, de azzal nem mehetsz oda egy ugyfelhez (nincs tamogatas).

Szoval a C# programozok Windows-t hasznalnak es nem olvassak ezt az oldalt :D Plusz nagysagrendekkel tobb java programozo/allas van mint C#.

Mondjuk érdekes, volt valahol egy vita a java enterspájz edísönre épülő versus egyénileg megírt c++ alapú nagycéges dolgokról. Ahol vagyok most jópár _nagy_ programot asm-ben írtak, ami azért keményen hangzik (és az is), mármint durva lehetett megírni és durva lehet karbantartani. De ez már nem a téma része.

Ez egy kedvencszavazás, azért nem értem. Az egy dolog, hogy mit használ sok ember sok helyen, mert ez kényszer, az adott helyhez kell alkalmazkodni. Na mindegy, valamennyire érthető.

----

Hülye pelikán

olyan nincs hogy valaki értené, ez a szavazás önmagában ellentmondás, kedvencre még a 99-bottles-of-beer.net is édeskevés lenne nemhogy 10, marad az hogy olyanok közül kell választani hogy egyetlen szavazó mindet ismerje és ne azért szavazzon valamire mert a többiről még csak nem is hallott, de sajnos ez sem teljesül így marad az ellentmondás

Mondjuk egy programozonak ezt a kategoriat eleg jol ismernie kellene. En ezek kozul csak ruby-ban nem csinaltam semmit, plusz a funkcionalis nyelvek kategoria necces, mivel az egyetemen tanultunk sok furcsa nyelvet, es a haskell-re kifejezetten emlekszem, de nem vagyok benne biztos, hogy en is tanultam, vagy csak ismeroseim jartak speckolra belole.

Mellesleg en olyan ceget valasztottam, ahol a kedvenc programozasi nyelvemben lehet dolgozni.

Nem semmi eszmefuttatas. En sem akarok hitvitaba keveredni igazabol, meg aztan volt itt eszosztas a temaban mar nagyon sokszor, de az alapveto tevedesek azert zavaroak.

C# == java utanzat ???

Marmint a nyelvre gondolsz vagy mire? .NET frameworkre? Ha a masodikra akkor eleg nagy tevedesben vagy, illetve ez valoszinuleg abbol fakad, hogy a .Net-rol nincsenek nagyon melyenszanto ismereteid. Ha az elobbire, akkor nagyjabol annyi a hasonlosag mint barmely ket C alapu nyelv kozott.

"En nem szivesen biznek komoly szervert Windows-ra."

Mert csak szerverprogramozas letezik a vilagon. GUI fejlesztesre jelen pillanatban a Java gyakorlatilag alkalmatlan, foleg ha a .NET-hez viszonyitjuk. Szoval csak mindent hasznaljunk arra amire valo. En is nagy multiceg, itt is csinalunk java-t es .Net-et is es a java szerveroldalon, a .Net gui oldalon valt be.

Mono?
Az egy ertelmetlen hobbiprojekt.

Ismerem eleg jol java-t is es .Net-et is, 5+ eve java programozo vagyok, .Net-ben is dolgoztam egy evet. Plusz van ket .Net certificate-em is, szoval nem a nyelv nem ismerete, hanem ez a velemenyem rola. Mondjuk a .Net tudasom nem a legfrissebb mivel meg 1.1 alatt dolgoztam benne. Plusz irtam hobbi projektet mono/gtk#-ban.

Nekem a teljes .Net frameworknek nagyon durvan java szaga volt. Plusz nagyon utaltam, hogy nagyon ugyeltek arra, hogy minden osztalynak mas neve legyen mint javaban. Nehogy veletlen ugyanaz legyen a coding convention (nagy betus fuggvenynevek). Mondj egy masik elterjedt nyelvet ami nem gepi kodot allit elo, hanem koztes formatumra fordit, van benne garbage collector. A dolog ugy nez ki a microsoft latta a java-t kezdett terjedni es nem tetszett nekik mert platform fuggetlen volt, es sokan nem windows-on futtattak, ezert csinaltak valamit ami csak Windows-on fut. Ugyelve arra, hogy lehessen portolni ugyan mas rendszerekre, de az sose lehessen 100% kompatibilis, tobb teljesen windows specifikus dolog beemelesevel a frameworkbe (WMI es tarsai).

Windows-os GUI programozasra teljesen jo szerintem is, mondjuk en nem sok windows-os dolgon dolgozom, ami keves gui-ra szukseg van azt megoldjuk webes cuccokkal. A mono-nak meg sok fejlodnivaloja van, amikor utoljara probaltam, eleg gyatra dokumentacioja volt, es a monodevelop is eleg gyenge volt. Plusz szepen le vannak maradva a hivatalos verziohoz kepest. Szoval nekem a mono jelenlegi allapotaban nem tunik tul eletkepesnek vallalati kornyezetben. Ahol latok jovot mono elott az Linux-os GUI programozas.

Platformfüggetlen, úgy érted saját platformon futó? (pont mint a .net, csak nincs elterjedve a platform) Azért ha a nyelvbe belenézünk, nem egy kategória (lásd átgondoltság). De (C# == Java utánzat), ha úgy nézzük az utánzatot, hogy a Javahoz a C# hasonlítható a legjobban és fordítva.

----
Hülye pelikán

komolyan kérdeztem, tényleg nem ismertek előttem a tények/álláspontok/... java-t most kezdem komolyabban ismerni, c#-ról csak olvastam.

fejtsd ki ha kérhetem, hogy szerinted miben jobb és miért. azt tudom hogy volt a java, volt per is, később lett a c#, amiben vannak pointerek, meg struct meg ilyesmik, de ezen kívül (így látásból) nekem is eléggé hasonlónak tűnik a java-hoz.

Hű, lehet nem én vagyok a legjobb forrás a témában, de: átgondoltabb, mert nincs tele a könyvtára deprecated cuccokkal (ez ugye a .net, ami nem kötődik kizárólagosan a C#-hoz, de mégis ez a fő nyelv hozzá). A nyelv már n. verzióját éli, mégsincs az az érzetem mint Javanál, hogy elsiették a változtatásokat, lásd Java generic, az se egy lépésben alakult ki. Valahogy sokkal inkább érzem azt, hogy fel akarnak építeni valamit, mint a Javanál, ahol inkább ÚJRA akarják húzni az egészet, de a sokmillió sor kód miatt ugye mindennek visszafele kompatibilisnek kell lennie...
----
Hülye pelikán

A deprecated cuccok nem tűnnek el idővel? Végülis a lassú változás az normálisnak tekinthető, mivel 15 év alatt sokat változik a világ, különösképp az informatika.

Mikor a generic-ekről, meg a Java-C# történetéről olvastam, az a gondolatom támadt, hogy tök jó hogy lett a C#, mert bizonyos értelemben elkezdődött egy verseny, ami végülis a Java-nak jót tett :)

A deprecated cuccok nem tűnnek el. Soha. Mert sokmillió sor kód használja őket, aminek a nagy részét nem fogják újraírni, viszont használatban maradnak. Nomeg sokezer programozó tanulta meg őket kezelni, és van, aki nehezen felejt, és még mindig így ír. Pont ahogy C++-ban is van aki malloc()-t használ (különösebb indok nélkül), egyszerűen arra áll rá a keze.
----
Hülye pelikán

A tapasztalat ezt mutatja. Mert ugyan a régi kódot nem fogják újraírni, de BELEÍRNI valószínűleg még fognak. Persze, lehetne régi fordítót használni, de az új fordítónak sem kerül semmibe (igazából itt ugye a könyvtárról van szó, de nyelvi elemeket is lehetne deprecated-nek nyílvánítani) biztosítani a régi szolgáltatásokat, és nem jó, ha minden csak egy adott fordítóval megy, egyrészt nyílván kell tartani és nagy anyázások vannak belőle, másrészt elesel az új fordítók optimalizációitól, ami főleg Java esetén igen jelentős.

Lásd C++ is a .h-s szabvány headerek. Benne fog maradni a szabványban, mert semmibe sem kerül biztosítani, viszont sok kód nem fordulna nélkülük.
----
Hülye pelikán