Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20

Discussione: Delusione PHP

  1. #1

    Delusione PHP

    Negli ultimi mesi ho indagato su quali strumenti siano disponibili per semplificare lo sviluppo e la manutenzione del codice PHP.

    Mentre C# / ASP.NET supporta ormai da diversi anni Refactoring e classi e funzioni a livelli avanzatissimi, scopro che nè Zend, nè Phalanger, nè VS.PHP, e nemmeno Eclipse supportano alcuna funzionalità di refactoring.

    Molti programmatori obietteranno che sono cose inutili, ma non è così. Mantenere il codice, documentarlo, produrre cordice di qualità con PHP richiede uno sforzo decisamente maggiore rispetto a linguaggi più potenti.

    Senza contare poi che la mancanza di compilazione significa in realtà mancanza di controllo. Modifichi il codice e non hai nessuna garanzia che funzioni fin quando non ci vai a runtime,

    Ma la cosa più stupefacente è vedere come ASP.NET sia riuscito a introdurre un protocollo stateful sull'http che è notoriamente stateless. Infine la facilità con cui è possibile creare componenti aggiuntivi. Immaginate una textbox html. In Asp.net è possibile creare e condividere con altri programmatori textbox ajaxified. Quando le trascini visivamente su una pagina queste generano il javascript e il codice necessario per soddisfare le richieste ajax.

    Stupefacente, quando l'ho visto non ci credevo quasi...

    Ma allora mi chiedo: PHP è davvero competitivo?

  2. #2

    Re: Delusione PHP

    Originariamente inviato da gik25
    Mentre C# / ASP.NET supporta ormai da diversi anni Refactoring e classi e funzioni a livelli avanzatissimi, scopro che nè Zend, nè Phalanger, nè VS.PHP, e nemmeno Eclipse supportano alcuna funzionalità di refactoring.
    Il refactoring è propriamente una tematica relativa all'IDE, non al linguaggio in se. Ad esempi Delphi for PHP lo introdurrà nella nuova release, così come NetBeans, Aptana dovrebbe fornirle già e così via.

    Originariamente inviato da gik25
    Senza contare poi che la mancanza di compilazione significa in realtà mancanza di controllo.
    Per favore, evitiamo discussioni di religione.

    Originariamente inviato da gik25
    Ma la cosa più stupefacente è vedere come ASP.NET sia riuscito a introdurre un protocollo stateful sull'http che è notoriamente stateless.
    E le sessioni che cosa ci stanno a fare se non a rendere statefull l'HTTP?

    Originariamente inviato da gik25
    Infine la facilità con cui è possibile creare componenti aggiuntivi. Immaginate una textbox html. In Asp.net è possibile creare e condividere con altri programmatori textbox ajaxified. Quando le trascini visivamente su una pagina queste generano il javascript e il codice necessario per soddisfare le richieste ajax.
    E qui si ritorna a discutere di IDE ed eventualmente di framework piuttosto che di linguaggio in se.

    Prova Delphi for PHP e ne riparliamo. Inoltre, tutto questo plug & play e editing visuale ha prodotto anche delle applicazioni mostruose dove lo sviluppatore poco esperto si mette a far andare avanti ed indietro nello state interi recordset nell'ordine del Mb.

    La bellezza del PHP, oltre alla dolce curva di apprendimento, è che solitamente si imparano delle basi utili se non necessarie con il suo utilizzo, a differenza di quello che può succedere usando Visual Studio ed ASP.NET

    Originariamente inviato da gik25
    PHP è davvero competitivo?
    Vuoi l'elenco delle aziende dalla Fortune 500 che lo usano per i loro progetti web?

  3. #3
    ben detto filippo.

    Le solite obiezioni (tra l'altro fatte nella tana del lupo) - risposta da signore.

    adesso copio-incollo e me la tengo.

    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  4. #4
    La capacità di eseguire un refactoring è una competenza professionale del programmatore, non una funzione dell'editor.
    http://refactormycode.com/codes/recent/php

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221

    Re: Re: Delusione PHP

    per Filippo...
    è una risposta perfetta e chiarificante...a 360
    da tenere...leggere...e rileggere...e rileggere.....
    ciAo

  6. #6

    Re: Delusione PHP

    Originariamente inviato da gik25
    ...
    Senza contare poi che la mancanza di compilazione significa in realtà mancanza di controllo. Modifichi il codice e non hai nessuna garanzia che funzioni fin quando non ci vai a runtime,
    ...
    Quando lavoravo su IDE Zend avevo errori chiari direttamente nel codice ... idem col piu' datato Komodo (datato per me perche' sono 4 anni che non lo uso piu') e stessa cosa sotto Eclipse ... Aptana fa lo stesso, e credo che in generale tutti gli IDE con possibilità di integrare l'interprete lo facciano.

    Detto questo, ricordo ancora l'esame di programmazione all'uni dove tra l'abc e le regole in generale per C c'era il test effettivo, qualcosa tipo "ci vai a runtime" che devi comunque fare con qualunque linguaggio di programmazione, via unit testing (PHPUnit) o a mano (se non sai interfacciarce Selenium sopra il DOM con interazioni Ajax)

    Mi son perso altro? No perchè sono il primo a dire che PHP abbia mille difetti, ma queste qui sembrano più dichiarazioni per sentito dire che altro ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7

    Re: Re: Delusione PHP

    Originariamente inviato da filippo.toso
    Il refactoring è propriamente una tematica relativa all'IDE, non al linguaggio in se. Ad esempi Delphi for PHP lo introdurrà nella nuova release, così come NetBeans, Aptana dovrebbe fornirle già e così via.

    Per favore, evitiamo discussioni di religione.

    E le sessioni che cosa ci stanno a fare se non a rendere statefull l'HTTP?

    E qui si ritorna a discutere di IDE ed eventualmente di framework piuttosto che di linguaggio in se.

    Prova Delphi for PHP e ne riparliamo. Inoltre, tutto questo plug & play e editing visuale ha prodotto anche delle applicazioni mostruose dove lo sviluppatore poco esperto si mette a far andare avanti ed indietro nello state interi recordset nell'ordine del Mb.

    La bellezza del PHP, oltre alla dolce curva di apprendimento, è che solitamente si imparano delle basi utili se non necessarie con il suo utilizzo, a differenza di quello che può succedere usando Visual Studio ed ASP.NET

    Vuoi l'elenco delle aziende dalla Fortune 500 che lo usano per i loro progetti web?
    Innanzitutto ti ringrazio per le preziosi informazioni che mi hai dato.

    Il mio sfogo di ieri non era un'accusa a PHP, bensì una nota malinconica di uno che in PHP ci ha creduto e sperato che riuscisse a colmare quei piccoli difetti e mancanze che lo renderebbero un ottimo linguaggio. In questo momento sto scaricando Delphi, ma hai mai provato Resharper per visual studio?

    Ho iniziato da C#, sono passato a PHP e ne ho apprezzato molto le potenzialità per poi rimanere a bocca aperta mentre mi venivano spiegati i vantaggi di ASP.NET. Adesso sto studiando per conseguire una certificazione Microsoft.

    Il proggetto a cui lavoro in ufficio ha 4 Giga tra sorgenti e compilati, realizzare una cosa simile in PHP credo che sia improponibile. Se in PHP modifichi in rapida successione diverse classi cambiando firme di metodi ma anche l'interno delle procedure, potrebbe sfuggire un errore. E apprezzo la sicurezza aggiunta che da il compilatore.

    Il problema a cui accenni sui programmatori inesperti. Hai visto qual'è la leggibilità di tanti script opensource interamente procedurali? è una cosa mostruosa, non usano nemmeno le funzioni, immagina le classi. Il vantaggio del refactoring suggerito dall'IDE più utilizzato è anche quello di plasmare una certa mentalità. Già l'xml-doc riconosciuto dal c# e ampiamente favorito da VS incentiva a commentare metodi e proprietà. Non è che voglio avere ragione, però trovo che siano caratteristiche molto positive.

    Molte delle limitazioni a cui accennavo sono effettivamente legate all'ambiente di sviluppo. Però sinceramente mi sento scoraggiato. Io ho un sito in PHP e mi chiedo se non sia meglio passarlo ad ASP.NET.

    Mi parli di sessione ma quella è una caratteristica di in qualsiasi linguaggio, forse ho sbagliato a esprimermi, volevo dire che in ASP.NET puoi gestire un click effettuato sul browser come gestisci un evento MouseClick. Lui prende, passa tutto al server, processa la risposta e te la restituisce sul client. Se vuoi aggiungi un UpdatePanel e tutto diventa Ajaxified

    Non sono un programmatore esperto, quindi posso sbagliarmi, e apprezzo molto PHP. è intuitivo, è semplice, è carino, è funzionale.

    Ma non sono riuscito a trovare un IDE che lo valorizzi appieno! E oltre a ciò apprezzo moltissimo VS, ma proprio tanto. è veloce ad aprirsi, ha un debugger fenomenale. Vorrei qualcosa di analogo per PHP e vorrei componenti come quelli prepronti di ASP.NET. Non voglio reinventare la ruota...

  8. #8
    Originariamente inviato da weppos
    La capacità di eseguire un refactoring è una competenza professionale del programmatore, non una funzione dell'editor.
    http://refactormycode.com/codes/recent/php
    Vero, ma un buon IDE può semplificarle e quindi incentivarle in maniera mostruosa.
    Questo è uno dei migliori plugin per Visual Studio per il refactoring.
    http://www.jetbrains.com/resharper/d...ature_map.html

    A mio avviso è supefacente. Non sbaglia mai, rende il codice più pulito, aiuta a renderlo modulare, leggibile. Ha mille piccole funzionalità che se considerate separatamente sembrano simpatiche, viste nell'insieme fatichi a rinunciarci.

  9. #9
    Originariamente inviato da gik25
    Vero, ma un buon IDE può semplificarle e quindi incentivarle in maniera mostruosa.
    Questo è uno dei migliori plugin per Visual Studio per il refactoring.
    http://www.jetbrains.com/resharper/d...ature_map.html

    A mio avviso è supefacente. Non sbaglia mai, rende il codice più pulito, aiuta a renderlo modulare, leggibile. Ha mille piccole funzionalità che se considerate separatamente sembrano simpatiche, viste nell'insieme fatichi a rinunciarci.
    L'IDE non può sapere quando tu vuoi usare un pattern singleton, un adapter, un factory o la meta programmazione.
    Sta a te deciderlo e progettare il codice.
    Lui può semplicemente automatizzare il processo.

  10. #10
    Originariamente inviato da weppos
    L'IDE non può sapere quando tu vuoi usare un pattern singleton, un adapter, un factory o la meta programmazione.
    Sta a te deciderlo e progettare il codice.
    Lui può semplicemente automatizzare il processo.
    Aggiungerei per fortuna! Altrimenti a che servirebbe un buon programmatore? :-p

    Scherzi a parte è chiaro che una macchina non può far tutto, ma può aiutare il programmatore a velocizzare la scrittura o nel processo decisionale.

    Il refactoring, come l'uso dei pattern, purtroppo sono poco diffusi. In azienda siamo più di 100 ma sono pochi a interessarsi di profilatori, unit test, code metrics, pattern, sincronizzazione multithread e refactoring.

    C'è un ragazzo che collabora con me e ancora stento a fargli capire il vantaggio della programmazione a funzioni e a classi. Io stesso inizialmente non la vedevo. Ora non riuscirei mai a tornare indietro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.