logi sisse meist KKK

Need harvad korrad kui olen olnud sunnitud javaskripti kasutama on see alati toimunud nn "näite baasil programmeerimise" meetodil ja rämeda vandumise saatel. Kood lihtsalt tundub klassikaliste keelte (php etc) oskajale absurdne ja arusaamatu. Ühest küljest saan aru, et tekkinud eelarvamus on ebaõiglane ja puhtalt mu enda süü aga...

Ehk siis, mida peale hakata? Võib-olla on selle sündroomi raviks mingi raamat, teraapia või internetikommuun...

küsitud Dec 11 '14 at 09:25

zurgutt's gravatar image

zurgutt
11111

PHP mainimine "hea näitena" ning "klassikalise keelena" Javascriptile vastandiks on eriti paks trollimine siin.

(Dec 12 '14 at 13:48) kt ♦♦

JavaScripti kui keele kohta on minu meelest parim raamat Douglas Crockfordi JavaScript: The Good Parts. Veel kompaktsemaks ülevaateks sobivad sama mehe loengud The JavaScript Programming Language ja Advanced JavaScript.

Eelnev kraam käib ainult JavaScripti kui keele kohta ja ei puuduta selle levinuimat kasutuskonteksti (HTMLi masseerimine brauseris). Crockfordil on selle kohta eraldi loeng An Inconvenient API.

Ja veel kõige kompaktsem on tema JavaScript Survey, mis lugejale, kes juba oskab paari muud programmeerimiskeelt, katab kõik peamise (muuhulgas ka hoiatades keele disainivigadest tulenevate lõksude eest).

link

vastatud Dec 11 '14 at 10:16

Ahto%20Truu's gravatar image

Ahto Truu ♦♦
6596711

edited Dec 11 '14 at 10:22

Crockfordil on üks uuem video The Better Parts. Lisaks on ka JavaScript Garden, mis seletab JavaScripti veidrusi.

Muidu õppimise jaoks on kõige parem vast Marijn Haverbeke - Eloquent JavaScripti.

link

vastatud Dec 11 '14 at 13:25

egon's gravatar image

egon ♦♦
771239

edited Dec 11 '14 at 13:25

Mina vihkasin ka kunagi JavaScripti. Keskkond oli selline, et samas ruumis kõik teised ka vihkasid (tol ajal olin ma Java progeja ühes Tartu ettevõttes). See oli aastal 2007, IE6-te tuli veel toetada (pimesi ilma debuggerita tulistamine). Tegime skriptijuppi, mis automaatselt erinevalt domeenilt tuleva sisuga iframe kõrgust muutis. Seda sai nikerdatud kuu aega ja lõpuks päris ok ei olnudki. Siit sain mina suht negatiivse kogemuse.

Minu jaoks muutus olukord 2011 kui ma pidin tegema paar kena vormi ühe rakenduse müügiks (põhitöö oli siis C++). Võtsin kohe kasutusele jQuery (teised ka kasutasid). Vormid said tehtud, aga hakkas huvitama kuidas jQuery ise on tehtud (DOM operatsioonid võtavad 10 rea asemel 3 ja on palju loetavamad). Sealt avastasin hulga keele konstruktsioone, mida varem ei olnud kasutanud või olin kasutanud ainult akadeemilises keskkonnas (sulundid, dünaamilised objektid, dünaamiliselt skoobitud this). Vahepeal olid lehitsejad väikese arenguhüppe teinud, kõigil on nüüd sisseehitatud debugger (sh. IE8). Võrreldes 2007-ga on vahe nagu öö ja päev.

Lisaks parematele töövahenditele on igasugused õppematerjalid ka paremaks läinud. Copy/paste-kood-siit tüüpi artiklite kõrvale on tekkinud online kursused. Negatiivne suhtumine JavaScripti tulebki võibolla arvamusest, et keel on nii kehv, et pole väärt õppimist isegi siis kui praktiliselt kõigis veebiprojektides tuleb sellega midagi teha.

Olen JavaScript teistele varem õpetanud ja pean keelega alustamiseks üheks parimaks kohaks Codecademy tasuta kursuse (http://www.codecademy.com/en/tracks/javascript). Siin on interaktiivsed näited, koodi saab kohe käivitada ja arvutisse ei pea midagi installima.

link

vastatud Dec 11 '14 at 18:35

RLa's gravatar image

RLa
112

link

vastatud Dec 11 '14 at 19:27

martinsookael's gravatar image

martinsookael
111

Mina alustasin kunagi IE4's window.status teksti muutmisega ja oligi keel kohe sümpaatne :) Eestikeelsetest materjalidest soovitaksin enda kostatud JavaScript edasijõudnutele. Tegu on juba aastaid vana materjaliga, seega väga edasijõudnud see enam pole, see on pigem EcmaScript3 keskne, mõne ES5 põhise täiendiga. Tänaseks olulised asjad nagu tüübitud massiivid jne. pole seal üldse kajastatud, samas JavaScripti number on endiselt seesama ja sellest on juttu küll.

link

vastatud Dec 12 '14 at 11:47

Andris's gravatar image

Andris
2553310

JavaScriptil on mitmeid "ahaa" kohti. Alustada tuleb just nendest ning valmis tuleb olla mõneks omapäraseks ideeks :)

Mõnda aega väldiksin jQuery-t ja teisi teeke, sest need hoiavad copy-paste koodikirjutamise juures ja ei anna erilist teadmist keele omadustest.

Näited mõnedest ahaa efektidest:

  • kõik objektid on viitmuutujad
  • massiivid ja funktsioonid on on ka objektid
  • kõik muutujad on mõne teise objekti omadused
  • funktsioonid ja muutujad asuvad samas nimeruumis (fn kui muutuja on pidevalt tööriist)
  • OO ideed on ellu viidud hoopis teisiti (klassid puuduvad, objekti defineeringuks kasutatakse funktsiooni)
  • funktsioonil ei ole otsest seost tema "omanikuga" (objektiga, mille omadus ta on)
  • vaikimisi on kõik muutujad globaalmuutujad
  • funktsioonid saavad teha uusi funktsioone
  • muutujate skoop on funktsiooni põhine ja nad "jäävad lõksu" kui funktsioon on funktsiooni sees
  • keelel on mõnusad omadused: "a || b" väljastab esimese mitte-false tulemuse, "fn()[1].a" võtab funktsiooni tulemusest massiivi esimese elemendi ja sealt objekti omaduse a

Nimekiri jätkub muidugi, aga sarnaste omapärade selgekstegemine on mitte-vihkamise algus. Minuarust on JS väga-väga äge :) Lihtne ja kaval.

link

vastatud Dec 14 '14 at 03:56

Kaiko%20Kaur's gravatar image

Kaiko Kaur
2307711

edited Dec 14 '14 at 04:28

Soovitaksin praegu juba ECMAScript 6 katsetada. ES6 on PHP-st või Java-st tulnule tuttavam (klasside defineerimine, modulaarsus, skoobi põhised muutujad jne jne). Kuna hetkel on ES6 tugi veebilehitsejates auklik, siis soovitaksin kasutada mõnda translaatorit, nt. Babel või Traceur (NB! tuleb meeles pidada, et lisaks translaatorile endale tuleb include'ida ka translaatori poolt pakutav polyfill). Modulaarsuse jaoks soovitaksin sellist tööriista nagu JSPM. JSPM on runtime + tööriist, mis võimaldab väga mugavalt ja organiseeritult kõikvõimalikke javascripti mooduleid github-ist, npm-ist jms registritest rakendusse laadida. Lisaks on JSPM integreeritud nii Traceur kui Babel translaatoritega.

link

vastatud Mar 17 '15 at 15:36

Samuel%20Paal's gravatar image

Samuel Paal
862

Sinu vastus
lülita eelvaade

Jälgi seda küsimust

By Email:

Pärast sisselogimist saad tellida muudatuse teavitusi siit

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *kaldkiri* või __kaldkiri__
  • **paks kiri** või __paks kiri__
  • link:[tekst](http://url.com/ "pealkiri")
  • pilt?![alt tekst](/path/img.jpg "pealkiri")
  • nummerdatud nimekiri: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • põhilised HTML märgendid on samuti toetatud

Pinu tööpakkumised

kõik pakkumised »

Küsimuse sildid:

×18
×1

küsitud: Dec 11 '14 at 09:25

nähtud: 3,390 korda

viimati uuendatud: Mar 17 '15 at 15:36

Litsents: Creative Commons Attribution License | Kontakt: info@pinu.ee