Laravel 또는 기타 프레임워크에 대한 개인 권장 프로그래밍 사양을 공유하세요.

藏色散人
풀어 주다: 2021-02-09 09:10:59
앞으로
2075명이 탐색했습니다.

튜토리얼 칼럼에서는 Laravel의 프로그래밍 사양이나 여러분이 추천하는 다른 프레임워크를 소개하고 있어 도움이 필요한 친구들에게 도움이 되길 바랍니다! 예비 요약

개발 중에 많은 학생들이 파일 이름 지정에서 혼란, 임의성 및 일관성 부족을 겪는 경향이 있습니다. 이러한 상황은 여러 사람이 협력할 때 특히 두드러집니다. 각 개발자는 모든 사람의 개발 습관에 적응해야 합니다. 많은 불편함이 여러 사람의 공동 개발의 효율성을 방해합니다.

통합 사양통합 개발 사양을 사용하면 많은 이점이 있습니다. 그 중 하나는 개발자 간의 마찰을 줄이는 것입니다. 예:

app/Models/User.php

···/**
 * @desc 获取 users.username
 * @param int $user_id users.id
 * @return string
  */public static function getUsername(int $user_id): string{
    return self::where('id', $user_id)->value('username');}// getUsername() end/**
 * @desc 获取 users.age
 * @param int $user_id users.id
 * @return int
  */public static function getAge(int $user_id): int{
    return (int)self::where('id', $user_id)->value('age');}// getAge() end···
로그인 후 복사
라인 매개변수 $user_id의 주석에서 users.id를 사용합니다. 형식입니다. 이 양식은 제가 권장하는 주요 장점입니다. 이 매개변수(<code>users 테이블의 id 필드)의 출처를 직관적으로 알 수 있다는 것입니다. 반환된 매개변수도 직관적으로 설명되어 있으며, 값은 users 테이블의 username 필드 값입니다.

함수 이름 지정은 작업별로 구분되며 get + field는 값을 가져오고 set + field는 값을 업데이트합니다.


통합된 이름 지정$user_id 的注释里,我使用的是 users.id 的形式。此形式是我主推的,优点是直观的知道此参数的由来(users 表中 id 字段)。
返回的参数也做了直观的说明,取值为 users 表中 username 字段的值。
function 命名按照动作来区分命名,get + 字段 取值,set + 字段 更新值。

命名统一

下面,我通过 users

아래에서는 users 테이블을 예로 들어 제가 권장하는 이름 지정 논리를 나열하겠습니다.

table - users

사용자 테이블을 청사진으로 사용하여 이 표준을 학생들에게 홍보합니다.

migrations - 데이터베이스 마이그레이션

database/migrations/xxxx_create_users_table.php

···use Illuminate\Support\Facades\DB;···    Schema::create('balance_logs', function (Blueprint $table) {
      $table->id();
      $table->string('username', 32)->unique()->nullable(false)->comment('名称');
      $table->string('password', 128)->nullable(false)->comment('密码');
      $table->unsignedInteger('age', 3)->default(0)->comment('年龄');
      $table->string('token', 128)->nullable(true)->comment('登录态');
      $table->dateTime('created_at')->useCurrent();
      $table->dateTime('updated_at')->useCurrent();

      $table->index('username', 'username_index');
    });
    DB::statement("ALTER TABLE `users` comment '用户表'");···
로그인 후 복사

model - 모델

app/Models/User.php

controller - 컨트롤러

앱/Http/컨트롤러/UserController .php

<?phpnamespace  App\Http\Controllers\Api\v1;use App\Http\Controllers\Controller;use Illuminate\Http\Request;use App\Models\User;class UserController extends Controller{
    public function index(Request $request)
    {
        // todo
    }// index() end

    public function show(Request $request)
    {
        // 变量命名,对应的是表字段的话,变量名建议以该字段为名,
        // 注释时采用 表名.字段 的形式
        // users.username
        $username = $request->post('username');
    }// show() end

    public function store(Request $request)
    {
        $user_id = $request->post('user_id');// users.id
        $age     = $request->post('age');    // users.age
        // 更新数据
        User::where('id', $user_id)->update(['age' => $age]);
    }// store() end}
로그인 후 복사

request - 양식 유효성 검사

app/Http/Requests/UserRequest.php

observer - 관찰자

app/Observers/UserObserver.php

event - 이벤트 시스템
  • 앱 /Events/UserEvent.php event
  • app/Listeners/UserListener.php Listener

console - 작업 예약

app/Console/Commands/UserCommand.php

$ php artisan my:user
로그인 후 복사

seeder - 데이터 채우기
  • 데이터베이스 /seeds/UserSeeder.php는 가짜 데이터를 생성합니다
  • database/factories/UserFactory.php 모델 공장

사양 정의

위의 사양을 테이블 사양으로 명명으로 정의합니다. 이에 대한 설명은 테이블 이름을 메인으로 사용하며, 관련 업무를 규정한 문서는 모두 테이블 이름

을 키워드로 하여 명명됩니다.

네이밍 - 마인드맵

Laravel 또는 기타 프레임워크에 대한 개인 권장 프로그래밍 사양을 공유하세요.

결론

제 개인적인 제안이 구현되어 학생들 사이에서 인기를 끌 수 있었으면 좋겠습니다. 읽어주신 학생들 감사합니다. 좋아요, 댓글, 수집, 리트윗

을 꼭 기억해주세요. 🎜

위 내용은 Laravel 또는 기타 프레임워크에 대한 개인 권장 프로그래밍 사양을 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:learnku.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿