Keresés

Részletes keresés

sip pista Creative Commons License 2001.05.04 0 0 60
clipper goto? ne röhögtess. az a selected db n-ik tételére való ugrást jelenti, semmi köze a hagyományos vezérlésátadáshoz. clipperben nincs is címke.
amúgy meg a hátrafelé goto általában valami implicit ciklusszervezés akar lenni, tehát nem okés. az előre goto lehet pl. egy jó mélyen beágyazott szerkezet, pl. hibakezelő ág elhagyása, így adott esetben nem rontja a strukturáltságot. meg az ansiC setjmp/longjmp is hasznos tud lenni, ha ésszel használja az ügyfél. csak hogy az eredeti témánál maradjunk :-)
Előzmény: Törölt nick (59)
Törölt nick Creative Commons License 2001.05.04 0 0 59
A GOTO probléma programozási nyelv függő. FORTRAN-ban (legalábbis a 20 évvel ezelötti verziókban) természetes volt a használata. A hibák többsége is ezekből adódott.

A szubrutinokkal való helyettesítés pedig implementációs korlátokba ütközhet.

Szerintem FORTRAN,BASIC stb. esetén a GOTO teljesen természetes, C, dBase, Clipper stb. esetén kerülendő. Ahol meg nincs, ott nem is probléma.

Az oktatás ilyen szempontból más tészta. Ott lehet "feladat" egy program megírása GOTO nélkül.

Előzmény: Híd (55)
Törölt nick Creative Commons License 2001.05.04 0 0 58
Csak halkan jegyzem meg, hogy az eredeti kérdés ez volt:

"A kérdésem nem annyira az lenne, hogy milyen programnyelven tovább, hanem inkább, hogy mik azok a lépések amiket meg kell tenni, milyen fokozatai vannak a programozás elsajátításának"

micu Creative Commons License 2001.05.04 0 0 57
Szerintem viszont a leglényegesebb magának a mechanizmusnak a megértése. Ehhez szvsz a legjobb alap a BASIC, itt ugyanis még nem a struktúrált programozást kell megérteni, hanem hogy "mitől meg a villamos", azaz a program működésének az elvét. Vannak változók, ezeknek vannak típusai, ezeknek értéket lehet adni és vissza lehet kapni ezeket az értékeket, módosítani lehet, az értéknek megfelelően vezérlés átadást lehet csinálni. Miután ezt megértette az illető, akkor nem árt némi assembly, sőt gépi kód hogy megértse hogy fizikailag hogy történik ez de nem PC-n hanem 8 bites gépeken ott ugyanis még egy halandó is viszonylag könnyen meg tudta érteni, utána jöhet a C vagy még inkább a Pascal és a struktúrált programozás a végén esetleg némi Perl hogy szépeket is lásson az illető, vele párhuzamosan némi programozás elmélet, majd OOP, Objesct Pascal és C++, a végén pedig a preverzeknek Java. Én legalábbis ha ma tanulnám a dolgokat, ilyen sorrendben tenném.
Előzmény: Qqberci (46)
Törölt nick Creative Commons License 2001.05.04 0 0 56
Azt javasolnám, tegyünk próbát, hogy egy a szakmába vágó feladatot mely rendszerrel lehetne a legjobban megoldani.

Engem régóta nyaggatnak, hogy csináljak egy programot a Szondi tesztre.

Ránézésre kell hozzá:

- adatbáziskezelés (személyi adatok, teszt eredmények)
- képek megjelenítése
- menürendszer (interaktív kezelőfelület)
- kiértékelés (tömbkezelés)

A feladat részletes ismertetése rád maradna, mert számomra még mindíg nem világos.

Előzmény: lightbeam (43)
Híd Creative Commons License 2001.05.04 0 0 55
De akkor miért ad ki GOTO-s programokat a jegyzetében ún. hurok-ismétléses vezérlés megvalósítására? Különben tényleg a nem szabályos vezélési szerkezetben van csak GOTO.
Előzmény: YERICO (35)
sip pista Creative Commons License 2001.05.04 0 0 54
én is úgy tudom, mint igazi hős: az assembly maga a nyelv, az assembler meg az a program, ami tárgykódot (:-)) csinál belőle. egyébként tök mindegy, én nagyon szerettem, míg le nem fokozódtam rencergazdává... azóta sh, awk ... nalyó néha c is
Előzmény: Csülök (53)
Csülök Creative Commons License 2001.05.04 0 0 53
Az assembler egy (vagy "a") assembly szintű programozási nyelv. Assembly a gépikód közeli programnyelvek összefoglaló neve, ezek közül való az assembler.
Előzmény: josarien (52)
josarien Creative Commons License 2001.05.04 0 0 52
Az assembler- a régi számítógép-architektúrák terminológiája volt, az assembly pedig az "új kori " számítógép-architektúrák terminológiája szerény véleményem szerint. Végül is a jelentése ugyanaz.
Előzmény: Qqberci (46)
Törölt nick Creative Commons License 2001.05.04 0 0 51
Nekem erről van elképzelésem!

Erről egy anekdota:

Az egyetemen műszaki mechanika gyakorlaton a gyakorlatvezetőt egy másik kolléga helyettesítette. A képletek felírását egész más elnevezési konvenciókkal csinálta. Ekkor egyik diáktársunk felháborodva mondta, hogy ezt a professzor úr máshogy jelöli. A válasz lényege a következő volt.

"Sajnos soha nem jártam a professzor úr előadásaira. Meg egyébként is, ha valaki egy tudomány lényegéhez semmit nem tud hozzátenni, akkor hajlamos arra, hogy megváltoztassa a terminológiát."

Előzmény: Qqberci (48)
igazi hős Creative Commons License 2001.05.04 0 0 50
Eddig azt hittem (lehet: tévesen), hogy az "assembler" ami a szövegből kódot csinál, az "assembly" avagy "assembler language" a nyelv (na jó ez túlzás rá, de a "kódszógyűjtemény" hülyén hangzik).
Egyébként a Siemens (mainframe) doksik is assemblert emlegetnek, de hát azok németül voltak...
Előzmény: Qqberci (48)
Qqberci Creative Commons License 2001.05.03 0 0 48
Az lehet, de akkor két dolgot nem értek:

1./ Miért próbálják mind a Számalknál, mind a GDF-en, mind pedig az ELTE-t beleverni a hallgatók fejébe, hogy "nem assembler, hanem assembly"

2./ Miért van az, hogy kezdve a 360-as doksiktól, az összes amerikai (IBM, a néhai DEC, M$, stb) gyártó Assember-ről beszél, és gyakorlatilag semmilyen kontextusban nem használja a nyelvre az Assembly kifejezést...

Előzmény: Törölt nick (47)
Qqberci Creative Commons License 2001.05.03 0 0 46
Az Assembler-t nyugodtan elfelejtheted (most biztos többen hörögnek, hogy Assembler-t írok, de itt van az polcomon egy könyv, eredeti IBM kiadvány, és az a címe, hogy "IBM PC Assembler Language". Tehát vagy az amerikaiak nem tudnak angolul, vagy az, aki assembly-t emleget). Szerintem a Pascal vonalon kellene elindulnod, ennek a nyelvnek a logikája közelebb áll a közönséges földi halandók gondolkodásmódjához.

Assemblert használni csak akkor van értelme, ha nagyon tömör, nagyon gyors és HW- vagy rendszerközeli feladatot kell megoldani. Ehhez viszont nem elég az utasításkészlet és a makrók ismerete, teljesen otthon kell lenni az adott op.rendszerben és gépi környezetben is.

A Pascal/Delphi sok gondot levesz a programozó válláról, de még itt is érdemes az adatszerkezeteket tisztázni (papíron), még mielőtt bekapcsolnád a gépet. Ezzel sok-sok későbbi hibakeresést lehet megspórolni.

Előzmény: lightbeam (43)
Qqberci Creative Commons License 2001.05.03 0 0 45
Ne aggódj, Öreg, Dijkstra sem volt tévedhetetlen és a topikban sem ez az egyetlen gyenge lábon álló megállapítás. Netizen szerint FORTRAN-ban csak monolitikus programokat lehet elkövetni: no hát akkor mi is volt az a SUBROUTINE meg FUNCTION? És miért lehetett ezeket külön fordítani, modulgyűjteményt összeállítani belőlük?

Én még ma is használom a QuickBasic-et, sok esetben ez a leggyorsabb megoldás az egyszerfutó feladatokra.

Ha viszont valaki tényleg csak magának akar elfogadható kinézetű programokat elfogadható ídőráfordítással írni, akkor valóban valamelyik programgenerátor a megoldás, de az adatmodellezést, vagy legalábbis a kezelendő adatkör átgondolását semmiképp nem lehet elhagyni.

Előzmény: igazi hős (41)
unnamed Creative Commons License 2001.05.03 0 0 44
Kedves lightbeam!

Ha valóban nem ebből akarsz megélni, akkor ezek szerint nem is akarsz annyi energiát belefeccölni, hogy abszolút profi legyél egy fejlesztőeszközben. (Az bizony nagyon sok száz óra...)
Ez esetben viszont nem hiszem, hogy a hatákonyság terén tapasztalható néhány százalékos eltérések és az egyéb finomságok számodra fontosak lesznek.
Ergo: szerintem a meglévő tudásodat fejlesztgesd, ne kezdj bele ötféle újba.

lightbeam Creative Commons License 2001.05.03 0 0 43
Sziasztok!

Köszönöm, hogy ilyen szép számmal megjelentetek és elmondtátok véleményeteket. Bocs, ha nem vagyok mindig itt, de olyan szép idő van kinn, ráadásul közeleg a vizsgaidőszak is. :-(

Érdekesnek találtam, hogy volt olyan, aki azt javasoltam, hogy minnél alacsonyabb szintről induljak (assembly), és volt olyan aki rögtön vizuális eszközöket javallott. Ezek szerint tényleg nincs meg az a hierarchia a programnyelv típusok között, amit korábban hittem. Tudniillik, hogy a magasabb szintű programnyelveket úgy lehet igazán elsajátítani, ha az alacsonyabb szinteket már bejártad. Tehát mondjuk úgy lehet hatékony OOP-ben, ha jól ismerem a strukturális alapokat, és úgy használhatok effektíven egy vizuális fejlesztőeszközt, ha otthonosan mozgok az OOP-ben. Ezek szerint ezek nem épülnek olyan szorosan egymásra? Tehát nyugodtan kezdhetnék akár delphi-vel is, legfeljebb nem lennék olyan hatékony mintha már nagy programozói tapasztalattal rendelkeznék.

Ami a nyelvválasztást illeti. Ehhez talán tényleg azt kellene pontosan tudni, hogy mit is akarok csinálni. Igen ám, de pont ezt nem tudom. :-) Mint írtam valószínűleg nem programozással fogok pénzt keresni. Viszont, mint hobbi nagyon érdekel, sőt talán nem csak, mint hobbi, mert majd a szakmámban is használni fogom ezen ismereteimet szerintem. Pl. ha pszichológia szakon 4. évtől a kognitív tudományok szakirányt választom, akkor majd tanítanak programozást is (C és Pascal közül lehet választani).
A Javat sokan javasolják, de pont azért vagyok bajba vele, mert nem igen hiszem, hogy tudnám használni. Igen a professzionális programozók eszköztárában van helye egy ilyen nyelvnek nem?

Mostanság két irányvonalom között probálok dönteni.
1.) Pascal OO Pascal Delphi
2.) C - C++ - Visual C akármi

Az első mellet szól, hogy a Pascalt már valamennyire ismerem. Könnyebb elsajátítani, mint a C alapú nyelveket. Hátrány, hogy kevésbbé hatékony és piacképes nyelvek, de ez utóbbi talán nem is szempont.

A második mellett szól, hogy nagyon hatékony eszközök, nagy kereset van irántuk, szinte mindenre alkalmasak. Viszont akkor rá kellene állnom a C-re és szerintem elég sok időt kellene rászánni, hogy jó hatékonyságot érjek el benne.

Részetekre valami gondolat ezekhez?

A Web programozásban szeretném a CGI-t elsajátítani. Mondjuk Perl nyelven, márcsak azért i, mert ehhez van könyvem. :-) Esetleg még Javascript. Ez azért könnyebb dió, mint a komolyabb programozás.

josarien Creative Commons License 2001.05.02 0 0 42
Nézd, ha szép programokat szertenél írni Windows-alá, akkor érdemes. De hogy érts is miről van röviden szó.
Van egy cég mondjuk, ahol több oprendszer van, esetleg még a hálózati protokoll is különböző.
Ezt fűszerezi még egy adatbázis kezelő rendszer (tök mindegy milyen: ORACLE, SYBASE stb...) Elsődleges probléma ebben az esetben a file-konverzió. Ilyenkor az ember a konverziós feladatokat C-ben szépen megírja, mivel háttér-process (milyen szép szó, én még task-ként tanultam) alatt szépen lefuttatja, vagy egy Batch-be beteszi.
De, ha interaktív programot kívánsz írni, hát ott előnyösebb a csicsásabb lehetőségeket hamarabb előállító program-fejlesztőeszköz.
Röviden, a batch-jellegű feladatokat előnyösebb C-ben, Pascal-ban, vagy hasonló nyelven elkövetni, míg a garfikus felületű progikat a 4GL.-esek közül valamelyikkel.
Mellesleg elég jó szakkönyvek kaphatók - igaz némelyik ára igen húzós - de az internet is igen nagy lehetőségeket kínál.
Esetleg, ha van valami konkrét kérdésed, hát csak bátran, látod vagyunk egy páran, akik szerény tudásunkat szívesen megosztjuk egymást közt is.
Előzmény: lightbeam (3)
igazi hős Creative Commons License 2001.05.02 0 0 41
Hajaj a végén még kiderül, hogy nem is vagyok programtervező, mert használtam BASICot (sőt még gépi kódot is) :-(((
Szerintem csak tanár kérdése az egész: első félév elején megkérdezték, ki írt már programot, mert az most felejtsen el mindent. (Nekem sikerült, sőt mostanában már olyan dolgokat is elfelejtek, amit nem is kellene :-)))
Komolyan: tényleg nehéz progamozáselméletre tanítani olyanoknak, akiknek konkrét tapasztalataik vannak nem strukturált programozási nyelveken, de lightbeam-nek nincs is ilyesmire szüksége, elég ha némi izzadás árán összerak egy kódhalmazt, amely neki tetsző csiliviliket tartalmaz. (Merthogy az emberek 99,5%-a ezt tekinti programnak és Disjktra, Knuth és egyéb istenek nevét hiába szájára nem veszi.)
Előzmény: Farkasokkal Táncoló (33)
Sumo Creative Commons License 2001.05.02 0 0 40
hat kifejteni... az kicsit sok lenne itt. megaztan egy evet sem birtam vegig, nagyreszt emiatt. inkabb nem diplomaztam, hanem meloztam, programozokent. mint most:)

az info tanar egyebkent az elso oran megjegyezte: az itteni hat felevbol senki sem fog 1 felevnel tobbet tudni hasznositani. a tobbit ki lehet dobni.

Előzmény: Törölt nick (39)
Törölt nick Creative Commons License 2001.05.02 0 0 39
Nem tudom, hogy errefelé mit gyömöszölnek az ember fejébe, mert nem szép hazánkban jártam egyetemre.

Ezért megköszönném, ha bövebben kifejtenéd.

Én főképp felhasználó lennék, csak néha programozom. Az általunk vett, kapott programok tele vannak olyan hibákkal, ami miatt jobb helyeken tényleg nem adnak diplomát ( undefined variable). Az itt említett adatbázisnormalizálásról nem is beszélve. Látott már valaki ilyet? Én még nem!

Most tényleg nem tudom, hogy nálunk hülyeséget tanítanak, vagy csak mindenkinek kiadják a diplomát a tandíj fejében. Vagy csak a diploma birtokában mindenki elfelejti azt a sok "hülyeséget", amit tanítanak.

Előzmény: Sumo (34)
Törölt nick Creative Commons License 2001.05.02 0 0 38
Azért egy kezdőnek szerintem elrettentő lenne egy Forte. Héha még nekem is az, ezért is programoznak sokan Javaban egy egyszerű editorral és jdk-val.

Előzmény: YERICO (35)
Night Hunter Creative Commons License 2001.05.02 0 0 37
Én nem utálom a goto-t.
Assemblyben pedig asszem nagy baj lenne jump nélkül.
CoBB Creative Commons License 2001.05.02 0 0 36
Helló...

Én is BASIC-kel kezdtem még C64-en anno. :) Ugyan nem érzem, hogy a gotozás annyira belém égett volna, hiszen most már jól megvagyok nélküle... Különben szerintem igazán élvezetes (sőt megkockáztatom: alkalmanként kifejezetten múvészi) dolog halálra optimalizálni egy-egy kisebb assembly programot. A magam részéről gcc-vel és dos alatt Borland Pascallal nyomulok, meg újabban Z80 assemblyt gyakorlok. Mellesleg az a típus vagyok, aki több év windowsozás után sem volt képes felnőni a drag&drop-hoz. A lentieket olvasva már értem, miért... :)

CoBB

YERICO Creative Commons License 2001.05.02 0 0 35
Szerintem arra gondolt, hogy a Basic tele van GOTO-val, ami igen erősen ellenjavalt a struktúrált programokban. (Ha valakinek ismerős a JATE-ről Dévényi tanárúr neve, akkor tudják, hogy nála egy goto a diplomaminkában egyenlő volt a bukással.)

Amúgy meg a Pascal már igen erősen ellenjavalt. Én is BASICben kezdtem még Commodore-on, nem is bántam meg. Utána jött a Pascal, ami nagyon jó alapozni. Ma már nem váltanék rá vissza a világ minden kincséért sem, mert bejött a C++. Viszont nemrégen ismerkedtem meg a Javavak. Hát meglepett, mert nagyon hatékony nyelv. A C++-ban az égadta világon minden megoldható, bár lehet, hogy bonyolultan, de bármi. A Java viszont iszonyatosan hatékony, nagyon gyorsan meg lehet benne csinálni bármit.

Szóval ajánlom mindenkinek a Javat. A SUN oldaláról letölthető a FORTE elnevezésű INGYENES, FREE vizuális fejlesztőeszköz. Ez létezik Javahoz, de ha jól emlékszem, Pascalhoz is.
A Javas eszi a memóriát, 128 MB RAM alatt el se kezdjétek.

Ingyenes, és Free.

Nézzétek meg.

Előzmény: Farkasokkal Táncoló (33)
Sumo Creative Commons License 2001.05.02 0 0 34
es ez a 'jo programozasi stilus' akar lenni az, amit a magyar foiskolakon/egyetemeken akarnak az ember fejebe gyomoszolni? mert akkor en halat adok mindennek, hogy tobb, mint harom evig basiceztem a legelejen (meg 12 eves koromban:))
Előzmény: Farkasokkal Táncoló (33)
Farkasokkal Táncoló Creative Commons License 2001.05.02 0 0 33
Uff!

És a BASIC ugyan nem kimondottan strukturált, netán objektum-oriantált volt, de a gondolkodásmód alapjainak elsajátítására teljesen elég,...

"It is practically impossible to teach good programming style to students that have had prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." -Edsger W. Dijkstra-

hevenyeszett forditasban:

Gyakorlatilag lehetetlen jo prgramozasi stilusra tanitani azokat a diakokat, akik korabban ki voltak teve a BASIC-nek; mint potencialis programozok olyan mervu agykarosodast szenvedtek, hogy nincs remeny a gyogyulasra.

Előzmény: micu (32)
micu Creative Commons License 2001.05.02 0 0 32
Szerintem mindenekelött a gondolkodásmódot kell elsajátítani. És ez a legnehezebb. Ehhez a legjobb ha valamilyen egyszerü (nem oop, söt lehetöleg minél alapcsonyabb szintü és fapadosabb rendszert célszerü használni (DOS/Turbo C/Pascal, vagy még jobb a linux/gcc vagy Free Pascal). Eleinte az egyszerü, nem oop dolgokat kell megtanulni, és ebben megoldani jópár feladatot. Az alapok elsajátítására egyébként szvsz anno a 8 bites gépek voltak a legjobbak, ott nem csak a programozás alapjait lehetett elsajátítani, hanem a gépközeli dolgokat is. Azokat a gépeket ugyanis még az elsö bittöl az utolsóig ki lehetett ismerni kb 1 év alatt. És a BASIC ugyan nem kimondottan strukturált, netán objektum-oriantált volt, de a gondolkodásmód alapjainak elsajátítására teljesen elég, utána a váltás már nem volt akkora megrázkódtatás. Ma persze ilyen gépeket már csak múzeumban lehet találni, az emulátor meg valahogy nem ugyanaz...
Night Hunter Creative Commons License 2001.05.02 0 0 31
A programozás az egy gondolkodási mód, hogy egy feladatsort egy másik embernek(gépnek) el tudsz-e magyarázni úgy, hogy a termék(végeredmény) ugyanaz legyen, mintha te saját kezüleg csináltad volna.
Ezt akár barátoddal osztálytásaddal stb. el is játszhatjátok.
Ha ez már megy, akkor a programnyelv lényegtelen.
Bármelyik programnyelvet 1-2 hét alatt meg lehet tanulni.
lolka_bolka Creative Commons License 2001.05.02 0 0 30
ja, de ez mert sajnos ?
Előzmény: josarien (29)
josarien Creative Commons License 2001.05.02 0 0 29
Igazad van!
Sajnos ez egy olyan szakma, "igaz van még pár ezer más is" amelyikben folyamatosan tanulni kell, és fejlesztened a tudásod.
Tök mindegy milyen programnyelven, hiszen ha nincs affinitásod, akkor az egész csak kín keserves vesszőfutás.
Előzmény: Törölt nick (25)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!