{"id":232068,"date":"2023-01-06T17:50:00","date_gmt":"2023-01-06T14:50:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232068"},"modified":"2022-11-10T07:28:34","modified_gmt":"2022-11-10T04:28:34","slug":"opi-javascript-unohda-php","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/opi-javascript-unohda-php\/","title":{"rendered":"Opi JavaScript, unohda PHP?"},"content":{"rendered":"\n<p>WordPressin maisema on muuttunut.<\/p>\n<p>Muutama vuosi sitten meille kaikille annettiin teht\u00e4v\u00e4ksi <a href=\"https:\/\/www.youtube.com\/watch?v=KrZx4IY1IgU\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">oppia JavaScript syv\u00e4llisesti<\/a> ja oikein. <a href=\"https:\/\/github.com\/WordPress\/gutenberg\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Gutenbergin<\/a> ja <a href=\"https:\/\/github.com\/Automattic\/wp-calypso\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Calypson<\/a> kaltaisten projektien my\u00f6t\u00e4 on selv\u00e4\u00e4, ett\u00e4 JavaScriptist\u00e4 on tulossa hallitseva voima WordPressiss\u00e4 (puhumattakaan webist\u00e4 kokonaisuutena), ellei se ole jo sit\u00e4 mielt\u00e4.<\/p>\n<p>Ja jokaiselle, joka on lukenut <a href=\"https:\/\/blog.codinghorror.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Koodauskauhua<\/a> noin viimeisen vuosikymmenen aikana, olet todenn\u00e4k\u00f6isesti perehtynyt Atwoodin lakiin:<\/p>\n<blockquote>\n<p>kaikki sovellukset, jotka voidaan kirjoittaa JavaScriptill\u00e4, kirjoitetaan lopulta JavaScriptill\u00e4.<\/p>\n<p><a href=\"https:\/\/blog.codinghorror.com\/the-principle-of-least-power\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Jeff Atwood<\/a><\/p>\n<\/blockquote>\n<p>Mutta koska t\u00e4m\u00e4 on tapahtunut, n\u00e4ytt\u00e4\u00e4 silt\u00e4, \u200b\u200b\u200b\u200bett\u00e4 se olisi luonut selke\u00e4mm\u00e4n jaon sen v\u00e4lille, mik\u00e4 muodostaa etup\u00e4\u00e4n kehitt\u00e4j\u00e4n ja taustakehitt\u00e4j\u00e4n WordPress-taloudessa.<\/p>\n<p>Henkil\u00f6kohtaisesti pid\u00e4n sit\u00e4 my\u00f6nteisen\u00e4, koska huomaan olevani entist\u00e4 innokkaampi oppimaan, kasvamaan ja ty\u00f6skentelem\u00e4\u00e4n taustalla PHP:n kasvaessa ja muuttuessa. Mutta se on vain min\u00e4, ja siell\u00e4 on muutakin tutkittavaa.<\/p>\n<p>Kun kuulemme, ett\u00e4 meid\u00e4n pit\u00e4isi oppia lis\u00e4\u00e4 JavaScripti\u00e4, se tuo esiin muutaman kysymyksen, jotka ovat mielest\u00e4ni t\u00e4rkeit\u00e4:<\/p>\n<ul>\n<li>Olemmeko me avustajina ja kehitt\u00e4jin\u00e4, jotka rakennamme asioita t\u00e4t\u00e4 projektia varten, laiminly\u00f6neet JavaScriptin ja ymp\u00e4r\u00f6iv\u00e4t tekniikat liian kauan?<\/li>\n<li>Pit\u00e4\u00e4k\u00f6 meid\u00e4n valmistautua niin sanotusti seuraavaan aikakauteen, jossa suurin osa ratkaisuista on kirjoitettu JavaScriptill\u00e4?<\/li>\n<li>Oletetaanko, ett\u00e4 jatkamme PHP-taitojen parantamista kielen kehittyess\u00e4?<\/li>\n<li>Korreloivatko n\u00e4m\u00e4 alusta alkaen mitenk\u00e4\u00e4n?<\/li>\n<\/ul>\n<p>Ehk\u00e4 n\u00e4iden kysymysten esitt\u00e4minen kuulostaa hieman ty\u00f6l\u00e4lt\u00e4, ellei naiivilta, mutta kun n\u00e4emme niin paljon JavaScriptill\u00e4 kirjoitettua, mukaan lukien <a href=\"https:\/\/nodejs.org\/en\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">ty\u00f6kalut<\/a>, <a href=\"https:\/\/www.npmjs.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pakettien hallinta<\/a> ja paljon muuta, peilaamme sit\u00e4, <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">mit\u00e4 meill\u00e4 on ollut PHP:ss\u00e4 niin pitk\u00e4\u00e4n<\/a>, on t\u00e4rke\u00e4\u00e4 ainakin harkita.<\/p>\n<p>Loppujen lopuksi t\u00e4m\u00e4 voi jollain tapaa vaikuttaa merkitt\u00e4v\u00e4sti uran kehitykseen.<\/p>\n<p>Lyhyesti sanottuna, mielest\u00e4ni peliss\u00e4 on useita asioita, joista jokaista yrit\u00e4n tislata t\u00e4ss\u00e4.<\/p>\n<h3>laiminly\u00f6ty? Joo. Mutta siin\u00e4 ei viel\u00e4 kaikki.<\/h3>\n<p>Uskon, ett\u00e4 me, kuten me WordPressin parissa ty\u00f6skentelev\u00e4t, olemme laiminly\u00f6neet JavaScriptin liian pitk\u00e4\u00e4n. Ja vaikka me kaikki emme ole etup\u00e4\u00e4n insin\u00f6\u00f6rej\u00e4, se ei tarkoita, etteik\u00f6 meid\u00e4n pit\u00e4isi pysty\u00e4 ty\u00f6skentelem\u00e4\u00e4n sen parissa.<\/p>\n<p>Uskon my\u00f6s, ett\u00e4 olemme laiminly\u00f6neet PHP:n p\u00e4ivitettyj\u00e4 ominaisuuksia liian pitk\u00e4\u00e4n (ja t\u00e4st\u00e4 on tulossa niin v\u00e4synyt lausunto, ett\u00e4 en melkein sis\u00e4llytt\u00e4nyt sit\u00e4).<\/p>\n<h3>Keskin\u00e4inen yksinoikeus?<\/h3>\n<p>Vaikka mielest\u00e4ni on t\u00e4rke\u00e4\u00e4 siirty\u00e4 seuraavaan kehitysvaiheeseen, joka sis\u00e4lt\u00e4\u00e4 enemm\u00e4n JavaScripti\u00e4, se ei sulje toisiaan pois PHP:n kanssa. En ole vakuuttunut siit\u00e4, ett\u00e4 PHP:t\u00e4 ei poisteta kokonaan WordPressist\u00e4 ennustettavassa tulevaisuudessa.<\/p>\n<h3>Turvallisia oletuksia<\/h3>\n<p>En usko, ett\u00e4 oletetaan, ett\u00e4 suurin osa meist\u00e4 ty\u00f6skentelee parantaakseen PHP-taitojamme; Muuten uskoisin, ett\u00e4 WordPress-keskeiselle PHP:lle omistettaisiin laajempi joukko resursseja (puhumattakaan kielen uusimpien ominaisuuksien hy\u00f6dynt\u00e4misest\u00e4).<\/p>\n<p>Ja kun puhun t\u00e4llaisista resursseista, tarkoitan WordPress- <a href=\"https:\/\/stitcher.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">tyyppist\u00e4 Stitcheri\u00e4<\/a>.<\/p>\n<h3>Korrelaatio<\/h3>\n<p>Luulen, ett\u00e4 ne liittyv\u00e4t toisiinsa, mutta eiv\u00e4t sill\u00e4 tavalla, kuin jotkut saattavat ajatella: Uskon, ett\u00e4 jotkut ihmiset ja virastot p\u00e4rj\u00e4\u00e4v\u00e4t hyvin, jos he haluavat keskitty\u00e4 JavaScript-keskeisiin ratkaisuihin. Samaa voidaan sanoa my\u00f6s taustaratkaisuista.<\/p>\n<p>Mutta jos haluat rakentaa t\u00e4ydellisen sovelluksen tai ratkaisun (tai jotain, joka on p\u00e4\u00e4t\u00f6n), et voi keskitty\u00e4 vain yhteen alueeseen.<\/p>\n<h2>Mik\u00e4 on pointtini?<\/h2>\n<p>Pointtini on t\u00e4m\u00e4: Jotkin sovellukset vaativat palvelinpuolen kieli\u00e4, jotka eiv\u00e4t ole JavaScripti\u00e4 ja jotka toimivat JavaScriptill\u00e4 kirjoitettujen asiakaspuolen ominaisuuksien kanssa.<\/p>\n<p>Ja vaikka on selv\u00e4\u00e4, ett\u00e4 palvelinpuolen ratkaisuja voidaan kirjoittaa JavaScriptill\u00e4, verkko ei silti n\u00e4yt\u00e4 liikkuvan suuntaan, joka tekisi siit\u00e4 yhden ja ainoan tavoitteen.<\/p>\n<p>My\u00f6s <a href=\"https:\/\/laravel.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">muut<\/a> vauhtiin p\u00e4\u00e4sev\u00e4t hankkeet tukevat t\u00e4t\u00e4.<\/p>\n<p>Toiseksi PHP kehittyy edelleen monin tavoin. Se, ovatko kieleen lis\u00e4tt\u00e4v\u00e4t ominaisuudet hyvi\u00e4 tai huonoja, eiv\u00e4t ole t\u00e4m\u00e4n viestin ruokinta. Sen sijaan kyse on siit\u00e4, ett\u00e4 PHP jatkaa kasvuaan, muuttumistaan, kypsymist\u00e4 ja tarjoaa paljon ominaisuuksia, joita me \u2013 taustakehitt\u00e4jin\u00e4 \u2013 olemme halunneet jo pitk\u00e4\u00e4n. Joten miksi emme pyri tekem\u00e4\u00e4n niist\u00e4 yleisempi\u00e4?<\/p>\n<ul>\n<li>Johtuuko se siit\u00e4, ett\u00e4 WordPress-laajennukset eiv\u00e4t vaadi mainittuja ominaisuuksia?<\/li>\n<li>Eiv\u00e4tk\u00f6 mainitut ominaisuudet parantaisi WordPressin joidenkin komponenttien koodikantaa? (Monissa tapauksissa olisi.)<\/li>\n<li>Koska talous on muuttunut ja lohkoeditorista on tullut editorin (ja lopulta teemakehityksen) kasvot, se ei sulje pois taustatuen tarvetta.<\/li>\n<li>Ja niin edelleen.<\/li>\n<\/ul>\n<p>Miksi emme alan segmenttin\u00e4 haasta toisiamme oppimaan my\u00f6s PHP:n uusia ominaisuuksia yht\u00e4 paljon kuin JavaScriptin\u00e4? Kieli kehittyy nopeammin kuin koskaan ennen, n\u00e4emme suurempia suorituskyvyn parannuksia, tapoja kirjoittaa paremmin yll\u00e4pidett\u00e4v\u00e4\u00e4 koodia ja ominaisuuksia, jotka voivat paitsi parantaa rakentamiamme ty\u00f6kaluja, my\u00f6s itse WordPressin koodikantaa.<\/p>\n<h2>Taas, opi, mutta \u00e4l\u00e4 unohda<\/h2>\n<p>Suuri osa t\u00e4st\u00e4 on pohdiskelua kahden WordPressin ydinkielen ymp\u00e4rill\u00e4. Kun puhumme WordPressist\u00e4 ja sen kielist\u00e4, t\u00e4m\u00e4 ei ole toisiaan poissulkeva tilanne, jossa meid\u00e4n on opittava JavaScript ja unohdettava PHP.<\/p>\n<p>Sen sijaan sen on tarkoitus osoittaa, ett\u00e4 vaikka meille on annettu teht\u00e4v\u00e4ksi opetella JavaScript ja vaikka JavaScript on suuresti muuttanut tapaa, jolla WordPress toimii, se ei sulje pois palvelinpuolen ty\u00f6n tarvetta ja n\u00e4in ollen tarvetta jatkaa oppimista. se.<\/p>\n<p>Molemmille on viel\u00e4 runsaasti tilaa WordPressin hiekkalaatikossa. Jos mit\u00e4\u00e4n, \u00e4lk\u00e4\u00e4mme antako PHP-taitomme heikenty\u00e4 samalla kun parannamme JavaScript-taitojamme.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kun puhumme WordPressist\u00e4 ja sen kielist\u00e4, t\u00e4m\u00e4 ei ole toisiaan poissulkeva tilanne, jossa meid\u00e4n on opittava JavaScript ja unohdettava PHP.<\/p>\n","protected":false},"author":1,"featured_media":223973,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[730,719,895,843,864],"tags":[1166],"class_list":["post-232068","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript-5","category-kehittaejae","category-koodi","category-opetusohjelmia","category-wordpress-5","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/232068","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=232068"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/232068\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/223973"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=232068"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=232068"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=232068"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}