Newsgroup: it.comp.lang.delphi
Titolo: Live Delphi alle 21:00

Stasera c'è una live su Delphi dove tra gli ospiti c'è il buon vecchio Marco
Bevergli, magari qualcuno è interessato:
 
https://www.linkedin.com/video/event/urn:li:ugcPost:6908746699897204736/
 
 
Enrico

Ciao, Enrico.
Si...sto di questa cosa.
 
Con tutto il rispetto per Marco, anche no...
Non investo tempo su un prodotto che di fatto è morto da almeno 4 anni.
 
 
A.

Alberto Salvati ha scritto:

per caso conosci un alternativa, che mi permetta di creare un exe che 
parta da chiavetta? diciamo senza installazione. ( non sono interessato 
a db )
 
grazie
 
-- 
-------------------------------
per scrivere in privato
togliere "1975nosp"
 
to reply remove "1975nosp"

 a db ) 
 
Visual studio?
 
A.

Alberto Salvati ha scritto:

non saprei, diciamo che prendo visual studio c# express, tolto dotnet mi 
basta copiare il file .exe per far funzionare il programma? ( uso delphi 
proprio per quello ).


 basta copiare il file .exe per far funzionare il programma?
 
In teoria si....puoi fare 2 prove e via.
 
La stessa cosa vale per Java...oramai la VM la trovi anche ne tostapane e nel frigo...
 
A.

 no: prendi visual studio "community edition", fermo restando i limiti della licenza...solo TU puoi sapere se rientri o meno.
 
penso di rientrare, ho provato con la versione 2010, vecchia ma per 
quello che serve a me basterebbe e comunque ho l'immagine iso 
disponibile proprio qui.
 
un exe semplice funziona, devo poi provare qualcosa di più completo.


 un exe semplice funziona, devo poi provare qualcosa di più completo.
 
Completo in che senso?
 
A.

 Completo in che senso?
 
ho provato a fare un programma con un bottone e due campi testo.
caricato in windows xp+.net 3.51 ( sotto virtual box ).
Copiato il file .exe e funziona.
Devo poi provare a mettere anche altri componenti.


 Devo poi provare a mettere anche altri componenti.
 
i componenti sono parte di .Net salvo che non su cose di terze parti che potrebbero avere dipendenze esterne.
 
A.
 
 

 instllazione di COSA, di visual studio o della tua applicazione?
 
qui parlavo di installazione del compilatore.


 qui parlavo di installazione del compilatore.
 
Tu lanci un setup...che te frega se i file sono in locale o da qualche parte sul web...?
 
A.

 successive siano migliori delle precedenti.
 
Il punto di Alberto è che restando indietro di versione di Visual Studio resti
indietro anche con le versioni del linguaggio. Per fare un esempio eclatante, in
C# 9 sono stati introdotti i record, che permettono una più concisa definizione
di dataclass (utili soprattutto per mappare un JSON in un oggetto), funzionalità
quindi disponibile con Visual Studio 2019. Fare la stessa cosa con C# 4,
versione disponibile in Visual Studio 2010, è sì possibile, ma richiede molto
più codice (e, come ho letto una volta, un buon programmatore toglie linee di
codice invece di riscriverle)
 
Enrico

 Tu lanci un setup...che te frega se i file sono in locale o da qualche parte sul web...?
 
diciamo per due motivi principali
- motivi di linea ( connessione )
- e se questo prodotto viene tolto dal sito?
 
 
p.s. comunque insisto sulla storia contraria.
Devi leggere un file di testo, la versione 1.0 del framework non lo 
permette allora passi alla successiva e qui in base al rapporto tra 
funzionalità, compatibilità, costo ed altro dovresti scegliere.


 C# 9 sono stati introdotti i record...
 
ma io non sono contro, se le nuove versioni danno un vantaggio e non 
creano problemi nuovi. In base al rapporto uno con l'altro, ben vengano.


 creano problemi nuovi. In base al rapporto uno con l'altro, ben vengano.
 
Il rapporto è sempre a favore della nuova versione, al netto dell'incapacità del
proggrammatore (e nel mondo Java, quest'ultimo punto è sempre un aspetto
importante)
 
Enrico

 - e se questo prodotto viene tolto dal sito? 
 
delphi non so ma fino a poco tempo fa da MSDN alcune vecchie versioni di visual studio erano disponibili...
 
 
A.

 al netto dell'incapacità del proggrammatore 
 
Straquoto. 
 
(e nel mondo Java, quest'ultimo punto è sempre un aspetto  importante) 
 
Ho conosciuto tanti che lavorano in Java ma ben poche persone che CONOSCONO Java...
 
A.

 Java...
 
Io oramai faccio distinzioni tra javisti (quelli che Java lo conoscono) e javari
(quelli che con Java ci lavorano e basta)
 
Enrico

 visual studio erano disponibili...
 
Sinceramente è una domanda che non mi ero mai posto. Al netto che da quanto ne
so, in Delphi il porting di un'applicazione da una versione vecchia alla
versione nuova del compilatore "in teoria" basta ricompilare (a meno di non
avere breaking changes tipo quella di UTF), su Visual Studio con C#, non
dovrebbe essere uguale? Ovvero, le versioni nuove dovrebbero compilare
correttamente senza troppe modifiche (per fare il solito paragone, in Java in
molti casi non è nemmeno necessario ricompilare, ovvero il jar rilasciato alla
versione X funziona anche con la versione X+1)
 
Enrico

 versione X funziona anche con la versione X+1) 
 
Parliamo di sintassi, VM o entrambe?
Sono sempre stato attratto da Java nonostante un certo "terrorismo" sul GC , ma mi sono raffreddato a seguito dei casini combinati da Oracle....
 
A.
 

 ma mi sono raffreddato a seguito dei casini combinati da Oracle....
 
La questione è complessa e parte da Java 7, dove sono cominciati i lavori di
transizione a OpenJDK per definire la JVM di riferimento. Con Java 8, che è
basato su OpenJDK, Oracle ha "semplicemente" deciso di monetizzare la sua JVM.
Che, in soldoni, si è tradotto in:
 
 - Non vuoi pagare? Usa OpenJDK.
 - Vuoi pagare? Usa Oracle Java. Che è OpenJDK più supporto.
 
Ovviamente la gente non ha capito nulla e i titoloni del tipo "Oracle ha
ammazzato Java" sono spuntati come funghi. In più, a creare confusione, Oracle
ha deciso, assieme al consorzio che gestisce Java, di cambiare i cicli di
rilascio (una release ogni 6 mesi, una LTS ogni due anni), cosa che all'inizio
ha creato ancora più confusione senza considerare i vantaggi (il supporto a var
di cui parlavo prima è stato sì introdotto in Java 10, ma è stato adottato in
una LTS con Java 11, questo significa che il porting del codice è stato
possibile farlo molto prima nonostante non fosse consigliabile usare la JVM in
produzione)
 
Enrico

 produzione) 
 
...AZZ....
 
A.

 ...AZZ....
 
Occhio, con il concetto di LTS non significa che Java 9 (non LTS) non fosse
usabile in produzione, ma semplicemente che il suo supporto terminava quando
sarebbe uscita Java 10. Java 11, di contro è una LTS e quindi gode di un
supporto maggiore (uscita nel 2018, ha un supporto fino al 2023 ed uno esteso
fino al 2026)
 
Enrico

 varie implementazioni dei GC di Java è a grafo e non per conteggio)
 
Questa non la sapevo, e ammetto di non capire in che modo le 2 cose stanno insieme: ci guarderò.
 
 
A.
 
 
 
 

 insieme: ci guarderò.
 
Per capire questo dettaglio, va capito come funziona un GC. Spiegato molto
maccheronicamente, ogni volta che inizializzi una variabile, aumenti un
contatore interno per quell'istanza. Quando il metodo che inizializza quella
variabile termina, il contatore viene azzerato. Per tutte le variabili con
contatore a zero (quindi non referenziate), il GC le cancella liberando
memoria. Il problema di questo approccio è semplice: se variabile A referenzia
variabile B e variabile B referenzia variabile A, ottieni una referenziazione
circolare che anche nel caso in cui nessun altro referenzia queste due
variabili, il GC non entra in azione in quanto i contatori sono comunque attivi.
Per risolvere la questione, quindi, Java tiene un grafo gerarchico delle
referenziazioni, in modo che se anche incappi in una situazione di
referenziazione circolare, il GC sa che può rimuoverle
 
Enrico

 referenziazione circolare, il GC sa che può rimuoverle 
 
Bello e furbo! Suona come uno dei pattern formalizzati dalla GOF... 
 
A.

 Berlin insomma....
 
La 10.6.2? Berlin? Ma di cosa state parlando?
 
Roba da pazzi!
 
 

 Roba da pazzi!
 
 
..cioè...?
 
A.

> ..cioč...?
 
La 10.6.2 non esiste!
 
Dopo la 10.4.2 č uscita la 11.
 
D
 
 

 
 
vero, ho sbagliato a scrivere invece di 10.4.2 ho messo un 6.
 
Ma allora sarebbe 10.4 Update 2.
