感觉自己像是到瓶颈了,求推荐进阶的书籍(不限PHP)

参加 WEB PHP 开发工作现在快一年了,最近越来越觉得自己在技术上没什么长进。简要的说一下。

  • 公司用的是Yii框架,会用。但是很多原理都不懂,我也尝试这去看源码,跳来跳去的又不想看了。
  • 对Linux系统感兴趣,公司电脑我都重装成Ubuntu来开发的。
  • 觉得Golang语言不错,中间还自学过一小段时间。写了一个调用百度翻译API的命令行翻译,只是很烂很烂
  • 公司前端后端是分离的,我现在 JS 什么的都忘的差不多了

说到底,我就是觉得自己现在什么都不会,什么都不懂,什么长进都没有。说出来大家肯定不信。
我只有初中毕业(连毕业证都是别人帮我去要的)没有系统的学习过计算机原理编译,由于对编程有些兴趣,所以报了一个培训班。

真心的想请大家推荐一些适合我的书籍(我的英文不行)。不限PHP,尽量能有符合我的。
也真心想请有经验的大神给我一些中肯的建议。

阅读 8.3k
8 个回答

不敢给别人误导。
我碰到同样问题的时候,我的选择是:
1. 新学一门语言。
2. 利用已经学会的技术,做一个“轮子”。

成就感回来了,灵感就回来了。

我就是喜欢唱黑脸。
————————————————————————
才做一年,就瓶颈了,最大的问题是你“跳来跳去”就不想看,
静不下心来看原理,那只能永远停留在会用的层面,
如果一个开放源码的框架都不能看下去,就更谈不上造轮子了。
在这种心态下,就算换个语言,也都是学点皮毛罢了。

建议还是好好摸透YII的来龙去脉,也不求全部看完,先摸清 controller那一块,
然后有时间再看ORM那部分,都是经典。

那还是系统的学习一下WEB知识吧。
首先前端:Html+Css+Div+Js+Jquery+Ajax
后端:PHP+Mysql+Apache->面向对象,页面静态化,绘图,支付,安全,大数据,分布式,等等->设计模式
Python,Ruby
推荐书籍:

1.PHP
PHP设计模式
高性能PHP应用开发
PHP与MySQL权威指南
PHP6高级编程
PHP经典实例
PHP开发典型模块大全
PHP核心技术与最佳实践
PHP与MySQL程序设计(第4版)
深入PHP面向对象、模式与实践 (第3版)

2.JavaScript
JavaScript高效图形编程
高性能JavaScript
jQuery权威指南
JavaScript框架设计
jQuery Mobile权威指南
锋利的jQuery
了不起的Node.js 将JavaScript进行到底
深入浅出ExtJS
ExtJS Web 应用程序开发指南
用AngularJS开发下一代Web应用
构建可扩展的Web站点
JavaScript高级程序设计(第3版)
JavaScript高级程序设计(第2版)
JavaScript权威指南
JavaScript The Good Parts
编写可维护的JavaScript
Effective JavaScript 编写高质量JavaScript代码的68个有效方法
JavaScript设计模式
编写高质量代码 改善JavaScript程序的188个建议
JavaScript模式
JavaScript Web 富应用开发
高性能网站建设指南
深入浅出Ext JS(第2版)
HTML5+JavaScript动画基础
深入浅出NodeJS
Node Web开发

3.CSS & HTML
Sass与Compass实战
Sass与Compass设计师指南
HTML5 高级程序设计
CSS权威指南
响应式Web设计 HTML5和CSS3实战
精通CSS 高级Web标准解决方案
CSS Cookbook
深入HTML5应用开发
论道HTML5

Ruby
RubyOnRails构建与运行
Ruby元编程
代码的未来

Python
Python 灰帽子
Python Cookbook (第二版)
Head First Python
Python 核心编程(第2版)

MySql
MySQL必知必会
MySQL核心技术
高性能MySQL
高可用MySQL 构建健壮的数据中心

其他编程语言
Java编程思想
shell脚本学习指南
Cocos2D权威指南
C程序设计语言(第二版)
Objective-C基础教程
ios 6 应用开发实战
Objective-c 编程
Head First C#
Head First Java
C和指针

工具
Git权威指南
Thinking in UML(第二版)
Http权威指南
Web服务原理和技术
白帽子讲Web安全
Web安全测试
RESTful Web Services Cookbook
正则表达式经典实例

设计模式
Head First 设计模式
设计模式 可复用面向对象软件的基础

算法及数学
算法导论
程序员的数学
编程原本
离散数学及其应用
具体数学 计算机科学基础(第2版)
编程珠玑 (第2版)
数学之美
大话数据结构
游戏开发的数学和物理

设计
设计师要懂的心理学
Axure RP 6原型设计精髓

小说
淘宝产品十年品事
信息简史
淘宝技术这十年
大型网站技术架构 核心原理及案例分析
世界是数字的
计算机系统概论
深入理解计算机系统
图灵的秘密 他的生平、思想及论文解读
编码 隐匿在计算机软硬背后的语言

PPT
说服力 让你的PPT会说话
说服力 工作型PPT该这样做
别告诉我你懂PPT

其他
七周七语言 理解多种编程范型
深入解析WordPress
Drupal实战
Drupal 7 架站的12课堂
流量的秘密 Google Analytics网站分析与优化技巧(第2版)

  1. 关于Yii,看不进去源码问题不大,问题是你“会用”了以后,“用好”了没有,有思考没有。平常遇到bug或者开发有困难的时候有没有反思过原因,反思过如何避免。
  2. 又是一个活生生的“装ubuntu桌面学linux”的例子,ubuntu桌面和工作上的“掌握Linux”几乎没有任何关系。 顺便一提千万远离任何“lnmp lamp安装包”。 虚拟机也好vps也罢,"Linux服务器运维"才是一般意义的“掌握Linux”
  3. Go没有实践过不予置评
  4. 参考这个提问phper 进阶困惑,公司前后端分离不代表你在后端的位置上就不能学前端的本领,不如说正好向专职前端学多好啊

最后关于书,我只推荐这一本书,建议每年至少通读一次

《The Pragmatic Programmer》

中文名字很中国特色叫《程序员修炼之道》

最后ref一下之前一个偏题有点远的回答怎么衡量前端达到了什么水平

PS. 看到最后你说英文不行,这是个比你想象中重大得多的问题,建议远离一切中文资料,先学好英文,原版书不必勉强,但至少要到google,手册,stackoverflow无障碍的程度。(参考问英语在编程当中的重要程度)。类似的还有翻墙技术。

遇到瓶颈了,就静下心来。抛开IDE,就用一个记事本写code。可能会给你带来不一样的体验。书的话,就看官方原文帮助文档就可以了。我相信你行的。
----------(一个php局外者)-----------

代码觉得跳来跳去很难看的话,那么先把自己最常接触的框架中的源代码看一遍,比如说控制器基类,模型层,视图层的基类,入口文件,类自动载入文件看一遍还是很有必要的

推荐问题
宣传栏