Azt szeretném kideríteni, hogy ha programozást tanulna valaki, akkor a tanuláshoz használt programozási nyelv kiválasztásánál milyen szempontokat érdemes figyelembe venni?
- 5947 megtekintés
Hozzászólások
subscribe. Miccsoda metatopik. :-)
Várom már a programozásinyelv-tanuláshoz kiválasztott első programozási nyelv kiválasztásakor figyelembe vett szempontok kiválasztásának szempontjairól mikor lesz bejegyzés :-)
- A hozzászóláshoz be kell jelentkezni
Végre megint van jó topik a HUP-on.
- A hozzászóláshoz be kell jelentkezni
Mán egy hete nem volt ugyanez valamilyen címen.
Trey igazán kitehetne egy párat ugyanebből a főoldalra -- a topon simán elférne 1-2. A demokrácia jegyében cserélődhetnének a legfrissebben nyitottra, amennyiben elérik (mi az hogy!) a 100 hozzászólást.
A legtöbb distinct néven megnyitni képes kollégát pedig pólóval kéne jutalmazni; szurokkal színezve, tollal díszítve.
- A hozzászóláshoz be kell jelentkezni
FYI itt nem a kezdő prognyelv a kérdés, hanem azon szempontok, ami alapján valaki (aki nem buta, hanem utánajár több nyelvnek és nem a kedvencét böfögi be) első nyelv választásánál (mondjuk gyerekének, szülőjének, haverjának) döntést hoz.
- A hozzászóláshoz be kell jelentkezni
Ugyan már...
Holnap az lesz a kérdés, hogy a szempontokat milyen szempontok alapján kell összeválogatni, ezáltal az se ugyanez lesz.
...
Basszus, most látom, hogy hiszen éppen ezt írtad fentebb :)
- A hozzászóláshoz be kell jelentkezni
Ahol van kultúrája a nyelvoktatásnak, ott általában egy fp/deklaratív jellegű "oktatónyelvet" tartanak a háznál (lásd karbantartó oktatási intézmények). Beszédes, hogy ez általában nem asm, hla, sőt nem is c -- hanem gyakran lisp, scheme, racket, ml, prolog, occam, haskell ...vagy kifejezetten oktatónyelv, mint eredetileg a py.
Kár, hogy Mo-n nincsen ilyen kulturális hagyomány. Ha valóban az oktatás a cél, akkor stklos v. racket, esetleg py de inkább sbcl. Utána a gcc/llvm/jvm meg az imperatív család már szinte magától értetődő lesz -- fordítva ez nem feltétlenül igaz valami miatt, sőt.
Egyébként a szempontok kiválasztása rém egyszerű: mik azok a "paradigmák", amiket a nyelv támogat és amikre a nyelv épül. A legszélesebb látókört az lisp család adja, nem véletlenül vesznek át egyre több elemet a c meg a java-szerűségek.
- A hozzászóláshoz be kell jelentkezni
"Ahol van kultúrája a nyelvoktatásnak, ott általában egy fp/deklaratív jellegű "oktatónyelvet" tartanak a háznál"
pl az MIT-n, ahol javaval mergezik az ujoncokat? :)))
--
NetBSD - Simplicity is prerequisite for reliability
- A hozzászóláshoz be kell jelentkezni
Régen ott Scheme volt (lásd a SICP könyvet), de áttértek Java-ra gyakorlati okokból.
Közvetlenebbül hasznosítható tudást ad.
A Stanford programozási bevezető kurzusa (Programming metholodogy) is Javas.
- A hozzászóláshoz be kell jelentkezni
A java az IEEE (Terman) curriculum lobbi miatt történt, nem az oktatás szempontjai voltak érdekesek -- nem először
"Programs must be written for people to read, and only incidentally for machines to execute."
- Abelson & Sussman, SICP, preface to the first edition
"We were not out to win over the Lisp programmers; we were after the C++ programmers. We managed to drag a lot of them about halfway to Lisp."
- Guy Steele, Java spec co-author
ami meg a közvetlenül használhatóságot illeti:
http://www.charlespetzold.com/etc/doesvisualstudiorotthemind.html
http://www.cs.berkeley.edu/~bh/61a.html
Mi is az a lista, amit a java kapott a lisp-től ill. amit a java kap a lisptől???
-8<----
2. In the original Java white paper, Gosling explicitly says Java was designed not to be too difficult for programmers used to C. It was designed to be another C++: C plus a few ideas taken from more advanced languages. Like the creators of sitcoms or junk food or package tours, Java's designers were consciously designing a product for people not as smart as them. Historically, languages designed for other people to use have been bad: Cobol, PL/I, Pascal, Ada, C++. The good languages have been those that were designed for their own creators: C, Perl, Smalltalk, Lisp.
3. It has ulterior motives. Someone once said that the world would be a better place if people only wrote books because they had something to say, rather than because they wanted to write a book. Likewise, the reason we hear about Java all the time is not because it has something to say about programming languages. We hear about Java as part of a plan by Sun to undermine Microsoft.
- A hozzászóláshoz be kell jelentkezni
LOL.
"We hear about Java as part of a plan by Sun to undermine Microsoft."
A Sun és a Microsoft közül melyik létezik manapság?
Vajon miért létezik a C# és a .NET keretrendszer?
- A hozzászóláshoz be kell jelentkezni
we were after the C++ programmers: értsd MFC
Likewise, the reason we hear about Java all the time is not because it has something to say about programming languages.
-> a C# és a .NET keretrendszer mit hoznak mint nyelvi újdonságot?
Microsoft argued that Blackbird development would be cross-platform, since OLE support had already existed on Macintosh and there was work in progress on porting it to Unix systems. To guarantee security, the company planned to act as a certifying authority for OLE controls (OCXs), and encourage third parties to be certifying authorities. -- Wingfield, Nick (November 20, 1995). "Java brews trouble for Microsoft". InfoWorld.
bónusz -> pdf
Resources to Support the Use of Java in Introductory Computer Science -- Eric Roberts, Stanford University ->
To this end, the ACM Education Board has initiated a new project with the following general charter:
To review the Java language, APIs, and tools from the perspective of introductory computing education and to develop a stable collection of pedagogical resources that will make it easier to teach Java to first-year computing students without having those students overwhelmed by its complexity.
Computing Curricula 2001: Final Report of the Joint ACM/IEEE-CS Task Force on Computer Science Education. Los Alamitos, CA: IEEE Computer Society Press, December 2001.
- A hozzászóláshoz be kell jelentkezni
Na, most akkor a Java túl komplex (ACM Education Board), vagy a hülyéknek van írva? Döntsd már el!
- A hozzászóláshoz be kell jelentkezni
A kettő miért zárja ki egymást?
Ilyen az általános ködösítési technika, gyakori az áltudományban -- miért fogjuk méltatni Eric Roberts-et pl. Brian Harvey-al szemben? Ezért sem jelent már semmit, hogy valaki az egyetemen tanult meg egy nyelvet vagy sem -- sőt, inkább már baj, ha csak ott tanulta.
Egyébként a jvm maga viszont a világon az egyik legjobb vm (talán az is, a legtöbb tekintetben).
- A hozzászóláshoz be kell jelentkezni
"Egyébként a jvm maga viszont a világon az egyik legjobb vm (talán az is, a legtöbb tekintetben)."
Valamint ne feledjük, hogy a Java volt az első olyan programozási nyelv, amiben definiálták a memory modelt, azaz a többszálú számítások szemantikáját.
Ezt persze szinte egy az egyben vette át a C++ a C++11-es szabványba.
Szóval annak ellenére, hogy nem szereted, a Java bizony tett hozzá a programozási nyelvekhez.
C-ben persze nincs memory model, mert maga a C nyelv nem is ismeri a többszálúságot, mint nyelvi elemet, pedig fontos lenne, a különféle thread libek szemantikája pedig aluldefiniált.
- A hozzászóláshoz be kell jelentkezni
Ki tanul (eletkor, iq, eq, tapasztalotok barmivel ami kicsit hasonlit a programozashoz)?
Mire kell neki?
Mit fog a jovoben hasznalni meg ezen kivul?
Mennyi ideje van ra?
Milyen gyorsan szeretne eredmenyt latni?
Mit van lehetosege normalis korulmenyek kozott tanulni?
a szempotok szama vegtelen... :P
- A hozzászóláshoz be kell jelentkezni
még:
- mennyire jól olvasható a kód
- mennyire ad a piacon használható tudást (erre lehet azt mondani, hogy az elején nem szempont, de motiváció szempontjából szerintem fontos lehet, hogy meg tudod mutatni, hogy ezt meg ezt is ebben a nyelvben csinálják, szóval ez egy élő problémamegoldásban elterjedt valami.)
- A hozzászóláshoz be kell jelentkezni