Laravel 官网网站声明的 Support Policy :
强烈建议在 2018 年之前使用 Laravel 5.1 来构建项目, Laravel 5.1 是 LTS 的发行版本, 发行于 2015 年 6 月份,自发布起提供两年时间的 Bug 修复( 2017 年 6 月), 3 年时间的安全修复( 2018 年 6 月)。
LTS 版本是此项目能提供的最长时间维护版本。一般的发行版本, 只提供 6 个月的 Bug 修复支持, 一年的安全修复支持.
这是非常重要的,你也不希望你今天开发的应用搭建与一个过时(特别是有安全隐患)的框架之上。
所以,让我们来拥抱 Laravel 5.1 LTS 版本!
Laravel 5 是框架最新的版本,相比 Laravel 4 做了很多的变化,但是大多数功能是后向兼容的,你可以根据 Upgrade Guide 进行平滑升级。
但是 Laravel 的核心理念并没有太多变化(读一读官方文档中的系统架构部分),在 Laravel 5 中依旧有用,但是在实现方式上可能做了很多改变。
如何在开发项目中快速应用一些新的变化,这篇文章,或者会是一个几篇的合集来展示 Laravel 项目的开发流程。
示例是学习最好的方式,我们用一个最熟悉的示例,目前我正在敲字的这个程序 PHPhub 为例,当然我们不需要设计的过于复杂。
我们可以尝试用 Laravel 5.1 来构建一个可以支持 Markdown
格式的博客系统,需要有评论以及后台管理的支持。
<?php
class Idea extends Eloquent {
/**
* 拥有海阔天空的想法?
*
* @with Laravel
*/
public function create()
{
// 让我们把它做出来
}
你需要有一台对你友好的计算机,我的意思是指你需要一个痛苦比较少的开发环境,无论是 Window 还是 MacOS , Linux 。
假设你理解虚拟机的概念, Laravel 提供了一个集成了相关开发环境的 box :laravel/homestead,可以理解为一个配置好的虚拟机镜像。
Laravel 框架的开发哲学之一是让 PHP 开发有趣而且简单。为了达到这个目的, Laravel 打包好了一个开发环境给应用开发者( Thanks to Vagrant )。你可以在自己起机器上搭载一个虚拟机程序(比如 Virtualbox )来使用这个开发环境, homestead 如何安装和使用。
所以有了它,你之后和工作伙伴协作的时候就不用再折腾开发环境了,一定要安利给同事。
个人经验: Homestead & PHPStorm 同时运行的时候,如果再加上自动化编译前端的组件的时候, 4G 内存的机器还是有点吃不消,有时候卡到无法正常工作。
不过我们还是要看一下,整个开发环境预装的一些 Software 列表:
14.04 系统版本
代码版本管理
Yo !!
即时编译器
Web Server
最熟悉不过的数据库
数据库,兼容 MySQL
简单易用的数据库
依赖包管理工具
前端构建工具
缓存管理
缓存管理
分布式内存队列系统
所以你可以开始按照英文或[中文的文档](查看这里的中文文档, 在之后的步骤里面我会默认你已经安装好开发环境)开始启动 homestead
的安装了,这是美好开始( Modern PHP )的第一步。如果你有更多兴趣,也可以了解一些这些预装的软件都是做什么的,多接触一些概念总是好的。
当然在 window 配置环境可能需要多费一些周折,可以读读这篇教程:
http://laravelcoding.com/blog/laravel-5-beauty-setting-up-a-windows-machine
Summer: 是的, Laravel 的开发中,使用 Homestead 是必须的,不论你是一个人开发项目,还是团队开发,不管你是新手,还是老手,请使用 Homestead 。可参考 Homestead 的环境部署脚本来实现开发环境和生产环境的统一。
使用浏览器访问应用:
创建新项目的方式其实有很多, homestead 和 vagrant 工具也有许多可以深入讲解的地方,不过这些就留给大家自己去探索了,可以先看看每个工具的使用文档之类的,具体场景的时候在去搜搜别人是如何解决的。
有什么细节问题,就在评论里面尖锐的指出来吧,一直觉得从评论中可以学习到更多东西 :)
接下来就要开始敲代码了,下篇文章会写一下使用 TDD 的方式构建应用程序。
声明一下:个人有个缺点,没办法把一件事做完整,所以大家对这个系列也不要抱有太多期待 :
About Me: Jobslong.com
个人经常使用的一个图床工具,有点扛不住流量费用了,各位土豪请随意捐赠一下,谢谢!
捐赠地址: http://yotuku.cn/
1
WenJimmy 2016-04-21 14:41:18 +08:00
持续关注...
|
2
audi 2016-04-21 15:17:16 +08:00 via iPhone
个人更喜欢 sf2-3
|
3
jonnyRain 2016-04-21 16:36:05 +08:00
关注一下
|
4
yhylord 2016-04-21 22:23:59 +08:00
运维小白,能问一下如果一直用非 LTS 版本来写会有什么问题吗?
|
5
yhylord 2016-04-21 22:24:28 +08:00
另外就是 Homestead 为什么一个人在 Linux 环境下开发的时候也是必需的呢?
|
6
Dannytmp 2016-04-21 22:46:35 +08:00 via Android
不喜 home stead,有那功夫弄它,还不如直接原生
|
8
JobsLong OP @Dannytmp 在自己电脑上面搭建环境难道不痛苦嘛?有时候开发需要你在不同的开发环境下进行开发,在本地安装多版本管理工具之类的东西也很不便。我觉得协作的时候,统一开发环境会让整个团队协作更好,不会出现因为开发环境不一致导致的问题,浪费无谓的时间
|
9
JobsLong OP 这边文章更细致的分析了一下:
http://blog.teamtreehouse.com/using-laravel-homestead-development-environment 其实 homestead 更容易部署,国内折腾花的比较多的时间,主要是因为不可知力量导致的网路不稳定会带来很多不爽的地方 |
10
mingyun 2016-07-24 19:05:39 +08:00
小小赞助下 http://yotuku.cn/
|