Newsgroup: it.comp.www.php
Titolo: PHP o .NET Framework ?

Ciao,
Credo sia la solita domanda ma vorrei un aggiornamento, se possibile.
Quali sono, a grandi linee, le differenze sostanziali tra i 2 ambienti di 
programmazione?
Vorrei iniziare a studiare un ambiente per realizzare dei siti Web dinamici 
per intranet e mi hanno detto che .NET e' adatto a lavori  *seri* con 
utilizzo di database quali SQL Server ed Oracle mentre PHP e' piu' limitato 
ed adatto per siti amatoriali, o quasi.
Vero?
Grazie
 


Ti hanno detto male.
Per i lavori seri, ma veramente seri, per quello che mi risulta, java � 
la via.
Per tutto il resto, quello che fai con php lo puoi fare anche con .net e 
viceversa (e anche con java).
L'unica cosa che a php manca e di cui mi piacerebbe se ne introducessero 
le sembianze sono i tipi di dato, ma si sta bene anche cos�.
Comunque tornando al discorso del "ti hanno detto", magari fai presente 
a chi te l'ha detto che credo la totalit� dei forum esistenti su 
internet operano in php (gestire un forum non � esattamente una 
cazzata), ed i CMS pi� famosi ed utilizzati (joomla, drupal) pure sono 
in PHP. Ah, fai anche presente che facebook � fatto in php...
Inoltre il fatto che PHP non possa gestire SQL Server o Oracle � una 
buona vaccata. Li pu� gestire gi�. E comunque non � affatto una 
questione di linguaggio, chi ti ha detto questa cosa o non ne capisce un 
tubo o � in malafede.
Personalmente trovo che poter lavorare in PHP, con la possibilit� se 
necessario di mettere completamente le mani nel server dove mi pare, 
anche nel codice, scrivere moduli ad-hoc se necessario, le garanzie 
dell'opensource e una vastissima community alle spalle ti direi di 
imparare questo linguaggio.
D'altro canto, in ambito lavorativo siccome in italia girano troppi 
"expert-wannabe", cio� presunti professionisti che lavorano nel campo 
del web da anni, ma che di web non ne capiscono un'accidente (e mi � 
capitato sovente), potrebbero richiederti .net
Per me, php tutta la vita.

 Per me, php tutta la vita.
Purtroppo i wannabe sono dovunque e sono la maggior parte. Leggere 
davvero i manuali per capire di che si stia parlando costa fatica in 
qualsiasi campo.
Quoto praticamente tutto e aggiungo che se uno vuole scrivere male lo fa 
a prescindere dal linguaggio
Se si vuole scrivere bene ormai si può tranquillamente farlo anche in 
php come in praticamente ogni linguaggio
Symfony ad esempio usa TDD, dependency injection, namespaces, design 
pattern come piovesse ...
M
-- 
I fatti mi cosano

 come in praticamente ogni linguaggio
ormai significa che php, cmq e' od e' stato in ritardo di evoluzione 
rispetto a .NET o altri linguaggi? 



Semplicemente non è nato per essere un linguaggio di programmazione 
completo. Ma ora lo è, se non si è troppo schizzinosi riguardo la 
tipizzazione debole (che alla fine, se si lavora bene, non è un dramma, 
semplicemente permette di lavorar male a chi lavora male).
-- 
Lorenzo Breda


Prima della versione 5.0 php non prevedeva un approccio a oggetti degno 
di tal nome, il che lo rendeva molto poco adatto a progetti di grandi 
dimensioni. Ma si parla di 7 anni fa.

Il 01/08/2011 22:31, pier ha scritto:

ovviamente no.
PHP � potente, ma � esposto alla cattiva programmazione, pi� di java e 
c#, resta inteso che con qualsiasi linguaggio puoi scrivere di merda.
Detto questo sql server non � un db "serio" � solo merda costosa. Oracle 
� serio, postgre � serio e gratis.
Detto questo, con php ci sono framework la cui leggerezza io non ritrovo 
in java, come codeigniter.
Se per progetto serio intendi la galassia di applicativi di google (tra 
cui google motore di ricerca o gmail), se loro usano java un motivo ci 
sar� :)
Ma gi� il fatto che tu ponga la domanda mi fa pensare non abbia da 
realizzare un progetto di quelle dimensioni con impegnate centinaia e 
centinaia di sviluppatori.
Diciamo che qualsiasi progetto a cui mi sia avvicinato anche 
lontanamente poteva essere realizzato benissimo in php (e quasi sempre 
meglio di come era fatto.)
-- 
Z.


Ok, grazie 

 Piu' leggero significa piu' facile da usare?
Normalmente no. Un framework, sopratutto se mvc non � + "facile" di non 
usare un framework. Se usi l'mvc su un sitarello ti porti anche in casa 
un mare di lavoro e di grane inutili (x un paginetta che scrive hello 
word devi scriverti minimo minimo il controller e la vista, se hai 
interazione col db anche un modello, pi� la configurazione del framework 
ed eventualmente accessori (come un template engine o un orm). Se per� 
il tuo non � un sitarello, ma una webapp corposa ed in continuo 
divenire, un approccio di questo tipo � quasi obbligato (soprattutto se 
in ambito collaborativo).
Ci� premesso, codeigniter ad esempio ti facilita mostruosamente 
l'interazione con il db nel modello: ha librerie pronte x cui configuri 
l'accesso al db e in 3 righe fai una query e ti torna indietro un array 
di oggetti (o di array) bello pronto, di fatto eliminando la necessit� 
di un orm (a meno di non volere formalismo estremo), mantenendone i 
vantaggi.
Pi� leggero vuol dire che occupa meno ram, che risponde + in fretta ecc...
Ad esempio struts (+ tiles) su java (che uso per un vecchio progetto non 
iniziato da me) � ai miei occhi un esempio di pesantezza e complicazione 
inutile.
Forse la vera domanda da porti �:
cosa devi realizzare? dalle tue parole ho quasi la sensazione che quello 
che cerchi � un cms pi� di un framework, come pu� essere drupal o 
simili. Ovvero fare un sito il pi� velocemente possibile e sapendo meno 
possibile di linguaggio. Se cos� �, la scelta php � a mio avviso la 
migliore veramente con tanto margine.
-- 
Z.


Veramente cercavo una strada, la piu' efficace possibile, per addentrarmi 
nella programmazione PHP e il realizzare un sito mi sembrava la strada piu' 
semplice in quanto sono convinto che bisogna lavorare su un progetto 
*concreto* per potersi applicare proficuamente.
L' Apprendimento di PHP mi servirebbe anche per VTIGER  ( 
http://www.vtiger.com/
 ), conosci?
grazie 

 sarà
Dove?

> motivo ci  sarï¿œ
Sbaglio o loro usano "anche" Java ???


in che senso?
-- 
Z.

 un progetto *concreto* per potersi applicare proficuamente.
Eh ma parti gi� da un assunto: voglio imparare php.
La domanda che pensavo ti ponessi: voglio imparare php o mi conviene altro?
Se lo scopo da raggiungere � imparare php, si la strada maestra � 
iniziare a fare, e se non hai un lavoro da consegnare un cms non ha 
senso. Ma neppure un framework, quello lo vedrai quando sarai un po' 
pratico.
-- 
Z.


Ok, ma come ti dicevo io *imparo* solo se ho qualcosa di pratico me *reale* 
da fare. Ad esempio avrei necessita' di un prodotto Archivio/Marketing e 
potrei realizzarlo con VTIGER.
Che ne pensi?
grazie 

 Che ne pensi?
Pessima idea. Scegli un'applicazione semplice e scrivila da zero.
	Y.


quoto al 10000%.
-- 
Z.

 ha scritto nel messaggio 
news:4e3bc8e5$0$16649$5fc...@news.tiscali.it...

Mah, non so, io riesco a capire quello che sto facendo solo se e' 
un'applicazione *pratica* che mi *serve*. Con le applicazioni test o 
esercizi non mi sono mai trovato bene.
Che applicazione semplice intendevi? Magari se c'e' una buona guida... 

 Che ne pensi?
Vtiger e` un CRM, cioe` un'applicativo gia` pronto per fare gestione di 
customer relations. Puoi scriverci pezzi di codice e personalizzarlo, ma 
se non sai programmare E non sai come e` strutturato, e` impossibile.
Se vuoi imparare a programmare parti dalle basi. Spezza il tuo progetto 
in pezzi piu` piccoli e inizia a svilupparli da zero.
Per esempio, parti con una piccola agenda, poi espandila per distinguere 
tra fornitori e clienti, poi aggiungi un gestionale fatture interfacciato 
col DB fornitori/clienti, poi ci aggiungi la gestione contatti ("il 
cliente X ha telefonato in data Y e ha detto Z"), ed eventualmente la 
multiutenza. Ecc. ecc.
Quando avrai imparato a programmare, studiati la struttura di vTiger e 
POI personalizzalo.
Bye.


Ok, credo che questa sia la strada giusta.
Secondo te esiste della documentazione per creare, ad esempio, la piccola 
agenda, partendo da zero?
Mi ricordo che ai tempi di Access c'erano dei programmini realizzati e 
commentati che utilizzavano il database di esempio Northwind, mi sono 
serviti molto...
grazie 


Beh potresti anche comprarti un libro, anche uno di quelli tascabili che 
costano una decina di euro o meno per cominciare, di solito l'approccio 
è quello di mostrare delle piccole applicazioni pratiche.

 quello di mostrare delle piccole applicazioni pratiche.
Mah, veramente qualcuno l'ho sbirciato ma non mi ha convinto molto, era 
abbastanza poco chiaro e ripeteva sempre le stesse cose. Purtroppo oramai ho 
una mentalita' pragmatica, riesco a rendere solo se una cosa mi e' chiara e 
se, soprattutto, serve a qualcosa.
Quello che diceva Alessandro, ad esempio un'agenda, potrebbe essere 
interessante.
Diciamo che le istruzioni dovrebbero partire da zero ed accompagnarti, in 
modo chiaro ( cioe' una specie di :  il Visual Basic spiegato a mia nonna di 
Mario De Ghetto, nelle varie fasi della realizzazione con degli step di 
verifica.
Ma non so se esiste.
Tu cosa mi consiglieresti?
Grazie
p.s. come si vede non sono e non vado in ferie ed avrei tempo... :-( 


Beh io a suo tempo imparai i rudimenti consultando il libro della mcgraw 
hill di michel dreyfus "php in tasca", più per gioco che per reale 
necessità.
Adesso quel libro sarà obsoleto (è datato 2002), però affrontava l'uso 
di php e l'interazione con mysql con una serie di applicazioni pratiche, 
come per esempio creare un piccolo database per archiviare dischi.
Ad ogni modo ho sempre pensato che il modo migliore per imparare un 
linguaggio non è quello di buttarsi a capofitto dentro, ma di leggersi 
un piccolo ma buon libro di roba "predigerita" da altri che ti fa capire 
le caratteristiche fondamentali, la sintassi e i comandi fondamentali e 
quale è grossomodo la logica dietro alle soluzioni. Poi dopo si passa 
alla pratica.

 zero?
Siamo nell'epoca di Internet. Troverai un sacco di esempi di come 
scrivere blog e forum, ma non so se ne troverai per le agende.
Il principio e` lo stesso, comunque: mostra la lista dei record, tasto 
per aggiungere, form di aggiunta/modifica, leggi/scrivi sul DB, form di 
cancellazione.
Di solito usano MySQL, ma tranne qualche piccola differenza li puoi usare 
anche con SQLite e PostgreSQL.
Cerca "PHP tutorial" su Google, dovresti trovarne un po'.
Bye.


Ok, vado a cercare, grazie... 

 pratica.
Ok, mi sembra bene, qualcuno conosce un buon titolo?
Grazie 

Qualcuno ha voglia di porre la stessa domanda (pnp o .net) sul gruppo
google di .net?
Anche io voterei php, ma mi piacerebbe vedere che dicono dall'altra
sponda del fiume ;)

 Ok, vado a cercare, grazie...
A dire la verita' ho cercato ma di tutorial PHP in italiano fatti bene non 
ne ho trovati. Tutti spezzoni che iniziano e non finiscono o partono da un 
livello gia' alto.
A me interesserebbe un tutorial che spieghi da zero come costruire 
un'applicazione, tipo agenda,  blog o forum, come dice Alessandro, e spieghi 
il codice fino al completamento dell' applicazione stessa.
Forse qualcuno ha gia' avuto la mia necessita' e sa dove trovarlo...