Newsgroup: it.comp.lang.c++
Titolo: Un buon ambiente free...

Salve a tutti
Ho provato il Borland e non mi è piaciuto, troppo complesso e spesso (almeno
per un novellino come me) pieno di bug o controsensi apparentemente tali.
Ho il provato il Dev C++, mi piace. L'ho sto per reinstallare ma ho letto
che da problemi con il debug.
A me servirebbe proprio un ambiente con un debug semplice e chiaro e magari
un buon help (per non rompere sempre il NG.... :-))
cosa mi consigliate?
grazie e buona serata a tutti
ivan

 per un novellino come me) pieno di bug
Io andrei piano a dire queste cose...
Compilatori freeware ce ne sono, e anche validi, ma se vuoi un buon
debugger, un buon ide, una guida online etc... credo tu ti debba rivolgere
verso prodotti professionali..... vedi VC++.NET.
Tommy

 ha scritto nel messaggio
news:b3ttp9$n3r$1...@sparta.btinternet.com...
|
| "Ivan Sofa n.1" <dromeda...@inwind.itDELETE> wrote
| > Ho provato il Borland e non mi è piaciuto, troppo complesso e spesso
| (almeno
| > per un novellino come me) pieno di bug
si, mi sono espresso MOLTO male.
intendevo che io non capisco molte cose, bisogna ammettere complesse, e che
conseguentemente mi sembra di essere circondato da bug, beh, ovviamente è
solo un'apparenza! :-)
ad esempio il problema che ho già esposto di ACCESS VIOLATION è una
testimonianza.
il problema forse sta nell'help che non spiega, se non a linee grandissime,
molti problemi.
ivan



Se per te VC++,.NET o no, è meglio del GCC...
Per quanto riguarda il debugging, quello che puoi fare con GDB te lo
sogni lontanamente con qualsiasi debugger visuale, in particolare quelli
MS...per quanto riguarda l'IDE, personalmente quella del Visual C++ (però
non conosco il .net) mi fa davvero schifo, ma questa è questione di
gusto. Di certo è pensata più per creare finestrelle varie e usare
schifezze tipo MFC che per programmare in C++ standard. Solo l'help in
linea nei programmi commerciali di solito è più presente, ma non per
questo migliore, come dimostrato dalle innumerevoli cassate (non quelle
alla siciliana...) del MSDN...
Insomma, il Dev-C++ sotto piattaforma Windows per me è il miglior
ambiente che puoi usare, per programmare in C++ standard! Se invece hai
bisogno di sviluppare applicazioni Windows, con finestre ecc. puoi sempre
usare il dev, oppure se ti interessa la programmazione visuale, ti
consiglio il Borland C++ builder...ti consiglio di stare alla larga dai
prodotti Microsoft, per quanto mi riguarda mi sono sempre trovato
malissimo, soprattutto per quanto riguarda l'aderenza agli standard e la
libertà che ti danno. O fai come hanno deciso che l'utente debba fare, o
non fai proprio niente.

 non fai proprio niente.
Non e' vero! Io uso spesso e volentieri le API (nude e crude) di windows,
nessun wizard, C++ standard, non so che dirti, non credo sia cosi!
Tommy

 Tommy

 wizard e un'interfaccia carina per fare prodotti validi!
Su questo non posso far altro se non darti ragione in pieno!
Tuttavia considero il VC++.NET un OTTIMO prodotto!
Tommy

cosa mi consigliate?
Direi il GCC, nella veste DJGPP per Windows (
www.delorie.com/djgpp
).
C'è anche l'ambiente RHIDE, molto simile all'IDE del vecchio Turbo C++
della Borland.
-- 
Andrea Laforgia
"640kb of memory should be enough for anyone." -- Bill Gates.

 Tommy
 
Beh, su questo non posso dire nulla perchè non l'ho utilizzato. Ma visti i
precedenti,e considerando che mi trovo bene con gli strumenti che ho ora,
 e che il pacchetto costa davvero parecchio, davvero preferisco perdermi
tutte le innovazioni!:-) Tra l'altro penso che il .NET sia improntato più
al C# che non al C++,o sbaglio?

 ambiente che puoi usare, per programmare in C++ standard! Se invece hai
ma sei sicuro di aver usato devc++?
ciao :)



Per programmare in C++ STANDARD...se poi vuoi fare applicazioni windows a
finestre, è un altro discorso...

 Per programmare in C++ STANDARD...
altro modo per dire "programmi che in realtą non fanno niente"?
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.0. C, C++ and ASM developers
                               and beta testers are welcome!

 niente.
come tu riesca a concentrare tante fregnacce in così poco spazio, senza 
spostare l'asse terrestre o deformare lo spazio-tempo, solo tu lo sai


 altro modo per dire "programmi che in realtà non fanno niente"?
Mah, saranno almeno dieci anni che programmo in c (e ora molto
saltuariamente in c++) per motivi di ricerca in campo 
informatico/matematico e non  ho mai avuto necessita' di uscire dallo
standard. Semplicemente tutti i  miei programmi avevano solo input e
output testuale, cosa abbastanza  naturale visto che essenzialmente
macinano numeri e non hanno interazioni con il maledetto utente.
ciao,
g.

 altro modo per dire "programmi che in realtà non fanno niente"?
Non è corretto dire questo. I programmi in C++ standard, ad esempio,
sono gli unici che possono funzionare senza modifiche su qualunque
sistema che disponga di un compilatore full compliant. Inoltre un
progetto complesso può essere facilmente costituito da parti scritte in
C++ standard e da altre che si interfacciano con aspetti specifici della
macchina ospite.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

 > niente.
Purtroppo questo è un problema degli IDE integrati, specialmente di
quelli visuali.


 o di mancanza di
Opinioni...
Davvero belle risposte! Qui si dovrebbero fare discussioni costruttive,
tra l'altro sul C++ e non sugli ambienti di sviluppo...per gli attacchi
personali, senza fondamenti, ci sono altri posti!
Ciao

 
Quindi concordi con me che per programmare in C++ *STANDARD* esistono altri
prodotti, commerciali e non, altrettanto se non più validi? Per quanto
riguarda la programmazione "visuale", non posso dare giudizi in quanto
l'ho usato poco e non mi è piaciuto per niente, e sono passato al Borland
C++ builder con il quale mi sono trovato meglio. Ma ripeto,queste sono
solo opinioni! 


spostare l'asse terrestre o deformare lo spazio-tempo, solo tu lo sai
.. poi Juliet ti morde :p
ed a ragione.. non è bello sputare sul lavoro di altri parlando senza
cognizione di causa.
Uno Sbirish RAD ( Random Application (to be) Deleted )

 
Assolutamente non voglio sputare sul lavoro di nessuno! Non parlo senza
cognizione di causa, esprimo le mie opinioni su un prodotto che ho usato
per un po'di tempo e non mi è piaciuto. Non pretendo che quello che dico
sia vero o giusto, sono semplicemente le mie opinioni. E non è giusto
attaccare gratuitamente sulle opinioni...


 altro modo per dire "programmi che in realtà non fanno niente"?
 
Già...il problema è che se non vedete il pulsante su cui cliccare non
sapete cosa fare...La maggior parte di lavoro di qualsiasi programma non
banale è invisibile all'utente...e sarebbe meglio tenerla indipendente
dall'ambiente in modo che se un giorno Pasquale ti chiede di usare il suo
programma sul sistema Pincopal+ tu potrai farlo con poco sforzo...


Forse nessuno persona che conosci usa il GDB, ma posso assicurarti che viene
usato tantissimo. C'e' gente che lo usa senza saperlo perchè é integrato con
i tool di sviluppo di microprocessori embedded e dsp.

 dimmene una
Ciao Juliet
Su due piedi non me ne viene nessuna, tuttavia mi é capitato di scaricare
dei programmi di prova da msdn, compilarli e ricavare errori del
compilatore. Inoltre MSDN contiene troppo materiale e spesso risulta
difficile seguirlo. Che io sappia non sono l'unico a pensarla così.

 solo opinioni!
Io concordo con te che per programmare in C++ standard e basta ci siano
strumenti migliori del VC++, ma non credo che sia il C++ builder. Prendi
l'ultima versione di VC++ e l'ultima del Builder, beh.... una e' quasi
interamente aderente allo standard (VC++) l'altra lascia molto a desiderare!
Tommy

 miglioramenti )
A me sembra risolto nella versione .NET!
Tommy

 Mi riferico alla scarsa flessibilità di strumenti tipo Wizard...
Si, ma quelli non li uso, non mi piacciono e li evito. Se come dici non
piacciono nemmeno a te non usarli e vedrai che di flessibilita' ne hai
quanta ne vuoi!
Tommy

A me sembra risolto nella versione .NET!
si.
inoltre..
<cite
href="
http://archive.devx.com/cplus/free/articles/dkhs41602/dkhs2-2.asp
">
Q: It wouldn't be an exaggeration to say that very little has been
done to bring Visual C++ to full ANSI/ISO compliance since the release
of Visual C++ 5.0 in 1997. However, Microsoft has recently announced
its commitment to bring Visual C++ .NET into compliance with the C++98
standard. What is the cause of this change of heart? When will we have
a fully standard-compliant version of Visual C++? 
A: Microsoft definitely does intend to ship a fully standard-compliant
version of Visual C++. It won't all be in this next incremental
release that we have in early beta right now, but the majority of the
conformance improvements will be in there, including partial
specialization. It's certainly conformant enough that the most modern
C++ community libraries, particularly Loki, Lamba and Boost, compile
in-house without workarounds today. Few shipping compilers on any
platform can do that—those libraries are well known as "compiler
busters." Only the strongest compilers can handle them correctly. 
</cite>
.. onestamente sto un pň sbavando :p
ciao
 sbirish

non puoi negarlo.
Non so di che si sta parlando, precisamente (non leggo i messaggi del
tuo interlocutore), ma non posso che essere d'accordo ;-)


 Tommy
Ma io non ho mai detto che il Borland sia utile per scrivere in C++
standard, anzi! E'praticamente impossibile,per quello che ho provato!
Solo che è molto simile a Delphi,quindi come RAD è a mio avviso ottimo,
ma ripeto che secondo me utilizzare un RAD non è la scelta migliore,se
non si parla di progetti MOLTO piccoli. Propendo sempre per la scrittura
di un core in C++ STANDARD (che secondo qualcuno è perfettamente inutile,
e non mi riferisco a te), e un'interfaccia platform-dependant, sotto
windows potrebbe essere scritta utilizzando direttamente le API, o le MFC
(che a me non piacciono per niente,ma è solo un'opinione *personale*
senza sputi o altro), o qualsiasi toolkit grafico, magari
multipiattaforma.

 prodotti, commerciali e non, altrettanto se non piů validi?
Altri oltre a quelli Microsoft? Non saprei, sono gli unici che conosco
(piů che altro quello del Visual Basic) e non mi piacciono affatto ma
sono costretto ad utilizzarli. Per il resto, mi guardo bene dagli editor
visuali anche quando scrivo software GUI per Windows. Trovo che scrivere
codice con un editor di testo sia il sistema piů efficace che esista. Al
massimo utilizzo un editor di risorse come il Borland Resource Workshop.


 
Intendevo IDE non visuali. Per quanto riguarda gli strumenti visuali,
personalmente preferisco il Delphi, lo trovo piů "serio" del VB,ma come
sempre sono opinioni personali.
Certo, il codice direttamente con le API č il metodo migliore, hai il
controllo completo su quello che fai...
oppure toolkit grafici che ti semplificano la vita, e sono quasi sempre
multipiattaforma, tipo FOX


 standards non puoi negarlo.
cioè, inaccettabile nella prima versione, decente nella seconda e buono 
nella terza? come tutto il software al mondo?


della Borland.
gluck.. mi ricorda i miei tempi del liceo il rhide :)
ciao
 sbirish

 ghignare :]
non ho capito, l'aderenza a che standard di chi? con il Borland C++ non 
ho mai avuto problemi del genere


ho mai avuto problemi del genere
parlavo dell'aderenza allo standard di bc++b rispetto a vc++..
e naturalmente in riferimento al fatto che il ragazzo stesse dicendo
che Vc++ faccia schifo mentra il builder vada bene e rispondevo
dicendo che il builder non è messo affatto meglio del vc++ ( anzi, e
specialmente se sono vere le ultime notizie sul compilatore ms )
Problemi ne ha.. un pò come la maggior parte dei compilatori,
soprattutto per quanto riguarda i template ( e sempre lì siamo.. la
magia nera della metaprogrammazione )
visit_each() in boost::bind ( workaround )
boost::counting_iterator ( workaround )
boost, crc 
    // CRC table generator static data member definition
    // (Some compilers [Borland C++] require the initializer to be
present.)
    template < std::size_t Bits, BOOST_CRC_PARM_TYPE TruncPoly, bool
Reflect >
    typename crc_table_t<Bits, TruncPoly, Reflect>::table_type
    crc_table_t<Bits, TruncPoly, Reflect>::table_
     = { 0 };
una strana cosa che accade nelle liste di inizializzazione che puoi
vedere in token_functions ( sempre boost ) sotto il commento borland
workaround
il fatto che non deduca "a volte" i tipi dei template (weak_ptr e
altre librerie ) 
sono solo solo paio di workaround che ha boost per bcb.. le lambda non
compilano affatto,
le stesse cose in loki e altre librerie.. 
non ho intenzione di controllare se ACE va su bcb.. non sono pazzo..
ma contando che sia stata scritta per compilare anche su delle cose
che assomigliano più a scatole che compilatori suppongo funzioni..
sarebbe curioso provare :p
--
[OT]: se hai tempo e voglia di rispondere posso rubarti un paio di
domande su alcune cose che mi incuriosiscono di Windows Juliet? 
Uno sbirish magari se ti offro un piatto di farfalle al ragù? :p

 multipiattaforma, tipo FOX
Si, la sfortuna delle API di windows e' che sono procedurali e spesso nei
grandi progetti OO fanno un pochino a cazzotti.
Ci sono tante soluzioni e tanti modi per evitare questo problema, alcune
gia' fatte altre da fare.
Tommy

 ho mai avuto problemi del genere
Il borland C++ ultima versione non e' molto aderente allo standard. O meglio
lo e' parecchio meno del VC++.NET
Tommy

il sistema più efficace che esista. 
Questo è, a mio avviso, un mito da sfatare.
Secondo me, scrivere codice con un editor di testo è il metodo più
_lento_ che esista e non è detto affatto sia il più efficace. 
Bisogna, poi, vedere su cosa si misura l'efficacia.
Un ambiente RAD ha delle regole, ma le regole sono sempre quelle: la
generazione di nuovo codice è ripetitiva (quindi se non erra la prima
volta, non erra per tutte le altre), oltre al fatto che il codice su
cui fondi la tua applicazione è testato e collaudato (se c'è un bug, è
più facile accorgersene e risolverlo).  Per me questo è un metodo di
generazione del software _efficace_.  Risparmiare del tempo nella
ricerca di bug, è efficace.  Accorgersi di un bug sulla _tua_
libreria, che crea una finestra o un bottone (quindi funzioni di
base), quando il tuo programma è già passato in produzione, può avere
effetti letteralmente disastrosi.  Io sono abituato ad usare Delphi,
che è un ambiente che trovo fantastico, proprio perché riesci a
generare applicazioni solide e anche abbastanza performanti in
pochissimo tempo.  
Siamo mostruosamente OT, quindi impostiamo il follow/up su un altro
gruppo ! ;-)
-- 
Andrea Laforgia
Gioca a Tetris !
http://www.geocities.com/andrealaforgia/mytetris.zip

 Intendevo IDE non visuali.
No, io per scrivere il codice preferisco il mio fido editor.
EMG


 nella terza? come tutto il software al mondo?
No, purtroppo pare che la Microsoft tenda a divergere col tempo dagli
standards.


 
Io pure. Ma se dovessi scegliere un IDE sceglierei qualcosa di simile al
Dev,che posso utilizzare anche solo come editor,ed è abbastanza buono.


 Questo è, a mio avviso, un mito da sfatare.
Non c'è niente da sfatare. Per me è così e basta. Ognuno ha il suo modo
di lavorare con cui si trova al meglio. Se tu ti trovi bene con i RAD
meglio per te. Io, anche per il tipo di lavoro che faccio, con un RAD
non ci farei nulla.


 non ci farei nulla.
Per cio' che riguarda il discorso RAD sono concorde con te. Pero' devi
ammettere che un "editor" come quello del VC++.NET ad esempio e' meglio dei
soliti editor vecchio stile tipo. E' una bella comodita' quando scrivi:
MyFunc( ed apri la parentesi vedere in tool tip il prototipo. Oppure quando
dopo il nome di un oggetto di una classse metti il . e ti appare la lista di
tutto quello che contiene e ti basta scegliere o scrivere le
iniziali.Inoltre premendo F1 (MSDN) ti si apre la guida online della "cosa"
sotto il cursore del mouse. (so che VC++ non e' l'unico ad avere queste
cose, ma lo confrontavo con i vecchi e cari editor da programmatori in
style10 anni fa!)
Inoltre usare un editor di risorse visuale e' per "disegnare" finestre,
pulsanti e compagnie bella credo sia molto piu' comodo che usare le API per
creare queste cose o (leggermente meglio) scriversi a mano il file di
risorse.
Per il resto tutto cio' che e' RAD non mi piace. A volte e' utile per
produrre software da poco in brevissimo tempo.
Tommy

non ci farei nulla.
Cioé ? che fai ? focacce ? ;-)


 Il borland C++ ultima versione non e' molto aderente allo standard.
ok, che problemi ha?


 Uno sbirish magari se ti offro un piatto di farfalle al ragù? :p
se ne può parlare :-P


 non so dirti, io il C++ non lo conosco quasi per niente. Ho capito cosa
E si vede...senza offesa!

> non so dirti, io il C++ non lo conosco quasi per niente. Ho capito cosa
se hai bisogno di asm inline con sintassi ideal e di fare uso di
estensioni tipicamente usate su piattaforme windows, decisamente mingw
non è la migliore scelta.
Istintivamente mi viene da pensare che se sei a basso livello ( c+asm
) difficilmente ti servirà un compilatore che ti srotoli bene un
template di 10 pagine.. vista la combinazione delle cose.. scegliere
un altro compilatore mi sembra non una buona scelta ma un obbligo. 
Resta comunque un buon port di gcc e garantisce l'aderenza agli
standard che ha gcc ( parlo di standard C e C++ )
ciao
 sbirish

  sbirish

compilatori "di massa" che più rispetti gli standard
comeau, in teoria, sarebbe l'unico vero compilatore aderente allo
standard (c++), io onestamente, non l'ho mai neanche visto.
ciao
 sbirish

  sbirish
 
Se non la smettiamo con questo OT qualcuno ci caccia a calci nel
sedere!:-)

 Cioé ? che fai ? focacce ? ;-)
Sì, te ne mando qualcuna a casa? :-)))


 risorse.
Infatti io, come ho detto, uso un editor di risorse (il Borland Resource
Workshop) e mi ci trovo benissimo (anche se č sicuramente migliorabile
in tanti aspetti). Quello č uno strumento che ha uno scopo ben preciso
(creare il file di risorse) e non č affatto invasivo nei confronti del
proprio modo di lavorare.


 risulta sicuramente codice piů pulito,elegante e portabile...
io non lo uso. Mai detto di farlo. Di assembly non ne scrivo molto, per 
dirla tutta. Principalmente leggo e interpreto quello altrui


 Tu non programmi in C++ programmi in qualche altro linguaggio,
invece lo standard prevede estensioni, ancora una volta perchè *tu* sei 
un esagitato con una testa a camera d'aria e loro dei professionisti. E 
le estensioni di cui parlo sono tutte _approvate_ dallo standard


 template di 10 pagine..
no, ma sarebbe gradito un compilatore che per codice prevalentemente C, 
e solo costellato di C++ qua e là, non generi tutto quel codice in più, 
come fa g++ :-/ Ormai ho completamente abbandonato l'idea di usare GCC: 
sarà stupendo, ma mi è del tutto inutile


 le estensioni di cui parlo sono tutte _approvate_ dallo standard
 
Offendere non ti fa avere automaticamente ragione...se sono estensioni,
non sono standard e quindi non fanno parte del linguaggio,ma
dell'ambiente di sviluppo

 
Infatti...

 linguaggio,ma dell'ambiente di sviluppo
prima di tutto, ci sono standard di fatto, che non si possono ignorare. 
In secondo luogo, faccio notare l'"approvate dallo standard". Approvate 
non significa "previste"


 nella terza? come tutto il software al mondo?
O piu' esattamente, inaccettabile nelle prime sei versioni, decente
nella settima e buono nella 7.1 .
Ciao,
Nicola