使用 Laravel 5.1 构建商业项目程序:简要介绍

2016-04-21 11:52:29 +08:00
 JobsLong

为什么使用 Laravel 5.1 ?

长期支持

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,可以理解为一个配置好的虚拟机镜像。

为什么要用 homestead ?

Laravel 框架的开发哲学之一是让 PHP 开发有趣而且简单。为了达到这个目的, Laravel 打包好了一个开发环境给应用开发者( Thanks to Vagrant )。你可以在自己起机器上搭载一个虚拟机程序(比如 Virtualbox )来使用这个开发环境, homestead 如何安装和使用。

所以有了它,你之后和工作伙伴协作的时候就不用再折腾开发环境了,一定要安利给同事。

个人经验: Homestead & PHPStorm 同时运行的时候,如果再加上自动化编译前端的组件的时候, 4G 内存的机器还是有点吃不消,有时候卡到无法正常工作。

不过我们还是要看一下,整个开发环境预装的一些 Software 列表:

所以你可以开始按照英文或[中文的文档](查看这里的中文文档, 在之后的步骤里面我会默认你已经安装好开发环境)开始启动 homestead 的安装了,这是美好开始( Modern PHP )的第一步。如果你有更多兴趣,也可以了解一些这些预装的软件都是做什么的,多接触一些概念总是好的。

当然在 window 配置环境可能需要多费一些周折,可以读读这篇教程:

http://laravelcoding.com/blog/laravel-5-beauty-setting-up-a-windows-machine

Summer: 是的, Laravel 的开发中,使用 Homestead 是必须的,不论你是一个人开发项目,还是团队开发,不管你是新手,还是老手,请使用 Homestead 。可参考 Homestead 的环境部署脚本来实现开发环境和生产环境的统一。

创建新的项目

使用浏览器访问应用:

创建新项目的方式其实有很多, homestead 和 vagrant 工具也有许多可以深入讲解的地方,不过这些就留给大家自己去探索了,可以先看看每个工具的使用文档之类的,具体场景的时候在去搜搜别人是如何解决的。

有什么细节问题,就在评论里面尖锐的指出来吧,一直觉得从评论中可以学习到更多东西 :)

Next

接下来就要开始敲代码了,下篇文章会写一下使用 TDD 的方式构建应用程序。

声明一下:个人有个缺点,没办法把一件事做完整,所以大家对这个系列也不要抱有太多期待 :
About Me: Jobslong.com


广告

个人经常使用的一个图床工具,有点扛不住流量费用了,各位土豪请随意捐赠一下,谢谢!

捐赠地址: http://yotuku.cn/

3311 次点击
所在节点    PHP
10 条回复
WenJimmy
2016-04-21 14:41:18 +08:00
持续关注...
audi
2016-04-21 15:17:16 +08:00
个人更喜欢 sf2-3
jonnyRain
2016-04-21 16:36:05 +08:00
关注一下
yhylord
2016-04-21 22:23:59 +08:00
运维小白,能问一下如果一直用非 LTS 版本来写会有什么问题吗?
yhylord
2016-04-21 22:24:28 +08:00
另外就是 Homestead 为什么一个人在 Linux 环境下开发的时候也是必需的呢?
Dannytmp
2016-04-21 22:46:35 +08:00
不喜 home stead,有那功夫弄它,还不如直接原生
JobsLong
2016-04-23 14:07:11 +08:00
@yhylord 我主要考虑的是框架层面的安全漏洞问题, LTS 版本修复更及时一点 :)
JobsLong
2016-04-23 14:09:52 +08:00
@Dannytmp 在自己电脑上面搭建环境难道不痛苦嘛?有时候开发需要你在不同的开发环境下进行开发,在本地安装多版本管理工具之类的东西也很不便。我觉得协作的时候,统一开发环境会让整个团队协作更好,不会出现因为开发环境不一致导致的问题,浪费无谓的时间
JobsLong
2016-04-23 14:16:14 +08:00
这边文章更细致的分析了一下:

http://blog.teamtreehouse.com/using-laravel-homestead-development-environment

其实 homestead 更容易部署,国内折腾花的比较多的时间,主要是因为不可知力量导致的网路不稳定会带来很多不爽的地方
mingyun
2016-07-24 19:05:39 +08:00
小小赞助下 http://yotuku.cn/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/273333

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX