Programmēšana

Kas jauns Rails 5.1: Labāks JavaScript vienai

Servera puses veterānu tīmekļa ietvars Ruby on Rails jaunajā versijā, kas nesen pārgājusi uz pirmo beta versiju, lieliski spēlē ar JavaScript.

Rails 5.1 piedāvā vairākus uzlabojumus, tostarp šifrēšanu, sistēmas testus un JavaScript atkarību pārvaldību no NPM, izmantojot Facebook jauno Dzijas pakotņu pārvaldnieku.

Pārvaldot JavaScript atkarības, izmantojot Dzija, lietotāji var būt atkarīgi no tādām bibliotēkām kā React via NPM. Aktīvi ir pieejami cauruļvadā, un šo atkarību pievienošanai tiek izmantota atkritumu tvertne / dzija. Izstrādātāji, kas strādā ar 5.1 versiju, var arī apkopot JavaScript, izmantojot Webpack moduļu paketi, izmantojot Webpacker gem. Bet Rails 5.1 nomet jQuery kā noklusējuma atkarību. Pārrakstot neuzkrītošo rails-ujs skriptu adapteri, lai izmantotu vaniļas JavaScript, šī atkarība vairs nav nepieciešama.

Rails 5.1 piedāvā arī šifrētu noslēpumu pārvaldības iespēju. Šifrēts noslēpumu fails tiek iestatīts, izmantojot bin / rails secrets: setup iespēju, kas ģenerē galveno atslēgu, kuru uzglabāt ārpus repozitorija, vienlaikus ļaujot izstrādātājiem nodot ražošanas noslēpumus.

Sistēmas testiem Rails 5.1 ietver Capybara Ruby bibliotēkas iesaiņošanu lietojumprogrammu testēšanai. Tas ir iepriekš konfigurēts pārlūkprogrammai Chrome un ir papildināts ar kļūmju ekrānuzņēmumiem. Parametru sūtītāju funkcija piedāvā iespēju piezvanīt sūtītājiem ar pieejamajiem parametriem pirms darbības izsaukšanas. Rails 5.1 vienkāršo veidlapu izveidi, apvienojot divas hierarhijas, form_for un form_tag, ar forma_ ar. Tikmēr virzīto maršrutu funkcija ļauj deklarēt programmatiskus maršrutus, kuri var izmantot Ruby funkciju izpildei atkarībā no parametriem.

"Mums gadu gaitā ir bijušas vētrainas, varbūt pat strīdīgas attiecības ar JavaScript. Bet šis laiks ir pagājis," teikts biļetenā par 5.1.0 izlaidumu, kura autors ir dhh, kurš, domājams, ir Rails dibinātājs Deivids Heinemeiers Hanssons. Biļetenā uzsvērtais JavaScript pēdējos gados ir "ārkārtīgi uzlabojies", parādoties ECMAScript 6 un tādiem rīkiem kā Dzija un Webpack.