Perchè alcune lingue (ad esempio Visual Basic) sono considerate più pronte per l'impresa rispetto ad altre (Python) [closed]

0

Leggendo su vari siti di techie, c'è spesso la sensazione che Microsoft Languages / Oracle ecc. siano considerati "enterprise ready", mentre sembra che ci siano più dubbi su linguaggi come Python o Ruby.

Perché è questo?

Le lingue Microsoft hanno meno buchi di sicurezza o no?

    
posta wobbily_col 07.02.2013 - 17:43
fonte

3 risposte

5

Alcune lingue sono progettate per limitare l'abilità del programmatore di spararsi ai piedi. I concetti linguistici tradizionali percepiti (nella mia esperienza) per ridurre i rischi sono:

  • Sistemi di tipi statici e potenti
  • Oggetto-Orientamento
  • Compilation

C'è anche il fatto che Microsoft / Oracle / etc offre spesso servizi diversi dal linguaggio di programmazione. Ad esempio, se la società utilizza un database Oracle, Java potrebbe apparire come una soluzione meno rischiosa.

Ultimo ma non meno importante, queste aziende offrono supporto aziendale non necessariamente disponibile per altre tecnologie. L'acquisto nell'intera azienda di Azure come azienda ti garantisce supporto e probabilmente utilizzerai un linguaggio .NET per costruire sulla piattaforma.

Inoltre, potrebbe essere solo perché i manager e altri non-tecnici percepiscono le altre società come "più seri", proprio come le aziende preferiscono pagare per prodotti che hanno alternative gratuite e di qualità superiore (si pensi a Perforce vs Git).

    
risposta data 07.02.2013 - 17:49
fonte
4

Bene, ho lavorato in un'impresa che ha usato Python per un sacco di cose, e uno dei miei amici ha scritto Ruby in una compagnia di assicurazioni gool-ol, quindi non so quanto tu possa davvero dire che non sono enterprise ready, ma è vero che Java / C # sono più utilizzati per le "grandi cose".

Quello a cui principalmente si riferisce è il supporto. Quando scegli Microsoft e Oracle, puoi chiamarli a mezzanotte alla vigilia di Natale e urlare contro di loro perché non funziona e risolveranno il tuo problema. Per quelle applicazioni mission critical, è molto, molto importante essere in grado di farlo.

Vendono anche più soluzioni integrate che sono praticamente garantite per lavorare insieme. Se si prende C # con SQL Server e Windows Server, si integrano abbastanza strettamente. Stessa cosa con Java / Oracle o IBM su Power con DB2. Quelle soluzioni hanno uno strumento completo per gestirle che si adattano a ciò che esiste (gli utenti sono gestiti attraverso Active Directory, possono lavorare su continenti, completamente localizzati in swhahili, ecc.). Se l'organizzazione cresce e ha bisogno di integrare un nuovo componente, di solito è piuttosto facile farlo con quelle grandi soluzioni aziendali.

Alla fine, non è proprio il linguaggio in sé, bensì è una grande azienda che può vendere strumenti, soluzioni e supporto.

    
risposta data 07.02.2013 - 18:33
fonte
1

Principalmente perché costano soldi. Quando costruisci un prodotto per fare soldi, hai la tendenza a rispondere ai bisogni delle persone con i soldi. Le aziende amano essere in grado di buttare denaro a un problema per risolverlo.

Al contrario, se sei un'azienda di grandi dimensioni e desideri inserire una funzionalità nel software libero, non puoi semplicemente pagare una società come Microsoft per inserirla. Generalmente devi acquisire esperienza interna per implementarla, oppure convincere la comunità nel merito. Ciò offre maggiore flessibilità a scapito della necessità di richiedere più rapporti con i partner rispetto a una relazione con il fornitore del software.

In altre parole, i fattori aziendali sono maggiori dei fattori tecnici, ma ciò non significa che i fattori tecnici non siano influenzati. Il software aziendale tende a essere consegnato come soluzioni integrate chiavi in mano dagli strumenti attraverso la distribuzione. Il software libero tende a seguire un approccio di assemblaggio obbligatorio.

    
risposta data 07.02.2013 - 18:21
fonte

Leggi altre domande sui tag