Autore Topic: Modifica ordine parametri nella creazione degli oggetti  (Letto 1362 volte)

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Modifica ordine parametri nella creazione degli oggetti
« il: 23 Settembre 2010, 15:16:07 »
Spulciando un pò di documentazione, sul sito ufficiale, ho fatto una bella scoperta, che sconvolge abbastanza la conversione dei progetti dalla 2 alle 3.

Nel nuovo Gambas3, a quanto pare, l'ordine con cui devono essere passati i parametri, richiesti e facoltativi, per la creazione di un oggetto, grafico e non, in pratica la chiamata del metodo nascosto _new(), è stata completamente stravolta.

Nella versione Gambas2, i parametri venivano letti partendo da destra verso sinistra, ovvero gli ultimi parametri, quelli più a destra, servivano all'oggetto più alto nella catena di inerenze. In pratica, se si creava un controllo, ad esempio una TextBox, perdonalizzato in modo da accettare altre impostazioni a livello di creazione, i parametri necessari, ovvero il container parent e le altre personale implementazioni seguivano il seguente ordine:

_new( parametro1, parametro2, ..., Container )

quindi il contenitore, opzionale o meno, risultava l'ultimo della lista.

Nella versione Gambas3, questa logica viene completamente stravolta, e non parlo di una semplice inversione di ordinamento, bensì di uno stravolgimento che tiene conto anche de un parametro è opzionale o obbligatorio.
Secondo questa nuova logica, le regole da seguire ora sono le seguenti:

1) i parametri obbligatori seguono la logica antica, ovvero l'ultimo parametro è quello relativo all'oggetto parent più in alto della catena
2) i parametri opzionali seguono anch'essi la stessa logica

questo però separando completamente i due blocchi in parti distinte, ognuna con il proprio ordine.
In definitiva avremo un misto composto da due blocchi: parametri obbligatori, parametri opzionali.

Spero di aver spiegato bene questa nuova implementazione che, a mio avviso, complica di molto eventuali conversioni di vecchi progetti. Inoltre, vista la divisione in due blocchi distinti, è necessario fare attenzione anche ai due ordinamenti.

...lungi da me commentare tale modifica...

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Modifica ordine parametri nella creazione degli oggetti
« Risposta #1 il: 23 Settembre 2010, 15:26:27 »
Vabbè dai s'era capito ormai che i progetti devono essere riscritti. Sicuramente se tale scelta è stata fatta avrà un suo perchè e non ci è dato saperlo vista la politica di sviluppo. io mi chiedo come mai Gambas sia uno dei pochi linguaggi che non ha un sito ufficiale nel quale ogni decisione viene resa pubblica. Ti avvisa solo quando viene rilasciata una major release ma non si sa mai nulla i più......tutto 'sto mistero vallo a capire....

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Modifica ordine parametri nella creazione degli oggetti
« Risposta #2 il: 23 Settembre 2010, 16:07:23 »
Non volevo far polemica... bhè, un pò sì...  :-[

Il fatto è che, come dici anche tu, tocca andare col cacciavite a scovare cosa, quando e perchè una cosa l'hanno cambiata.

Se vai sul viki, devi fare molta attenzione a quello che c'è scritto, cercando di cavare da tutto quel poco che è pubblicato, tutto il cavabile.
A volte devi anche presumerlo...

E vabbè, come con te, Gambas ce lo dobbiamo tenere così com'è...  :P