我不会称自己为新手程序员,我现在已经在c和c ++工作了一段时间,但我从来没有做过自己的事情。我认为,如果一个项目除了工作之外就在那里工作,那么可以实现更大的学习。记住这一点,你们能告诉我一些我可以实施的项目吗?我最近学习了posix线程,所以我可以做的就是好。不幸的是,我不知道做什么和制作UI,所以我想避免这一点。
答案 0 :(得分:2)
您可以编写自己的threadpool,这将是有趣的,具有挑战性的,并且不需要太多的UI工作。
答案 1 :(得分:2)
您可能无法获得大量线程曝光,但建议使用http://projecteuler.net/上的任何内容。
或者,您可以制作一个程序来绘制和着色Mandelbrot Set。您可以使用多个线程执行此操作,并且可以根据需要为更大的项目提供扩展功能。
答案 2 :(得分:2)
一开始对我来说意义重大的项目是:
1)小图片编辑项目。 .bmp文件的各种操作,如旋转,改变对比度,黑白转换,卷积滤镜等。你真的看到了一些结果,所以它很酷。您可以轻松地在该故事中添加posix线程。
2)B和B *树的API。
3)抢先式多线程OS内核。像信号量,信号,叉功能等等。如果你没有导师,那真的很难,但它非常有用。
4)线程安全的FAT16文件系统。
5)分布式图像处理。
我在“编程生涯”的前2 - 3年里做过那些项目,对我来说意义重大,所以你可以试试其中的一些。
答案 3 :(得分:1)
你试过free community-based FOSS advertisements吗?这些项目都在寻找贡献者:)
答案 4 :(得分:0)
如果您喜欢音乐(MAO),可以尝试编写VST效果。
通过简单的界面,您可以了解有关线程,动态插件,实时约束的更多信息...... 另一个想法可能是一个基本的命令行应用程序托管插件,每个插件实现一个简单的操作。根据您加载的插件处理对数据的不同操作。 或者为基本MIPS实现解析器(或编译器)。
答案 5 :(得分:0)
我希望有的东西:
设计一种数据描述语言(ddl),允许您表达一些C(和/或其他)类型。
编写一个程序,根据ddl中的规范,编写C(和/或其他)代码:
这样的设施在其他项目中可以派上用场;多年来,人们可以花很多时间手工生产这种锅炉板。
进一步的可能性:
然后有一个棘手的部分:实现一个更新类型规范的工具,例如,如果你有一个文本类型实例的修订文件,你可以用rev-b程序读取它。
答案 6 :(得分:0)
一些建议: