Laravel心得

Laravel框架开发实践的心得
Laravel框架给我留下了深刻的印象,其优雅的语法和丰富的功能使得开发变得更加高效和愉快。在实际工作中,我通过以下几点来提升Laravel框架开发的效率和质量:

良好的文档和社区支持:Laravel拥有详细且易于理解的官方文档,同时也有庞大而活跃的社区支持。在遇到问题时,我能够迅速地查阅文档或向社区寻求帮助,节省了大量的解决问题时间。

遵循最佳实践:我始终坚持使用Laravel框架推荐的最佳实践,如MVC模式、依赖注入等。这样不仅有助于代码结构清晰、易于维护,也使得团队协作更加高效。

使用Composer管理依赖:Composer是PHP的依赖管理工具,我在项目中广泛使用Composer来管理第三方依赖包,确保项目的稳定性和安全性。

优化性能:在开发过程中,我会对代码进行性能优化,尽量减少数据库查询次数、缓存数据等方法来提高系统性能,从而改善用户体验。

安全性考虑:在开发过程中,我会重视数据验证、防止SQL注入、XSS攻击等安全问题,以确保系统的安全性和稳定性。

日志和错误处理:我在项目中加入了日志记录功能,及时记录系统运行情况,方便后期排查问题。同时,我也会合理处理异常,提高系统的可靠性。

自动化测试:我会编写单元测试、功能测试等各种测试用例,以确保代码质量和系统稳定性,同时减少潜在的bug出现。

项目复盘
在每个项目结束之后,我都会进行项目复盘,总结工作中的得失和经验教训。通过项目复盘,我发现了一些可以改进的地方:

沟通与协作:在团队协作中,及时有效的沟通和协作是非常重要的。在过去的项目中,我意识到在沟通和协作方面还有提升的空间,因此我开始主动与团队成员沟通,分享想法,并学习倾听他人的意见。

时间管理:在项目开发过程中,我注意到有时候会因为没有合理安排时间而导致工作效率降低。因此,我开始尝试使用时间管理工具来规划和分配工作时间,提高工作效率。

持续学习:技术更新换代非常快,作为一名软件开发工程师,持续学习是必不可少的。我开始着手学习一些新的技术,以便在未来的项目中能够更好地应用这些新知识。

技术笔记
为了巩固所学知识,我经常会编写技术笔记,将学到的知识整理成文字或者图表,以便之后复习和巩固。这种方式帮助我更好地理解和掌握所学的知识点,同时也提高了我的工作效率。

职场感悟心得
作为一名职场新人,我认识到在工作中除了技术能力之外,沟通能力、团队协作能力等软实力同样重要。我逐渐明白了团队合作的重要性,学会了与同事们更好地相处和合作。此外,我也意识到在职场中需要不断学习和提升自己,以应对日益复杂和多变的工作环境。

总的来说,Laravel框架的开发实践让我受益匪浅,项目复盘也让我有机会总结经验、找到改进的空间。而技术笔记和职场感悟心得则成为了我前行路上的宝贵财富。我相信,在未来的工作中,我会继续努力学习,不断提升自己,成为一名更优秀的软件开发工程师。

部分路由:

 

<?php

/*

|--------------------------------------------------------------------------

| Web Routes

|--------------------------------------------------------------------------

|

| Here is where you can register web routes for your application. These

| routes are loaded by the RouteServiceProvider within a group which

| contains the "web" middleware group. Now create something great!

|

*/

Route::get('/', function () {

    return view('welcome');

});

//后台

Route::get('/admin/login','Admin\UserController@login');

Route::post('/admin/check','Admin\UserController@check');

Route::get('/admin/logout', 'Admin\UserController@logout');

Route::get('/admin/index', 'Admin\IndexController@index')->middleware(['Admin']);

//栏目

Route::prefix('category')->namespace('Admin')->middleware(['Admin'])->group(function () {

    Route::get('', 'CategoryController@index');

    Route::get('add', 'CategoryController@add');

    Route::post('save', 'CategoryController@save');

    Route::get('edit/{id}', 'CategoryController@edit');

    Route::post('delete/{id}', 'CategoryController@delete');

    Route::post('sort', 'CategoryController@sort');

});

// 内容

Route::prefix('content')->namespace('Admin')->middleware(['Admin'])->group(function () {

    Route::get('add', 'ContentController@add');

    Route::post('upload', 'ContentController@upload');

    Route::post('save', 'ContentController@save');

    Route::get('edit/{id}', 'ContentController@edit');

    Route::post('delete/{id}', 'ContentController@delete');

    Route::get('{id?}', 'ContentController@index');

});

// 广告位

Route::prefix('adv')->namespace('Admin')->middleware(['Admin'])->group(function () {

    Route::get('add/{id?}', 'AdvController@add');

    Route::post('save', 'AdvController@save');

    Route::post('delete/{id}', 'AdvController@delete');

    Route::get('', 'AdvController@index');

});

// 广告内容

Route::prefix('advcontent')->namespace('Admin')->middleware(['Admin'])->group(function () {

    Route::get('add/{id?}', 'AdvcontentController@add');

    Route::post('upload', 'AdvcontentController@upload');

    Route::post('save', 'AdvcontentController@save');

    Route::post('delete/{id}', 'AdvcontentController@delete');

    Route::get('', 'AdvcontentController@index');

});

// 首页

Route::get('/', 'IndexController@index');

Route::get('/lists/{id}', 'IndexController@lists');

Route::get('/detail/{id}', 'IndexController@detail');

Route::get('/like/{id}', 'IndexController@like');

Route::get('/comment', 'IndexController@comment');

Route::post('/register', 'UserController@register');

Route::post('/login', 'UserController@login');

Route::get('/logout', 'UserController@logout');


 

// 设置面包屑导航

Route::name('home')->get('/', 'IndexController@index');

Route::name('category')->get('/lists/{id}', 'IndexController@lists');

Route::name('detail')->get('/detail/{id}', 'IndexController@detail');

部分原代码:

<!DOCTYPE html>

<html>

<head>

  @include('public/static')

  <title>详细页</title>

</head>

<body>

@include('public/header')

<div class="main">

  <div class="main-crumb">

    <div class="container">

      <!-- 面包屑导航 -->

      <nav aria-label="breadcrumb">

        {!! Breadcrumbs::render('detail', ['id'=>$id,'cid'=>$cid]); !!}

      </nav>

    </div>

  </div>

  <div class="container">

    <div class="row">

      <div class="col-md-9">

        <!-- 内容区域 -->

        <article class="main-article">

          <header>

            <h1>{{$content->title}}</h1>

            <div>发表于{{ date('Y-m-d', strtotime($content->create_time)) }}</div>

          </header>

          <div class="main-article-content">

            <p><img class="img-fluid" src="/static/upload/{{$content->image}}"></p>

            <p>{!! $content->content !!}</p>

          </div>

          <!-- 点赞模块 -->

          @if(session()->has('users'))

            <div class="main-article-like">

              <span>

              <i class="fa fa-thumbs-up" aria-hidden="true">{{$count}}</i>

              </span>

            </div>

          @endif

        </article>

        <div class="main-comment">

          <!-- 评论列表 -->

          @if(!$comments->isEmpty())

            <div class="main-comment-header">

              <span id="count">{{$comments->count()}}</span> 条评论

            </div>

            @foreach($comments as $val)

              <div class="main-comment-item">

                <div class="main-comment-name">{{$val->user->name}}</div>

                <div class="main-comment-date">

                  {{ date('Y-m-d', strtotime($val->created_at)) }}</div>

                <div class="main-comment-content">{{$val->content}}</div>

              </div>

            @endforeach

          @endif

        </div>

        <!-- 发表评论模块 -->

        <div class="main-reply">

          @if(session()->has('users'))

            <div class="main-reply-header">发表评论</div>

            <div class="main-reply-title">评论内容</div>

            <div><textarea name="content" rows="8" id="content"></textarea></div>

            <div>

              <input type="hidden" id='c_id' value="{{$id}}">

              <input type="button" value="提交评论" id="publish">

            </div>

          @endif

        </div>

      </div>

      <div class="col-md-3">

        <!-- 侧边栏 -->

        @include('public/sidebar')

      </div>

    </div>

  </div>

</div>

@include('public/footer')

</body>

<script>

  $(document).ready(function() {

    $(".fa-thumbs-up").bind("click", function () {

      $.get("{{ url('like', $id) }}", {}, function (result) {

        var count = result.count;

        $(".fa-thumbs-up").html();

        $(".fa-thumbs-up").html(count);

      });

    });

    $('#publish').bind("click",function(){

      var data = {

        'cid' : $("#c_id").val(),

        'content' : $("#content").val()

      };

      $.get("{{ url('comment') }}",data, function(result){

        var data = result.data;

        var user = data.user;

        var html = '<div class="main-comment-item">';

        html += '<div class="main-comment-name">' + user['name'] + '</div>';

        html += '<div class="main-comment-date">';

        html += data['created_time'];

        html += '</div>';

        html += '<div class="main-comment-content">';

        html += data['content'] + '</div>';

        html += '</div>';

        $(".main-comment").append(html);

        $("#count").html();

        $("#count").html(data['count']);

      });

    });

  });

</script>

</html>

<!DOCTYPE html>

<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">

  <head>

    <meta charset="utf-8">

    <meta name="viewport" content="width=device-width, initial-scale=1">

    <title>Laravel</title>

    <!-- Fonts -->

    <link href="https://fonts.googleapis.com/css?family=Nunito:200,600" rel="stylesheet">

    <!-- Styles -->

    <style>

      html, body {

        background-color: #fff;

        color: #636b6f;

        font-family: 'Nunito', sans-serif;

        font-weight: 200;

        height: 100vh;

        margin: 0;

      }

      .full-height {

        height: 100vh;

      }

      .flex-center {

        align-items: center;

        display: flex;

        justify-content: center;

      }

      .position-ref {

        position: relative;

      }

      .top-right {

        position: absolute;

        right: 10px;

        top: 18px;

      }

      .content {

        text-align: center;

      }

      .title {

        font-size: 84px;

      }

      .links > a {

        color: #636b6f;

        padding: 0 25px;

        font-size: 13px;

        font-weight: 600;

        letter-spacing: .1rem;

        text-decoration: none;

        text-transform: uppercase;

      }

      .m-b-md {

        margin-bottom: 30px;

      }

    </style>

  </head>

  <body>

    <div class="flex-center position-ref full-height">

      @if (Route::has('login'))

        <div class="top-right links">

          @auth

            <a href="{{ url('/home') }}">Home</a>

          @else

            <a href="{{ route('login') }}">Login</a>

            @if (Route::has('register'))

              <a href="{{ route('register') }}">Register</a>

            @endif

          @endauth

        </div>

      @endif

      <div class="content">

        <div class="title m-b-md">

          Laravel

        </div>

        <div class="links">

          <a href="https://laravel.com/docs">Docs</a>

          <a href="https://laracasts.com">Laracasts</a>

          <a href="https://laravel-news.com">News</a>

          <a href="https://blog.laravel.com">Blog</a>

          <a href="https://nova.laravel.com">Nova</a>

          <a href="https://forge.laravel.com">Forge</a>

          <a href="https://github.com/laravel/laravel">GitHub</a>

        </div>

      </div>

    </div>

  </body>

</html>

成果图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mwyb0828713

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值