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

为什么使用 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 列表:

  • Ubuntu 14.04 系统版本
  • Git 代码版本管理
  • PHP 7.0 Yo!!
  • HHVM 即时编译器
  • Nginx Web Server
  • MySQL 最熟悉不过的数据库
  • MariaDB 数据库,兼容 MySQL
  • Sqlite3 简单易用的数据库
  • Postgres `暂时没有用过的数据库·
  • Composer 依赖包管理工具
  • Node (With PM2, Bower, Grunt, and Gulp) 前端构建工具
  • Redis 缓存管理
  • Memcached 缓存管理
  • Beanstalkd 分布式内存队列系统

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

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

http://laravelcoding.com/blog/laravel-5-be...

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

创建新的项目

Create Project

使用浏览器访问应用:

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

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

Next

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

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


广告

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

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

Remote. Open. Engineer.
本帖已被设为精华帖!
附言 1  ·  7年前

跟着 Laravel 5.1 成为更好的 PHP 开发者 - Laravel 台湾社群分享 PDF Download

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 10
Summer

选择 Laravel 5.1 LTS 的理由:

工匠应该专注于作品的创意,不应该浪费精力,没限制地在折腾自己的工具。

7年前 评论
Summer

选择 Laravel 5.1 LTS 的理由:

工匠应该专注于作品的创意,不应该浪费精力,没限制地在折腾自己的工具。

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!