Pergunta

Eu sou um C ++, desenvolvedor Unix, principalmente no lado de sistemas, domínio do produto. Gostaria de pegar algum projeto paralelo para melhorar minhas habilidades no seguinte:

  • Objeto orientada Design
  • Programação multithread, com amplo espaço para mutexes e semáforos
  • Interprocess Communications em Unix
  • Núcleo C ++ coisas (modelos quer de uso, exceções manusear, usar ponteiros inteligentes n stuff)

Eu tenho decente "livresco" conhecimento de todos os itens acima, mas não tem oportunidades suficientes para sujar as mãos. Recentemente eu fui para uma entrevista e eles me deram muito bons (e difíceis) problemas da vida real do acima exposto e eu falhei miseravelmente. Daí este esforço: -)

Eu estou olhando para algo como um projeto de seis meses, gastando cerca de 3 horas em uma base diária. Alguma sugestão seria ótimo.

Graças.

Foi útil?

Solução

Com esse tipo de tempo extra e motivação, assim como você pode ser pago enquanto você treina! http://www.rentacoder.com

Para um bom desafio, tente algum tipo de aplicativo de rede. Talvez um servidor que informa o status do sistema. Coisas que você aprende:

  • programação Socket.
  • manipulação de eventos Asynchronous.
  • Multithreading (punho um pedido, enquanto se aguarda a próxima).
  • As chamadas do sistema, para recuperar a informação de status
  • muito habilidades de depuração do mundo real útil.
  • Patience. : -)

Boa sorte - aproveitar

Outras dicas

A sugestão de Adam é um bom - mas se você está mais inclinado a fazê-lo apenas para si mesmo e se divertir, eu iria implementar um jogo de ação em rede multi-jogador usando OpenGL, OpenSceneGraph, ou um dos orientada jogo de outra toolkits lá fora.

Você poderia fazer esporte dele em Top Coder .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top