Idee per progetti domestici C ++ / Unix
-
04-07-2019 - |
Domanda
Sono uno sviluppatore C ++, Unix, principalmente nel settore dei sistemi, dominio del prodotto. Vorrei intraprendere un progetto collaterale per migliorare le mie capacità in quanto segue:
- Design orientato agli oggetti
- Programmazione multithread, con ampio ambito per mutex e semafori
- Comunicazioni tra processi in Unix
- Elementi Core C ++ (vuoi usare modelli, gestire eccezioni, usare puntatori intelligenti e altro)
Ho un discreto "bookish" conoscenza di quanto sopra ma non ho abbastanza opportunità per sporcarmi le mani. Recentemente sono andato per un'intervista e mi hanno dato problemi di vita reale davvero buoni (e difficili) da quanto sopra e ho fallito miseramente. Da qui questo sforzo :-)
Sto guardando qualcosa come un progetto di 6 mesi, trascorrendo circa 3 ore al giorno. Qualsiasi suggerimento sarebbe fantastico.
Grazie.
Soluzione
Con quel tipo di tempo extra e motivazione, potresti anche essere pagato mentre ti alleni! http://www.rentacoder.com
Per una buona sfida, prova una sorta di applicazione di rete. Forse un server che segnala lo stato del sistema. Cose che impareresti:
- Programmazione socket.
- Gestione degli eventi asincroni.
- Multithreading (gestire una richiesta in attesa della successiva).
- Chiamate di sistema, per recuperare le informazioni sullo stato
- Molto utili capacità di debug nel mondo reale.
- Pazienza. : -)
Buona fortuna, divertiti!
Altri suggerimenti
Il suggerimento di Adam è buono - ma se sei più propenso a farlo solo per te stesso e divertirti, implementerei un gioco d'azione multiplayer di rete usando OpenGL, OpenSceneGraph o uno degli altri orientati al gioco toolkit là fuori.
Puoi farne sport a Top Coder .