-
perché odiate php?Scritto dagengivaUtente privileggiatoil 2015-12-09 17:51:52.0 alle 2015-12-09 17:51:52.0Trollate totali: 9100su questo forum vi siete sempre scannati con lich perché java>>>>>>php
non capisco cosa vi ha fatto di male
a parte che non è tipizzato per niente (e non so se sia un bene o un male), comunque come linguaggio di scripting va bene, fa il suo dovere, no? per come si leggono e scrivono i file pare quasi l'ascella scriptCercatelo con Google, ritardato! ©-
Re: perché odiate php?Scritto daNon Autenticatoil 2015-12-09 18:33:06.0 alle 2015-12-09 18:33:06.0[code]
$ cat circular.php
<?php
$a = INF;
$b = array();
$c = (object)array();
var_dump($a < $b);
var_dump($b < $c);
var_dump($c < $a);
$ php circular.php
bool(true)
bool(true)
bool(true)
[\code]
a < b
b < c
c < a
WTF?!?-
Re: perché odiate php?Scritto dagengivaUtente privileggiatoil 2015-12-09 18:39:37.0 alle 2015-12-09 18:39:37.0Trollate totali: 9100Scritto da:
> [code]
> $ cat circular.php
> <?php
>
> $a = INF;
> $b = array();
> $c = (object)array();
>
> var_dump($a < $b);
> var_dump($b < $c);
> var_dump($c < $a);
>
>
> $ php circular.php
> bool(true)
> bool(true)
> bool(true)
> [\code]
>
> a < b
> b < c
> c < a
>
> WTF?!?
ah tipo la trinità
Cercatelo con Google, ritardato! ©-
Re: perché odiate php?Scritto daNon Autenticatoil 2015-12-09 19:08:59.0 alle 2015-12-09 19:08:59.0Scritto da: gengiva
> Scritto da:
> > [code]
> > $ cat circular.php
> > <?php
> >
> > $a = INF;
> > $b = array();
> > $c = (object)array();
> >
> > var_dump($a < $b);
> > var_dump($b < $c);
> > var_dump($c < $a);
> >
> >
> > $ php circular.php
> > bool(true)
> > bool(true)
> > bool(true)
> > [\code]
> >
> > a < b
> > b < c
> > c < a
> >
> > WTF?!?
>
> ah tipo la trinità
>
>
no, quello è tipo: tizio, caio e sempronio non sono la stessa persona ma sono tutti ricchioni.-
Re: perché odiate php?Scritto dagengivaUtente privileggiatoil 2015-12-09 19:52:38.0 alle 2015-12-09 19:52:38.0Trollate totali: 9100Scritto da:
> Scritto da: gengiva
> > Scritto da:
> > > [code]
> > > $ cat circular.php
> > > <?php
> > >
> > > $a = INF;
> > > $b = array();
> > > $c = (object)array();
> > >
> > > var_dump($a < $b);
> > > var_dump($b < $c);
> > > var_dump($c < $a);
> > >
> > >
> > > $ php circular.php
> > > bool(true)
> > > bool(true)
> > > bool(true)
> > > [\code]
> > >
> > > a < b
> > > b < c
> > > c < a
> > >
> > > WTF?!?
> >
> > ah tipo la trinità
> >
> >
>
> no, quello è tipo: tizio, caio e sempronio non sono la stessa persona ma sono tutti ricchioni.
lo vedevo piu come a minore di b che è minore di c ma c è minore di a
figlio è dio padre è dio ss è dio ma ss non è padre che non è figlio
no aspè..
**Modificato dall'autore il 09.12.2015 19:55**Cercatelo con Google, ritardato! ©
-
-
-
-
Re: perché odiate php?Scritto daNon Autenticatoil 2015-12-10 00:16:23.0 alle 2015-12-10 00:16:23.0Scritto da: gengiva
> su questo forum vi siete sempre scannati con lich perché java>>>>>>php
>
> non capisco cosa vi ha fatto di male
> a parte che non è tipizzato per niente (e non so se sia un bene o un male), comunque come linguaggio di scripting va bene, fa il suo dovere, no? per come si leggono e scrivono i file pare quasi l'ascella script
Ti devo correggere: PHP non è un linguaggio "per niente tipizzato", ma caso mai "debolmente tipizzato".
Perché un linguaggio debolmente tipizzato fa cagare a prescindere?
1)Perché le operazioni che ha senso fare su una stringa, rispettivamente su un numero, rispettivamente su un array, rispettivamente su un oggetto, sono DIVERSE.
2)Perché gli operatori sui vari tipi hanno un significato diverso.
3) Perché i tipi hanno un significato semantico: non ha senso che il parametro di una funzione chiamato "personName" sia un int.
Non ha senso che il parametro "divisore" sia una stringa.
I punti 1, 2 e 3 valgono in un linguaggio fortemente tipizzato quanto in uno debolmente tipizzato. L'unica differenza dal punto di vista pratico sta nel fatto che mentre un linguaggio fortemente tipizzato è in grado di garantire che una variabile contenga un dato di un certo tipo, un linguaggio debolmente tipizzato invece no.
Quindi in un linguaggio debolmente tipizzato oltre a fare le validazioni sui dati che faresti anche in un linguaggio fortemente tipizzato, ti ritrovi a dover fare anche validazioni sul tipo dei dati, perché sicuramente se $personName è un numero vuol dire che nel codice qualcosa di sbagliato c'è.
I linguaggi debolmente tipizzati servono solo a creare quelle classiche e spiacevoli situazioni in cui una cosa palesemente sbagliata viene lasciata passare silenziosamente rendendo difficile l'individuazione dell'origine degli errori durante il debugging.
Un linguaggio debolmente tipizzato può sembrare più "user friendly" da una valutazione superficiale, ma dal mio punto di vista la severità di un linguaggio come java è molto più user friendly rispetto a una libertà che ti si ritorce facilmente contro.
-
Re: perché odiate php?Scritto daNon Autenticatoil 2015-12-10 10:09:31.0 alle 2015-12-10 10:09:31.0Scritto da:
> Scritto da: gengiva
> > su questo forum vi siete sempre scannati con lich perché java>>>>>>php
> >
> > non capisco cosa vi ha fatto di male
> > a parte che non è tipizzato per niente (e non so se sia un bene o un male), comunque come linguaggio di scripting va bene, fa il suo dovere, no? per come si leggono e scrivono i file pare quasi l'ascella script
>
> Ti devo correggere: PHP non è un linguaggio "per niente tipizzato", ma caso mai "debolmente tipizzato".
>
> Perché un linguaggio debolmente tipizzato fa cagare a prescindere?
>
> 1)Perché le operazioni che ha senso fare su una stringa, rispettivamente su un numero, rispettivamente su un array, rispettivamente su un oggetto, sono DIVERSE.
>
> 2)Perché gli operatori sui vari tipi hanno un significato diverso.
>
> 3) Perché i tipi hanno un significato semantico: non ha senso che il parametro di una funzione chiamato "personName" sia un int.
> Non ha senso che il parametro "divisore" sia una stringa.
>
> I punti 1, 2 e 3 valgono in un linguaggio fortemente tipizzato quanto in uno debolmente tipizzato. L'unica differenza dal punto di vista pratico sta nel fatto che mentre un linguaggio fortemente tipizzato è in grado di garantire che una variabile contenga un dato di un certo tipo, un linguaggio debolmente tipizzato invece no.
>
> Quindi in un linguaggio debolmente tipizzato oltre a fare le validazioni sui dati che faresti anche in un linguaggio fortemente tipizzato, ti ritrovi a dover fare anche validazioni sul tipo dei dati, perché sicuramente se $personName è un numero vuol dire che nel codice qualcosa di sbagliato c'è.
>
> I linguaggi debolmente tipizzati servono solo a creare quelle classiche e spiacevoli situazioni in cui una cosa palesemente sbagliata viene lasciata passare silenziosamente rendendo difficile l'individuazione dell'origine degli errori durante il debugging.
>
> Un linguaggio debolmente tipizzato può sembrare più "user friendly" da una valutazione superficiale, ma dal mio punto di vista la severità di un linguaggio come java è molto più user friendly rispetto a una libertà che ti si ritorce facilmente contro.
>
java è un linguaggio general purpose, php è un linguaggio di scripting per il web => tutto alla fine si riduce ad una stringa da mostrare in una pagina web-
Re: perché odiate php?Scritto daNon Autenticatoil 2015-12-10 12:16:51.0 alle 2015-12-10 12:16:51.0Scritto da:
> Scritto da:
> > Scritto da: gengiva
> > > su questo forum vi siete sempre scannati con lich perché java>>>>>>php
> > >
> > > non capisco cosa vi ha fatto di male
> > > a parte che non è tipizzato per niente (e non so se sia un bene o un male), comunque come linguaggio di scripting va bene, fa il suo dovere, no? per come si leggono e scrivono i file pare quasi l'ascella script
> >
> > Ti devo correggere: PHP non è un linguaggio "per niente tipizzato", ma caso mai "debolmente tipizzato".
> >
> > Perché un linguaggio debolmente tipizzato fa cagare a prescindere?
> >
> > 1)Perché le operazioni che ha senso fare su una stringa, rispettivamente su un numero, rispettivamente su un array, rispettivamente su un oggetto, sono DIVERSE.
> >
> > 2)Perché gli operatori sui vari tipi hanno un significato diverso.
> >
> > 3) Perché i tipi hanno un significato semantico: non ha senso che il parametro di una funzione chiamato "personName" sia un int.
> > Non ha senso che il parametro "divisore" sia una stringa.
> >
> > I punti 1, 2 e 3 valgono in un linguaggio fortemente tipizzato quanto in uno debolmente tipizzato. L'unica differenza dal punto di vista pratico sta nel fatto che mentre un linguaggio fortemente tipizzato è in grado di garantire che una variabile contenga un dato di un certo tipo, un linguaggio debolmente tipizzato invece no.
> >
> > Quindi in un linguaggio debolmente tipizzato oltre a fare le validazioni sui dati che faresti anche in un linguaggio fortemente tipizzato, ti ritrovi a dover fare anche validazioni sul tipo dei dati, perché sicuramente se $personName è un numero vuol dire che nel codice qualcosa di sbagliato c'è.
> >
> > I linguaggi debolmente tipizzati servono solo a creare quelle classiche e spiacevoli situazioni in cui una cosa palesemente sbagliata viene lasciata passare silenziosamente rendendo difficile l'individuazione dell'origine degli errori durante il debugging.
> >
> > Un linguaggio debolmente tipizzato può sembrare più "user friendly" da una valutazione superficiale, ma dal mio punto di vista la severità di un linguaggio come java è molto più user friendly rispetto a una libertà che ti si ritorce facilmente contro.
> >
>
> java è un linguaggio general purpose, php è un linguaggio di scripting per il web => tutto alla fine si riduce ad una stringa da mostrare in una pagina web
PHP è un linguaggio sviluppato inizialmente da un tipo per la sua paginetta WEB (non per niente si chiamava PHP stava per "Personal Home Page"), senza un vero progetto dietro e probabilmente senza una vera competenza in fatto di linguaggi. Poi sono serviti anni per cercare di aggiustarlo (con vari gradi di successo/insuccesso). Stessa cosa la si può dire per Javascript.
Il merito di PHP, come anche di JS, è che sono stati fra i primi, se non i primi, nei loro rispettivi settori. Hanno aperto strade verso un nuovo tipo di WEB fornendo l'idea del WEB dinamico ovvero di pagine che potevano cambiare anziché essere statiche ed immutabili nel tempo.
Comunque entrambe i linguaggi si portano dietro le scelte sbagliate fatte originalmente. Il fatto di non essere fortemente tipizzati è un handicap per entrambe... rende l'analisi del codice un inferno, il debug difficile, spinge lo sviluppatore a sbagliare anziché aiutarlo ad evitare i problemi prima che si presentino e porta ad un sacco di casini ed inconsistenze all'interno del linguaggio e delle sue librerie.
Java è molto meglio pensato di PHP, ha un framework/libreria consistente, i tipi permettono di individuare molti errori subito in fase di compilazione, le pagine vengono compilate e quindi trovi molti errori PRIMA che li veda l'utente, ecc. Il problema di Java è che è dannatamente verboso e che chi lo sviluppa sta dormendo sugli allori oltre ad essere un branco di coglioni più interessati ad intascare soldi che ad usarli per sviluppare qualcosa di buono (non credo che Oracle sia molto interessata a Java, credo se lo siano preso solo per fare dispetto a Google). IMO anche Java sta prendendo la strada dell'abbandono (anche se sono ancora molti quelli che lo usano oggi). In genere chi sviluppa con linguaggi più moderni (tipo C#) difficilmente poi torna indietro semplicemente perché è più piacevole programmarci e perché devi scrivere meno roba per ottenere lo stesso effetto (e più roba devi scrivere... più errori puoi fare), ecc.
Cmq, linguaggi come PHP dovrebbero essere abbandonati, se non altro per ragioni di sicurezza. Un linguaggio dovrebbe AIUTARTI a trovare gli errori o meglio ancora dovrebbe IMPEDIRTI di farli (almeno quelli facili da trovare)... non dovrebbe invece spingerti a fare errori nel codice e magari nasconderteli finché l'utente non ci capita sopra per sbaglio semplicemente perché tu, nei tuoi test, dentro quella IF non c'eri mai entrato. La libreria inconsistente di PHP, gli "errori logici" all'interno del linguaggio stesso (vedi il caso a>b>c>a), la mancanza di una vera compilazione, la mancanza di tipi forti, ecc... sono tutte cose che sì... rendono la programmazione molto veloce (ma più che programmazione io la definirei "hack"), soprattutto le modifiche a pagine già esistenti senza obbligarti a ricompilare tutto, però ti spingono a fare errori davvero assurdi... errori che possono costarti caro (sia a te che agli utenti che usano il tuo sito).
Non è che con gli altri linguaggi gli errori siano impossibili... ma almeno stai lavorando su fondamenta logiche, consistenti, solide e serie, con un compilatore e un IDE che sono subito in grado di dirti "hey! guarda che qui forse c'è qualcosa che non va!!" ed una libreria/framework ben pensata con cui lavorare.
Se vuoi un "assaggio" di come si sviluppa con un linguaggio moderno e un IDE ben fatto... cercati la videolezione di Scott Allen "Building Applications with ASP.NET
MVC 4" (una volta c'era su Avaxhome, ora non lo so)... è giù vecchiotta dato che siamo già arrivati a MVC 6, però ti da le fondamenta e ti mostra come si fanno le cose.
Puoi anche scaricarti gratuitamente Visual Studio 2015 Community con la quale puoi già subito sviluppare roba anche per fini commerciali.
I siti sviluppati con MVC5 dovrebbero funzionare anche su Linux (non ho mai provato cmq e non so quanto sia facile o difficile http://docs.asp.net/en/latest/getting-started/inst...
http://blog.tonysneed.com/2015/05/25/develop-and-d...
, VS però al momento funziona solo su Windows che io sappia. In teoria puoi compilare le tue applicazioni senza VS, ma te lo sconsiglio... i vantaggi di VS come IDE sono notevoli, credo che ti perderesti gran parte del divertimento, anche perché ti perdi molte funzionalità avanzate davvero utili.
-
-
-