Perché lo sviluppatore PHP dovrebbe usare / imparare l'editor VI? [chiuso]

-3

Perché lo sviluppatore PHP dovrebbe usare / imparare l'editor VI?

Voglio dire che ci sono 10 editori più incredibili come PHPStorm, Netbeans che aumentano la produttività degli sviluppatori.

Consideriamo solo PHPStorm . Non mi sono mai stupito di un editor come PHPStorm.

Ha migliaia di funzioni. Fin dai suggerimenti sulla sintassi, mostrando errori deboli, avvisi, notifiche ecc.

Quando confrontiamo il numero di funzioni fornite da VI Editor & quelli forniti da editor come PHPStorm, li vediamo come 10 vs 1000 funzionalità.

La mia domanda è: perché dovrei imparare a usare l'editor Vi?

P.S. Sono un utente di linux intermedio (Ubuntu).

Modifica: chi mi ha detto di imparare VI? = > Normalmente la sua competenza richiesta in Job Listing per lo sviluppatore PHP

Grazie.

    
posta Pratik C Joshi 14.06.2015 - 08:27
fonte

3 risposte

7

Una possibile ragione è che potrebbe essere necessario modificare i file PHP da remoto ed è molto più veloce accedere al server tramite SSH rispetto al desktop remoto.

Tuttavia, protocolli come SSH forniscono solo l'accesso all'interfaccia di comando (testuale) del server, ad esempio il prompt di Terminale / Comando. Editor come Netbeans richiedono un'interfaccia grafica, sì, è possibile accedere al server tramite desktop remoto, ma chiunque lo abbia fatto sa che è dolorosamente lento e improduttivo.

VI / VIM è un editor di testo, non richiede un'interfaccia grafica, preinstallata sulla maggior parte delle piattaforme Unix / Linus e può essere eseguita in un terminale, quindi è particolarmente utile per modificare i file da remoto quando solo avere accesso all'interfaccia di comando del server. Un altro uso comune per VI / VIM è di modificare i file di amministrazione del sistema che richiedono i privilegi di root (mi riferisco alle piattaforme Unix / Linux) poiché VI / VIM può essere facilmente eseguito con il comando "sudo".

    
risposta data 14.06.2015 - 09:00
fonte
5

Risposta semplice: perché ne avrai bisogno.

Sugli ambienti produttivi unix / linux probabilmente troverai solo vi / vim come editor.

Inoltre non ti sarà permesso installare software aggiuntivo sul server produttivo (come il tuo IDE preferito).

Inoltre, la maggior parte degli ambienti server non avrà GUI (quando si parla di unix / linux)  Pertanto, il desktop remoto non è disponibile qui.

Quindi devi vivere con un semplice editor (come vi) tramite ssh.

    
risposta data 14.06.2015 - 09:49
fonte
2

IMHO "perché potrebbe essere necessario modificare i file sul server di produzione e non c'è IDE / GUI sui server di produzione" non può essere la risposta.

  1. In qualsiasi negozio professionale uno sviluppatore ordinario ha nessun accesso al server di produzione. Se il negozio ha una dimensione di > 10 dipendenti avranno un team di amministratori / deviatori di sistema per questo.

  2. Anche se riteniamo che il team sia così piccolo da non avere amministratori di sistema / devops, allora forse lo sviluppatore ha anche il ruolo di amministratore di sistema / devope, il che significa che potrebbe aver bisogno di vim (o emacs, nano) ...) come parte di questo ruolo .

  3. Tutti gli IDE hanno la possibilità (nativa o tramite plug-in) di accedere ai file su un file system rimovibile semplicemente eseguendo il tunneling tramite SSH / FTP o qualunque cosa sia disponibile per raggiungere i server. Quindi, anche se il negozio non ha un processo di distribuzione o la distribuzione è interrotta, sarai facilmente in grado di modificare i file sul server senza vim.

Perché uno sviluppatore PHP dovrebbe utilizzare / imparare l'editor VI allora?

Questa è la ragione per cui posso pensare:

  1. Tutti degli strumenti che hai menzionato nella tua domanda sono disponibili anche con vim. L'evidenziazione della sintassi, xdebug, ecc. Sono tutti lì. Hai solo bisogno di installare plugin e configurare vim per soddisfare le tue esigenze. Ovviamente "phpStorm" è un IDE adattato allo sviluppo PHP, quindi ha tutti gli elementi pronti all'uso, mentre vim è un editor di testo estensibile, il che significa che devi lavorare molto per adattarlo al tuo flusso di lavoro. Puoi dare un'occhiata a questo video che mostra una fantastica configurazione di tmux + vim - noterai che il suo vim non è sembra più il tuo vim.

  2. Penso che quando si padroneggia un flusso di lavoro senza mouse solo tastiera sia effettivamente più veloce. Questo richiede molto prattico, ma quando ti trovi accanto a un vim-mago ti verrà semplicemente ripulito quanto velocemente è. Un ritmo di lavoro che IMHO non può mai essere raggiunto da IDE regolari.

  3. Poiché non tutto funziona immediatamente, avrai molte più informazioni su come le cose funzionino effettivamente dietro le quinte. Anche in questo caso si tratta di un enorme investimento nel tempo rispetto a una soluzione pronta all'uso.

  4. Come già delineato, vim appare piuttosto spoglio rispetto a un IDE in piena regola. Questo ti dà anche la possibilità di creare un flusso di lavoro personale da solo. Tutte le combinazioni di tasti, macro, plugin, visual appereance - l'intero comportamento dell'editor è sotto il tuo controllo. Si crea il proprio flusso di lavoro personale invece di utilizzare quello fornito dall'IDE.

  5. Usarlo porta un sentimento caldo e appassionato di essere una vecchia scuola.

Quindi, per riassumere, è un enorme investimento di tempo per impararlo, ma potrebbe avere senso perché ottieni molte informazioni e puoi creare il tuo flusso di lavoro.

Se non sei solo uno sviluppatore, ma anche il ruolo di un amministratore di sistema o DevOps, è una competenza chiaramente necessaria per interagire con i server.

    
risposta data 14.06.2015 - 10:13
fonte

Leggi altre domande sui tag