Newsgroup: it.comp.programmare.win32
Titolo: Libri

Salve a tutti i frequentatori abituali del gruppo :-).
Vorrei utilizzare quest'estate per cominciare ad apprendere le basi della
programmazione in windows e possibilmente anche qualcosa di più. Mi
servirebbero quindi dei consigli per libri sui seguenti argomenti.
1) Programmazione in Windows - il libro che fa al caso mio dovrebbe coprire
sia le basi sia argomenti avanzati, insomma dovrebbe essere piuttosto
completo, nei limiti del possibile
2) Reference per le API di Windows - probabilmente su questo argomento non
può esistere un libro completo; l'idea è che dovrebbe permettermi di
ricorrere alla documentazione elettronica il meno possibile, visto che la
trovo piuttosto scomoda
3) Programmazione in .NET - anche qui una guida completa, che non faccia
riferimento a linguaggi specifici
Infine, volevo chiedervi se qualcuno di voi conosce il libro "Windows
NT/2000 API nativa Guida di riferimento per lo sviluppatore" edito da
Addison Wesley, ed eventualmente che cosa ne pensa, se vale la pena.
Saluti e grazie ;-).
-- 
//   Xelloss da Bologna  || in real life: Wilmer Ricciotti   \\
|  
wirix...@libero.it
 (elimina il demone per rispondermi)  |
|    ICQ: 3233084        IRC: Xelloss@AzzurraNet, @ChatNow    |
| Hardware Information & Technology: 
http://hit.edengames.net
 |
\_______Like the Phoenix I rise from the ashes of life________/

Ovviamente la mia risposta è incompleta se non spiego anche la mia
situazione. Ho buone conoscenze di programmazione, ma nessuna esperienza
"reale", per cui devo imparare anche gli aspetti di base della
programmazione in Windows, ma non vorrei finire con un libro come quelli
della collana "per deficienti" :-). I linguaggi che meglio conosco sono C e
C++ (il visual basic, con cui ho cominciato ai tempi delle medie, non lo
considero nemmeno); prossimamente imparerò C#, ma non è la mia più grossa
priorità...
Saluti.


 Ovviamente la mia risposta
                    ^^^^^^^^
"Domanda". Evidentemente ho bisogno di un po' di riposo :p


riferimento a linguaggi specifici
Domanda? Non è un pò troppa roba? Se il tuo obiettivo è .NET perchè
vuoi tutta sta roba da imparare? Ad ogni modo direi che Essential .NET
di Don Box è un buon punto per partire
-- 
Lawrence "Rhymes" Oluyede
http://loluyede.blogspot.com
XmlDesk - 
http://tinyurl.com/fhrz
 - for Xml developers
UGIdotNET - User Group Italiano .NET - 
http://www.ugidotnet.org

 di Don Box è un buon punto per partire
Il mio obiettivo NON è .NET, anzi per essere precisi è la parte che dovrò
imparare più di malavoglia, perché nonostante tutto serve.
Comunque ho detto che sono libri per l'estate, non che devo imparare tutto
quest'estate ;).
Saluti


imparare più di malavoglia, perché nonostante tutto serve.
Nessuno ti obbliga ad usarlo ;-)


 Nessuno ti obbliga ad usarlo ;-)
Ci sono cose che si imparano per piacere (nel mio caso, il C++), altre che
si imparano per dovere (v. Java...). Visto che vorrei diventare un
professionista mica posso tagliarmi fuori dalle nuove tecnologie non ti
pare? ;)
Saluti.


pare? ;)
Beh ma mica tutti i professionisti conoscono tutto :) Scegli qualcosa
e diventa esperto in quello...diceva un vecchio saggio (ovviamente
sempre tenendo un occhio sulle altre tech)


 sempre tenendo un occhio sulle altre tech)
Ma tu che sei un dotnettaro convinto, non dovresti piuttosto spingermi ad
imparare .NET? :p


imparare .NET? :p
Cerco di essere pragmatico :)


 Addison Wesley, ed eventualmente che cosa ne pensa, se vale la pena.
se non sai già cosa farci non ne vale la pena. Prenditi "Inside Windows 
2000" di Solomon e Russinovich, piuttosto. Altrimenti, è insostituibile
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.2. C, C++ and ASM developers
                               and beta testers are welcome!

 si imparano per dovere (v. Java...)
Java? Il defunto intendi?!?!
E' meglio partire con C#.
:)
-- 
Luc.

 2000" di Solomon e Russinovich, piuttosto. Altrimenti, č insostituibile
Quello ce l'ho :-)
Saluti.


 :)
E' che conosco già java, a livello "universitario". A sufficienza per dire
che non mi piace (non per colpa del linguaggio in sé, ma di tutta
l'infrastruttura).


Quello ce l'ho :-)
E a tutto può servirti, tranne che "ad apprendere le basi della
programmazione in windows", che mi sembra sia ciò che vuoi fare.
-- 
Andrea Laforgia - a.laforgia(at)
libero.it
"There are three kinds of people in this world; 
 those who are good at maths and those who aren't".

 programmazione in windows", che mi sembra sia ciò che vuoi fare.
Quello serve ad altre cose, Juliet credo abbia capito ;-)


l'infrastruttura).
Se conosci Java ci metti poco, veramente poco ad imparare C# (almeno
la sintassi e il linguaggio....la libreria è un altro paio di maniche)


 la sintassi e il linguaggio....la libreria è un altro paio di maniche)
Ma a te C# piace così tanto? Per quel poco che ho visto mi sembra java
complicato con qualche feature di non evidente utilità...
Saluti.
-- 
\/   | |         Wilmer Ricciotti - ICQ UIN: 3233084
/\ e | | o s s   
wi...@libero.it
HiT - EdenGames: 
http://hit.edengames.net
sito  personale: 
http://www.cs.unibo.it/~ricciott/
 (non attivo)

[...]Visto che vorrei diventare un professionista
Se vuoi diventare un professionista, impara ad annusare il mercato.
Ci sono buone probabilità che .NET la faccia da padrone, nel prossimo
futuro, io mi spingerei su quello.  Case storicamente antagoniste di
Microsoft stanno piano piano convergendo (vedi Borland che ha appena
prodotto il C#Builder).


 Se vuoi diventare un professionista, impara ad annusare il mercato.
Appunto, no?


Appunto, no?
La risposta è nelle 4 righe che non hai quotato.


 La risposta è nelle 4 righe che non hai quotato.
Non le ho citate intendendo che sono d'accordo.
Ma chiaramente ognuno ha i suoi gusti e, nonostante .NET mi abbia fatto una
buona impressione, non lo trovo particolarmente interessante. Soprattutto,
non credo che la programmazione .NET debba sostituire quella tradizionale,
ma essergli complementare. Quindi imparare .NET rimane tra i miei obiettivi,
ma comunque in secondo piano.


 programmazione in windows", che mi sembra sia ciò che vuoi fare.
invece può aiutare moltissimo. Il Petzold ti spiegherà il *come*, ma il 
Russinovich/Solomon può spiegarti il *perchè*


complicato con qualche feature di non evidente utilità...
Complicato? A me non sembra proprio. E (parliamo solo del linguaggio
in se e per se) a dire la verità a me sembra Java con alcune feature
interessanti in più


ma comunque in secondo piano.
Sulla complementarietò della cosa sono pienamente daccordo. Sappiamo
tuti che .NET ha i suoi limiti e che non ci potremo scrivere un SO
(anche se potrebbe essere fattibile scriverne parti di esso) o un
driver. Ma il punto sta nella percentuale di applicazioni scritte in
un modo o nell'altro. La gente non scrive tutti i giorni sistemi
operativi ma scrive "tutti i giorni" gestionali, applicazioni web,
utility e via dicendo. .NET li si muove benissimo. Su .NET non ci ha
scommesso solo la Microsoft ma anche de Icaza che è uno dei principali
autori di Gnome...
Tra l'altro Longhorn (il prossimo sistema operativo di Microsoft,
uscirà nel  2005 circa) e farà un uso _pesante_ di .NET e della CLR
tanto che si mormorà che IE7 sarà più managed che no e tante altre
applicazioni del parco sw MS.


 autori di Gnome...
IMHO il progetto Mono (implementazione dei runtime e di buona parte
delle librerie ed API di .Net) rischia un "eterno inseguimento"
dei prodotti Microsoft (come succede con Samba), anche perche diverse
parti di .Net non sono specificate nello standard recepito da ECMA
(quindi e' "roba solo della Microsoft").
Non e' una buona cosa.
Paradossalmente proprio il mondo open source ha da tempo tutti
i pezzi per realizzare un sistema competitivo con .Net e Java
ma nessuno ha la volonta di compiere i passi finali.
Mi spiego meglio:
1) si aggiunge al GCC un formato "platform neutral"
    (si potrebbe usare una versione modificata della rappresentazione
     SSA usata internamente da GCC 3.x);
2) si crea un loader "combinando insieme" i backend di GCC ed il linker ld
    in modo da ottenere un modulo "finalizzatore" che compila al volo
    il codice "platform neutral" (all'instalazione, eventualmente con
    modalita crosscompiler per scaricare applicazioni da un desktop
    o un server su un PDA);
3) si definisce un "meccanismo di autoconfigurazione" (finalizzazione
    delle dimensioni dei tipi di dati solo in fase di compilazione
    JIT/crosscompilazione; "interrogazione delle funzioni supportate
    dal sistema ospite" simili a delle #if, ecc. ecc.);
4) si fissano le API supportate in tutti i runtime ".GNU"
    che corrispondono a quelle "standard" POSIX piu varie librerie utili
    tipo glib, gdk, e gtk+ (che sono gia disponibili da tempo sia per
    Linux/Unix, che per Windows, con implementazioni anche per sistemi
    embedded).
In quattro fasi si ottiene cosi un runtime portabile competitivo
con Java e Net (e con la possibilita di compilare anche codice
unmanaged in modo si adatti automaticamente al target finale
con prestazioni  equivalenti a quelle di un programma compilato
"vecchio stile").
L. Micheletto

 interessanti in più
A me sambra Java "sporcato" dalla vicinanza con il VB, non vedo tutte queste
feature interessanti in piu', mi puoi fare un esempio?

feature interessanti in piu', mi puoi fare un esempio?
Le proprietą, gli indexer, i delegates, i cast definiti dagli utenti,
l'overloading degli operatori, la possibilitą di usare i puntatori, la
possibilitą di fare lo switch anche con le stringhe...ti serve altro?
