Affidando componenti di terze parti nei tuoi progetti

4

Come fate ad affidare pacchetti, librerie, ecc. di terze parti nei vostri progetti? In altre parole, quali passi, se del caso, prendi prima di incorporare un componente esterno nel tuo progetto? Il numero totale di download soddisfa la tua sicurezza che è sicuro? È considerato sicuro se lo hai scaricato da github semplicemente perché era github? Che dire degli aggiornamenti? Come si può essere certi che il componente verrà tenuto aggiornato quando tornerà tra qualche anno per aggiornare la tua applicazione?
** Se questo non è il forum giusto per postare questo - per favore dimmi quale sarebbe appropriato.

    
posta KFP 20.10.2016 - 15:06
fonte

2 risposte

3

Fare la dovuta diligenza è parte del lavoro quando si selezionano componenti di terze parti, si assumono consulenti o si assegnano i membri del progetto interni per quella materia.

Ogni progetto avrà il suo equilibrio tra sicurezza (paranoia), costo e velocità di sviluppo.

Durante la creazione di applicazioni bancarie critiche sono stato in progetti che accoppiano sempre il programma e non includono mai dipendenze esterne.

La maggior parte dei progetti su cui lavoro è sufficiente per controllare la popolarità dei componenti e controllare che non vediamo una connettività esterna evidente durante lo sviluppo e il test.

Ma alla fine della giornata questa è una decisione commerciale, non tecnica.

    
risposta data 20.10.2016 - 15:18
fonte
2

what steps, if any, do you take before incorporating an outside component into your project?

Alcune aziende e flussi di lavoro linguistici sono molto riluttanti a incorporare qualsiasi componente che non proviene dal sistema operativo o dal fornitore della piattaforma. Di solito la prima considerazione non è tanto l'affidabilità quanto le licenze. Ovviamente non è possibile utilizzare il software GPL in software proprietario, ma molte aziende diffidano anche delle licenze aperte non virali.

Does the sheer number of downloads satisfy your assurance that it is safe? Is it considered safe if you downloaded it from github simply because it was github?

Molte persone nelle comunità Open Source e Javascript considerano tali ipotesi come ragionevoli. Altri sono più cauti. I commit firmati (GPG, ecc.) Sono un modo per rintracciare le modifiche all'origine a sviluppatori specifici.

What about updates? How can you be assured that the component will be kept up to date when you go back years from now to update your application?

Beh, non puoi davvero, a meno che tu non abbia una garanzia dal venditore. E questo di solito arriverà con una fine della vita intenzionale o implicita. Potresti essere costretto a riscrivere un blocco della tua applicazione perché un componente è diventato obsoleto.

Questo porta alla scelta tra copiare il codice sorgente nell'applicazione (stabile, ma non aggiornato automaticamente) o scaricarlo come parte del processo di compilazione (aggiornato automaticamente ma non stabile).

    
risposta data 20.10.2016 - 17:30
fonte

Leggi altre domande sui tag