問題描述
如何使用開源項目改進我的 C++ (How to improve my C++ with open source projects)
I am studying Computer Systems and Networks engineering at London South Bank University. I know a bit about object oriented programming languages like PHP, Java and about C++... and indeed would like to improve my knowledge of C++. But my knowledge is more from books. I have no experience on real projects. I was thinking in getting programming experience with open source projects. Do you think that is a good idea? I have just downloaded Microsoft Visual C++ (express) but I quite don't know where to start and am finding it difficult to use sites like Sourceforge or Google code to find C++ projects. Is there anyway, for instance, to filter my searches to find only projects done in C++ ??
I find it easy to go through code in a book but managing a project seems a pain. Do you know of any books or sites that help with managing a project, apart from dealing with the language itself.
I think I need a kick-start to help me start gaining experience. I would love to work as a programmer and C++ seems a good choice. Hope you can help me.
Many thanks!
參考解法
方法 1:
Try to to work on some immediate projects using other libraries. For example: gtkmm, qt4, opengl, boost or Qt4. Make sure you also write document for it, UML would be great too. I used to start with GTK+, I wrote a simple text editor, then a mp3 player. Then I switch to openGL to write games, then move back to play around with boost libraries to gain a deep understanding on the STL. Besides, google for classes offered by other universities, download their project specification and work on it as you were a student in that class. To improve your skill using C++ features, go to Topcoder website. They have huge collection of problems with for you to solve. In addition, you can also view other submissions to gain experience. I found Topcoder extremely helpful to understand not just the algorithm but also C++ functionality. From the day I start to play in the arena, I use STL more and more. Hope this help ;)
方法 2:
Qt is defeinetely I nicely written library and worthwhile studying if you want to udnerstand more C++
方法 3:
This is a book about participating in and leading open source project: Producing OSS.
(by VEL、Chan、user458577、Matěj Zábský)