# 前言
经常在群里和网上听到很多新人说`ThinkPHP5`很难,觉得和`ThinkPHP3`时代差异太大,其实觉得`ThinkPHP5`难学的,主要是由于思维一直转变不过来,或者你根本不愿意接受新事物,其次才是学习方法问题。本书的目的就是为了让开发者更加容易上手学习`5.1`,因为有时候最笨的办法就是最好的办法。同时我也相信每个开发者都有足够的能力学好`5.1`或者`5.0`。
时代在**变化**,技术在**革新**,框架也在**进步**,而开发人员的综合素质更需要**提升**,从以前写出能运行的代码到写出**更优雅、规范、严谨和易维护**的代码,这便是`ThinkPHP5`所赋予开发者的使命,本书会**引导开发者写出更严谨和更规范的代码**。
> 首先坚信一点:框架的进步和发展,依然是为了让开发变得更简单,而不会更复杂。如果你觉得复杂了,一定是没有找到正确的方法。
ThinkPHP十二年来,一直坚持大道至简的开发理念,致力于带给开发者更好的开发体验。除了简单之外,新版(或者说现代化框架)的一个主要规则就是尽量遵循规范,体现在`OOP`规范、代码格式规范、注释规范以及`PSR`规范。有很多新手总是会抱怨使用`ThinkPHP5`开发好像错误更多了(尤其是之前用`ThinkPHP3`的用户),有很大一部分原因是由于`ThinkPHP5`的错误检查更严谨了,这种不错过任何可能错误的态度,本身也是对开发人员和公司项目的负责,同时`ThinkPHP5`也在逐步遵循更多的`PSR`规范,让框架之间的切换成本更低。
本书对于一个刚接触`ThinkPHP5`的新手会更加有帮助,但你仍然需要`PHP`基础以及起码熟悉一种`WEB`服务器,而对于已经上手的开发者,本书可以当成是`ThinkPHP5`的标准代码以及开发技巧以备查询。
> 每一篇内容都分为主体和拓展讨论两个部分,主体部分的内容一定要掌握,拓展讨论部分可以根据自身的接受程度和需要来学习。并尽量确保按照顺序来进行练习,因为有一些练习的内容需要前面练习的内容做铺垫基础。
> 新人的学习曲线建议:感性**认知**\->概念**理解**\->理性**认识**\->实践**掌握**。官方的完全开发手册虽然涉及全面,但不适合新手学习入门,而是作为学习之后的补充以及开发过程中的工具书。
本书有些代码的思想可能你并不能上来就领悟,但只要亲自实践每一个例子,随着学习的深入,在不同的阶段你的感悟和心得也会不同,经过多次咀嚼消化之后的,你会真正领悟本书的所有代码并驾轻就熟的写出你需要的实现代码,本书的后半部分,笔者也会列举一些开发技巧,教你如何写出事半功倍的代码。
本书写作的时候`5.1`已经正式发布了,为了跟上时代的步伐和体验最新的特性,本书所有的例子都使用`5.1`的代码(建议使用最新的版本进行学习,更稳定和强大)。例子中的数据和输出结果可能并非完全一致仅供参考,只是代表笔者使用的环境和输出,部分示例的输出结果可能和你的测试数据以及环境相关。
> 由于时间和精力有限,本书内容陆续更新中,尽量保证每周更新,敬请理解~