Äau Habr! PiedÄvÄju jÅ«su uzmanÄ«bai raksta tulkojumu
Lai gan Ŕķiet, ka lÄ«dz 2020. gadam esam palikuÅ”as tikai dažas dienas, Ŕīs dienas ir svarÄ«gas arÄ« programmatÅ«ras izstrÄdes jomÄ. Å ajÄ rakstÄ mÄs redzÄsim, kÄ nÄkamais 2020. gads mainÄ«s programmatÅ«ras izstrÄdÄtÄju dzÄ«vi.
ProgrammatÅ«ras izstrÄdes nÄkotne ir klÄt!
TradicionÄlÄ programmatÅ«ras izstrÄde ir programmatÅ«ras izstrÄde, rakstot kodu, ievÄrojot dažus fiksÄtus noteikumus. TaÄu mÅ«sdienu programmatÅ«ras izstrÄde ir piedzÄ«vojusi paradigmas maiÅu ar mÄkslÄ«gÄ intelekta, maŔīnmÄcÄ«bas un dziļÄs mÄcÄ«Å”anÄs sasniegumiem. IntegrÄjot Ŕīs trÄ«s tehnoloÄ£ijas, izstrÄdÄtÄji varÄs izveidot programmatÅ«ras risinÄjumus, kas mÄcÄs no instrukcijÄm un pievieno papildu funkcijas un modeļus datiem, kas nepiecieÅ”ami, lai iegÅ«tu vÄlamo rezultÄtu.
MÄÄ£inÄsim ar kodu
Laika gaitÄ neironu tÄ«klu programmatÅ«ras izstrÄdes sistÄmas ir kļuvuÅ”as sarežģītÄkas integrÄcijas, kÄ arÄ« funkcionalitÄtes un saskarÅu lÄ«meÅu ziÅÄ. PiemÄram, izstrÄdÄtÄji var izveidot ļoti vienkÄrÅ”u neironu tÄ«klu ar Python 3.6. Å eit ir programmas piemÄrs, kas veic binÄro klasifikÄciju ar 1 vai 0.
Protams, mÄs varam sÄkt, izveidojot neironu tÄ«kla klasi:
importÄt NumPy kÄ NP
X=np.array([[0,1,1,0],[0,1,1,1],[1,0,0,1]])
y=np.array([[0],[1],[1]])
SigmoidÄlÄs funkcijas pielietojums:
def sigmoid ():
return 1/(1 + np.exp(-x))
def derivatives_sigmoid ():
return x * (1-x)
Modeļa apmÄcÄ«ba ar sÄkotnÄjiem svariem un novirzÄm:
epoch=10000
lr=0.1
inputlayer_neurons = X.shape[1]
hiddenlayer_neurons = 3
output_neurons = 1
wh=np.random.uniform(size=(inputlayer_neurons,hiddenlayer_neurons))
bh=np.random.uniform(size=(1,hiddenlayer_neurons))
wout=np.random.uniform(size=(hiddenlayer_neurons,output_neurons))
bout=np.random.uniform(size=(1,output_neurons))
IesÄcÄjiem, ja jums nepiecieÅ”ama palÄ«dzÄ«ba saistÄ«bÄ ar neironu tÄ«kliem, varat meklÄt internetÄ populÄrÄko programmatÅ«ras izstrÄdes uzÅÄmumu vietnes vai nolÄ«gt AI/ML izstrÄdÄtÄjus, lai tie strÄdÄtu pie sava projekta.
Koda modifikÄcija, izmantojot izvades slÄÅa neironu
hidden_layer_input1=np.dot(X,wh)
hidden_layer_input=hidden_layer_input1 + bh
hiddenlayer_activations = sigmoid(hidden_layer_input)
output_layer_input1=np.dot(hiddenlayer_activations,wout)
output_layer_input= output_layer_input1+ bout
output = sigmoid(output_layer_input)
SlÄptÄ koda slÄÅa aprÄÄ·inu kļūda
E = y-output
slope_output_layer = derivatives_sigmoid(output)
slope_hidden_layer = derivatives_sigmoid(hiddenlayer_activations)
d_output = E * slope_output_layer
Error_at_hidden_layer = d_output.dot(wout.T)
d_hiddenlayer = Error_at_hidden_layer * slope_hidden_layer
wout += hiddenlayer_activations.T.dot(d_output) *lr
bout += np.sum(d_output, axis=0,keepdims=True) *lr
wh += X.T.dot(d_hiddenlayer) *lr
bh += np.sum(d_hiddenlayer, axis=0,keepdims=True) *lr
Izvade
print (output)
[[0.03391414]
[0.97065091]
[0.9895072 ]]
VienmÄr ir vÄrts sekot lÄ«dzi jaunÄkajÄm programmÄÅ”anas valodÄm un kodÄÅ”anas paÅÄmieniem, un programmÄtÄjiem arÄ« jÄapzinÄs daudzi jauni rÄ«ki, kas palÄ«dz padarÄ«t viÅu lietotnes atbilstoÅ”as āājauniem lietotÄjiem.
2020. gadÄ programmatÅ«ras izstrÄdÄtÄjiem vajadzÄtu apsvÄrt iespÄju savos produktos iekļaut Å”os 5 programmatÅ«ras izstrÄdes rÄ«kus neatkarÄ«gi no izmantotÄs programmÄÅ”anas valodas:
1. DabiskÄs valodas apstrÄde (NLP)
Ar tÄrzÄÅ”anas robotu, kas racionalizÄ klientu apkalpoÅ”anu, NLP piesaista programmÄtÄju uzmanÄ«bu, kuri strÄdÄ pie modernas programmatÅ«ras izstrÄdes. ViÅi izmanto NLTK rÄ«ku komplektus, piemÄram, Python NLTK, lai Ätri iekļautu NLP tÄrzÄÅ”anas robotos, digitÄlajos palÄ«gos un digitÄlajos produktos. LÄ«dz 2020. gada vidum vai tuvÄkajÄ nÄkotnÄ jÅ«s redzÄsiet, ka NLP kļūs nozÄ«mÄ«gÄka visÄs jomÄs, sÄkot no mazumtirdzniecÄ«bas uzÅÄmumiem lÄ«dz autonomiem transportlÄ«dzekļiem un ierÄ«cÄm mÄjÄm un birojam.
PÄrejot uz priekÅ”u ar labÄkiem programmatÅ«ras izstrÄdes rÄ«kiem un tehnoloÄ£ijÄm, jÅ«s varat sagaidÄ«t, ka programmatÅ«ras izstrÄdÄtÄji izmantos NLP dažÄdos veidos, sÄkot ar balss lietotÄja saskarnÄm un beidzot ar daudz vienkÄrÅ”Äku izvÄlÅu navigÄciju, sentimenta analÄ«zi, konteksta identificÄÅ”anu, emocijÄm un datu pieejamÄ«bu. Tas viss bÅ«s pieejams lielÄkajai daļai lietotÄju, un uzÅÄmumi lÄ«dz 430. gadam varÄs sasniegt produktivitÄtes pieaugumu lÄ«dz pat 2020 miljardiem USD (saskaÅÄ ar Deloitte citÄto IDC).
2. GraphQL, kas aizstÄj REST Apis
SaskaÅÄ ar izstrÄdÄtÄju teikto manÄ uzÅÄmumÄ, kas ir Ärzonas programmatÅ«ras izstrÄdes uzÅÄmums, REST API zaudÄ savu dominÄjoÅ”o stÄvokli pÄr lietojumprogrammu visumu, jo notiek lÄna datu ielÄde, kas jÄveic no vairÄkiem URL atseviŔķi.
GraphQL ir jauna tendence un labÄka alternatÄ«va uz REST balstÄ«tai arhitektÅ«rai, kas izgÅ«st visus attiecÄ«gos datus no vairÄkÄm vietnÄm, izmantojot vienu vaicÄjumu. Tas uzlabo klienta un servera mijiedarbÄ«bu un samazina latentumu, padarot lietojumprogrammu lietotÄjam ievÄrojami atsaucÄ«gÄku.
Izmantojot GraphQL programmatÅ«ras izstrÄdei, varat uzlabot savas programmatÅ«ras izstrÄdes prasmes. TurklÄt tas prasa mazÄk koda nekÄ REST Api un ļauj veikt sarežģītus vaicÄjumus dažÄs vienkÄrÅ”Äs rindÄs. To var aprÄ«kot arÄ« ar vairÄkiem Backand as a Service (BaaS) lÄ«dzekļiem, kas programmatÅ«ras izstrÄdÄtÄjiem padara to viegli lietojamu dažÄdÄs programmÄÅ”anas valodÄs, tostarp Python, Node.js, C++ un Java.
3. Zems kodÄÅ”anas lÄ«menis/nav koda (zems kods)
Visi zema koda programmatÅ«ras izstrÄdes rÄ«ki sniedz daudzas priekÅ”rocÄ«bas. Tam vajadzÄtu bÅ«t pÄc iespÄjas efektÄ«vÄkam, rakstot daudzas programmas no nulles. Zems kods nodroÅ”ina iepriekÅ” konfigurÄtu kodu, ko var iegult lielÄkÄs programmÄs. Tas ļauj pat neprogrammÄtÄjiem Ätri un vienkÄrÅ”i izveidot sarežģītus produktus un paÄtrinÄt mÅ«sdienu attÄ«stÄ«bas ekosistÄmu.
SaskaÅÄ ar TechRepublic ziÅojumu bezkoda/zema koda rÄ«ki jau tiek izmantoti tÄ«mekļa portÄlos, programmatÅ«ras sistÄmÄs, mobilajÄs lietojumprogrammÄs un citÄs jomÄs. Zema koda rÄ«ku tirgus pieaugs lÄ«dz 15 miljardiem USD lÄ«dz 2020. gadam. Å ie rÄ«ki apstrÄdÄ visu, tostarp darbplÅ«smas loÄ£ikas pÄrvaldÄ«bu, datu filtrÄÅ”anu, importÄÅ”anu un eksportÄÅ”anu. Å eit ir labÄkÄs zemÄ koda platformas 2020. gadÄ:
- Microsoft PowerApps
- Mendiks
- ÄrsistÄmas
- Zoho veidotÄjs
- Salesforce App Cloud
- ÄtrÄ bÄze
- Pavasara zÄbaks
4. 5G vilnis
5G savienojums lielÄ mÄrÄ ietekmÄs mobilo lietotÅu un programmatÅ«ras izstrÄdi, kÄ arÄ« tÄ«mekļa izstrÄdi. Galu galÄ ar tÄdÄm tehnoloÄ£ijÄm kÄ IoT viss ir saistÄ«ts. TÄdÄjÄdi ierÄ«ces programmatÅ«ra maksimÄli izmantos ÄtrdarbÄ«gu bezvadu tÄ«klu iespÄjas ar 5G.
NesenÄ intervijÄ Digital Trends Motorola produktu viceprezidents Dens Derijs sacÄ«ja, ka "nÄkamajos gados 5G nodroÅ”inÄs ÄtrÄkus datus, lielÄku joslas platumu un paÄtrinÄs tÄlruÅa programmatÅ«ru 10 reizes ÄtrÄk nekÄ esoÅ”Äs bezvadu tehnoloÄ£ijas."
Å ajÄ kontekstÄ programmatÅ«ras uzÅÄmumi strÄdÄs, lai 5G ieviestu modernÄs lietojumprogrammÄs. PaÅ”laik vairÄk nekÄ 20 operatori ir paziÅojuÅ”i par savu tÄ«klu jauninÄjumiem. TÄtad izstrÄdÄtÄji tagad sÄks strÄdÄt pie atbilstoÅ”o API izmantoÅ”anas, lai izmantotu 5G priekÅ”rocÄ«bas. TehnoloÄ£ija ievÄrojami uzlabos:
- Tīkla programmu droŔība, īpaŔi tīkla sagrieŔanai.
- NodroÅ”iniet jaunus veidus, kÄ rÄ«koties ar lietotÄju ID.
- Ä»auj pievienot jaunas funkcionalitÄtes lietojumprogrammÄm ar zemu latentumu.
- IetekmÄs AR/VR sistÄmas attÄ«stÄ«bu.
5. VienkÄrÅ”a autentifikÄcija
AutentifikÄcija arvien vairÄk kļūst par efektÄ«vu procesu sensitÄ«vu datu aizsardzÄ«bai. SarežģītÄ tehnoloÄ£ija ir ne tikai neaizsargÄta pret programmatÅ«ras uzlauÅ”anu, bet arÄ« atbalsta mÄkslÄ«go intelektu un pat kvantu skaitļoÅ”anu. TaÄu programmatÅ«ras izstrÄdes tirgÅ« jau ir redzami daudzi jauni autentifikÄcijas veidi, piemÄram, balss analÄ«ze, biometrija un sejas atpazÄ«Å”ana.
Å ajÄ posmÄ hakeri atrod dažÄdus veidus, kÄ viltot tieÅ”saistes lietotÄju ID un paroles. TÄ kÄ mobilo sakaru lietotÄji jau ir pieraduÅ”i piekļūt saviem viedtÄlruÅiem ar pirkstu nospiedumu vai sejas skenÄÅ”anu, tÄdÄjÄdi izmantojot autentifikÄcijas rÄ«kus, viÅiem nebÅ«s vajadzÄ«gas jaunas verifikÄcijas iespÄjas, jo bÅ«s mazÄka kiberzÄdzÄ«bu iespÄjamÄ«ba. Å eit ir daži daudzfaktoru autentifikÄcijas rÄ«ki ar SSL Å”ifrÄÅ”anu.
- Soft Tokens pÄrvÄrÅ” jÅ«su viedtÄlruÅus par Ärtiem daudzfaktoru autentifikatoriem.
- EGrid veidnes ir viegli lietojams un populÄrs autentifikÄcijas veids nozarÄ.
- Dažas no labÄkajÄm autentifikÄcijas programmÄm uzÅÄmumiem ir RSA SecurID Access, OAuth, Ping Identity, Authx un Aerobase.
IndijÄ un ASV ir programmatÅ«ras uzÅÄmumi, kas veic plaÅ”us pÄtÄ«jumus autentifikÄcijas un biometrijas jomÄ. ViÅi arÄ« reklamÄ AI, lai izveidotu izcilu programmatÅ«ru balss, sejas ID, uzvedÄ«bas un biometriskajai autentifikÄcijai. Tagad varat aizsargÄt digitÄlos kanÄlus un uzlabot platformas iespÄjas.
SecinÄjums
Å Ä·iet, ka 2020. gadÄ programmÄtÄju dzÄ«ve kļūs mazÄk izaicinoÅ”a, jo programmatÅ«ras izstrÄdes temps, visticamÄk, paÄtrinÄsies. Pieejamie rÄ«ki kļūs vieglÄk lietojami. Galu galÄ Å”Ä« attÄ«stÄ«ba radÄ«s dinamisku pasauli, kas ieies jaunÄ digitÄlajÄ laikmetÄ.
Avots: www.habr.com