Italian Quale vantaggio c'e' a realizzare form via codice piuttosto che via designer?

amorosik

Expert
Licensed User
Vedo che in alcuni sorgenti, come metodo di lavoro si usa realizzare le schermate completamente da codice, senza usare il designer integrato nell'ide
Se la schermata e' complessa non si vada a manina di codice, penso sia stato utilizzato un tool che una volta realizzata la schermata sul designer ne estrae il codice e poi si usa quello
Bon, detto questo la mia domanda e': perche' operare in questo modo?
Che vantaggio c'e' a realizzare la schermata a colpi di codice invece che crearla col designer grafico?
Perche' personalmente mi sembra che un sicuro 'contro' sia l'evidente (almeno per me) difficolta' nel modificare le schermate stesse
Ma forse questo contro e' bilanciato da qualche pro che ancora non vedo
Come la vedete voi?
 

LucaMs

Expert
Licensed User
Longtime User
Perche' personalmente mi sembra che un sicuro 'contro' sia l'evidente (almeno per me) difficolta' nel modificare le schermate stesse
Esatto.

L'unico motivo per cui creare delle view da codice è quando non ne conosci il numero/posizione in anticipo, ovvero quando sarà l'utente a stabilirlo.
 

amorosik

Expert
Licensed User
Si, questo e' un sicuro motivo per andare giu' di codice
Ma fare il programma classico, tanto per fare un esempio a caso un client voip, dove i 10 tasti dei numeri non cambiano, creando l'interfaccia via codice, non riesco ancora a trovare i pro, vedo solo contro
Magari i pro ci sono ehhh, e siamo noi della banda scarsotti che non li vediamo
 

LucaMs

Expert
Licensed User
Longtime User
Magari i pro ci sono ehhh, e siamo noi della banda scarsotti che non li vediamo
Se esistessero dei pro, non avrebbero inventato i "Designer". Lo scopo principale di questi è proprio evitarti la scocciatura di creare i layout da codice (oltre al fatto che dicevi, i salti mortali nei casi in cui tu debba correggerne o aggiungere View in uno creato da codice)
 

LucaMs

Expert
Licensed User
Longtime User
Era tanto per dire un programma a caso 😁😁😁
Sarà anche per questo che quando scrissi che avrei voluto vedere una 30/50na di righe di codice, pubblicato in un thread, per poter "assaggiare" il loro "styling", e l'ho ripetei un paio di volte, fecero orecchie da mercante (mercante? 🤔)
 

Xfood

Expert
Licensed User
Secondo me, il vantaggio e', che puoi seguire tutto dal codice, riesci a posizionarlo nella manoera desiderata, e sei " Padrone" del layout,
Altrimenti devi utilizzare il designer e gli script se non vuoi sorprese con le diverse risoluzioni di schermi. Quindi sempre codice devi scrivere, e se il layout e pieno di view , modificarli, aggiungete per esempio un tasto nel pannello principare, che si trova sotto il pannello 2 , diventa scomodo. Poi ognuno lavora come pensa sia piu produttivo il suo tempo.
 

amorosik

Expert
Licensed User
Secondo me, il vantaggio e', che puoi seguire tutto dal codice, riesci a posizionarlo nella manoera desiderata, e sei " Padrone" del layout,
Altrimenti devi utilizzare il designer e gli script se non vuoi sorprese con le diverse risoluzioni di schermi. Quindi sempre codice devi scrivere, e se il layout e pieno di view , modificarli, aggiungete per esempio un tasto nel pannello principare, che si trova sotto il pannello 2 , diventa scomodo. Poi ognuno lavora come pensa sia piu produttivo il suo tempo.

No fermo la', padrone del layout lo sei se 'vedi' quel che stai facendo
Se vai di codice, devi avviare il programma per 'vedere' cosa hai combinato
Ora, dopo molto tempo che si va di codice uno potrebbe anche essere molto pratico e riuscire a realizzare rapidamente quanto gli serve
Ma non vedo nessun pro, anzi vedrei solo dei contro, pure se fossi talmente esperto da ricordarmi che quel colore ha quel valore e che lo spessore bordo da 3 va bene, ripeto che andando di grafic si andrebbe sempre meglio che da codice
E quindi visto che per qualcuno sembra un metodo di lavoro normale, volevo capire perche' lo preferisce rispetto al designer
 

Star-Dust

Expert
Licensed User
Se devi realizzare una libreria compilata devi fare da codice perchè caricare un layout da libreria è complicato.
Se lo fai con B4XLib non ci sono problemi anche da layout va bene.

A volte i Layout danno problemi o effetti diversi da dispositivo a dispositivo. Il codice ti garantisce fi più la precisione.
Puoi personalizzare il ridimensionamento o riposizionamento delle viste. Nel layout comunque devi scrivere codice nello script per ottenere le stesse cose.

Ma parliamo sempre di casi particolari e complicati. In genere va bene il design.

Poi ribadisco.... poche viste nel design, molte viste identiche meglio codice
 

Xfood

Expert
Licensed User
Sono anche d'accordo con te,
Ma anche io qualche volta preferisco il codice ,
Sara'che mi ha contaggiato @saif 😁😁😁,
Non vedi l'anteprima nell'emulatore, e' vero, ma con le % le view li trovi esattamente dove hai deciso,
Con i layout spesso " almeno a me" capita che quello che vedi nell'emulatore durante il "disegno" del layout, non corrisponte " come posizioni" a quello che sara' nel apk finale.
 

amorosik

Expert
Licensed User
Se devi realizzare una libreria compilata devi fare da codice perchè caricare un layout da libreria è complicato.
Se lo fai con B4XLib non ci sono problemi anche da layout va bene.

A volte i Layout danno problemi o effetti diversi da dispositivo a dispositivo. Il codice ti garantisce fi più la precisione.
Puoi personalizzare il ridimensionamento o riposizionamento delle viste. Nel layout comunque devi scrivere codice nello script per ottenere le stesse cose.

Ma parliamo sempre di casi particolari e complicati. In genere va bene il design.

Poi ribadisco.... poche viste nel design, molte viste identiche meglio codice

Si, quello della libreria e' un altro punto a favore de 'via codice'
Quindi finora mi sembra di aver capito che i vantaggi sono:
- se le view sono dinamicamente create e non statiche
- se le view devono servire per realizzare una libreria
- se create via codice, le view corrispondono esattamente a quanto richiesto, non sempre cosi' via designer
 

Star-Dust

Expert
Licensed User
infine alcuni sono abituato a farle così da java e l'abitudine rende la cosa più semplice per loro
 

LucaMs

Expert
Licensed User
Longtime User
Non vedi l'anteprima nell'emulatore, e' vero, ma con le % le view li trovi esattamente dove hai deciso,
Esempio usando le percentuali:

1619368027047.png


IL PUNTO E' CHE I PRODUTTORI DOVREBBERO STANDARDIZZARE IL RAPPORTO BASE:ALTEZZA DEI DISPLAY, esattamente com'è con i televisori, che hanno rapporto fisso 16:9. Meglio ancora, dovrebbero utilizzare proprio questo rapporto.
 
Last edited:

Star-Dust

Expert
Licensed User
Dovresti fare dei tutorial.
 

Star-Dust

Expert
Licensed User
Dovrei fare... la mia antica app 😄 (e magari anche pranzare; forse è ora!)

EDIT - App antica -> sa di "Appia antica" 😄
A quest'ora farei colazione direttamente
 
D

Deleted member 103

Guest
Esempio usando le percentuali:

View attachment 112283

IL PUNTO E' CHE I PRODUTTORI DOVREBBERO STANDARDIZZARE IL RAPPORTO BASE:ALTEZZA DEI DISPLAY, esattamente com'è con i televisori, che hanno rapporto fisso 16:9. Meglio ancora, dovrebbero utilizzare proprio questo rapporto.
Secondo me il tuo esempio non è tanto corretto.
Se vuoi un creare un quadrato non devi usare 25%x, 25%y ma bensì 25%x, 25%x.
In questo modo ti assicuri che il quadrato sia sempre un quadrato.
 

LucaMs

Expert
Licensed User
Longtime User
Secondo me il tuo esempio non è tanto corretto.
Se vuoi un creare un quadrato non devi usare 25%x, 25%y ma bensì 25%x, 25%x.
In questo modo ti assicuri che il quadrato sia sempre un quadrato.
Vero. Resta il fatto che su due display con rapporti base/altezza differenti tra loro, usando le percentuali il "layout" (l'aspetto) non potrà NON essere distorto.
A meno che non fai come quando un canale televisivo trasmette un vecchio programma, registrato in 4:3, ovviamente su un TV 16:9 (unico formato standard), ovvero lasci dei bordi neri ai lati.
 
Top