Estensione di Visual Studio per Arduino

Cosa ne pensate? https://blogs.msdn.microsoft.com/iotdev/2017/07/06/visual-studio-code-extension-for-arduino-is-now-open-sourced/

Penso che Visual studio non è adatto per programmare Arduino, per le mcu/micro servono appositi ambienti di lavoro specifici, come Atmel Studio che è si basato su Visual studio come interfaccia, ma è tutto un altro ambiente di lavoro.

Mi fai capire cosa intendi? Se io compilo, compilo, indipendentemente dall'IDE che uso visto che comunque sotto tutti usano il compilatore della piattaforma mcu. Se un ambiente mi mette a disposizione i tool giusti per la piattaforma sulla quale sviluppo (inclusi i path alle librerie ed un monitor seriale parlando di Arduino), non vedo in che modo "servono appositi ambienti" tanto più se parliamo di Arduino, non vedo quali funzionalità dell'IDE ufficiale non possano essere presenti anche in una estensione per Visual Studio. Io non amo particolarmente Microsoft, ma se si mettono da parte preconcetti o antipatie e si parla di fatti e dati, non ci trovo nulla di negativo. Anzi, è la dimostrazione che l'interesse per Arduino cresce.

Penso che @astro intenda dire che un visual atmel studio ti permette di andare “oltre” arduino e il semplice strato software wire. A quel link mi pare di capire una estensione che fa come tanti altri ide con estensioni simili. Sostituisce l’IDE Arduino, magari ti da intellisense e qualcosa in più rispetto a IDE Arduino e basta. Ad esempio Atmel Data Visualizer o Atmel Start con quel plugin non c’e’

E poi installare giga e giga di software per programmare un'Arduino mi sembra un controsenso.

docdoc: Mi fai capire cosa intendi? Se io compilo, compilo, indipendentemente dall'IDE che uso visto che comunque sotto tutti usano il compilatore della piattaforma mcu.

Se usi una cosa diversa dal IDE di Arduino, che è leggero e semplice da usare, per fare la stessa cosa installando giga di software non mi pare una cosa intelligente. Atmel Studio, sebbene basato su Visual Studio come interfaccia utente, è molto più leggero perché non si porta appresso tutto Visual Studio, inoltre ti mette a disposizione tutta una serie di strumenti specifici per la programmazione delle mcu/micro totalmente assenti in Visual Studio, per non parlare del lato utilizzo programmatori hardware, ma anche del simulatore, il debug hardware e tante altre cose. Per farla breve, se un produttore di hardware ti mette a disposizione un ambiente di sviluppo fatto bene, specifico per le mcu/micro che usi, dotato di tutto di più perché mai dover usare un ambiente di lavoro nato per la programmazione dei pc con i linguaggi visual di Microsofot ? Non ultimo il fatto che se usi Atmel Studio hai di default la loro toolchain sempre aggiornata, rammento che anche se si tratta di avr gcc è patchato da Atmel per ottenere il massimo della resa, supporta tutti i loro micro, decisamente migliore della versione standard di avr gcc.

Ma non è Atmel stessa che mantiene avr-gcc?

No, avr gcc è gestito da gnu, la toolchain Atmel è un fork.

Si però sono in un ritardo mostruoso. L'ultima toolchain Atmel integra AVR-GCC 4.6.2, GCC stabile ho letto che è alla 6.4 e in sviluppo la 7.1.

p.s. Infatti --> https://lists.nongnu.org/archive/html/avr-gcc-list/2017-06/msg00002.html

astrobeed: Per farla breve, se un produttore di hardware ti mette a disposizione un ambiente di sviluppo fatto bene, specifico per le mcu/micro che usi, dotato di tutto di più perché mai dover usare un ambiente di lavoro nato per la programmazione dei pc con i linguaggi visual di Microsofot ?

Il tuo ragionamento è ineccepibile, invece di installare Visual Studio e l'estensione è molto meglio installare Atmel Studio che è già concepito per quell'uso.

Ma spesso Visual Studio uno lo ha già installato ed a quel punto, visto che l'IDE ufficiale gli comincia a stare un po' stretto, si installa soltanto l'estensione ottenendo indubitabilmente un notevole miglioramento rispetto all'uso dell'IDE ufficiale.

Potrebbe essere un passo intermedio prima di passare ad Atmel Studio. Il salto diretto dall'IDE ad Atmel Studio può essere un po' difficoltoso per molti.

Se l'IDE offrisse un paio di cose in più, queste "estensioni per VS" diventerebbero totalmente inutili e l'unica cosa sensata sarebbe passare direttamente ad Atmel Studio. Uso l'IDE per fare modifiche rapide al codice, ma un paio di giorni fa ho dovuto ricompilare tre volte solo per aver scritto male il nome di una variabile mentre modificavo rapidamente un sorgente, cosa che mi veniva comunicata a 3/4 dell'operazione di compilazione. VS - ma anche altri ambienti molto più leggeri - mi avrebbe avvisato direttamente in fase di editing.

astrobeed: Se usi una cosa diversa dal IDE di Arduino, che è leggero e semplice da usare, per fare la stessa cosa installando giga di software non mi pare una cosa intelligente.

Ma mi pare ovvio che uno se ha un minimo di criterio (o non è dipendente Microsoft) non installa mica Visual Studio per programmare Arduino, che dici?

Quelli che dico è che se uno USA GIÀ Visual Studio per altro (studio, divertimento, o lavoro, e nel mio caso gli ultimi due) e può programmare ANCHE con lo stesso ambiente, ben più potente e professionale dell'IDE standard, perché dovrebbe avere qualcosa di meno o negativo?

PS non considero Atmel Studio, sarà pure potente e adatto a tutto le piattaforme Atmel, ma dato che non si parla di questo ma del solo Arduino, e comunque non è in alternativa a quello che ho citato (anche questo si basa su Visual Studio, che è ciò che si contesta) non ha senso citarlo ancora come alternativa

docdoc: non ha senso citarlo ancora come alternativa

Mi sa tanto che non ti è chiaro il concetto che Atmel Studio usa solo l'interfaccia utente di Visual Studio, tutto il resto è diverso dal Visual Studio per linguaggi Visual che sei abituato ad usare, a cominciare dai tool presenti che non hanno nulla a che vedere con quelli di Visual C/C#/Basic/etc che utilizzi per lavoro. Poi fai come meglio preferisci, è una tua scelta personale, però se usi Visual Studio con un qualche plugin per programmare le mcu è come usare un'ascia per fare il cesellatore. :D

astrobeed: Mi sa tanto che non ti è chiaro il concetto che Atmel Studio usa solo l'interfaccia utente di Visual Studio, tutto il resto è diverso dal Visual Studio

Ehm, si, ma parliamo sempre comunque di AVERE Visual Studio installato, che è la critica primaria che è stata portata a sfavore del plugin che ho citato non ti pare?

Ripeto, anche se non sono sfegatato microzozziano (anzi...), non ha senso come contrapposizione, sarebbe come dire che non va bene aggiungere il bacon ad un panino con hamburger, meglio metterci il pomodoro che è più leggero: si, vero, ma mi stai sempre dicendo che va nel panino con hambuger!.. 8)

Insomma, come si diceva in altro thread, o nell'IDE mettono qualcosa in più come comodità nello sviluppo e più "moderno", come l'intellisense, o uno se trova alternative più comode, usa quelle, che sia il plugin che ho citato o Atmel Studio (a proposito, ma è gratuito?)!

Poi fai come meglio preferisci, è una tua scelta personale, però se usi Visual Studio con un qualche plugin per programmare le mcu è come usare un'ascia per fare il cesellatore. :D

Beh scusa ma la metafora non è proprio azzeccata 8) : se con VS + plugin posso fare esattamente quello che faccio con l'IDE standard di Arduino ma anche altre cose comode per sviluppare meglio, non ho qualcosa in meno ma qualcosa in più, non vedo il problema.

Ma ripeto (per l'ultima vota spero) che per me il confronto NON è tra quel plugin e Atmel Studio, ma tra plugin e l'IDE di Arduino.

E che a questo punto, giuro, mi avete fatto venire voglia di provare il plugin, appena ho un attimo forse ci provo oggi stesso e vi faccio sapere... ;)

Ancora non capisci, con Atmel Studio non installi Visual Studio per linguaggi Visual, installi solo il suo engine per l'interfaccia utente, Atmel Studio è un ambiente di lavoro totalmente diverso da Visual studio, mantiene solo una certa somiglianza grafica, sono due cose diverse con scopi diversi.

docdoc: Ma ripeto (per l'ultima vota spero) che per me il confronto NON è tra quel plugin e Atmel Studio, ma tra plugin e l'IDE di Arduino.

Se hai già VS installato e vuoi un IDE "Arduiniano" migliore allora per me il plugin ha senso. Se non hai VS installato per altro, tieni conto che occupa molto spazio.

astrobeed: Ancora non capisci, con Atmel Studio non installi Visual Studio per linguaggi Visual, installi solo il suo engine per l'interfaccia utente, Atmel Studio è un ambiente di lavoro totalmente diverso da Visual studio, mantiene solo una certa somiglianza grafica, sono due cose diverse con scopi diversi.

Ok, proverò anche quello.. ;) Anzi, sto già guardando un video dal sito atmel...

Ma in questo thread io volevo confrontare QUEL plugin per sapere da chi magari l'ha provato se sia valido o meno, non scatenare una "compiler-war"... :D

Qualcuno l'ha installato? Io leggo che richiede VS Code, che non avevo sentito come tool di VS, e per ora non mi sono fidato ad installarlo sul PC di casa (VS 2015 Community)...

UPDATE

Ragazzi, il dilemma credo sia automaticamente risolto: quel plugin che ho linkato NON è per Visual Studio (Community o meno), ma per Visual Studio Code, un "code editor" generico, senza tutti i compilatori e linguaggi Visual Studio, al quale è possibile installare estensioni per supportare diversi tipi di progetti, in questo caso incluso Arduino (del quale richiede comunque la presenza di una installazione dell'IDE per installare correttamente il compilatore e librerie).

Dato che io uso Visual Studio 2015 Community, non è questo il plugin che mi interessa, ma magari interessa ad altri che non hanno Visual Studio ma che vorrebbero provare questo VS Code con l'estensione. Ma a quel punto si che sarebbe in competizione con Atmel Studio, per cui valuterò invece quest'ultimo come eventuale alternativa all'IDE standard, insieme a VS Code.

docdoc: Cosa ne pensate? https://blogs.msdn.microsoft.com/iotdev/2017/07/06/visual-studio-code-extension-for-arduino-is-now-open-sourced/

Mi sono divertito proprio ora ad installarlo per capire cosa era ... ... altro non è che una volgare copia di "Sublime Text 3" + il plugin "stino2017" (... ovvero cose che esistono da anni e di cui si è parlato varie volte qui sul forum) :D ... solo che le funzionalità di "Sublime Text 3" sono decisamente superiori e l'interfaccia "Arduino" molto più curata ed accessibile da barra menù.

Disinistallo ... :smiling_imp:

Guglielmo

docdoc: UPDATE

Ragazzi, il dilemma credo sia automaticamente risolto: quel plugin che ho linkato NON è per Visual Studio (Community o meno), ma per Visual Studio Code

...

Dato che io uso Visual Studio 2015 Community, non è questo il plugin che mi interessa

In questo caso il plugin che puoi usare è Visual Micro. Ne esistono due versioni, una gratuita ed una a pagamento. Quella gratuita va benissimo. Devi avere fra i linguaggi su VS anche il C++. P.S. ma sei rimasto a VS 2015... la 2017 è più veloce ed ha un debug migliore.

paulus1969:
Quella gratuita va benissimo. Devi avere fra i linguaggi su VS anche il C++.

… quella a pagamento offre di più la possibilità di “debug” … che non è male … :wink:

Guglielmo