研一自学c++,如何能找到合适的c++项目?
今天分享一个很多同学感兴趣的问题:自学c++,如何去找到合适的项目练手或者写进简历?
提问及答疑原内容地址:目前研一自学C++,如何找到适合的C++项目?
基于这个同学的提问,我来分享一下我的看法:
目前研一,刚刚学完了c++语法,我相信很多同学的自学进度如果到了这里,那接下来的不用想,基本上就是去学数据结构、操作系统、网络等,不是说学的内容有问题,只是这条路大家会学的非常漫长,坚持的会很痛苦。因为这个的学习链路是非常的长且枯燥的。
我的建议是:
如果大家已经有了c++的语言基础之后,刚刚提到的后续内容都先不要动。直接去看游双的webserver,把他实现一下,吃透。做完这个项目之后,不是去写进简历,这才是项目开始的第一步。毕竟webserver的这个项目好是好,但是写进简历的话,em.......懂的都懂。
那这里关于什么是项目,我也说一下我的理解。不少的同学觉得实现一个线程池,一个内存池或者一个即时通讯算不算一个项目?如果单看的话,我觉得不是。项目一定是要解决具体问题的,如果大家的项目只是在github上找到一个完整的代码复制跑起来,我觉得就只是一个项目的demo。
这里我的理解的项目可以分为三类
第一类就是这种库相关的,比如STL这种库或者一个网络库,但是这仅仅也只是一个库,它更关注的是性能以及借口是否合理应用。
第二类就是上面的库封装好之后,我们可以在上面做一个类似于基础架构的东西,比如说前面提到的webserver还有KV存储或是一个RPC,但是到这一步还不行,还没有业务,没有去解决具体的问题。
那第三类就是在基础架构之上做一个类似于即时通讯的项目,用webserver进行收发数据,再加上websocket。可以在实际生活中能够使用,能够迭代,这就是最终形态的产品式项目,这也是我们简历里面需要的项目。
基本形态的c++项目有很多,我去年也分享一批github上免费开源的c++项目,没看过感兴趣的同学可以去看看:整理了GitHub上80个c/c++的项目,看着学吧~不保熟
但是这些都是最最基本的,很多朋友纠结找不到合适的项目,不是没有项目,而是希望能找到一个展示自己技术特点的项目,而不是烂大街的面试官问都不愿意问的项目。
那特色项目怎么来?
我认为大家只要在copy项目的时候,把项目跑起来,再用项目产品化的角度去迭代,再用商业化的角度使用。这样即使大家做的项目底色是一样的,但也会在一代一代的迭代中做出自己的特色出来。
我是程序员yt,如果大家也有编程学习或是就业方向的困惑,欢迎提问 程序员YT。
1V1分析解答网友技术职场问题。 你问我答。 给你我们专业的建议与参考。