C++, Delphi, JAVA és egyéb programnyelvek

Started by ignus, 2007-06-05, 15:03:45

Previous topic - Next topic

Fazék

Quote from: Kuroi Tenshi on 2009-03-09, 23:43:10
Fazék: win7 már másfél éve a piacon van, vista álnéven ;D
és ez csak félig vicc... a win7 egy kicsit átalakított, tisztított
vista... a release candidate amúgy a hetekben jön majd ki.
hidd el, a vista-ra is átváltottam volna, ha tisztességesen megcsinálják és hihetek benne, hogy hasonlóan hosszú életű lesz, mint az xp.
MS béna volt, kellett neki még pár év, hogy lecsupaszítsa, rendesebben felöltöztesse és szalonképessé tegye. :)

pl ez is már-már mesébe illően hangzik: http://index.hu/tech/szoftver/2009/03/09/mindent_ki_lehet_kapcsolni_a_windows_7-ben/

Próféta

1. van programozós topik, nem akarunk oda átvonulni?

2.
Quote from: .Attila on 2009-03-09, 20:01:32
Momentán azért keresek valamit, hogy javítsam az esélyeimet a munkaerőpiacon.
Javával és c-vel szemeztem leginkább, mert ezek a legelterjedtebbek. Meg a delphi. Azt hiszem, C lesz belőle.
Ahogy én látom, a munkaerőpiacon közvetlenül a Java és a C# a legjobban használható, de a C++ is hasznos, önmagában is, alapozásnak is. Sima C-t viszont ne nagyon tanulj (max ránézés szintű ismerkedés az előbbi 3 előtt), mert beágyazott eszközöket és OS-közeli dolgokat aligha fogsz programozni, viszont utána C++-ra áttérve régi rossz beidegződéseid lehetnek. Vagy nem.
Delphit is kerüld; ugyan még csomó cégnél van, karban kell tartani ezeket a programokat, de szerintem ne erre gyúrj, mert eléggé leszállóban van (a mögötte álló Borland cégnek kábé kampec volt).

3.
Quote from: .Attila on 2009-03-09, 20:01:32
Valakinek van jó könyve vagy forrása, amiből lehet tanulni? (tanfolyamot is keresek közben, csak momentán nem tudom, miből fizessem)
C++: Ha nem zavar, hogy nem papíron van, akkor Teach Yourself C++ in 21 Days. Már reklámoztam. Mások a nyelvet kitaláló Bjarne Stroustrup könyvére esküsznek, én azt nem olvastam.
Java: Itt saját tapasztalattal nem nagyon tudok segíteni (egy minimális egyetemi kurzus után gyakorlatilag azon keresztül tanultam meg, hogy immár 4 éve programozok benne), de ha visszaolvasol, Kvikvegnek is azt mondtam, hogy a Sun honlapján lévő Getting Started jó hírben áll, és az Standard API referencia pedig a későbbiekben aranyat ér.
C#: Csak annyit tudok mondani, hogy ha a Java megvan, akkor onnan ezt nagyon könnyű, mert messziről és bandzsítva nézve szinte ugyanaz.

Viszont bármelyik nyelvről is van szó, a legfontosabb: csinálni, gyakorolni, próbálkozni, kísérletezgetni! amikor nem működik, izzadni felette egy kicsit!

4.
Quote from: .Attila on 2009-03-09, 20:01:32
szerk.: az alábbi két könyv közül melyiket érdemes megvenni?

1 2
A Benkő Tibornésat szerintem határozottan nem, egyrészt mert régi, másrészt mert Benkőné. A másik passz.

5.
Quote from: Kuroi Tenshi on 2009-03-09, 23:43:10
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
anélkül, hogy a class, public, static, void, stb fogalmak
értelmét, célját, szintaxisát elmagyaráznák...
Tehát valami olyasmi kéne, ami az alapokig visszamegy...
Pedig szerintem az alapokat akár itt is el lehet kezdeni. Először fogd fel az első két sort és a végén a két záró kapcsos zárójelet, mint valami kötelező eposzi kelléket, nem kell még megértened őket. Mint a latin énekek ballagáskor. A közepére, a hello world sor helyére lehet az első programokat írni, amik mondjuk bekérnek két számot, aztán összeadják. Aztán egyre bonyolultabbakat, amelyek feltételeket, ciklusokat használnak. Aztán másik metódusokat hívogatnak. Aztán meg fognak jelenni az osztályok és az objektumpéldányok, és kisvártatva több fájlra szétterpeszkedik a programod. Aztán egyszer csak azon kapod magad, hogy érted, mi volt az a kötelező eposzi kellék.



Quote from: Fazék on 2009-03-09, 23:48:53
hidd el, a vista-ra is átváltottam volna, ha tisztességesen megcsinálják és hihetek benne, hogy hasonlóan hosszú életű lesz, mint az xp.
MS béna volt, kellett neki még pár év, hogy lecsupaszítsa, rendesebben felöltöztesse és szalonképessé tegye. :)
Szerintem nem csoda, hogy a Vista első éve olyanra sikerült, amilyenre. Elvégre a Microsoft első desktop operációs rendszeréről van szó, még kissé gyakorlatlanok voltak.
[spoiler]Ez nem szarkazmus, hanem trollkodás akart lenni. Amióta van szimbolikus link a Windowsban, azóta kénytelen vagyok én is elismerni, hogy igazi operációs rendszer lett belőle :)[/spoiler]

.Attila

Quote from: Próféta on 2009-03-09, 23:57:28
1. van programozós topik, nem akarunk oda átvonulni?

De.

QuoteAhogy én látom, a munkaerőpiacon közvetlenül a Java és a C# a legjobban használható, de a C++ is hasznos, önmagában is, alapozásnak is. Sima C-t viszont ne nagyon tanulj

Ok.

QuoteC++: Ha nem zavar, hogy nem papíron van, akkor Teach Yourself C++ in 21 Days.

Ezt megnézem.

Quotea Sun honlapján lévő Getting Started jó hírben áll, és az Standard API referencia pedig a későbbiekben aranyat ér.

Meg ezt is.
A Standard API meg micsoda?

motifator

Quote from: Próféta on 2009-03-09, 23:57:28
Sima C-t viszont ne nagyon tanulj (max ránézés szintű ismerkedés az előbbi 3 előtt), mert beágyazott eszközöket és OS-közeli dolgokat aligha fogsz programozni
Quote from: Kuroi Tenshi on 2009-03-09, 23:43:10
anélkül, hogy a class, public, static, void, stb fogalmak
értelmét, célját, szintaxisát elmagyaráznák...
Tehát valami olyasmi kéne, ami az alapokig visszamegy...
Ha sima c-t tanulsz egy kicsit, akkor pont az alapokat tudod elsajátítani. A sima c-nél a fenti felsorolásból a voidot kivéve egyik szóval se találkozol, csak azzal, ami a kapcsos zárójelek között van, és azzal is sokkal egyszerűbb formában.
Nem árt megismerkedni az eljárásorientált programozással rendesen (mondjuk sima c), mielőtt objektumorientált programozással foglalkoznál (c++, c#, Java). Ahhoz, hogy igazán leessen, hogy mi is az objektumorientált programozás lényege és igazi haszna, tényleg kell, hogy az eljárásorientált alapok meglegyenek. Nem azt mondom, hogy profin elsajátítsd a c minden csínját bínját, mutatóaritmetikától kezdve minden finomságot, de jó kis eljárásorientált alapot ad.
Amúgy az se rossz, ha megfogadod Próféta tanácsát, és valami ismeretlen szükséges akármiként tekintesz ezekre a részekre, de talán a végén tisztább képet kapsz, ha az alapokról kezdesz.
Saját tapasztalatomra visszaemlékezve nekem nagy élmény volt, amikor Prog 2 gyakorlaton a félév vége felé a nagy beadandó feladat megoldása közben leesett, hogy az objektumorientáltság miért is jó és hasznos. Addig is tanítgatták, hogy mi az, értem én, hogy van Személy osztály, akinek van neve és címe, annak leszármazottja az Alkalmazott, akinek emellett már beosztása és fizetése is van, stb. De amikor először megértettem a gyakorlati hasznát (szöveges RPG programot kellett írni, ami input fájlból parse-olja a kalandot, és aztán végig lehet vele játszani), az nem lett volna ugyanolyan, ha előtte nem tanulom az eljárásorientált paradigmát is. Hú bazz, ez se ma volt, nem is tegnap :)
Könyvet nem nagyon tudok ajánlani sajnos, mert én egyetemen tanultam programozni eleinte, aztán meg munkatapasztalatból, de a többiek már adtak egy pár használható linket.
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

Kuroi Tenshi

Quote from: Próféta on 2009-03-09, 23:57:28
Quote from: Kuroi Tenshi on 2009-03-09, 23:43:10
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
anélkül, hogy a class, public, static, void, stb fogalmak
értelmét, célját, szintaxisát elmagyaráznák...
Tehát valami olyasmi kéne, ami az alapokig visszamegy...
Pedig szerintem az alapokat akár itt is el lehet kezdeni. Először fogd fel az első két sort és a végén a két záró kapcsos zárójelet, mint valami kötelező eposzi kelléket, nem kell még megértened őket. Mint a latin énekek ballagáskor. A közepére, a hello world sor helyére lehet az első programokat írni, amik mondjuk bekérnek két számot, aztán összeadják. Aztán egyre bonyolultabbakat, amelyek feltételeket, ciklusokat használnak. Aztán másik metódusokat hívogatnak. Aztán meg fognak jelenni az osztályok és az objektumpéldányok, és kisvártatva több fájlra szétterpeszkedik a programod. Aztán egyszer csak azon kapod magad, hogy érted, mi volt az a kötelező eposzi kellék.

Ezzel csak az a bajom, hogy utálom.
Úgy sokkal tisztább és könnyebben megjegyzem, ha értem is,
hogy mit kell leírnom. Én még a latin ballagási énekeknek is
utánanéztem, hogy mit jelentenek, tehát ez a hasonlat nálam
melléfogás ;D

Ez egyébként a sun java tutorial oldaláról van.
Pár hónapja, max fél éve kezdtem neki, amikor egy kicsivel
több szabadidőm volt még, aztán az első pár leckében
végig ez ment, hogy szinte feltételezte, hogy van valami
alaptudásom, és értem, hogy mit jelentenek, és mit hova
kell írni, anélkül, hogy egyszer elmagyarázták volna. Ebből
arra a következtetésre jutottam, hogy előbb valami alapozó
könyvet kéne elolvasnom, mert ez így csak idegesít, hogy
logika ismerése nélkül beseggelnem kell valamit.


Quote from: motifator on 2009-03-10, 00:20:14
Ha sima c-t tanulsz egy kicsit, akkor pont az alapokat tudod elsajátítani.

Könyvet nem nagyon tudok ajánlani sajnos, mert én egyetemen tanultam programozni eleinte, aztán meg munkatapasztalatból, de a többiek már adtak egy pár használható linket.

Ok, akkor ennek még utánakérdezek munkahelyen is, hátha
adnak valami jó tippet sima c-könyvre vagy tutorialra.

kikuchiyo

Quote from: Próféta on 2009-03-09, 23:57:28
Viszont bármelyik nyelvről is van szó, a legfontosabb: csinálni, gyakorolni, próbálkozni, kísérletezgetni! amikor nem működik, izzadni felette egy kicsit!

Én káromkodni szoktam...

Quote from: motifator on 2009-03-10, 00:20:14
Saját tapasztalatomra visszaemlékezve nekem nagy élmény volt, amikor Prog 2 gyakorlaton a félév vége felé a nagy beadandó feladat megoldása közben leesett, hogy az objektumorientáltság miért is jó és hasznos.

Szégyen, de én a mai napig nem értem, hogy miért jó az objektumorientáltság.
Lehet, hogy csak azért, mert sosem volt szükségem rá, vagy nem tudtam, hogy erre van szükségem.
Miért jó?
Failure is the default option

Próféta

#156
Sima C: ezt se könyvből tanultam, de az eredeti Kernighan & Ritchie könyvet szokták szeretni (ők találták ki a nyelvet, amikor kellett valami, amiben megírhatják a UNIXot), de az már egy nagyon ősi C dialektus.
Viszont aki C programozásra vagy gyakorlásra adja a fejét, annak kötelező kinyomtatnia ezt egy A4-es lap két oldalára, és mindig kéznél kell tartania.

Quote from: .Attila on 2009-03-10, 00:19:35
A Standard API meg micsoda?
A szabvány API specifikáció kb. ugyanaz, mint C-hez a fenti pdf. Viszont eszedbe ne jusson most beleolvasni, mert kiég a szemed!
Dióhéjban: vannak felületek, amelyeken keresztül a Java programok a számítógépet és a felhasználót piszkálhatják, meg input / output tevékenységet folytathatnak; ezen kívül van egy rakás segédszolgáltatás és előre elkészített, felhasználható programelem. Ezek "ha áram van, minden van" elven az összes Java futtatókörnyezetben kötelezően ott figyelnek, és az ő programozói leírásuk az imént linkelt doksi. Ha például elképzelésed sincs, hogy K_T példájában a System.out.println() vajon mit jelenthet, akkor azt megpróbálhatod kinyomozni ebből. Egy jó IDE (fejlesztőeszköz) persze sokat segít.

Quote from: motifator on 2009-03-10, 00:20:14
Ha sima c-t tanulsz egy kicsit, akkor pont az alapokat tudod elsajátítani. A sima c-nél a fenti felsorolásból a voidot kivéve egyik szóval se találkozol, csak azzal, ami a kapcsos zárójelek között van, és azzal is sokkal egyszerűbb formában.
Kötekedés: static az van C-ben is, bár kissé más jelentéssel :)
OK, ez is egy érthető álláspont, ezért is írtam, hogy rövid ránézést megér. Pointerekig tényleg nem érdemes elmenni, már a char* is necces. Viszont pont az eposzi kellékeken nem sokat segít a C, ott úgy kezdődik a világ (Tudom, hogy le lehet egyszerűsíteni, ne kötekedj ;) ), hogy

int main(int argc, char** argv)
{
}

És ebből szerintem nem ért többet a kezdő, mint a Javás eposzból. Sőt.
Inkább az OO megértésében van igazad, ott jön jól, ha látott előtte procedurális programozást.

Quote from: kikuchiyo on 2009-03-10, 00:52:12
Szégyen, de én a mai napig nem értem, hogy miért jó az objektumorientáltság.
Lehet, hogy csak azért, mert sosem volt szükségem rá, vagy nem tudtam, hogy erre van szükségem.
Miért jó?
Nem fogok ilyenkor esszét írni róla neked, szóval csak röviden :)
Hello World szintjén tipikusan csak árt, de nagyobb méretekben, bizonyos jellegű komplexebb szoftvereknél megvan a maga haszna a paradigmának.
Megkönnyíti bizonyos esetekben a feladat (és maga a félkész szoftver) modularizációját, strukturális dekompozícióját (ergo gyakran könnyebb benne gondolkodni, mert vannak a bigyók és a hozzájuk tartozó műveletek); segíti (interfész és cserélhető implementáció szétválaszthatóságán, különféle polimorfizmusokon keresztül) bizonyos kódrészletek újrafelhasználhatóságát, biliborulás nélküli átalakíthatóságát; lazább lehet részek közti a csatolás általa; vezet annyira, hogy segít bizonyos hibákat elkerülni (pl. hoppá, egyszer csak kettőre van ebből szükségem, holott mindig egyre volt); könnyebben támogatható a fejlesztés IDE-vel (főleg, ha statikusan tipizált); ráadásul van egy halom jól kimunkált, letisztult tervezési minta hozzá.
Nyilván nem mindenre ez a legpraktikusabb; megvan a C, az ASM, a Matlab, a szkriptnyelvek, a Haskell, kedvenc Perled, stb. létjogosultsága is.

Amúgy érdekességképp belinkelem a hírhedt TIOBE Indexet. Nem szabad túl sokat belelátni, de mondjuk érdemes ránézni.

kikuchiyo

Quote from: Próféta on 2009-03-10, 01:30:06
kedvenc Perled, stb. létjogosultsága is

:haha:

szinte látom magam előtt a gúnyos arckifejezést :)

Most mondjam, hogy a perl is objektomorientált nyelv?
Failure is the default option

Próféta

Quote from: kikuchiyo on 2009-03-10, 01:38:16
szinte látom magam előtt a gúnyos arckifejezést :)
Esküszöm, minden rosszindulat nélkül mondtam :)

Quote from: kikuchiyo on 2009-03-10, 01:38:16
Most mondjam, hogy a perl is objektomorientált nyelv?
Mondhatod nyugodtan, fogalmam sincs. Sosem tanultam, és amennyit láttam belőle, az inkább valami erősebb sed/awk/bash jellegű volt. De persze egy ideje állítólag a PHP nyelvben is van OO, szóval ma már mindent lehet :)

Kuroi Tenshi

Quote from: Próféta on 2009-03-10, 01:30:06
Viszont pont az eposzi kellékeken nem sokat segít a C, ott úgy kezdődik a világ (Tudom, hogy le lehet egyszerűsíteni, ne kötekedj ;) ), hogy

int main(int argc, char** argv)
{
}

És ebből szerintem nem ért többet a kezdő, mint a Javás eposzból. Sőt.

De: ebből az integer (egész szám) már ismerősebben hangzik :hehe:
main, majd a sima zárójel az felsorolás, nem?, amiben egy egész
szám argumentum, és valami más (karakter?) argumentum van?
Utána kapcsos pedig a függvény helyét jelöli, ha jól tévedek.
Biztos hibás, de itt legalább már sejtek valamit, már csak a
szintaxist kell helyretenni; ellenben avval, hogy class, public,
static, void, nem tudok mit kezdeni.

.Attila

Milyen c++ compiler-t és linker-t érdemes használni?

Próféta

Quote from: .Attila on 2009-03-10, 21:01:45
Milyen c++ compiler-t és linker-t érdemes használni?
Egy lehetőleg szintaktikai kiemelést támogató szövegszerkesztő (pl. Notepad++ Windowsra, Kate KDE-re) mellé bármilyen parancssori eszköz jó, pl. a GCC (GNU Compiler Collection, ehhez tartozik a c++ fordításáért felelős g++) és kellékei (GNU linker). Windowsra a MinGW nevű port érhető el. Ez így kezd macerásan hangozni, de ha nem komoly fejlesztés csinálsz, hanem gyakorlás célzattal ilyen max. egy oldal hosszú mórickaprogramokat, akkor talán ez az egyszerűbb út.

A másik lehetőség feltelepíteni egy fejlesztőkörnyezetet (IDE). Az ilyenek jól összegyúrt grafikus felülettel, komolyabb fejlesztési támogatással, és általában saját (de opcionálisan cserélhető) fordítóval, linkerrel, debuggerrel, profilerrel, stb. rendelkeznek. Windowsra pl. a Microsoft Visual Studio Express letölthető ingyen.

.Attila

Quote from: Próféta on 2009-03-11, 01:22:43
Windowsra pl. a Microsoft Visual Studio Express letölthető ingyen.

Időközben fel is telepítettem.
De utána nézek a többinek is.

motifator

http://www.bloodshed.net/devcpp.html
Ingyenes, lightweight cucc. Talán elsőre egyszerűbb lesz, mint a visual studio, de azt még sose használtam, szal csak talán.
Nekünk annakidején ez volt az ajánlott egyetemen windowsra, de akkor épp linuxfag voltam, szal én szövegszerkesztővel meg parancssori gcc-vel csináltam.
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

Darkstar

Quote from: motifator on 2009-03-12, 21:51:54
de akkor épp linuxfag voltam, szal én szövegszerkesztővel meg parancssori gcc-vel csináltam.
Dir sir, you're sick

Egyébként nekünk anno az egyetemen Code:Blocks-szal kezdték. Egyszerű, pöttyet bugos, de érthető és átlátható ide.
小野寺梓のラブリーすきぴちゃん

Kuroi Tenshi

Quote from: Kuroi Tenshi on 2009-03-10, 00:42:03
Ok, akkor ennek még utánakérdezek munkahelyen is, hátha
adnak valami jó tippet sima c-könyvre vagy tutorialra.

update: két tippet kaptam c#-ra:
http://www.csharp-station.com/Tutorial.aspx
valamint egy "learn c# in 21 days" vagy hasonló nevű könyv.

A C++-t pedig nem javasolták, mivel abban sokkal lassabban
lehet fejleszteni (már nem emlékszem, mi mindent mondtak,
még a reggeli kávé előtt / közben kérdeztem)

.Attila

Egy dolog, hogy miben hogyan lehet fejleszteni és más, hogy mire van kereslet.
Szóval, mit érdemes akkor tanulni? Két napot már elolvastam a C++ oldalról, nem mintha azzal nagyon előrébb lennék.

Zsiga

Quote from: Darkstar on 2009-03-12, 22:14:58
Quote from: motifator on 2009-03-12, 21:51:54
de akkor épp linuxfag voltam, szal én szövegszerkesztővel meg parancssori gcc-vel csináltam.
Dir sir, you're sick
Ugyanmár. Papír-ceruza-scanner-OCR. Az igazi hardcore kóder így tolja. :D

Kuroi Tenshi

Quote from: Zsiga on 2009-03-12, 23:44:44
Ugyanmár. Papír-ceruza-scanner-OCR. Az igazi hardcore kóder így tolja. :D

Ja, és papírra nyomtatott billentyűzeten gyakorloja a Basicet, à la Golden Boy?

Quote from: .Attila on 2009-03-12, 23:44:31
Egy dolog, hogy miben hogyan lehet fejleszteni és más, hogy mire van kereslet.

:mittomen: azt mondták, hogy szerintük a C++ hamarosan ki fog pusztulni, okkal.
Még a Java is ott van, mint amire van kereslet.
Meg még azt is mondták, hogy ezeket megtanulni viszonylag könnyű, a
dolog igazi nehézsége az, amikor több dologból kell egy rendszert összerakni,
struktúrák, patternek, modularitás, stb (vagy mi)

motifator

Hát, hogy sokkal lassabban lehet-e benne fejleszteni, az relatív, meg tapasztalattól is függ. De kezdőként valószínűleg nem érdemes szivatnod magad c++-szal.
Az eljárásorientált alapokat talán érdemes megtanulni valami eljárásorientált nyelven, ez lehet sima c, vagy valami interpreteres nyelv, mondjuk PHP, mert az elég könnyű, nem kell mutatózni, alapból sok függvénykönyvtár, kényelmes sztringkezelés, stb., Bár a php-t 99.99%-ban szkriptnyelvként használják webprogramozásra, de azzal is lehet tanulgatni. Talán azért nem biztos, hogy érdemes webprogramozással kezdeni, mert lehet, hogy összezavarnának eleinte a webprogramozás sajátosságai (request-response).

De amúgy azóta gondolkoztam a dolgon, nyugodtan kezdhetitek objektumorientált nyelvvel, valami jó kényelmessel, mint a c# vagy a Java, közben majd úgy is rátok ragad az eljárásorientált tudás is. Annyira talán sose fogjátok érteni a dolgot, mint egy egyetemet végzett programozó, de ez nem is feltétlenül akkora nagy baj.

Kereslet? C++ biztos kell még, bár nem a legdivatosabb manapság, és hogy igazán használható tudásod legyen belőle az azért nem egy-két nap, de nem is egy-két hónap. Egy-két hónap tanulás után viszont egész látványos dolgokat meg tudsz csinálni mondjuk php-vel, kereslet is akad rá, az más kérdés, hogy pont a könnyű tanulhatóság miatt a kínálat is óriási. A kettő között valahol ott van a Java és a c#, kicsit nehezebben tanulható, sokáig lesznek majd fehér foltok, kicsit több a szívás mint az eredmény (legalábbis egy php-hez képest), viszont sokoldalúbb, nem csak weben használható, és valszeg egy jobb fizetést is meg lehet csípni vele.
A c# talán kicsit egzotikusabb, újabb jószág, mint a Java, talán kicsit kevesebben értenek hozzá, pedig kb. ugyanolyan, mint a Java. Szal talán arra nagyobb a kereslet, és nem tanulható nehezebben. Azért jobb talán, mert ha kevés a c#-os ember, akkor nagyobb esélyed van arra, hogy a magadtól tanult, nem egyetemmel szerzett tudásoddal is felvegyenek valahová.

Igazából nincs ultimate answer, de szerintem kezdőként a Java, c# és a php közül válassz, ha viszonylag könnyen tanulhatót akarsz, és olyat, amivel el tudsz majd helyezkedni. A c++-t nem ajánlom, nem kívánom egy kezdőnek, hogy mondjuk segfault-ot kelljen debugolnia. Magamnak se kívánnám.
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

Próféta

Quote from: Kuroi Tenshi on 2009-03-12, 23:55:41
:mittomen: azt mondták, hogy szerintük a C++ hamarosan ki fog pusztulni, okkal.
Szerintem kipusztulni aligha fog, de már eddig is jelentősen visszaesett, okkal. És tényleg nagyobb szívás. Nem véletlenül ajánlottam Java-t vagy C#/.NET-et. De a C++ programozó sem elveszett ember szvsz, szóval továbbra is örömmel segítünk (már amennyit tudunk), ha kifejezetten azt szeretnétek tanulni.

Quote from: Kuroi Tenshi on 2009-03-12, 23:55:41
Meg még azt is mondták, hogy ezeket megtanulni viszonylag könnyű, a
dolog igazi nehézsége az, amikor több dologból kell egy rendszert összerakni,
struktúrák, patternek, modularitás, stb (vagy mi)
Valóban, Software Engineer >> Programmer. De az SE dolgait nem hogy megtanulni, de megérteni is csak programozási tapasztalat birtokában lehet. Viszont minthogy vegyészből átképzett programozók is tömegével helyezkednek el (-tek el múlt nyárig), junior kóderekre is bőven van szükség a látszat szerint, szóval nyugi.

motifator +1, de ne tanuljatok külön eljárásorientált programozást, ha nem kifejezetten arra van szükség. A PHP-vel egyébként tényleg gyorsan lehet látványos eredményt és sikerélményt elérni, de nekem nem éppen a szívem csücske, és nem is feltétlenül a tuti állás záloga.

A Java vs. C# elhelyezkedési esélylatolgatásba én nem mennék bele.

motifator

Quote from: Próféta on 2009-03-13, 01:16:13
A Java vs. C# elhelyezkedési esélylatolgatásba én nem mennék bele.
Ha megfigyeled, minden mondatomban volt legalább 1 talán. Nem véletlenül :) Ez csak amolyan megérzés, hogy a c# programozó talán még kicsit ritkább jószág, mint a Javás, lehet, hogy ez már rég nem igaz.
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

kikuchiyo

Valóságtól elrugaszkodott, "látom, te se programoztál még igazából, öcskös"-jellegű, az elhelyezkedési esélyektől független tanács:

ha tényleg programozni szeretne megtanulni valaki, a programozás saját logikája szerint és nem arra figyelve, hogy három hónapnyi brosúra-olvasgatás után hova tudja behazudni magát, akkor nem a Python a legjobb választás?

A szintaxisa egyszerű, rászoktat a helyes indentálásra és hasonlókra, ráadásul sokan használják a nyelvet egész komoly fejlesztésekre is.

Ja, és a C# nem egy zárt Microfost izé?
Failure is the default option

motifator

Quote from: kikuchiyo on 2009-03-13, 10:54:53
Ja, és a C# nem egy zárt Microfost izé?
De, de a nagyvilágban ez senkit se zavar.
Legalábbis én amióta nagyobbacska cégnél dolgozom (10 éve minden évben a FORTUNE magazin "top 100 company to work for" listáján van, szal tényleg nagyobbacska), azt tapasztalom, hogy ami ingyen van, azt nem is igazán szeretik. Nálunk ugyan Java van a weben, de az appszerverek OAS10g meg WebLogic, az adatbázis mindenhol Oracle, a *nix boxok 95%-ban RedHat Enterprise, a maradék Solaris, a tartalomkezelő rendszer Vignette, és még folytathatnám. Egyszóval csupa-csupa drága dolgok. Pl. az adminok még egy sandbox szintű szervert se hajlandóak nekünk összedobni addig, amíg az évi $2000-os RedHat Enterprise support nincs rá megvásárolva.

A Pythont meg nem igazán ismerem, így arról inkább nem írok semmit.

Quote from: kikuchiyo on 2009-03-13, 10:54:53
"látom, te se programoztál még igazából, öcskös"
Ez most kire/mire vonatkozott?
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

.Attila

Quote from: Próféta on 2009-03-13, 01:16:13
Valóban, Software Engineer >> Programmer. De az SE dolgait nem hogy megtanulni, de megérteni is csak programozási tapasztalat birtokában lehet. Viszont minthogy vegyészből átképzett programozók is tömegével helyezkednek el (-tek el múlt nyárig), junior kóderekre is bőven van szükség a látszat szerint, szóval nyugi.

Nekem nem teljesen új szakmában való elindulás a célom, hanem hogy a meglévő gazdaságit kiegészítsem IT tudással. Diplomám már van, újabb nem kell, minek, a lényeg az, hogy IT tudás legyen mellette.

kikuchiyo

Quote from: motifator on 2009-03-13, 12:54:20
Quote from: kikuchiyo on 2009-03-13, 10:54:53
"látom, te se programoztál még igazából, öcskös"
Ez most kire/mire vonatkozott?

Rám  :haha:
Ti mondhatjátok nekem, és jogosan.
Failure is the default option

motifator

Quote from: kikuchiyo on 2009-03-13, 13:22:53
Quote from: motifator on 2009-03-13, 12:54:20
Quote from: kikuchiyo on 2009-03-13, 10:54:53
"látom, te se programoztál még igazából, öcskös"
Ez most kire/mire vonatkozott?

Rám  :haha:
Ti mondhatjátok nekem, és jogosan.
Valóban, második olvasásra már egyértelmű  ^^" Valamiért az előbb nem sikerült helyesen interpretálnom a mondatot :D
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

Kuroi Tenshi

Quote from: kikuchiyo on 2009-03-13, 10:54:53
Ja, és a C# nem egy zárt Microfost izé?

Volt, de már nem, aszongyák van osx-re (mintha bárkit is érdekelne) és unixra,
meg láttam már linuxra is open-source compilert

Próféta

Quote from: kikuchiyo on 2009-03-13, 10:54:53
ha tényleg programozni szeretne megtanulni valaki, a programozás saját logikája szerint és nem arra figyelve, hogy három hónapnyi brosúra-olvasgatás után hova tudja behazudni magát, akkor nem a Python a legjobb választás?
A Python (és kistestvére, a Ruby) egy izgalmas választás lehet. Én mondjuk nem használtam, csak egész röviden olvasgattam bele, de az ismerősök áradoztak a gyönyörű, kristálytiszta OO szemléletéről, amelybe gyönyörűen belesimulnak egyéb paradigmák elemei, etc. Nekem viszont nem tetszik benne, hogy duck typingol. Egyébként tényleg tök komoly dolgokra használják (csomó weboldal, meg rengeteg Linuxos GUI alkalmazás), releváns nyelv. De nem, nem ajánlanám a Pythont K_T-nek és Attilának :)

Quote from: kikuchiyo on 2009-03-13, 10:54:53
ha tényleg programozni szeretne megtanulni valaki
De nem csak egyféleképp lehet ám programozni (ld. fenn a típusrendszer - vallásháborút). Sőt, van egy olyan (amúgy népszerű) gyanúm, hogy a dinamikus tipizálású nyelveket csak azért szeretik bizonyos követőik, mert kevesebbet kell gépelni; nekik igazából nem duck typing, hanem static type inference kellene, ami - az imperatív világtól durván különböző - funkcionális nyelveknek gyakran a sajátja szokott lenni.

Ha ilyen kristálytiszta struktúrájú, csillogó szemmel jövőbe tekintő nyelvek érdekelnek még, akkor a fent említett type inference, plusz pure functional, lazy evaluation vonalról ajánlom a Haskellt, nekem nagyon tetszett. Durva egy nyelv; pár sorban le lehet írni több oldalas Java/C#/C++/stb. algoritmusokat, nagyon erős és kényelmes, csak sajnos a teljes erejét kihasználva már te sem tudod visszaolvasni, amit 10 perccel előtte leírtál :) Asszem a Perl új verzióját konkrétan Haskellben írták (vagy valami ilyesmi, ezt te fogod jobban tudni).

Quote from: kikuchiyo on 2009-03-13, 10:54:53
Ja, és a C# nem egy zárt Microfost izé?
A .NET elvileg kvázi nyílt szabványokban van rögzítve*. A mono egy részleges, nyílt forrású (RMS bekaphatja) .NET implementáció, van *nixon, így linuxon és OSX-en is. Használják is, a GNOME desktop komponenseinek egy része C#-ban készült (nem csoda, GNOME főember == mono főember), meg a Silverlight plugin (moonlight) és készülget *nixra.

De amúgy tényleg a Java az egyetlen igazi platformfüggetlen rendszer; ipari, üzletileg kritikus felhasználásra mono helyett inkább a hivatalos .NET-et szokás használni. Kell alá venni egy Windowst, na bumm, ez azért nem annyira hallatlan. Mondjuk amikor már Windows Server meg ISA meg drágább Visual Studio változatok kellenek, az már más tészta, de a programozó ára még így is nagyobb költségtényező szokott lenni. Ja és igen, a C# jó nyelv, a .NET meg jó platform.

* azért kvázi, mert bizonyos részeit mindenféle szoftverszabadalmak védik mégis, szóval majd egyszer az MS szétperel minden amcsit, aki monót használ, pl. GNOME részeként. Lásd még a mono szabadalmi bomba című véget nem érő flameket különböző helyeken.

kikuchiyo

Quote from: Próféta on 2009-03-14, 00:39:43
Quote from: kikuchiyo on 2009-03-13, 10:54:53
ha tényleg programozni szeretne megtanulni valaki
De nem csak egyféleképp lehet ám programozni (ld. fenn a típusrendszer - vallásháborút). Sőt, van egy olyan (amúgy népszerű) gyanúm, hogy a dinamikus tipizálású nyelveket csak azért szeretik bizonyos követőik, mert kevesebbet kell gépelni; nekik igazából nem duck typing, hanem static type inference kellene, ami - az imperatív világtól durván különböző - funkcionális nyelveknek gyakran a sajátja szokott lenni.
Ehhez nem nagyon tudok hozzászólni.
Nézegettem a funkcionális nyelveket annak idején, de sosem volt elég időm és lelkierőm, hogy beléjük másszak.

Quote
Ha ilyen kristálytiszta struktúrájú, csillogó szemmel jövőbe tekintő nyelvek érdekelnek még, akkor a fent említett type inference, plusz pure functional, lazy evaluation vonalról ajánlom a Haskellt, nekem nagyon tetszett. Durva egy nyelv; pár sorban le lehet írni több oldalas Java/C#/C++/stb. algoritmusokat, nagyon erős és kényelmes, csak sajnos a teljes erejét kihasználva már te sem tudod visszaolvasni, amit 10 perccel előtte leírtál :) Asszem a Perl új verzióját konkrétan Haskellben írták (vagy valami ilyesmi, ezt te fogod jobban tudni).
A Perl új verzióját inkább hagyjuk, annál nagyobb clusterfuck kevés van a programozás történetében.
Kb. 2000-ben jelentette be az alapító atya, hogy újra kéne írni a nyelvet, de ezúttal ezt tegye meg a közösség.
Az eredmény: death by committee. Onnan indultak, hogy a Perl 6-nak legyen tisztességes specifikációja és az alapján építsék fel magát a nyelvet - ez magában jó ötlet, csakhogy egyre újabb elveket és feature-öket pakoltak bele, a működő változat meg sehol sem volt. Mostanában jutnak el oda, hogy a Parrot virtuális gép (amin a bytecode futni fog) elérje az 1.0-át, de az időközben Rakudo-ra átkeresztelt fordító még messze nem tart itt.
Ja, és igen, közben volt egy olyan, hogy feltűnt egy tizenéves csodagyerek (aki azóta nővé operáltatta magát), és megunva a tökölődést megírta a Perl 6 egy jelentős részhalmazát Haskellben.

(Az utolsó zárójeles mondatban továbbra is érzem azt a bizonyos, fentebb konkretizált gúnyos arckifejezést, de végül is jogos :))
Quote
Quote from: kikuchiyo on 2009-03-13, 10:54:53
Ja, és a C# nem egy zárt Microfost izé?
*nixon

Ez egy elnökre mutató mutató?
Failure is the default option