一个代码新手的疑惑

本人目前大三在读,是在大二上学期的时候开始接触代码,当时无缘无故就进了PHP的"坑"里,到现在基本都是自己摸索着走,但是目前感觉自己

遇到瓶颈了

我的基本情况是:

  • 现在都是习惯ask before search,在SF上基本都不问啥问题了
  • PHP的一些基本算是会了,只是遇到什么问题我大部分可以迅速自己解决
  • 上手过CI,Yii,Laravel,原来对于CI都是简单的会用,但是到了Laravel后,接触框架基本都是遵循文档--使用--扩展,这样的学习路线。不知道有木有更好的建议
  • 对于一些程序员必会的git,svn等,基本上就是完成的学徒,都是只会简单的操作,还没有深入过
  • 前端框架先是Bootstrap,现在是Semantic UI,不过最近也是在一步一步跟官方文档简单地学习React
  • 没忘老本行PHP,但现在每天几乎感觉就是都在重复写一些以前写过的代码.
  • 最近也在看深入PHP面向对象,模式与实践这本书,书中感觉很多知识吃不透
  • PHP之道上的基本都了解过,PHPUnit写简单的测试,配置自己的PHP_Code_Sniffer,PHP_CS_Fixer等,当然Xdebug也是少不了的
  • 现在还没萌生转第二门语言的想法。

    思路比较乱 。。。请各位指教,为小弟指一下路,遇到这样的情况,该怎么做

现在特别是想实习,到真实的公司中检验自己的真实水平有好的实习可以推荐下么?

阅读 4.9k
3 个回答

a. 解决问题本身以后,再多想一层

比如php关于&的问题很多,有没有想过“用&的好处在哪里?有没有必要用&?”
比如== 无论是PHP的还是JS的都有各种问题,有没有想过“一律用===是否能让代码更好?”

b. "每天几乎感觉就是都在重复写一些以前写过的代码" 这很糟糕

看自己以前写的代码,你觉得它是完美的么?如果不是完美的话,又何来重复写代码的感觉?写代码是门手艺,手艺人要对自己的作品有追求极致的精神,下一个永远要比这一个更好。重复工作的应该是机器而不是我们。

c. 整理自己的技能树,区分广度领域和深度领域,区别对待

拿问题中提到的那些技术打比方,比如题主目前的规划是主攻php,那么 PHP 学习能力 git/svn 这些能力明显和主线直接关联,属于需要深挖的,而 bootstrap semUI react暂时属于拓展广度为主

在深度领域,更重要的是实践领悟,应该尽量通过实际项目的实践,通过反思实践中出现的问题,设计-实践-反思 反复迭代,慢慢领悟一些本质问题

而在广度领域,由于时间注定只能是少量,面又广,可以以参考他人的意见,配合简单把玩为主。重要的是你要知道这个东西为什么存在,解决了以前存在的哪些痛点,适用的场景大概是怎么样的,目标是当某种条件到来让你要在这块领域有所突破的时候,你已经心里有底,能够迅速切换角色,搞定问题


关于实习,我最近正好在新厂筹备开工中,坐标是魔都杨浦区,有兴趣的话砸简历详聊

实习给推荐三个获得途径:
1、参加校园招聘会
2、通过网招,http://www.dajie.com/大街网里有校招的网招,也可以去各大公司招聘网页上报名
3、通过老师或同学的内推

瓶颈期是都会有的,如果你真的热爱它,它就会指引你走下去,祝早日走出瓶颈期,找到一份称心如意的实习工作。

宣传栏