PDA

View Full Version : [JAVA] Android


guylmaster
15-07-2011, 19:31
Salve a tutti,
qualcuno ha da consigliare qualche guida, manuale o libro che sia per prendere un pò di dimestichezza con la programmazione per android?

All'inizio ho detto che bello si programma in java, me la posso cavare. Subito dopo mi sono accorto che ovviamente sfrutta tutt'altre librerie e che quindi senza un adeguata documentazione sono in alto mare. Quindi accetto consigli sul materiale da consultare per prendere maggiore dimestichezza :fagiano:

Vi ringrazio in anticipo,
guylmaster.

dierre
15-07-2011, 21:33
l'è tut achì: http://developer.android.com/index.html

pabloski
16-07-2011, 11:59
E' vero che android offre delle sue funzionalità particolari però non farti spaventare, perchè il grosso dell'api è pari pari quella di java standard.

Aggiungerei al consiglio di dierre di scaricarti il tutorial disponibile qui http://www.informatica.uniroma2.it/upload/2009/LIS

Si tratta del file da Lezione_01.pdf a Lezione_08.pdf.

E' un'ottima introduzione alla programmazione android; ovviamente la documentazione di google è molto più approfondita.

cdimauro
16-07-2011, 12:08
Definirla approfondita è fargli un grosso complimento... :rolleyes:

pabloski
16-07-2011, 13:25
Definirla approfondita è fargli un grosso complimento... :rolleyes:

non mi pare gli manchi chissà che

guylmaster
16-07-2011, 13:39
E' vero che android offre delle sue funzionalità particolari però non farti spaventare, perchè il grosso dell'api è pari pari quella di java standard.

Aggiungerei al consiglio di dierre di scaricarti il tutorial disponibile qui http://www.informatica.uniroma2.it/upload/2009/LIS

Si tratta del file da Lezione_01.pdf a Lezione_08.pdf.

E' un'ottima introduzione alla programmazione android; ovviamente la documentazione di google è molto più approfondita.

Grazie per le slide che mi hai passato, sono sempre un punto di appoggio in più. Sono daccordo però nel dire che la documentazione di google è molto ma molto superficiale anche se meglio di nulla.

Sarebbe bello trovare un manuale vero e proprio come punto di riferimento.

pabloski
16-07-2011, 13:44
Grazie per le slide che mi hai passato, sono sempre un punto di appoggio in più. Sono daccordo però nel dire che la documentazione di google è molto ma molto superficiale anche se meglio di nulla.

Sarebbe bello trovare un manuale vero e proprio come punto di riferimento.

ovviamente se ne trovano ma a pagamento http://www.amazon.com/Android-Developers-Cookbook-Building-Applications/dp/0321741234/ref=sr_1_3?ie=UTF8&qid=1310820230&sr=8-3

alla fin fine gratis trovi solo tutorials e il manuale del sdk del produttore ma è così per qualsiasi sistema

guylmaster
16-07-2011, 13:59
ovviamente se ne trovano ma a pagamento http://www.amazon.com/Android-Developers-Cookbook-Building-Applications/dp/0321741234/ref=sr_1_3?ie=UTF8&qid=1310820230&sr=8-3

alla fin fine gratis trovi solo tutorials e il manuale del sdk del produttore ma è così per qualsiasi sistema

Quali altri libri avreste da consigliare (magari anche qualcosa in italiano non sarebbe male) ? che magari valuto un pò anche la possibilità di acquistarne uno.

pabloski
16-07-2011, 14:10
Si parla bene di questo http://www.lafeltrinelli.it/products/9788850329212/Android_Guida_per_il_programmatore/Massimo_Carli.html

Prima però dai un'occhiata a quel tutorial e a questo ebook gratuito http://www.androidiani.com/applicazioni/sviluppo/guida-alla-programmazione-android-primo-ebook-gratuito-italiano-16682

Infine tieni presente il cookbook che ho linkato prima. Il bello dei cookbook della O'Reilly è che non sono prolissi e non si perdono in chiacchiere ma offrono informazioni pratiche e utili.

cdimauro
16-07-2011, 14:28
non mi pare gli manchi chissà che
Questo lo dici perché non sei costretto a svilupparci ogni santo giorno, altrimenti certe frasi te le risparmieresti.

Chiunque abbia cominciato a lavorare su Android per progetti non banali è della stessa opinione. A me quando mi lamento mi sfottono ridendo e dicendomi: "e non hai visto com'era la situazione prima della 2.0!".

Alla fine quando mancano informazioni (o quando è persino sbagliata, e non riesci a capire per quale assurdo motivo il codice d'esempio che hai fortunatamente trovato sfortunatamente non fa il suo dovere), ti tocca la solita strada: google -> "how to XYZ on Android" sperando che qualcun altro che c'ha sbattuto la testa possa darti una mano o la soluzione. :muro:

pabloski, il tuo grande difetto è che parli di cose che sconosci, e lo fai per puro trollaggio o cieco fanatismo nei confronti della tua tecno-religione. Tutto pur di andare contro le odiate multinazionali e portare acqua al mulino dell'open source, la causa che hai sposato.

Finché sono tuoi pensieri, poco importa. Ma se li esponi pubblicamente il rischio concreto è che qualcuno ti prenda seriamente e gli arrechi danno.

Un vero professionista non dovrebbe farsi influenzare da fattori non strettamente tecnici, ma valutare freddamente e oggettivamente (quando possibile) un problema e fornire la soluzione "migliore".

Continuando così, però, tu non lo sarai mai.

pabloski
16-07-2011, 14:39
Questo lo dici perché non sei costretto a svilupparci ogni santo giorno, altrimenti certe frasi te le risparmieresti.


onestamente non mi metto a piangere quando trovo qualche mancanza e ne ho trovato pure nel msdn, perciò non sputerei sulla documentazione di android


pabloski, il tuo grande difetto è che parli di cose che sconosci, e lo fai per puro trollaggio o cieco fanatismo nei confronti della tua tecno-religione. Tutto pur di andare contro le odiate multinazionali e portare acqua al mulino dell'open source, la causa che hai sposato.


bah, ho avuto anch'io la stessa impressione di te :D


Finché sono tuoi pensieri, poco importa. Ma se li esponi pubblicamente il rischio concreto è che qualcuno ti prenda seriamente e gli arrechi danno.


oppure c'è il rischio concreto che qualcuno pensi che altri oltre a ms possono fare software buono


Un vero professionista non dovrebbe farsi influenzare da fattori non strettamente tecnici, ma valutare freddamente e oggettivamente (quando possibile) un problema e fornire la soluzione "migliore".

Continuando così, però, tu non lo sarai mai.

sarà ma anche tu esponi spessissimo posizioni personali facendole passare per verità documentate

sarà che fino ad oggi non mi sono mai imbattuto in problemi irrisolubili con android ma trovo la loro documentazione funzionale allo scopo che ha

certo potrebbero scrivere il software la posto mio ma fa niente, mi arrangio lo stesso :D

magari è che a me la filosofia del bazaar piace, boh, non so!

cdimauro
16-07-2011, 14:55
onestamente non mi metto a piangere quando trovo qualche mancanza e ne ho trovato pure nel msdn, perciò non sputerei sulla documentazione di android
Qualche mancanza? Non farmi ridere, per favore. :p Io mi sto segnando tutte le cose che non vanno, e ho una lista discretamente lunga. Roba da poterci scrivere un libro. :D

E quando trovi qualcosa di sbagliato su MSDN fammi un fischio, perché c'è stappare lo spumante data la rarità dell'evento. ;)
bah, ho avuto anch'io la stessa impressione di te :D
Io non passo il tempo a fare FUD contro gli odiati nemici. Né ho detto mai che odio le multinazionali.

Non scambiamoci i vestiti, per favore. I giudizi che do sono prettamente tecnici e mai fuorvianti, ma puoi benissimo quotare uno dei più di 30mila messaggi che ho scritto finora se la pensi diversamente. :read:
oppure c'è il rischio concreto che qualcuno pensi che altri oltre a ms possono fare software buono
Prima di tutto dove sta scritto che Microsoft produca soltanto software buono?

E poi, chi ha mai detto il contrario?
sarà ma anche tu esponi spessissimo posizioni personali facendole passare per verità documentate
Ecco vedi: io almeno documento. Non esprimo pensieri senza una solida base, perché non voglio correre il rischio che il primo che passi mi sputtani pubblicamente.
sarà che fino ad oggi non mi sono mai imbattuto in problemi irrisolubili con android ma trovo la loro documentazione funzionale allo scopo che ha
Non so cos'hai fatto con Android, ma l'ultimo problema che ho avuto ieri riguardava la creazione di un dialogo custom. Preso l'esempio pari pari dalla loro documentazione e... non funzionava. Soltanto cercando in giro sono riuscito a risolvere, perché altrimenti non avrei saputo che pesci prendere.

E di esempi come questi ne ho conservati parecchi, come dicevo prima. Ho soltanto l'imbarazzo della scelta. E questo dopo nemmeno 3 settimane di lavoro su questa piattaforma.
certo potrebbero scrivere il software la posto mio ma fa niente, mi arrangio lo stesso :D

magari è che a me la filosofia del bazaar piace, boh, non so!
A me piace quella del: se metto su una piattaforma su cui la gente deve sviluppare, come minimo metto a disposizione una documentazione completa su TUTTI gli aspetti che la riguardano, e poi ovviamente metto a disposizione degli strumenti comodi e produttivi.

A me del bazaar o della cattedrale non me ne frega niente. A me interessa risolvere presto e bene i miei problemi.

pabloski
16-07-2011, 15:00
ma io non ho nemici e nemmeno m'interessa fare pubblicità a google

solo che tra java, una discreta documentazione e un ottimo sistema ( imho è ottimo, almeno rispetto al signor 1% wp7 ) è un piacere programmare su android

ma ripeto, è possibile che la filosofia del bazaar non ti aggrada

se per te è traumatico trovare informazioni su google rispetto il tuo punto di vista, ma personalmente lo trovo quasi un plus

anzi ciò che mi deprime di windows è l'essere troppo schematizzato e privo di qualsiasi sfida

cdimauro
16-07-2011, 16:17
ma io non ho nemici e nemmeno m'interessa fare pubblicità a google
Veramente l'hai detto tu che odi le multinazionali. Comunque tu non fai pubblicità a Google, ma a qualunque cosa odori di open source.
solo che tra java, una discreta documentazione e un ottimo sistema ( imho è ottimo, almeno rispetto al signor 1% wp7 )
Se giudichi la bontà di un sistema in base al market share sai bene a cosa vai incontro. :cool:
è un piacere programmare su android
De gustibus. Perché, per quanto mi riguarda, le tue tre motivazioni che hai esposto sono a demerito della piattaforma.

Java è prolisso da morire, usare i generic è un inferno, per non parlare del continuo ricorso alle classi anonime per qualunque callback (e se ne usano tante). E mi fermo qui per non infierire troppo.

La documentazione non è completa, a volte scritta male e non chiara, e tante volte è addirittura fuorviante.

Riguardo al sistema, i layout sono roba da far impazzire sia per sviluppare l'interfaccia che per "legarla" al codice. Qualunque cosa devi fare, devi scrivere un papiro chilometrico (esempio: hai provato ad accedere alla rubrica?). L'emulatore è lento su un quad core i5 a 2,67Ghz e con 8GB di ram (e se si attacca il debugger la situazione peggiora), e non funziona nemmeno bene. Mi fermo qui perché non voglio snocciolarti la quarantina di punti che mi sono segnato.

Davvero, mi viene difficile comprendere come fai addirittura a provare piacere a svilupparci. O sei masochista autolesionista per natura, oppure quando passerai a programmare un'altra piattaforma i tuoi salti di gioia e le tue benedizioni le sentiranno dall'altra parte del mondo. :p
ma ripeto, è possibile che la filosofia del bazaar non ti aggrada
Forse non mi sono spiegato bene. Mi ripeto. A me non frega una mazza della filosofia bazaar, della cattadrale, o di quant'altro.

Non foss'altro per la mia professione, sono un tipo pragmatico: mi piacciono le soluzioni comode e produttive, in qualunque modo siano state sviluppate.
se per te è traumatico trovare informazioni su google rispetto il tuo punto di vista, ma personalmente lo trovo quasi un plus
Quando hai una scadenza alle porte E (congiunzione) devi contemporaneamente imparare una nuova piattaforma che è fatta veramente male, il concetto di plus (o di masochismo) lascia il tempo che trova.

Anzi, lascia il posto alla desolazione, specialmente guardando al fatto che siamo a 2011 inoltrato e devo ancora sorbirmi modelli anacronistici e dannatamente irritanti.
anzi ciò che mi deprime di windows è l'essere troppo schematizzato e privo di qualsiasi sfida
Per chi non vuol vederne. Altri gli stimoli li trovano, eccome.

dierre
16-07-2011, 16:42
cdimauro su iphone hai esperienza? Come ti sembra lì la documentazione rispetto ad Android?

Scusate se apro una parentesi di una parentesi :asd:

pabloski
16-07-2011, 17:03
Ma io non è che amo trollare, è che spesso, soprattutto qui su hwupgrade, leggo molta gente che scrive di windows convinta che sia il supremo Dio del mondo informatico e pertanto invincibile.

Invece pure windows c'ha i suoi bei problemi

https://picasaweb.google.com/lh/photo/Gx7MH7heVMNuknFImLaXTcpEpXd75vIs1nssTf9b44k?feat=directlink

un errore del genere sotto linux non lo vedrai mai

Riguardo android e la sua documentazione, beh, ho creato qualche programmino per divertimento ma non faccio programmi professionali per android. Tu stesso, ho letto in un post pochi giorni fa, hai cominciato da poco a studiartelo.

Errori incredibili non ne ho trovati nella documentazione ma tutto è possibile. Ovviamente non mi opporrò se deciderai di aprire un thread sticky dove elencare tutte le magagne di google :D

So solo che niente è esente da errori. Non programmi sotto windows da 8 anni ma ricordo con errore che nemmeno i compilatori erano esenti da bug vistosissimi.

Quindi non capisco proprio perchè sarei un troll!!!

p.s. non prendertela con me se windows phone rimane all'1% :D

cdimauro
16-07-2011, 18:42
cdimauro su iphone hai esperienza? Come ti sembra lì la documentazione rispetto ad Android?

Scusate se apro una parentesi di una parentesi :asd:
No, iOS mi manca, ma penso che a breve mi toccherà realizzare un progetto anche per questa piattaforma, perché in azienda vogliono che padroneggi tutte le piattaforme mobile (e non: può darsi che debba lavorare anche con Flash in futuro, ma è meno probabile visto lo scarso utilizzo).

Posso dirti che per ora ho letto l'intero libro introduttivo alla programmazione Objective-C, e l'ho trovato ben fatto e completo, coprendo tutti gli aspetti della programmazione.

Per quanto Apple mi irriti solo a sentirla nominare, oggettivamente hanno fatto un bel lavoro e penso che, maniacali come sono (anzi: sono gli eletti :asd:), probabilmente anche il resto della documentazione sarà dello stesso livello.

Al momento posso dire che non so chi mi sta più sullo stomaco fra Objective-C e Java. Diciamo che se la battono quanto a bruttezza e prolissità. Forse mi piacerà giusto un pochino di più il primo perché l'implementazione dell'OOP è molto dinamica rispetto al secondo.

Comunque per un giudizio complessivo se ne parlerà quando avrò sbattuto la testa anche su questa piattaforma.
Ma io non è che amo trollare, è che spesso, soprattutto qui su hwupgrade, leggo molta gente che scrive di windows convinta che sia il supremo Dio del mondo informatico e pertanto invincibile.
E tu stai dietro a questa gente? Comunque ti metti al loro livello con le cose che ti spari pur di fronteggiarli.
Invece pure windows c'ha i suoi bei problemi

https://picasaweb.google.com/lh/photo/Gx7MH7heVMNuknFImLaXTcpEpXd75vIs1nssTf9b44k?feat=directlink
Scusami, ma chi afferma che Windows è esente da problemi o è un idiota o è un idiota + ε (con ε piccolo a piacere).
un errore del genere sotto linux non lo vedrai mai
Perché c'è di peggio. :asd:
Riguardo android e la sua documentazione, beh, ho creato qualche programmino per divertimento ma non faccio programmi professionali per android. Tu stesso, ho letto in un post pochi giorni fa, hai cominciato da poco a studiartelo.
Purtroppo lo sto anche mettendo in pratica, per cui è più facile che le magagne saltino fuori, perché in un progetto non è che posso dire: "questo non lo faccio perché non ci sono riuscito". Da me si aspettano che l'applicazione funzioni per com'è stata definita.

Diciamo che dal punto di vista della padronanza è un vantaggio, ma al momento sto sputando sangue perché ho pure una scadenza a breve.
Errori incredibili non ne ho trovati nella documentazione ma tutto è possibile. Ovviamente non mi opporrò se deciderai di aprire un thread sticky dove elencare tutte le magagne di google :D
Naaa. Preferisco un articolo o una serie di articoli su AD. E se il materiale che accumulo continua a ingrossarsi, l'idea di farci un libro non è nemmeno troppo peregrina. :cool:
So solo che niente è esente da errori. Non programmi sotto windows da 8 anni ma ricordo con errore che nemmeno i compilatori erano esenti da bug vistosissimi.
Mai detto il contrario mi pare.
Quindi non capisco proprio perchè sarei un troll!!!
Perché dovresti rileggerti. Ti faccio un esempio lampante. Ti pare normale affermare che:
- sviluppare s.o. è molto complicato;
- quindi è meglio affidarsi a s.o. ormai consolidati, come Linux;
- per cui diverse compagnie, fra cui Samsung, si sono buttate su Android.

Peccato che Samsung abbia tirato fuori il SUO s.o. (nonché app store) già da tempo, tanto da aver tentato gli sviluppatori Symbian a passare a BadaOS dopo il forfait di Nokia.

Ora, tu hai mostrato di seguire da tempo l'ambito mobile, e non puoi dirmi che BadaOS non lo conosci.

Ti ho fatto un esempio in cui, tra l'altro, non c'è traccia di Microsoft, Windows & affini, proprio per sottolineare come tu tenda volontariamente a distorcere le informazioni pur di supportare l'open source.
p.s. non prendertela con me se windows phone rimane all'1% :D
Ti offro una cena se fra un anno sarà ancora così.

E tu me ne offrirai una se Linux rimarrà ancora all'1%, OK? :cool:

E ribadisco: non è dalla diffusione che si può giudicare la bontà di un prodotto. ;)

dierre
17-07-2011, 08:05
quale è il libro introduttivo ad Objective-C? (Credo ce ne siano più di uno :qwe:)

cdimauro
17-07-2011, 08:41
Appena torno in ufficio ti faccio sapere.

khelidan1980
17-07-2011, 09:45
quale è il libro introduttivo ad Objective-C? (Credo ce ne siano più di uno :qwe:)

Se ti interessa, su usi iTunes, su iTunes U c'è un corso su iOS dell'università di Pisa, molto ben fatto con video e pdf per seguire la lezione, gratuito ovviamente...

e-commerce84
18-07-2011, 11:00
E' vero che android offre delle sue funzionalità particolari però non farti spaventare, perchè il grosso dell'api è pari pari quella di java standard.

Aggiungerei al consiglio di dierre di scaricarti il tutorial disponibile qui http://www.informatica.uniroma2.it/upload/2009/LIS

Si tratta del file da Lezione_01.pdf a Lezione_08.pdf.

E' un'ottima introduzione alla programmazione android; ovviamente la documentazione di google è molto più approfondita.

Esame col Bei? :D

cdimauro
18-07-2011, 12:55
quale è il libro introduttivo ad Objective-C? (Credo ce ne siano più di uno :qwe:)
Eccolo (http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ObjectiveC/ObjC.pdf).

Abbo88
01-09-2011, 14:34
Ma è possibile che su ogni topic Android che apro trovo pabloski e cdimauro che flammano partendo per la tangente? Perché non vi annate a fa na magnata e se non vi mettete d'accordo vi scannate la?

cdimauro
01-09-2011, 16:57
Se c'è qualcosa di falso in quello che ho scritto, puoi sempre correggermi. Altrimenti ho il diritto di esprimere il mio disappunto quando leggo certe cose.