|
|
![]() |
|
Strumenti |
![]() |
#81 | ||||
Senior Member
Iscritto dal: Jul 2001
Messaggi: 3283
|
Quote:
Quote:
A voler essere pignoli, nemmeno tu hai riportato alcuna fonte che spiegasse in quale linguaggio è scritto Office, hai solo dato per scontato che non fosse assembly. Quote:
http://www.biffuz.it/tmp/Immagine.png (non si carica inline perché non ho https) Sicuro di aver capito di cosa parla la paginetta che mi hai linkato? Potrei farti un esempio più completo, in cui chiamo codice assembly da C++ e viceversa, ma ho già sprecato abbastanza pausa pranzo. Se vuoi approfondire sentiti libero di cercare ulteriori fonti online. Quote:
__________________
www.biffuz.it | Thou shall not follow the NULL pointer, for chaos and madness await thee at its end. Powered by: 3770k @ W10 | rMBP @ Catalina | C2Q @ XP | P3 @ W98+BeOS | P3 @ DOS | 286 @ W3.1 | C64 | iP8+ @ iOS14 | Kindle4 | PS4 | rPi3 | and more... Ultima modifica di biffuz : 11-03-2021 alle 13:59. |
||||
![]() |
![]() |
![]() |
#82 | |
Senior Member
Iscritto dal: Jan 2003
Messaggi: 1119
|
Quote:
In famiglia ne abbiamo una e ogni anno acquisto un codice di rinnovo su Amazon (ultima volta speso 59,99 €); dividendo la spesa per 6 diventano nemmeno 10 € all'anno a testa. https://www.amazon.it/Microsoft-Offi...dDbGljaz10cnVl Questo anche per dire quanto poco costa Office se si usa un po' la testa. Ultima modifica di cavaliereombra : 11-03-2021 alle 14:38. |
|
![]() |
![]() |
![]() |
#83 | |||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 25582
|
Quote:
Ecco qualche benchmark. Quote:
Quote:
Quote:
Ecco qui ciò che avevo scritto in merito: "Dubito fortemente che abbiano mantenuto il core in assembly, se non eventualmente per piccole sezioni critiche per IA-32/x86" Che è ben diverso da quanto vorresti appiopparmi. Quote:
"Inline Assembler Quote:
Quote:
"I problemi dei formati di Office sono stranoti, non capisco perché insisti a dire che sono aperti e documentati" che è palesemente falso, come ho dimostrato. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT. Fanboys |
|||||||
![]() |
![]() |
![]() |
#84 | ||||||
Senior Member
Iscritto dal: Jul 2001
Messaggi: 3283
|
Quote:
Java e C# a mio parere sono talmente simili che la produttività è questione di gusti e abitudini, e gli IDE aiutano molto, ma meglio che non scendo nei dettagli prima che mi chiedi le prove. Quote:
Mi pare anche che molti politici con gran seguito facciano la stessa identica cosa, dopotutto... Quote:
![]() Quote:
Quote:
E se non sei un folle che scriveva assembly inline in ogni file, e hai dato una struttura decente al tuo progetto, rinunciare a questa piccola comodità non lo ritengo un gran lavoro. Quote:
E adesso basta, chiudo qui la discussione.
__________________
www.biffuz.it | Thou shall not follow the NULL pointer, for chaos and madness await thee at its end. Powered by: 3770k @ W10 | rMBP @ Catalina | C2Q @ XP | P3 @ W98+BeOS | P3 @ DOS | 286 @ W3.1 | C64 | iP8+ @ iOS14 | Kindle4 | PS4 | rPi3 | and more... |
||||||
![]() |
![]() |
![]() |
#85 | |||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 25582
|
C'entra perché se scrivi questo:
"sembra che ritieni che gli stessi problemi non si avrebbero con altri linguaggi "più produttivi"ti ho fatto un esempio in merito. ![]() Quote:
Quote:
Quote:
D'altra parte il contesto avrebbe dovuto essere chiaro. Ecco qui quello che avevi scritto: "Il fatto che gli engine di Office sono scritti in assembly è riportato in molti articoli"Se l' "engine" fosse scritto in assembly, vuol dire che il resto NON lo sarebbe, logica elementare alla mano. Dunque l'avranno scritto in un ALTRO linguaggio di programmazione, e siccome a parte Visual Basic Microsoft supporta da tantissimi anni C e C++ e mette a disposizione anche librerie/framework allo scopo, mi pare scontato che la scelta sia stata questa. Ora, il punto è che se passi a C/C++, e specialmente se poi utilizzi classi et similia (che col tipo di applicazioni che sono quelle Office mi pare una naturalissima scelta. E questo senza nemmeno tirare in ballo i design pattern), continuare a usare l'assembly 8086 (perché è questo che è stato usato inizialmente con le prime applicazioni del pacchetto Office) non sarebbe stato possibile, visto che già all'inizio degli anni '90 aveva preso piede l'80386 come ISA di riferimento (8086 era già destinata all'oblio, pur con tutta la base software esistente), lanciata dai famosi DOS-extender e dall'arrivo di Windows 3.0. Dunque quando Microsoft avrà deciso di riscrivere Office in C++ non poteva più utilizzare il codice originale 8086, e se avesse voluto continuare a mantenere l'engine o, in generale, una parte del codice in assembly, avrebbe dovuto riscriverlo da capo per 80386. E la maniera migliore (ossia comoda, veloce, produttiva, ossia più facile da integrare e testare) di farlo è usare l'assembly inline, per l'appunto, i cui vantaggi sono innegabili rispetto all'avere blocchi di codice isolati in file assembly esterni. Quindi se questa è la strada scelta, e di cui ho ben pochi di dubbi da sviluppatore, si giustifica la frase che ho poi scritto in risposta alla tua: "Dubito fortemente che abbiano mantenuto il core in assembly, se non eventualmente per piccole sezioni critiche per IA-32/x86, per le seguenti motivazioni: che parla per l'appunto di "inline assembly". Quote:
Quote:
E da professionista la mia valutazione sull'opportunità di usare codice assembly te l'ho illustra sopra: quelle sono le scelte che avrei fatto, e ho pochi dubbi che gli sviluppatori di Microsoft abbiano fatto diversamente quando hanno riscritto Office in C++, EVENTUALMENTE mantenendo porzioni in assembly. Per il resto, sì: fino a circa metà anni '90 scrivevo codice quasi interamente in assembly. Quando ho dovuto lavorare col PC per la scuola (ITIS) all'epoca si usava il Turbo Pascal 3.0, e l'UNICO supporto all'inline era... quello in linguaggio macchina. Dunque i miei sorgenti erano pieni di inline in esadecimale che derivavano da parti assembly (8086) compilate e di cui avevo poi fatto il dump per inserirlo, appunto, come inline in mezzo al codice Pascal. Alcuni moduli li ho mantenuti in assembly, da linkare all'occorrenza. Ma la via prediletta era l'inline, anche se limitato al solo linguaggio macchina, perché rispetto a un assemblato esterno da linkare mi forniva una notevole flessibilità (ossia poter passare parametri in mezzo ai byte, nonché inserire espressioni che venivano calcolate dal compilatore). Con l'arrivo dell'inline assembly, col TP 4.0 se non erro, ho progressivamente abbandonato i moduli assembly esterni, e scritto il mio codice assembly direttamente in mezzo a quello Pascal, grazie agli innegabili vantaggi. Quote:
![]() Ma in ogni caso il formato è aperto e documentato, contrariamente a ciò che avevi falsamente affermato. Altra cosa di non poco conto, è la storia di questo formato: è stata l'UE a chiedere Microsoft di standardizzare il formato XML dei file prodotti da Office, e non il contrario. Inoltre è un processo che non avvenuto in poco tempo, ma ha richiesto due anni di lavoro. Così si smonta un altro falso mito che circola da tempo. Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT. Fanboys |
|||||||
![]() |
![]() |
![]() |
#86 |
Junior Member
Iscritto dal: Mar 2021
Messaggi: 4
|
Premetto che non ho provato OnlyOffice, ma resto dell'idea che la miglior soluzione siano i servizi di Google (Google Documents, Google Sheets...): 100% online, zero spazio su disco, accessibile ovunque ci sia una connessione internet. Nel complesso puoi fare tutto, io lo uso per scopo sia privato sia lavorativo dal mio account Google, penso che questa sia la soluzione migliore in assoluto!
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:01.