» »

Splošni pojmi iz programskih jezikov

Splošni pojmi iz programskih jezikov

marjan_h ::

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Sicer pa mislim, da je dobro če kar tukaj napišete nekatere pojme (v Slo. in Angl.), s tem mislim lastnosti programskih jezikov, ki jih imajo. Pa, da izpustimo osnove npr. podatkovni tip ali razred.

To mislim, da je smiselno saj se ti ni potrebno učiti novih programskih jezikov, če poznaš osnovne lastnosti teorije/pravil/logike/arhitekture.

jype ::

Problem je v tem, da so paradigme v različnih jezikih lahko tako drastično različne, da je enaka stvar (generiki, polimorfizem, preobloževanje operatorjev ali pa zgolj dedovanje) lahko konceptualno drugačna.

Drži, da je dobro, da poznaš osnovne koncepte na splošno, a tudi ko se spoznavaš z novimi orodji moraš skozi proces osvajanja znanja, ki ti pomaga razumeti, kaj uporaba teh konceptov pomeni v specifičnem primeru.

Kljub temu se strinjam, da bi bilo pametno imeti gradivo, ki kvalitetno povzame te osnove, a se ta hip nobenega ne spominjam. Če mi kakšna taka reč pride na misel, bom napisal.

ejresnevem ::

ne vem, kaj dejansko ti bo tole primerjanje (mogoče akademska zanimivost, kar se da najti na webu), morda zato, ker še ne veš, kaj bi uporabljal v karieri. izberi kaj c-ju podobnega (java, c#, morda js) in objektnega, najbrž se nekih nižje-nivojskih tehnologij ne boš loteval, ker je že s temi dovolj dela. morda poglej frameworke za enterprise rešitve; potem pa (v resni karieri precej formalizirano) analiza problema, planiranje rešitve, izdelava prototipa za poc, razvoj in testiranje.

kuall ::

Če boš poslušal izkušene programerje ti bodo povedali, da je tak način učenja zguba časa. Npr uporabnik na youtube TechLead je ravno to rekel, da je učenje programiranja po knjigah zguba časa ampak da se uči vmes, ko delaš nek projekt.

Ti pojmi, ki si jih omenil: se da čist ok shajat brez njih. So zelo redko uporabni, pa še takrat ko jih je mogoče bolje, da jih ne bi, ker z njimi narediš program brez potrebe kompliciran. Mogoče so generiki uporabni za to, da ne podvajaš kode. Ampak iz izkušenj ti povem, da je pisanje programov tako, da misliš na vse možne hipotetične primere in stranke recept za neuspeh in zamujene roke in nerazumljivo kodo. Piši majhne programčke v mislih pa imej točno stranko, za katero pišeš, tako boš uspešen in hiter in bugfree.

PrimoZ_ ::

kuall je izjavil:

Če boš poslušal izkušene programerje ti bodo povedali, da je tak način učenja zguba časa. Npr uporabnik na youtube TechLead je ravno to rekel, da je učenje programiranja po knjigah zguba časa ampak da se uči vmes, ko delaš nek projekt.

Ti pojmi, ki si jih omenil: se da čist ok shajat brez njih. So zelo redko uporabni, pa še takrat ko jih je mogoče bolje, da jih ne bi, ker z njimi narediš program brez potrebe kompliciran. Mogoče so generiki uporabni za to, da ne podvajaš kode. Ampak iz izkušenj ti povem, da je pisanje programov tako, da misliš na vse možne hipotetične primere in stranke recept za neuspeh in zamujene roke in nerazumljivo kodo. Piši majhne programčke v mislih pa imej točno stranko, za katero pišeš, tako boš uspešen in hiter in bugfree.


O glej ga, code monkey :)

PrimoZ_ ::

Sklepam da si eden tistih, ki ti je univerzitetna izobrazba odveč, ker te tam ne naučijo uporabe trenutno popularnega JS frameworka ampak ob tebe želijo razumevanje matematike.

kuall ::

jaz te pojme razumem ampak mi niso zanimivi. vsak ima svoje priotritete. eni imate univerzitetno bluzenje, drugi imamo prakso in kaj naredit s svojo glavo samostojno. ponavadi smo drugi bolj uspešni, vsaj v programiranju.

jype ::

kuall je izjavil:

ponavadi smo drugi bolj uspešni, vsaj v programiranju.
Github or GTFO.

PrimoZ_ ::

kuall je izjavil:

jaz te pojme razumem ampak mi niso zanimivi. vsak ima svoje priotritete. eni imate univerzitetno bluzenje, drugi imamo prakso in kaj naredit s svojo glavo samostojno. ponavadi smo drugi bolj uspešni, vsaj v programiranju.


Ravno si se kvalificiral za popolnega code monkeya. Pa to z univerzitetnim znanjem, mal spominja na lisico in kislo grozdej ;)

kuall ::

ti si se pa izkazal za tipičnega slo tech debila ;)

Zgodovina sprememb…

  • predlagal izbris: PromeuZ ()

Vazelin ::

Koliko so code monkeyi plačani slabše od programerjev z univerzitetnim znanjem?
I got 99 problems but 4 usd XTZ ain't one...

Zgodovina sprememb…

  • spremenilo: Vazelin ()

kuall ::

po tvoji definiciji je bill gates code monkey.

jype ::

kuall je izjavil:

po tvoji definiciji je bill gates code monkey.
Znanjem, ne papirjem. Bill Gates ve, kaj je IEEE754, čeprav se tega ni učil v šoli.

PrimoZ_ ::

Vazelin je izjavil:

Koliko so code monkeyi plačani slabše od programerjev z univerzitetnim znanjem?


Odvisno koliko se znajdejo. Trenutno ko je primankljaj programerjev in se da več na reklamo ter izgled kot pa kvaliteto so lahko plačani povsem primerljivo.
Imam kolega, ki dela magento, drupal in wordpress zadeveve v eni manjši firmi za 4k bruto. Ima SŠ in nedokončan faks za oblikovanje oz. nekaj sličnega.

TheBlueOne ::

Vazelin je izjavil:

Koliko so code monkeyi plačani slabše od programerjev z univerzitetnim znanjem?


Verjetno ce delajo enako delo dosti podobno. Za nekoga z uni izobrazbo bi pricakoval, da bo zelel napredovati in bo vsaj programer + planer ali pa programer + vodja projektov in zasluzil vec, ker ima nekoliko drugacno delo. Pa ne toliko zaradis sposobnosti ampak ker menda ja imas neke ambicije, ce si pregural faks.

predi ::

marjan_h je izjavil:

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Principi programskih jezikov (Žumer, Mernik, 2001)? Sicer se kazala ne spomnim več, vem pa da se začne z nivoja leksikalne analize, parserji, ter potem dalje. Bil je tudi predmet na faksu, vsaj na starih programih.

Možno, da se motim glede vsebine.. Nikjer ne najdem kazala.

Zgodovina sprememb…

  • spremenil: predi ()

kuall ::

jype je izjavil:

Bill Gates ve, kaj je IEEE754, čeprav se tega ni učil v šoli.

Saj je bil namen tiste teme, ki sem jo odprl o decimalkah, da to razumem na bolj zabaven način. Ponavadi mi je bilo debatiranje o programiranju na kakšnih forumih zabaven način učenja. Ampak si potem ti zamoril temo in jo ves čas moriš, ko se norčuješ. Si pač en velik idiot, to je edini nauk te teme o decimalkah in vsakič ko to omenjaš to potrjuješ.

predi ::

predi je izjavil:

marjan_h je izjavil:

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Principi programskih jezikov (Žumer, Mernik, 2001)? Sicer se kazala ne spomnim več, vem pa da se začne z nivoja leksikalne analize, parserji, ter potem dalje. Bil je tudi predmet na faksu, vsaj na starih programih.

Možno, da se motim glede vsebine.. Nikjer ne najdem kazala.
Bo kar prava knjiga. Slučajno sem jo našel doma in opisuje vse kar si naštel. Glede na to, da govori o principih, ni važno, da je bila izdana dvajset let nazaj.

marjan_h ::

predi je izjavil:

predi je izjavil:

marjan_h je izjavil:

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Principi programskih jezikov (Žumer, Mernik, 2001)? Sicer se kazala ne spomnim več, vem pa da se začne z nivoja leksikalne analize, parserji, ter potem dalje. Bil je tudi predmet na faksu, vsaj na starih programih.

Možno, da se motim glede vsebine.. Nikjer ne najdem kazala.
Bo kar prava knjiga. Slučajno sem jo našel doma in opisuje vse kar si naštel. Glede na to, da govori o principih, ni važno, da je bila izdana dvajset let nazaj.


Hvala, bom si sposodil v knjižnici.

MrStein ::

predi je izjavil:

marjan_h je izjavil:

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Principi programskih jezikov (Žumer, Mernik, 2001)? Sicer se kazala ne spomnim več, vem pa da se začne z nivoja leksikalne analize, parserji, ter potem dalje. Bil je tudi predmet na faksu, vsaj na starih programih.

Možno, da se motim glede vsebine.. Nikjer ne najdem kazala.


Ta knjiga bolj opisuje "kako se naredi compiler" kot koncepti, ki jih je OP naštel.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

mr_chai ::

Mogoče bo v tej knjigi kaj koristnega https://www.amazon.com/Seven-Languages-...

Vsi ti pojmi izvirajo bolj iz matematike in ja, načeloma se teh stvari ne boš učil v vsakem jeziku posebej, ampak boš samo pogledal npr kako se naredi npr polimorfizem v npr Javi vs. kako se nardi npr v Clojure-ju. Paradigma Jave je OO (ali bolj natančno class based programing), Clojure-ja pa je funkcijsko programiranje, pa se kljub temu lahko naredi polimorfično funckijo.

V javi imamo razrede, ki lahko implementirajo evega ali več vmesnikov (interfaceov), pa se gremo lahko na t anačin polimorfizem ali pa z dedovanjem. Ampak vedno je dispatch vezan na nek tip razreda. Clojure npr pa ti omogoča dva načina, eden je preko protokolov, ki je nekaj podobnega implementacije interfaceov v javi, drugi pa multimethod, ki pa lahko dela runtime dispatch preko česarkoli, ne samo po tipih, lahko tudi samo po vrednosti golih podatkov.


Načeloma se noben programer ne bo preveč ukvarjal s temi definicijami.... Me pa zanima, čemu ali komu bi tak leksikon služil ? Programerji ga že ne bodo brali :)

MrStein je izjavil:

predi je izjavil:

marjan_h je izjavil:

Zanima me če obstaja kakšna knjiga ali blog/spletna stran, ki bi na splošno za vse programske jezike opisovala pojme kot so generiki, polimorfizem, operator overloading (to niti ne vem kako se reče v slovenščini)?
Principi programskih jezikov (Žumer, Mernik, 2001)? Sicer se kazala ne spomnim več, vem pa da se začne z nivoja leksikalne analize, parserji, ter potem dalje. Bil je tudi predmet na faksu, vsaj na starih programih.

Možno, da se motim glede vsebine.. Nikjer ne najdem kazala.


Ta knjiga bolj opisuje "kako se naredi compiler" kot koncepti, ki jih je OP naštel.


Nič ti ne objasni bolje teh konceptov, kot če greš delat svoj compile ali interpreter. Mislim, da bi moral vsak programer vsaj 1x v življenju napisati compiler za svoj jezik.

Zgodovina sprememb…

  • spremenilo: mr_chai ()

Lonsarg ::

Veliko je znanj in skilov poleg tistega raw programiranja (organizacija, komunikacija, logika, sistemsko znanje o infrastrukturi kje teče tvoja koda, vsebinsko znanje o zadevi ki jo programiraš,..), ki te naredijo boljšega programerja, oziroma te naredijo dobrega tudi za kako drugo pozicijo (z poudarkom na drugo in ne nujno višjo, zadeve so precej vzporedne).

Poznavanje akademske scene programskih jezikov kar sprašuje OP ni med temi skili, oziroma je bolj na repu. To rabi res ozek sklop ljudi, ki recimo razvija prevajalnike, uči in take zadeve.

Zgodovina sprememb…

  • spremenil: Lonsarg ()

AndrejO ::

Lonsarg je izjavil:

Poznavanje akademske scene programskih jezikov kar sprašuje OP ni med temi skili, oziroma je bolj na repu.

Mislim, da to, kar OP sprašuje, ne spada v kategorijo "akademske scene programskih jezikov", temveč v kategorijo "strokoven jezik".

Lonsarg je izjavil:

To rabi res ozek sklop ljudi, ki recimo razvija prevajalnike, uči in take zadeve.

Oziroma vsakdo, ki dela v ekipi, ki ima več kot dva programerja.

Takšnega mnenja sem zato, ker programerji (za katere domnevam, da naj bi bili strokovnjaki) komunicirajo med seboj pri iskanju oziroma definiranju rešitve nekega problema. Pri tem se uporabljajo strokovni izrazi. Kdor definicij oziroma pomena teh strokovnih izrazov ne pozna, mu bo te potrebno pojasnjevati ali pa bo oseba s to luknjo v znanju izločena iz pomembnega dela udejstvovanja v ekipi. Včasih zgolj tako, da nečesa ne bo počela, ker tega ne razume, včasih pa, kar je mnogo huje, bo počela nekaj, kar ni bilo dogovorjeno in s tem porabljala še več časa in ogrožala projekt.

In za konec svoje replike bom prilepil začetek tvoje:

Lonsarg je izjavil:

Veliko je znanj in skilov poleg tistega raw programiranja (organizacija, komunikacija, logika, sistemsko znanje o infrastrukturi kje teče tvoja koda, vsebinsko znanje o zadevi ki jo programiraš,..), ki te naredijo boljšega programerja, oziroma te naredijo dobrega tudi za kako drugo pozicijo (z poudarkom na drugo in ne nujno višjo, zadeve so precej vzporedne).


Ja, če ne poznaš jezika, ki ga stroka uporablja, bo tvoj domet omejen in s tem bo omejena tudi tvoja učinkovitost pri delu v ekipi. Kolikšen delež omembe vrednih projektov pa dan danes delajo solisti, katerim ni potrebno posedovati osnovne sposobnosti komuniciranja v jeziku stroke?


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
!

[C++] Povezave

Oddelek: Programiranje
3857594 (1971) Karlos
»

Programiranje: FRI - rač. in informatika UNI ali Multimedija UNI

Oddelek: Programiranje
144204 (3752) Praskalec
»

Paradoks iskanja zaposlitve in možne rešitve

Oddelek: Programiranje
467551 (5333) Smurf
»

Napredek pri dokazovanju domneve o praštevilskih dvojčkih (strani: 1 2 )

Oddelek: Novice / Znanost in tehnologija
7317799 (15310) sammy73
»

IT industrija in vrednost diplome (strani: 1 2 3 )

Oddelek: Šola
14221625 (19587) noraguta

Več podobnih tem