Un saluto a tutti gli amici del forum.
Lavorando con i microcontrollori, fra esperimenti e sviluppi vari, sono arrivato al punto di avere una gran quantita' di sorgenti che vorrei organizzare in un database. Sono sorgenti in C, alcuni in Java (per ora pochi) e in un metalinguaggio che ho creato per la realizzazione automatica di sorgenti in C per le macchine a stati.
Prima d' imbarcarmi nell' impresa di riprogettare il motore a scoppio, mi piacerebbe sapere se esistono dei programmi che mi permettano di avere un unico archivio con tutti i frammenti dei sorgenti per averli sempre disponibili senza andarmeli a cercare in giro per le varie cartelle, corredati di descrizione, che si possano individuare tramite parole chiave o che si possano cercare attraverso un elenco.
Faccio un esempio.
Devo sviluppare, chesso', un' apparecchiatura che utilizza un PIC32. Vorrei avere un programma che, digitando la parola chiave "PIC32" mi riempia un elenco di nomi di funzioni che ho scritto e che si possono utilizzare con tale processore. Scorrendo l' elenco dovrei leggere (ad esempio in calce a tale elenco) un descrizione scritta da me della funzione, di come si usa e cosa fa. Una volta selezionata questa mi appare in una finestra di testo dalla quale posso copiarla per incollarla sul mio programma o che mi indici il file (o i files) da includere nel mio programma. Alcune funzioni sono di uso generale, quindi dovrei associare alla "scheda" della funzione dei tags che specifichino tutte le famiglie dei PIC dove puo' essere utilizzata.
Ecco, a grandi linee e' quello che mi piacerebbe avere.
Il fatto e' che non seguo affatto il software per il PC quindi domando a voi se esiste un qualcosa del genere.
Non serve che sia gratis ma che funzioni bene e mi rivolgo a voi per avere qualche informazione o link.
Ringrazio anticipatamente.
Database per sorgenti.
Moderatori:
Paolino,
fairyvilje
11 messaggi
• Pagina 1 di 2 • 1, 2
0
voti
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
0
voti
Di solito un programmatore gli serve un controllo di revisione (gestire la storia dei cambiamenti, ramificazioni, etichette di un codice) e poi, se mai, un tools per cercare parti di sorgenti nel proprio gestore di revisione.
L'utilizzo di un search engine per sorgenti senza l'uso di un controllo di revisione lo trovo abbastanza inutile.
La cosa non è in generale semplice per un neofita.
Di software di controllo di revisione c'è ne sono tanti:
http://en.wikipedia.org/wiki/List_of_re ... l_software
alcuni sono ormai obsoleti, altri sono più recenti e più attivi nello sviluppo. Io ti consiglio Git (è quello che uso in tutti i miei nuovi progetti) o Mercurial.
http://git-scm.com/
http://mercurial.selenic.com/wiki/Mercurial
Una volta scelto il controllo di revisione (decisione non facile) esistono dei frontend per implementare funzioni aggiuntive, come dei search engine via web. Ogni programma di revisione ha un elenco di tools opportuni:
https://git.wiki.kernel.org/index.php/I ... Interfaces
http://mercurial.selenic.com/wiki/OtherTools
Se è troppo complesso la gestione di un controllo di revisione con un web front-end, esistono soluzione più semplici, il più noto e vecchio tools di ricerca tra i sorgenti è ctags:
http://ctags.sourceforge.net/
originalmente scritto per cercare nei sorgenti C, ora esteso in decine di linguaggi tra cui C++ e Java. Si solito si interfaccia con un editor di testo o un IDE.
L'utilizzo di un search engine per sorgenti senza l'uso di un controllo di revisione lo trovo abbastanza inutile.
La cosa non è in generale semplice per un neofita.
Di software di controllo di revisione c'è ne sono tanti:
http://en.wikipedia.org/wiki/List_of_re ... l_software
alcuni sono ormai obsoleti, altri sono più recenti e più attivi nello sviluppo. Io ti consiglio Git (è quello che uso in tutti i miei nuovi progetti) o Mercurial.
http://git-scm.com/
http://mercurial.selenic.com/wiki/Mercurial
Una volta scelto il controllo di revisione (decisione non facile) esistono dei frontend per implementare funzioni aggiuntive, come dei search engine via web. Ogni programma di revisione ha un elenco di tools opportuni:
https://git.wiki.kernel.org/index.php/I ... Interfaces
http://mercurial.selenic.com/wiki/OtherTools
Se è troppo complesso la gestione di un controllo di revisione con un web front-end, esistono soluzione più semplici, il più noto e vecchio tools di ricerca tra i sorgenti è ctags:
http://ctags.sourceforge.net/
originalmente scritto per cercare nei sorgenti C, ora esteso in decine di linguaggi tra cui C++ e Java. Si solito si interfaccia con un editor di testo o un IDE.
0
voti
Ti ringrazio per la risposta.
Ho guardato i software che mi hai suggerito ma, purtroppo, non sono quello che sto cercando.
Ho guardato i software che mi hai suggerito ma, purtroppo, non sono quello che sto cercando.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
0
voti
i "pezzi di codice" vari e sparsi in gergo sono chiamati snippet
mi pare di capire che cerchi quindi uno snippet manager.
cerca con google qualcosa come "code snippet manager" o varianti...
mi pare di capire che cerchi quindi uno snippet manager.
cerca con google qualcosa come "code snippet manager" o varianti...
in /dev/null no one can hear you scream
0
voti
Ho girato il web fino ad ora. Ne ho trovati diversi ma nessuno fa quello che mi servirebbe. O sono troppo semplici e quindi inutili, o sono troppo rigidi e quindi non adattabili ... bah, lo scrivero' io integrando anche il mio programma per generare i sorgenti delle macchine a stati.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
0
voti
E perché invece non metti un commento (descrizione della funzione e altri dati utili) dentro ogni file e poi esegui una ricerca interna ai files? (ad esempio usando il comando grep su Linux)
Se tieni tutto dentro una cartella o un unico albero di cartelle, mi sembra una soluzione semplice e comoda.
Se tieni tutto dentro una cartella o un unico albero di cartelle, mi sembra una soluzione semplice e comoda.
0
voti
Faccio 3 premesse d'obbligo:
1. Quando serve uno strumento, lo strumento deve essere comodo per le proprie esigenze. Altrimenti invece di usare lo strumento, si lavora PER lo strumento. E non va bene.
2. Io tendenzialmente seguirei la tua logica: "se non c'è lo strumento che fa quello che serve a me me lo creo" (a volte da anche più soddisfazione)
3. Se il 99% delle persone va in una direzione, non è detto che si debba seguire per forza quella.
Detto questo, senza voler fare della retorica, ma analizzando solo l'aspetto tecnico... negli anni, ho imparato che, un piccolo sforzo di modificare le mie abitudini, seguendo strade che sembravano non adatte per me o troppo complicate, alla lunga mi hanno portato a buoni risultati.
Se in tutto il web non hai trovato nessuno strumento o sistema di "catalogare" i pezzi di codice che ragiona come vorresti tu.. e nessun programmatore segue la tua logica... prima di reinventare la ruota, forse dovresti chiederti se davvero sei nella direzione giusta
just my 2 cents
1. Quando serve uno strumento, lo strumento deve essere comodo per le proprie esigenze. Altrimenti invece di usare lo strumento, si lavora PER lo strumento. E non va bene.
2. Io tendenzialmente seguirei la tua logica: "se non c'è lo strumento che fa quello che serve a me me lo creo" (a volte da anche più soddisfazione)
3. Se il 99% delle persone va in una direzione, non è detto che si debba seguire per forza quella.
Detto questo, senza voler fare della retorica, ma analizzando solo l'aspetto tecnico... negli anni, ho imparato che, un piccolo sforzo di modificare le mie abitudini, seguendo strade che sembravano non adatte per me o troppo complicate, alla lunga mi hanno portato a buoni risultati.
Se in tutto il web non hai trovato nessuno strumento o sistema di "catalogare" i pezzi di codice che ragiona come vorresti tu.. e nessun programmatore segue la tua logica... prima di reinventare la ruota, forse dovresti chiederti se davvero sei nella direzione giusta
just my 2 cents
in /dev/null no one can hear you scream
0
voti
Non ho provato nulla per la gestione degli snipper di codice che rispetta le specifiche molto particolari.
Esisto delle estensioni per gli editor di testo che permettono di inserire in modo automatico delle porzione di codice, ad esempio i progetti presenti su Google Code:
http://code.google.com/hosting/search?q=label%3Asnippet
dipendono dal editor di testo o dal IDE utilizzato.
Esistono dei siti che raccolgono code snipper di molti linguaggi:
http://snipplr.com
http://www.refactory.org
http://snippets.snippets.org/index.php
alcuni forniscono dei tool ma si interfacciano al editor di testo.
Esisto delle estensioni per gli editor di testo che permettono di inserire in modo automatico delle porzione di codice, ad esempio i progetti presenti su Google Code:
http://code.google.com/hosting/search?q=label%3Asnippet
dipendono dal editor di testo o dal IDE utilizzato.
Esistono dei siti che raccolgono code snipper di molti linguaggi:
http://snipplr.com
http://www.refactory.org
http://snippets.snippets.org/index.php
alcuni forniscono dei tool ma si interfacciano al editor di testo.
0
voti
Innanzi tutto vi ringrazio nuovamente per le info che mi avete dato, sono state particolarmente utili.
Oggi ho ripreso ed ho analizzato a fondo gli snippet managers che ci sono disponibili e ... mi sono accorto che non e' quello che voglio. Non mi serve il controllo di revisione per una serie di motivi. Il buono e' che tutto questo ha messo ordine nelle mie idee e mi ha dato parecchi spunti di riflessione.
Ho capito che ho bisogno di un tool particolare, e l' unica soluzione e' scrivermelo da me.
La stessa cosa mi e' capitata 10 anni fa. Per sviluppare un prodotto in un certo settore (non per PC ma su scheda con microcontrollore) affidabile e di sicuro funzionamento impiegavo almeno 4 mesi se non di piu'. Il mercato era mutevole, le leggi ed i regolamenti del settore cambiavano in continuazione ed avevo bisogno di un qualcosa che, partendo da parti di codice ultracollaudate e blocchi funzionali robusti, mi permettesse di sviluppare le miei idee in poco tempo e senza errori scrivendo il minimo indispensabile.
Ho quindi sviluppato un tool che letteralmente mi costruiva il sorgente del programma, convertiva i file dei suoni, immagini ed altro per adatterle alle mie basi hardware in automatico. Ci ho lavorato piu' di 6 mesi e sono riuscito ad ottenere un tool che mi permetteva di sviluppare un nuovo prodotto partendo da zero in 4/5 giorni.
La cosa ha funzionato.
Era una scelta che andava al di la degli standard, se vogliamo anche azzardata, ma ha funzionato molto bene.
Oggi ho tirato giu' parte delle specifiche ma e' un lavoro lungo.
Devo ancora valutare se mi conviene farlo o se andare avanti in modo tradizionale.
In ogni caso grazie ancora.
Oggi ho ripreso ed ho analizzato a fondo gli snippet managers che ci sono disponibili e ... mi sono accorto che non e' quello che voglio. Non mi serve il controllo di revisione per una serie di motivi. Il buono e' che tutto questo ha messo ordine nelle mie idee e mi ha dato parecchi spunti di riflessione.
Ho capito che ho bisogno di un tool particolare, e l' unica soluzione e' scrivermelo da me.
La stessa cosa mi e' capitata 10 anni fa. Per sviluppare un prodotto in un certo settore (non per PC ma su scheda con microcontrollore) affidabile e di sicuro funzionamento impiegavo almeno 4 mesi se non di piu'. Il mercato era mutevole, le leggi ed i regolamenti del settore cambiavano in continuazione ed avevo bisogno di un qualcosa che, partendo da parti di codice ultracollaudate e blocchi funzionali robusti, mi permettesse di sviluppare le miei idee in poco tempo e senza errori scrivendo il minimo indispensabile.
Ho quindi sviluppato un tool che letteralmente mi costruiva il sorgente del programma, convertiva i file dei suoni, immagini ed altro per adatterle alle mie basi hardware in automatico. Ci ho lavorato piu' di 6 mesi e sono riuscito ad ottenere un tool che mi permetteva di sviluppare un nuovo prodotto partendo da zero in 4/5 giorni.
La cosa ha funzionato.
Era una scelta che andava al di la degli standard, se vogliamo anche azzardata, ma ha funzionato molto bene.
Oggi ho tirato giu' parte delle specifiche ma e' un lavoro lungo.
Devo ancora valutare se mi conviene farlo o se andare avanti in modo tradizionale.
In ogni caso grazie ancora.

"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
-

TardoFreak
73,9k 8 12 13 - -EY Legend-

- Messaggi: 15754
- Iscritto il: 16 dic 2009, 11:10
- Località: Torino - 3° pianeta del Sistema Solare
0
voti
Ho riletto con più attenzione il tuo primo post... in particolare dove dici:
Io con vim per fare una cosa simile uso un plugin basato su ctags
Dagli un occhio, potrebbe tornarti utile. mi pare funzioni anche con editor diversi da vim
ciao
Faccio un esempio.
Devo sviluppare, chesso', un' apparecchiatura che utilizza un PIC32. Vorrei avere un programma che, digitando la parola chiave "PIC32" mi riempia un elenco di nomi di funzioni che ho scritto e che si possono utilizzare con tale processore.
Io con vim per fare una cosa simile uso un plugin basato su ctags
Dagli un occhio, potrebbe tornarti utile. mi pare funzioni anche con editor diversi da vim
ciao
in /dev/null no one can hear you scream
11 messaggi
• Pagina 1 di 2 • 1, 2
Chi c’è in linea
Visitano il forum: Nessuno e 12 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)


