JavaScript – сучасная мова праграмавання агульнага прызначэння. Яго прымяненне не абмяжоўваецца вэб-браўзэрамі. Ствараўся з прыцэлам на інтэграцыю ў любыя прыкладанні і з магчымасцю выканання сцэнарыяў. Меркавалася, што JavaScript стане скрыптовай мовай для Netscape. Спачатку ён зваўся Mocha, а потым LiveScript. Сваю сучасную назву атрымаў у снежні 1995 года. Па ініцыятыве адмыслоўцаў з Netscape JavaScript быў стандартызаваны ECMA. Часцей за ўсё выкарыстоўваецца ў вэб-браўзэрах. JavaScript – скрыптовая мова праграмавання. Пашырэнне функцыяналу, шляхам увядзення новых аб’ектаў, дазваляе змяняць змесціва дакументаў у межах аднаго акна (мяняць HTML, CSS), узаемадзейнічаць з карыстальнікамі, апрацоўваць, вылічаць і правяраць дадзеныя. Убудаваная версія JavaScript актывуе сцэнары, інтэграваныя ў HTML-код старонак. Апрацоўка сцэнара адбываецца аўтаматычна падчас загрузкі старонкі на кампутары кліента. Мова стандартызавана, што павінна сведчыць аб выдатнай сумяшчальнасці розных рэалізацый. Але на практыцы ў розных браўзэрах сумяшчальнасць не дасягаецца, прыносячы праграмістам масу турбот.
Магчымасці і абмежаванні JavaScript
З часу сваёй першай рэалізацыі JavaScript моцна прасунуўся наперад. Цяпер з яго дапамогай можна ствараць прыкладанні, працаваць у браўзэры з мадэлямі машыннага навучання (ML), ІІ. Дапускаецца выкарыстанне JavaScript на баку сервера (node.js). Асноўныя магчымасці мовы ў браўзэры:
- дазваляе працаваць з CSS і HTML (змена, даданне, выдаленне інфармацыі);
- забяспечвае ўзаемадзеянне з карыстальнікамі на старонцы (націску клавіш, зграі, перамяшчэнне курсора мышы);
- выкарыстоўваецца для адпраўкі запытаў на сервер, запампоўкі/загрузкі файлаў (тэхналогія AJAX JS);
- працуе з кукі.
Абмежаванні:
- актыўны ў адкрытай укладцы, доступу да іншых адкрытых укладак няма;
- калі JS не адчыняў акно браўзэра, ён не зможа яго зачыніць;
- няма магчымасці схаваць зыходны код старонкі;
- няма доступу да сістэмных функцый АС.
Падключаецца двума спосабамі: праз код на старонцы і праз вонкавы файл. У першым выпадку варта паказаць <script>//Цела праграмы</script>. Код з вонкавага файла падлучаецца камандай <script src=”name.js”></script>
JavaScript – лепшы выбар для падлеткаў і пачаткоўцаў праграмістаў. Яго асноўная перавага – распаўсюджанасць. Падтрымліваецца ва ўсіх браўзэрах, на ўсіх АС, мабільных прыладах, персанальных кампутарах. Прыкладанні JavaScript працуюць без папярэдняй усталёўкі на прылады карыстачоў. Калі ёсць жаданне, каб створаным модулем змог скарыстацца любы жадаючы, то JS – годная альтэрнатыва. Напрыклад, вам неабходна правесці тэсціраванне. Як зрабіць так, каб пытанні тэста змаглі ўбачыць іншыя людзі? Усё вельмі проста. Калі для стварэння кода абраны JavaScript, а для распаўсюджвання – звычайны сайт, праблема адпадзе сама сабой.
Папулярнасць JavaScript абумоўлена вялікай колькасцю добрых якасцяў:
- Незаменнасць пры вэб-распрацоўцы. Скрыпты падтрымліваюцца ўсімі папулярнымі браўзэрамі, інтэгруюцца з вёрсткай і серверным бокам (backend).
- Развітая экасістэма. У адкрытым доступе прысутнічае вялікая колькасць гатовых рашэнняў.
- Рацыянальнасць і прастата выкарыстання.
- Высокі ўзровень юзабіліці.
- Лёгкасць у вывучэнні. Да сінтаксісу абвыкаеш хутка.
У мовы ёсць і шэраг недахопаў, якія пры жаданні можна абысці.
- Неабходнасць у дадатковых фрэймворках, бібліятэках . Выбар правільных прылад – гэта не такая ўжо і простая задача. Зразумець, ці падыходзіць выбраная бібліятэка для вырашэння канкрэтнай праблемы, можна толькі пасля папярэдняга вывучэння.
- Неакуратнае абыходжанне са зменнымі, тыпамі дадзеных . Нязначная памылка друку можа парушыць працу ўсёй праграмы. Напрыклад, var Number = 100; Number = Numbe + 1; Скрыпт паведаміць аб наяўнасці памылкі друку толькі падчас адпрацоўкі праграмнага кода. Аналагічная праблема ўзнікне і ў тым выпадку, калі праграміст пераблытае рэгістр. Яшчэ адзін прыклад. Праграміст вырашыў запісаць у зменную лічбу, у якой ужо ўтрымліваецца радок. Паведамлення пра памылку ў гэтым выпадку не будзе. Але вынік акажацца далёкім ад чаканняў. Пазбегнуць пералічаных вышэй праблем можна з дапамогай рэдактараў кода. Самы папулярны варыянт – Visual Studio Code.
- Не падыходзіць для распрацоўкі сеткавых прыкладанняў (праграмнага забеспячэння, які адказвае за карэктную працу кампутарных сетак прадпрыемстваў).
- JavaScript – вольная скрыптовая мова . Таму ўбудаваць у яго шкоднасны код для дасведчаных праграмістаў не складзе ніякай працы. Сёння адным з самых распаўсюджаных відаў нападаў з’яўляецца міжсайтавы скрыптынг з выкарыстаннем JavaScript. Напрыклад, XSS напады – гэта такі выгляд нападаў, які ўкараняе ў інтэрнэт-сістэмы шкоднасны код, падмяняе ўтоеныя/бачныя спасылкі, прымушаючы выдаваць змененыя дадзеныя, выводзіць уласную рэкламу на пашкоджаным сайце.
https://articles.opexflow.com/programming/kak-stat-programmistom-s-nulya.htm Для спрашчэння складаных задач і выканання распаўсюджаных заданняў рэкамендуецца карыстацца бібліятэкамі JavaScript, якія з’яўляюцца калекцыямі гатовых метадаў і функцый. Бібліятэк для JavaScript створана дастаткова шмат. Адны з іх прызначаны для рашэння пэўных задач, напрыклад, апрацоўка формаў або вылічэнне матэматычных функцый. Іншыя ўтрымоўваюць найболей распаўсюджаныя фішкі для стварэння паўнавартасных інтэрнэт-прыкладанняў па тэхналогіі Ajax. Доследныя распрацоўшчыкі, якія выкарыстоўваюць гатовыя бібліятэкі, змогуць істотна зэканоміць час. А ў навічкоў з’явіцца магчымасць рэалізоўваць праекты, якія пакуль яны не здольныя напісаць самастойна.
Запатрабаванасць мовы
Папулярнасць JavaScript сярод распрацоўшчыкаў пацвярджаецца міжнароднымі рэйтынгамі. Па дадзеных PYPL ён уваходзіць у тройку лідэраў.
Асацыяцыя Stack Overflow вывучае колькасць пытанняў, прысвечаных JS, на прафесійных форумах. Па выніках іх аналізу JavaScript прызнаны безумоўным лідэрам.
W3Techs падлічвае колькасць праектаў, рэалізаваных з дапамогай той ці іншай тэхналогіі. У JS няма канкурэнтаў. У падзеле кліенцкіх інтэрфейсаў гэта самая запатрабаваная прылада.
Найбольшая колькасць напрацовак, у аснове якіх ляжыць JavaScript, задзейнічана непасрэдна ў вобласці Frontend. Распрацоўнікі актыўна ўжываюць каля 30-ці бібліятэк, фрэймворкаў. Гатовыя рашэнні і шаблоны для стандартных задач (з некаторымі варыяцыямі) дазваляюць эканоміць масу часу, спрашчаюць працэс, змяншаюць кошт праектаў. Самыя распаўсюджаныя: Angular, Aurelia, Backbone.js, Ember.js, jQuery, Meteor.js, Node.js, Vue.js.
JS атрымаў шырокае прымяненне і ў стварэнні мабільных прыкладанняў, backend распрацоўцы, дэсктопных праграмах. Фенаменальнаму росту запатрабаванасці мовы JS спрыяе і тэндэнцыя да павелічэння інтэрактыўнасці сайтаў.
JavaScript і асноўныя аспекты яго выкарыстання
Перад вывучэннем сінтаксісу мовы трэба разабрацца з яе асноўным прызначэннем. Часцей за ўсё JS выкарыстоўваюць, калі трэба зрабіць браузернае прыкладанне, надаць інтэрнэт-рэсурсу больш “рухомасці”.
- Дынамічныя старонкі на сайтах . З дапамогай JavaScript можна ствараць усплывальныя падказкі, розныя аніміраваныя эфекты. Код убудоўваецца ў старонку. Скрыпт адпрацоўвае прама ў браўзэры карыстача. JS, CSS, HTML – дастатковы набор навыкаў сучаснага фронтэнд-распрацоўніка.
- Гульні, вэб-прыкладанні . Напрыклад, кліент Gmail, Google Maps зроблены з дапамогай JS. Для стварэння броділкі можна выкарыстоўваць HTML5, JS і гатовую бібліятэку.
- Браўзэрныя пашырэнні . Можна напісаць уласны лічыльнік актыўнасці ці праграму, якая будзе сачыць за тым, колькі часу марнуецца на выкананне пэўных дзеянняў.
- Вэб-сервер . У асяроддзі бэкенда JS канкуруе з Python, PHP і іншымі мовамі. Асноўная перавага – магчымасць ажыццяўляць распрацоўку кліенцкай і сервернай частак на адной мове. Каб стварыць бэкенд на JS, распрацоўнікі выкарыстаюць рухавічок Node.js.
- Дэсктоп (настольныя прыкладанні) .
- Мабільныя прыкладанні . Гэта не самае распаўсюджанае выкарыстанне JavaScript. Але яно мае месца быць хаця б таму, што JS дазваляе ствараць кросплатформавыя прыкладанні. Для гэтага можна ўжываць фрэймворкі Ionic, React Native, PhoneGap.
Яшчэ адзін важны аспект – выкарыстанне JS для машыннага навучання (ML) і штучнага інтэлекту (AI). Пад машынным навучаннем маецца на ўвазе здольнасць сістэм выконваць тыя ці іншыя дзеянні без наяўнасці пэўных інструкцый. Для рэалізацыі падобных задач можна прымяняць такі фрэймворк, як TensorFlow.js. На сённяшні дзень можна выкарыстоўваць:
- трансфернае навучанне;
- раней навучаную мадэль;
- распрацоўку ўласнай мадэлі.
Разгледзім у якасці прыкладу варыянт выкарыстання раней навучанай мадэлі. Выкажам здагадку, што нам трэба распрацаваць сайт, які будзе аналізаваць карцінкі і выбіраць тыя, на якіх намаляваны кот. MobileNet – папулярны класіфікатар малюнкаў. У фармаце навучанай мадэлі ён даступны з Tensorflow.js. На сайце з’явіцца наступны код:
У head HTML-кода трэба дадаць MobileNet і Tensorflow.js.
У body паказваецца элемент малюнка, які выкарыстоўваецца для аналізу.
У script дадаецца JavaScript-код, які будзе загружаць раней навучаную мадэль MobileNet для аналізу малюнкаў, указаных у image.
На выхадзе з’явіцца масіў з трыма прагнозамі. Самы імавернасны вынік будзе паказаны першым. Вось такім чынам можна з Tensorflow.js выкарыстоўваць ужо навучаную мадэль. Трэба разумець, што для яе загрузкі ў браўзэры можа запатрабавацца час. Часам яно дасягае 10 секунд.
Мэтазгоднасць вывучэння JavaScript у 2022 годзе – перспектывы развіцця
JavaScript – аснова, на якой грунтуецца ўвесь frontend вэб-распрацоўкі. З яго дапамогай можна выконваць розныя дзеянні і перахапляць падзеі. Напрыклад, карыстач на сайце клікнуў мышшу па якім-небудзь пункце меню. Спрацавала каманда click. Далей адбываецца выклік вызначанай функцыі: змена колеру актыўнага элемента, актывацыя мадальнага акна. Выкарыстоўваецца JavaScript для таго, каб надаць старонкам сайта больш інтэрактыўнасці, дазволіць наведвальнікам узаемадзейнічаць з рознымі канструктыўнымі элементамі. З дапамогай JavaScript на вэб-старонку можна дадаць велізарную колькасць карысных функцый. Выкарыстоўваючы толькі HTML, CSS і JS распрацоўшчыкі могуць ствараць розныя функцыянальныя прыкладанні. Напрыклад, карту, якая будзе абнаўляцца ў рэжыме рэальнага часу, анлайн-гульні. Паглядзіце на папулярны сайт Pinterest. Тут для стварэння прыязнага карыстацкага інтэрфейсу па поўнай выкарыстоўваецца JavaScript. Да таго ж, JavaScript – гэта самая запатрабаваная мова праграмавання ў свеце. І незалежна ад кар’ерных дамаганняў, гэтую вельмі карысную мову трэба вывучыць. Мова могуць асвоіць не толькі пачаткоўцы web-праграмісты, але і школьнікі для агульнага развіцця. Гэтаму спрыяе інтуітыўная зразумеласць кода, рацыянальнасць мовы, нескладанасць сінтаксісу. JavaScript – гэта мова, якой уласцівыя наступныя асаблівасці: Гэтаму спрыяе інтуітыўная зразумеласць кода, рацыянальнасць мовы, нескладанасць сінтаксісу. JavaScript – гэта мова, якой уласцівыя наступныя асаблівасці: Гэтаму спрыяе інтуітыўная зразумеласць кода, рацыянальнасць мовы, нескладанасць сінтаксісу. JavaScript – гэта мова, якой уласцівыя наступныя асаблівасці:
- Адчувальнасць да рэгістра. Паміж функцыямі Func() і func() ёсць вялізная розніца.
- Наяўнасць убудаваных аперацый і аб’ектаў.
- Неабходнасць у пастаноўцы кропкі з коскай пасля аператараў.
- Неадчувальнасць да прабелаў. Для афармлення кода можна выкарыстоўваць розную колькасць водступаў.
JavaScript – поўны курс JS для пачаткоўцаў, відэа курс навучання для вывучэння з нуля і для больш дасведчаных распрацоўшчыкаў: https://youtu.be/CxgOKJh4zWE
JavaScript – скрыптовая мова. Пад скрыптам разумеецца праграмны код, які не мае патрэбы ў папярэдняй апрацоўцы перад запускам. Код апрацоўваецца рухавіком браўзэра падчас загрузкі старонкі.
Існуе шэраг базавых рэкамендацый, здольных істотна спрасціць працэс вывучэння мовы JavaScript.
- У першую чаргу трэба пазнаёміцца з HTML і CSS. Не варта пачынаць стварэнне сайтаў, прыкладанняў, форм і іншых рэчаў для інтэрнэту без ведання асноў.
- Вывучайце новую літаратуру. Інфармацыйныя тэхналогіі развіваюцца, таму не варта грэбаваць абнаўленнямі.
- Усе часткі праграмы імкніцеся пісаць самастойна. Калі прыйшлося запазычыць чужы код, уважліва вывучыце кожны радок.
- Карыстайцеся адладкай. Самы важны навык любога дасведчанага праграміста – хуткі пошук памылак і недахопаў.
- Пішыце прыгожы код. Не варта ігнараваць стандарты фарматавання. Безумоўна, колькасць прабелаў або водступаў не паўплывае на якасць скрыпту, але ён стане больш зразумелым, чытаным. Вось фрагмент дрэннага кода.
- Старайцеся каментаваць важныя дзеянні.
JavaScript – мова, які атрымаў шырокае распаўсюджванне ў асяроддзі web-праграмавання. Ён увабраў у сябе магчымасці функцыянальных і аб’ектна-арыентаваных моў. Але не варта забываць аб тым, што мова – інструмент распрацоўшчыка, а самае галоўнае ў напісанні кода – думка.
Карысная інфармацыя для прафесійных фронтэнд-распрацоўшчыкаў
React – бібліятэка JavaScript. У апошні час яна становіцца стандартам фронтэнд-распрацоўкі. Гэта добрая навіна для кросплатформавых распрацоўшчыкаў. React Native мае наступныя перавагі:
- Эфектыўны і разумны рэндэрынг, які перамалёўвае кампаненты толькі пры наяўнасці такой неабходнасці (калі змяняецца стан).
- Інтуітыўна зразумелая і вельмі простая філасофія аб’яўлення станаў (state), уяўленняў (views). Код становіцца чытэльным, прыгожым і лёгка паддаецца працэдуры адладкі.
Калі казаць прасцейшай мовай, то React наладжвае сувязь мёду JS і HTML. React JS фундаментальны курс ад А да Я: https://youtu.be/GNrdg3PzpJQ Мала хто ў наш час піша на чыстым CSS. Неабходнасцю для прафесійных фронтэнд-распрацоўшчыкаў стала вывучэнне моў тыпу Less або Sass. Яшчэ адна рэкамендацыя – вывучэнне даступных спосабаў пабудовы адаптыўных старонак. Гэта злучана з вялікай колькасцю формаў-фактараў самых розных прылад (планшэтаў, смартфонаў, ПК і гэтак далей). Даступна мноства бібліятэк JS і CSS, якія лёгка вырашаюць падобныя задачы. Большасць з іх грунтуюцца на нормах Google’s Material Design. Ёсць сумежныя бібліятэкі і тэмы, на якія трэба звярнуць сваю ўвагу:
- для аўтарызацыі JSON Web Token;
- для модульнай зборкі Webpack;
- для выбаркі дадзеных і працы са струменямі Redux, Relay, Flux.
Даступна і вялікая колькасць бібліятэк для аптымізацыі ўзроўню прадукцыйнасці, адладкі, кіравання створанымі праектамі. Сёння, каб стаць запатрабаваным і эфектыўным фронтэнд-распрацоўшчыкам, трэба вывучаць не толькі фундаментальныя асновы, але і ўмець выбіраць/ужываць напрацоўкі іншых спецыялістаў, якія аформлены ў выглядзе бібліятэк/фрэймворкаў. З іх дапамогай працоўны працэс будзе праходзіць прыкметна хутчэй.
J’aiemerais une formation complète avec vous su JavaScript à partir d’un cas concrêt
Merci