作者的话
大概在 2014 年的时候,有一个重庆的出版社的编辑找到了我,想和我合作写一本关于 DJANGO 开发的书,那个时候 Python 编程已经在国内开始流行了,但是还缺很多关于 DJANGO 的开发资料,当然会英文又有经验的工程师大多读官方的文档就可以了,除此之外,国内还是缺很多入门类的 DJANGO 书籍。那个编辑是看了我很久之前的博客上的关于 SaltStack 的内容之后才联系我的,他对我的叙述比较满意,所以想请教我写技术书籍的事情,其实我那个时候根本没什么技术,只会用 DJANGO 写一些 CRUB 的业务,根本谈不上有多深厚的开发经验。其实我的技术能力直到现在也是这样,会的东西大家都会,不会的东西,很多人也不会,会的也都是些随大流儿的东西,但是我是真的想往深处发展的,首先我是一个计算机爱好者,我对计算机理解的还不够透彻,CS 的水很深,我希望能够下潜一下,去了解更多自己感兴趣的内容,当然在我的研究期间如果运气好可能会有哪个大厂看上我吧,就算看不上也够我自娱自乐了,反正 Linux Kernel 的源代码又不花钱,谁也可以拿到,从拿到到看懂再到 patch,相信又是一条遥远的路,这个爱好很省钱,我将继续保持下去,我平时的生活节奏很慢,我想要更刺激的东西, and i will push myself to the edge.
很久之前我就想写一个教程,用来教别人怎么入门 WEB 开发,或者换句话说,教别人怎么入门互联网开发。
为什么说是互联网开发呢?因为现在不光是做个网站要用到 http(s), 做个弱联网手游或者是 APP 也是需要用到 http(s) 的,所以我喜欢把这个东西叫做 互联网软件开发。
在我平时工作的过程中我逐渐有了一些自己的看法,或说是观点吧,从最开始的时候,大专毕业了大家都去找工作,其实我老师把我带坑里了,没人告诉我专接本的东西,我自己也不懂(我乡下的),为了就业率,就瞎起哄一样的忙着找工作,忙着玩,搞的我到现在还在为学历发愁,找工作是一回事,关键是我没法面对自己,我意识中的自己至少要上个河北大学吧,对于学历这个事,我的想法是,如果你要深入某一个学科比如 CS, 你就需要很多理论的知识,并且能融会贯通,如果你想 CRUD 搞几年回家种田,那就是另一种说法了,像我这个学历和能力的会逐渐被取代,这是迟早的,原因是很少有人能进正规公司,大部分人都在打杂。现在就业环境不好了,我也很久没找工作了。
幸好我还是很喜欢 CS 的东西的,在学校教授 JAVA 的同时,我自己去学了学 Python, 然后毕业的时候,大家都去找 JAVA 开发的工作,很少有人能在北京找到 3000 以上月薪的工作,我就通过 Python 这个技能找到了 3600 一个月的实习机会,这个让大家很是羡慕,我一个朋友比我年级大一年,他工作一年了薪水还没到 3000 块,现在想想有点玄幻,现在北京 3000 能住得起地下室么还?但是专科生的就业环境就这样,大家其实把你当蓝领来看待的,虽然有互联网技术光环,本质上还是大车司机的工作。
等我学懂 Python 之后,发现 Python 的薪水真的比较高,我当时还比较纳闷,为什么 Python 可以挣这么多钱,我和很多 Hr 之类的人聊过薪水的事,他们一致认为 Python 的人很难招聘,以我当时只会乘法口诀的数学水平和一般的理解水平,学会 python 的语法还是很容易的,所以这个问题我一直没想通。
我认为我很喜欢 CS, 床头总放着几本书,入睡前当小说看看。所以我决定今年开始深入研究这些东西,如果经济上允许我可能更想去读个研究生什么的,毕竟我觉得自己该去个正规大学体验一下大学生活。
言归正传,写这本书也是有原因的,就在我的大专时代,我四处找教程,找了很多教程,我那个时候讨厌老师的教学,我也不爱听,最重要的是老师的素质也不高,以我现在的眼光来看的话,那个老师也只是一个会增删改查和 JAVA 语法的狂徒而已。我找了很多教程,大多是关于 WEB 开发方面的,大部分都是讲一门语言的语法,再搭配一个 WEB 框架来讲的,我按照书中的做法,用 WEB 框架搭了一个博客之后就感觉自己学会了这个开发方法,但是实际上,在相当长的一段时间里,我都没有搞清楚 GET 和 POST 的区别,也没有搞清楚 WEB 服务器到底是什么,它和 WEB 框架是什么关系。
带着这些问题,我去了实习的公司,当然 3 个月之后我并没有留下来,东家对我的评价一定很 LOW, 因为我确实是不太懂 HTTP 到底是怎么回事,而且我最初的项目里,全都用的 GET,根本不会用 POST 去做表单,至于 COOKIES 是怎么回事是什么原理,如何做 SSO 更是完全不知所云。
归根结底是很多教程都没有讲到业务的东西,如果讲怎么写一个 BLOG, 那这个教程可能只讲 BLOG 的东西,数据库怎么建表,怎么设置 登录注册,它并不会讲 SESSION 是怎么回事,我是怎么登录上去的。当然你可以专门去找这些内容看,但是当你去找这些内容的时候,大部分情况下都是已经出了一些问题了,出了问题,你不懂再去找知识,这是后知后觉,我的书要做的是把常用的开发套路,常用的技术架构都写出来。
这就是我要做的事情。
关于作者
关注微信公众 获取更多内容作者: 申延刚
微信:13811754531
Email:shenyangang@163.com
Github: php-easy-tutorial
程序员客栈: https://www.proginn.com/wo/43855
时间: 2019/02/24
本作品采用 知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议 进行许可
网友评论