Rifiutarsi di utilizzare un framework PHP sarebbe una cattiva idea? [duplicare]

1

Mi sento abbastanza competente nel creare un numero di applicazioni in PHP e finora non ho visto la necessità di utilizzare uno dei framework popolari (CakePHP, Zend, ecc.)

Come programmatore mi dà conforto sapere esattamente cosa sta facendo il mio codice e suppongo che abbia avuto senso da quando ho imparato la lingua.

Mi ignora che non voglio usare uno di questi framework mainstream? Farà male alla mia produttività? Perché non dovrei creare solo il mio codice base che ha senso per me?

Oltre a ostacolare in seguito le scelte di carriera in cui molti ruoli potrebbero richiedere esperienza nel framework, non sono sicuro che mi manchi ...

    
posta Anonymous 22.11.2011 - 15:45
fonte

5 risposte

2

L'unica cosa ragionevole che potrei considerare come un vantaggio di scrivere il tuo è la conoscenza acquisita nell'esperienza. Leggere la fonte di un quadro e scrivere il proprio sono due esperienze completamente diverse. Anche in quella situazione, tuttavia, si riduce ancora a quanto si è disposti a ignorare costrutti e standard preesistenti. Dico ragionevoli, perché c'è la remota possibilità che tu possa essere un genio, o fortunato, e inventarti qualcosa di sorprendente attraverso i tuoi limiti di auto imposizione. Il tuo potenziale inventivo non trarrà granché dall'ignorare lo status quo, se addirittura lo portassi così lontano.

Per quanto riguarda il motivo per cui non dovresti semplicemente creare qualcosa che abbia senso per te, beh: e se passassi un po 'di tempo a creare un quadro preesistente per te? Potresti forse risparmiare tempo a lungo termine, rispetto a quando fai la tua cosa? O se il tempo non ti preoccupa, quindi inserisci quello che stai cercando di ottenere da questo in quella domanda e pensa a lungo e duramente.

Fondamentalmente, se scrivere la tua struttura è qualcosa che stai prendendo seriamente in considerazione, ti ritrovi a diventare intimamente familiare con il materiale che è buono se sei specializzato nel campo. Se ritieni che il tuo ingegno sia abbastanza elastico da non perdere nessuna grande idea immergendoti nelle API esistenti. In alternativa, se non sei sicuro della tua reale familiarità con un argomento di fronte a tutto ciò che è là fuori, prendere Cake per un giro potrebbe farti un mondo di bene e darti più idee di quante ne avresti mai viste. Forse potresti scoprire che puoi persino migliorare quello che già soddisfa i tuoi gusti. :)

    
risposta data 22.11.2011 - 16:26
fonte
5

Il rifiuto di utilizzare i framework non è sempre una cattiva idea. Tuttavia, allo stesso tempo mi chiedevo se stai usando il tuo software server web, compilatore o interprete PHP e altri strumenti in modo che tu sappia esattamente cosa sta facendo il tuo codice, altrimenti ti stai affidando ad altri strumenti che è ciò che un quadro dà.

Stai attento ad avvicinarti all'arroganza in termini di come vedi questi quadri. Se non hai mai pensato o visto le strutture, allora potresti avere una visione pregiudiziale che vale la pena rimediare. Mentre può essere bello ottimizzare la tua produttività, sei davvero preparato a dover creare una serie di metriche ed esperimenti per determinare cosa è o non funziona nella tua vita?

    
risposta data 22.11.2011 - 15:55
fonte
4

In questo caso ci vuole più tempo per sviluppare qualcosa piuttosto che capire come funziona qualcosa.

Se vuoi sapere come funzionano le cose, puoi semplicemente leggere il codice sorgente. Inoltre, i framework di solito affrontano alcuni problemi esoterici che probabilmente non conoscete nel vostro codice personale. E anche se lo sei, gli sviluppatori di framework si impegnano a correggere qualsiasi particolarità che si presenti e risolverlo bene e testato.

Impara a utilizzare framework popolari. Scopri come funzionano all'interno e perché. Ti farà solo bene.

    
risposta data 22.11.2011 - 15:54
fonte
1

Puoi creare il tuo codice che è tanto ricco di funzionalità ed estensibile come vuole il tuo cliente, nel tempo previsto? Se è così, allora fallo! Ma altri sviluppatori che fanno uso di framework possono avere un vantaggio su di te quando riescono a far funzionare i loro sistemi più velocemente di te.

Inoltre, se decidi di applicare un giorno per un lavoro PHP che utilizza un framework popolare, di cui non hai esperienza correlata (nello stesso framework o anche in un framework simile), potrebbe danneggiare le tue possibilità di ottenere il lavoro , se sei uguale agli altri candidati in tutte le altre aree.

Sono d'accordo con te che a volte è scomodo non sapere veramente cosa sta succedendo "sotto il cofano", ma onestamente, non c'è sempre il tempo di costruire tutto da zero (anche se divertente).

    
risposta data 22.11.2011 - 15:48
fonte
1

Se miri a una base di codice pulita, avrai una struttura. L'unica scelta che puoi fare è se vuoi sviluppare (e mantenere) il tuo framework, o se vuoi tornare a capo del framework di qualcun altro.

Questo è un insieme di problemi che i framework tipicamente risolvono, e che finirai per risolvere te stesso se decidi di crearne uno tuo:

  • Separazione MVC di codice, livello di template
  • Procedure ottimali per la sicurezza (evitare l'iniezione SQL, l'iniezione dell'intestazione della posta, i problemi di codifica dei caratteri, CSRF, XSS, la fissazione della sessione, ...)
  • Compatibilità Unicode, traduzione
  • Strato di astrazione DB, compatibilità cross-DB
  • Memorizzazione nella cache di output per prestazioni migliorate

Da quella prospettiva, un framework può farti risparmiare molto tempo. Ma dovresti ancora capire come risolvono tutti questi problemi.

    
risposta data 22.11.2011 - 16:16
fonte

Leggi altre domande sui tag