5 L-Aħjar Prattiċi għall-Iżvilupp tas-Software fl-2020

Ħej Habr! Nippreżenta għall-attenzjoni tiegħek it-traduzzjoni tal-artiklu "5 Suġġerimenti dwar it-tagħlim tal-kodifikazzjoni - Pariri Ġenerali għall-Programmaturi" minn kristencarter7519.

Għalkemm jidher li ninsabu biss ftit jiem bogħod mill-2020, dawn il-ġranet huma importanti wkoll fil-qasam tal-iżvilupp tas-software. Hawnhekk f'dan l-artikolu, se naraw kif is-sena li ġejja 2020 se tbiddel il-ħajja tal-iżviluppaturi tas-softwer.

5 L-Aħjar Prattiċi għall-Iżvilupp tas-Software fl-2020

Il-futur tal-iżvilupp tas-softwer huwa hawn!

L-iżvilupp ta 'softwer tradizzjonali huwa l-iżvilupp ta' softwer billi tikteb kodiċi wara xi regoli fissi. Iżda l-iżvilupp modern tas-softwer rat bidla fil-paradigma b'avvanzi fl-intelliġenza artifiċjali, it-tagħlim tal-magni u t-tagħlim fil-fond. Billi jintegraw dawn it-tliet teknoloġiji, l-iżviluppaturi jkunu jistgħu joħolqu soluzzjonijiet ta 'softwer li jitgħallmu mill-istruzzjonijiet u jżidu karatteristiċi u mudelli addizzjonali mad-dejta meħtieġa biex jipproduċu r-riżultat mixtieq.

Ejja nippruvaw b'xi kodiċi

Maż-żmien, is-sistemi ta 'żvilupp ta' softwer tan-netwerk newrali saru aktar kumplessi f'termini ta 'integrazzjoni kif ukoll livelli ta' funzjonalità u interfaces. L-iżviluppaturi, pereżempju, jistgħu jibnu netwerk newrali sempliċi ħafna b'Python 3.6. Hawn hu programm eżempju li jagħmel klassifikazzjoni binarja b'1s jew 0s.

Naturalment, nistgħu nibdew billi noħolqu klassi tan-netwerk newrali:

importazzjoni NumPy bħala NP

X=np.array([[0,1,1,0],[0,1,1,1],[1,0,0,1]])
y=np.array([[0],[1],[1]])

Applikazzjoni tal-funzjoni sigmojde:

def sigmoid ():
   return 1/(1 + np.exp(-x))
def derivatives_sigmoid ():
   return x * (1-x)

It-taħriġ ta' mudell b'piżijiet inizjali u preġudizzji:

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))

Għal dawk li jibdew, jekk għandek bżonn għajnuna fir-rigward tan-netwerks newrali, tista 'tfittex l-internet għal websajts tal-aqwa kumpaniji tal-iżvilupp tas-softwer jew tista' timpjega żviluppaturi AI/ML biex jaħdmu fuq il-proġett tiegħek.

Modifika tal-kodiċi bl-użu ta’ newron ta’ saff ta’ output

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)

Żball ta' kalkolu għal saff ta' kodiċi moħbi

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

Output

print (output)

[[0.03391414]
[0.97065091]
[0.9895072 ]]

Dejjem ta 'min iżomm ruħu aġġornat bl-aħħar lingwi ta' programmar u tekniki ta 'kodifikazzjoni, u l-programmaturi għandhom ikunu konxji wkoll mill-ħafna għodod ġodda li jgħinu biex l-apps tagħhom ikunu rilevanti għal utenti ġodda.

Fl-2020, l-iżviluppaturi tas-softwer għandhom jikkunsidraw li jinkorporaw dawn il-5 għodod għall-iżvilupp tas-softwer fil-prodotti tagħhom, irrispettivament minn liema lingwa ta' programmar jużaw:

1. Ipproċessar tal-Lingwa Naturali (NLP)

B'chatbot li jissimplifika s-servizz tal-konsumatur, NLP qed jikseb l-attenzjoni tal-programmaturi li jaħdmu fuq żvilupp ta 'softwer modern. Huma jużaw settijiet ta' għodda NLTK bħal Python NLTK biex jinkorporaw malajr l-NLP fi chatbots, assistenti diġitali u prodotti diġitali. Sa nofs l-2020 jew fil-futur qarib, se tara l-NLP isir aktar importanti f’kollox minn negozji tal-bejgħ bl-imnut għal vetturi awtonomi u apparati għad-dar u l-uffiċċju.

Nimxu 'l quddiem b'għodod u teknoloġiji aħjar għall-iżvilupp tas-softwer, tista' tistenna li l-iżviluppaturi tas-softwer jużaw l-NLP f'varjetà ta' modi, minn interfaces tal-utent ibbażati fuq il-vuċi għal navigazzjoni tal-menu ħafna eħfef, analiżi tas-sentimenti, identifikazzjoni tal-kuntest, emozzjoni u aċċessibilità tad-dejta. Dan kollu se jkun disponibbli għall-maġġoranza tal-utenti, u l-kumpaniji jkunu jistgħu jiksbu tkabbir fil-produttività sa $430 biljun sal-2020 (skont IDC, iċċitata minn Deloitte).

2. GraphQL li jissostitwixxi REST Apis

Skont l-iżviluppaturi fid-ditta tiegħi, li hija kumpanija ta 'żvilupp ta' softwer offshore, l-API REST qed titlef id-dominanza tagħha fuq l-univers tal-applikazzjoni minħabba t-tagħbija bil-mod tad-dejta li jeħtieġ li ssir minn URLs multipli individwalment.

GraphQL hija xejra ġdida u alternattiva aħjar għall-arkitettura bbażata fuq REST li tirkupra d-dejta rilevanti kollha minn siti multipli billi tuża mistoqsija waħda. Dan itejjeb l-interazzjoni klijent-server u jnaqqas il-latenza, u jagħmel l-applikazzjoni ferm aktar reattiva għall-utent.

Tista' ttejjeb il-ħiliet tal-iżvilupp tas-softwer tiegħek meta tuża GraphQL għall-iżvilupp tas-softwer. Barra minn hekk, jeħtieġ inqas kodiċi minn REST Api u jippermettilek tagħmel mistoqsijiet kumplessi fi ftit linji sempliċi. Jista' jkun mgħammar ukoll b'numru ta' karatteristiċi ta' Backand as a Service (BaaS) li jagħmluha faċli biex tużaha minn żviluppaturi ta' softwer f'lingwi ta' programmar differenti, inklużi Python, Node.js, C++ u Java.

3. Livell ta 'kodifikazzjoni baxx/ebda kodiċi (kodiċi baxx)

L-għodod kollha għall-iżvilupp tas-softwer b'kodiċi baxx jipprovdu ħafna benefiċċji. Għandu jkun effiċjenti kemm jista 'jkun meta tikteb ħafna programmi mill-bidu. Kodiċi baxx jipprovdi kodiċi prekonfigurat li jista 'jiġi inkorporat fi programmi akbar. Dan jippermetti anki dawk li mhumiex programmaturi biex joħolqu malajr u faċilment prodotti kumplessi u jaċċelleraw l-ekosistema ta 'żvilupp modern.

Skont rapport TechRepublic, għodod mingħajr kodiċi/kodiċi baxx diġà qed jintużaw f'portali tal-web, sistemi ta 'softwer, applikazzjonijiet mobbli u oqsma oħra. Is-suq tal-għodod tal-kodiċi baxx se jikber għal $15-il biljun sal-2020. Dawn l-għodod jimmaniġġjaw kollox, inkluż il-ġestjoni tal-loġika tal-fluss tax-xogħol, il-filtrazzjoni tad-dejta, l-importazzjoni u l-esportazzjoni. Hawn huma l-aqwa pjattaformi ta’ kodiċi baxx fl-2020:

  • Microsoft PowerApps
  • Mendix
  • Outsystems
  • Ħallieq Zoho
  • Salesforce App Cloud
  • Bażi Quick
  • Ibbutjar tar-Rebbiegħa

4. mewġa 5G

Il-konnettività 5G se tħalli impatt kbir fuq l-iżvilupp tal-app mobbli u tas-softwer kif ukoll l-iżvilupp tal-web. Wara kollox, b'teknoloġiji bħall-IoT, kollox huwa konness. Għalhekk, is-softwer tal-apparat se jagħmel l-aħjar mill-kapaċitajiet ta 'netwerks mingħajr fili ta' veloċità għolja b'5G.

F'intervista reċenti ma 'Digital Trends, Dan Dery, il-viċi president tal-prodott ta' Motorola, qal li "fis-snin li ġejjin, 5G se jwassal dejta aktar mgħaġġla, bandwidth ogħla, u jaċċellera s-softwer tat-telefon 10 darbiet aktar malajr mit-teknoloġiji mingħajr fili eżistenti."

F'dan id-dawl, il-kumpaniji tas-softwer se jaħdmu biex idaħħlu l-5G f'applikazzjonijiet moderni. Bħalissa, aktar minn 20 operatur ħabbru titjib fin-netwerks tagħhom. Għalhekk, l-iżviluppaturi issa se jibdew jaħdmu fuq l-użu tal-APIs xierqa biex jieħdu vantaġġ mill-5G. It-teknoloġija se ttejjeb b'mod sinifikanti dan li ġej:

  • Sigurtà tal-programm tan-netwerk, speċjalment għal Netwerk Slicing.
  • Ipprovdi modi ġodda biex timmaniġġja l-IDs tal-utenti.
  • Jippermettilek iżżid funzjonalità ġdida ma' applikazzjonijiet b'latenza baxxa.
  • Se jinfluwenza l-iżvilupp tas-sistema AR/VR.

5. Awtentikazzjoni faċli

L-awtentikazzjoni qed issir dejjem aktar proċess effettiv għall-protezzjoni tad-dejta sensittiva. It-teknoloġija sofistikata mhix biss vulnerabbli għall-hacks tas-softwer, iżda tappoġġja wkoll l-intelliġenza artifiċjali u anke l-komputazzjoni kwantistika. Iżda s-suq tal-iżvilupp tas-softwer diġà qed jara ħafna tipi ġodda ta 'awtentikazzjoni, bħall-analiżi tal-vuċi, il-bijometrika u r-rikonoxximent tal-wiċċ.

F'dan l-istadju, il-hackers isibu modi differenti biex jiffissaw l-IDs u l-passwords tal-utenti onlajn. Peress li l-utenti tal-mowbajl huma diġà mdorrijin jaċċessaw l-ismartphones tagħhom b’marki tas-swaba’ jew skan tal-wiċċ, u b’hekk jużaw għodod ta’ awtentikazzjoni, mhux se jkollhom bżonn kapaċitajiet ġodda ta’ verifika peress li l-probabbiltà ta’ serq ċibernetiku se tkun inqas. Hawn huma xi għodod ta 'awtentikazzjoni b'ħafna fatturi b'encryption SSL.

  • Soft Tokens jibdlu l-ismartphones tiegħek f'awtentikaturi konvenjenti b'ħafna fatturi.
  • Il-mudelli EGrid huma forma faċli biex tużah u popolari ta' awtentikaturi fl-industrija.
  • Uħud mill-aqwa programmi ta 'awtentikazzjoni għan-negozji huma RSA SecurID Access, OAuth, Ping Identity, Authx, u Aerobase.

Hemm kumpaniji tas-softwer fl-Indja u fl-Istati Uniti li jagħmlu riċerka estensiva fil-qasam tal-awtentikazzjoni u l-bijometrija. Qed jippromwovu wkoll l-AI biex joħolqu softwer superjuri għall-vuċi, l-id tal-wiċċ, l-imġieba u l-awtentikazzjoni bijometrika. Issa tista 'tipproteġi l-kanali diġitali u ttejjeb il-kapaċitajiet tal-pjattaforma.

Konklużjoni

Jidher li l-ħajja għall-programmaturi se ssir inqas ta 'sfida fl-2020 hekk kif il-pass tal-iżvilupp tas-softwer x'aktarx li jaċċellera. Għodod disponibbli se jsiru aktar faċli biex jintużaw. Fl-aħħar mill-aħħar, dan l-avvanz se joħloq dinja dinamika li tidħol f'era diġitali ġdida.

Sors: www.habr.com

Żid kumment