Web开发,如何从小工到专家
最近在研读关于“整体性学习”的一些东西,收获颇丰。
整体性学习强调的东西有三样:结构、模型、与高速通道。特别是关于结构的篇章:
理解是什么?理解就是结构高度发达完善的结果。
是不是有些学科你可以轻松“拿下”?你读起这些科目的书毫不费力、兴趣盎然,一切内容看起来那么浅显、通俗,原因何在?因为你的脑袋里已经有这些科目的发达知识结构,假如说结构就是脑袋里的城市的话,那么这些城市一定是道路四通八达、路面整洁而且交通井然有序,虽然车水马龙,却从不见交通堵塞。
相反,为什么有些学科理解起来那么困难呢?(如我读汇编语言就有读天书之感),这说明城市简陋,道路不畅,甚至乱建一气,违章建筑、豆腐渣工程比比皆是,有些道路甚至无所指向;或是修了半截;或是孤零零一条,在这样的城市中行走,迷路是必然的,知识结构就是你脑袋中的参考地图。
给一本C语言书籍给未接触过C语言的人看,他会觉得是天书,什么都看不懂。为什么呢?因为他的大脑里根本就没有接纳这些知识的结构,就算看了,也不知道将这些知识存到哪里。
相反的,给一个不懂Python的程序员看Python的书,说不定1,2天就能上手了,这又是为什么呢?因为他大脑里有计算机编程的结构,哪怕没学过Python,一样可以理解与接纳这些知识。现在,你知道知识结构的重要了吗?它是快速学习的关键。
所以这句话让我深刻:理解就是结构高度发达完善的结果。如果有兴趣,推荐去了解一下:《整体性学习》,目前还在研读加工中。
那么在Web开发中,如何建立我们大脑内的结构呢?从小工到专家,也就是我们建立自己知识结构的过程。
基础(书目)
- 《代码大全(第2版)》
- 《C程序设计语言(第2版新版)》
- 《UNIX编程艺术》
- 《重构:改善既有代码的设计》
- 《计算机程序的构造和解释(原书第2版)》
- 《UNIX环境高级编程(第2版)》
- 《算法导论(原书第2版)》
- 《敏捷软件开发(原则模式与实践)》
- 《深入理解MySQL核心技术》
- 《Head First设计模式(中文版)》
- 《php和mysql web开发(原书第4版)》
- the programic programmer
- linux kernel development
- ……
编程语言
- C
- PHP / Python / Ruby
- JavaScript / Node.js
- ……
个人认为,学习上面的编程语言足够应付大部分Web开发任务了。当然,服务器端你可以选择 .Net 或 Java,但我个人偏向快速开发的PHP或Python,Node.js也能胜任。
工具
- Web Server: Nginx / Apache
- Database: MySQL / Mongodb / Redis
- Version Control: Git / SVN
- Project Managment: Redmine
- Test: ab / siege / http_load
- Fulltext Search: Sphinx / Lucene / Xapian / Coreseek
- misc: gearman / jQuery ……
- ……
高级
- 《编译原理(第2版)》
- 《人月神话》
- 《重来:更为简单有效的商业思维》
- 《软件随想录:程序员部落酋长Joel谈软件》
- 《设计模式:可复用面向对象软件的基础》
- peopleware 2
- high performance mysql
- high performance web sites
- ……
原本想罗列一些Web开发需要掌握的技能与工具,以方便理清知识结构,写着写着发现,真罗列不完,更多的还是看书。看书是完善知识结构的重要方法,尽管网上也很多学习资料,比如博客园、CSDN上面,是有很多技术文章。但是你有没有这样的一种感觉:逛了一天技术论坛下来,发现自己真没学到什么东西,还不如静静地看几小时书。
零散的知识就像零食啊快餐什么的,虽然也能填报肚子,却没什么营养。要身体健康,还是得多吃正餐,多看书去建立完善的知识结构。
From: http://www.nowamagic.net/librarys/veda/detail/2485
Web开发,如何从小工到专家的更多相关文章
- 《android开发进阶从小工到专家》读书笔记--HTTP网络请求
No1: 客户端与服务器的交互流程: 1)客户端执行网络请求,从URL中解析出服务器的主机名 2)将服务器的主机名转换成服务器的IP地址 3)将端口号从URL中解析出来 4)建立一条从客户端与Web服 ...
- Androidproject师进阶之路 :《Android开发进阶:从小工到专家》上市啦!
封面 文件夹1 文件夹2 - 当当购买链接 - 京东购买链接 为什么写这本书 写这本书的念头由来已久了. 或许是从我打算写<Android源代码设计模式解析与实战>那时起就萌生了这个念头, ...
- 《android开发进阶从小工到专家》读书笔记--网络框架的设计与实现
第一步: 第一层:Request--请求类型,JSON,字符串,文件 第二层:消息队列--维护了提交给网络框架的请求列表,并且根据响应的规则进行排序.默认情况下按照优先级和进入队列的顺序来执行,该队列 ...
- Android开发进阶从小工到专家之性能优化
- 关于《自动化测试实战宝典:Robot Framework + Python从小工到专家》
受新冠疫情影响,笔者被“困”在湖北老家七十余天,于4月1号(愚人节)这天,终于返回到广州.当前国内疫情基本已趋于平稳,但全球疫情整体势态仍在持续疯涨,累计确诊病例已近80万人.祈祷这场全球性灾难能尽早 ...
- java程序员从小工到专家成神之路(2020版)
目录 必须掌握的基础知识 1. Git & Github 2. Linux 3. 数据结构和算法 4. HTTP / HTTPS 5. 设计模式 6. 计算机原理 java学习之路 1. 工具 ...
- 从小工到专家 ——读《Java程序员职场全攻略》有感
从小工到专家 ——读<Java程序员职场全攻略>有感 <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一 ...
- 成为 Web 开发大师你必须知道的 7 件事情
曾经是这样的,懂点编码,并可以偶尔耍点酷,那么你就会被认为是一个Web开发大师.但是现在,情况再也不是这样的了.Web开发已经朝着主流方向发展,开发人员数量显著增加.这意味着,如果你想成为这个领域的大 ...
- web开发必须知道的javascripat工具
1,JavaScript compressor and comparison tool 有许多工具可以帮助你压缩JavaScript代码,但是这个过程比较耗时,并且,对于某个特定的场景来说,很难分析出 ...
随机推荐
- PL/SQL学习(一)
原文参考:http://plsql-tutorial.com/ 组成: 声明部分(可选) 执行部分(必选) 异常处理(可选) 声明: DECLARE 执行: ...
- HTML5基础知识(一)---标签
在HTML5中,Web页面中重新调整了页面规划,这其中新引入了几个新标记. 我们将创建一个简单的Web页面,该页面包含一个Header区.一个Navigation区.一个Article区(包含三个部分 ...
- js 获取时间 new Date()详细介绍
javaScript系列:js中获取时间new Date()详细介绍 (2012-03-31 09:54:25) 转载▼ 标签: js时间 new date() 字符类型 转换 分类: study-j ...
- 贴板子系列_1-exgcd
exgcd ll exgcd(ll a,ll b,ll &x,ll &y) { ) { x=;y=;return a; } ll r=exgcd(b,a%b,x,y); ll t=x; ...
- 第 2 章 代理模式【Proxy Pattern】
第 2 章 代理模式[Proxy Pattern] 以下内容出自:24种设计模式介绍与6大设计原则.pdf 什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代 ...
- nutch2.2.1
http://blog.csdn.net/leave00608/article/details/17442163 https://svn.apache.org/repos/asf/nutch/tags ...
- nutch 索引
nutch开发环境搭建 nutch-1.3导入eclipse nutch-1.7导入eclipse nutch部署 nutch-1.3linux下部署 nutch-1. ...
- hbase rowkey设计的注意事项
充分利用有序性 1.1 如果要scan操作,且不是很频繁,可以利用rowkey的有序性将需要一起扫描的数据放到一起.例如直接用时间戳.这样就可以按时间scan了.这个只要是简单的全表扫描都行. 1.2 ...
- 容斥原理算法总结(bzoj 2986 2839)
容斥原理是一个从小学就开始学习的算法.但是很多难题现在都觉得做的十分吃力. 容斥原理大概有两种表现形式,一种是按照倍数进行容斥,这个东西直接用莫比乌斯函数就可以了. #include<iostr ...
- Java SE/ME/EE的概念介绍
转自 Java SE/ME/EE的概念介绍 多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的应用. ...