2010-07-24 16 views
11

Mi piace passare attraverso progetti software esistenti come fonte di apprendimento e nuove idee. così facendo scopro cose che non pensavo fossero possibiliProgetti C++ di ultima generazione

secondo te, qual è il progetto C++ all'avanguardia che hai usato/sviluppato/esteso? puoi indicare i motivi per cui consideri lo stato dell'arte e cosa puoi imparare da esso.

la mia ultima mania è boost :: phoenix, http://www.boost.org/doc/libs/1_43_0/libs/spirit/phoenix/doc/html/index.html, che è una libreria di programmazione funzionale molto completa. Nonostante le sue capacità è semplice e facile da estendere. Dopo alcuni aggiustamenti, sono riuscito a scrivere loop paralleli lambda multithreaded e linguaggio matematico specifico del dominio, probabilmente entro 2 settimane.

Qual è il tuo? (per favore non limitatevi a dire boost, visto che è un'enorme raccolta di progetti)

+0

La domanda è limitata ai progetti open source? – Simon

+0

@Simone bene, se pensi di poter avere un'idea dalla documentazione di un progetto vicino all'origine, non ho alcun problema. Continua a leggere l'implementazione attuale – Anycorn

+0

Duplicato: http://stackoverflow.com/questions/109684/what-are-some-examples-of-exceptional-c-open-opourcecode – gnovice

risposta

3

Personalmente, mi piace guardare il codice in Qt. Lo uso tutti i giorni, ma sembra che ogni giorno che lo uso, trovo qualcosa di nuovo. In termini di codice totale, è probabilmente grande quanto l'aumento. Ma viene fornito con eccellente documentazione ed esempi e completo codice sorgente ed è gratuito per le versioni GPL & GPL.

Per me, quello che mi piaceva di Qt era che i concetti corrispondevano al modo in cui C# funziona, quindi per me è stata una transizione abbastanza facile in C++. Ma guardando il loro codice, mi ha davvero dato molti modi (anche se non così tanti) per capire parte della complessità in C++

+0

"Personalmente, mi piace guardare codice in Qt. " Io secondo questo. Qt 4 mi ha aiutato molto a sviluppare il mio stile di codifica. – SigTerm

1

Da quello che ho visto, le sorgenti di codice che ho imparato la maggior parte proveniva da librerie di software di terze parti abbastanza complesse. Havok è un eccellente esempio dal quale ho imparato non solo pratiche e soluzioni di programmazione, ma anche un bel po 'di discussioni matematiche e filosofiche. Ho anche visto alcune altre fonti di codice che non sono state open source da cui ho imparato come non risolvere le cose.

I motori di gioco per titoli AAA in genere tendono a coinvolgere un sacco di codice complesso che cerca di spingere il più possibile attraverso un pezzo di hardware. Immagino che la raccomandazione vada per tutto il software che cerca di ottenere qualcosa di simile, ma io mi sono immerso solo nei motori di gioco quando si tratta di un software del genere. I motori di gioco titolati AAA spesso hanno buone o cattive soluzioni da studiare e in genere consiglio di esaminarli. Ci sono alcuni che sono open source ... Penso che Source/Valve abbiano pubblicato i loro in diverse fasi.