codememory / framework
Codememory 框架
v4.3
2021-12-01 21:01 UTC
Requires
- php: >=8.0
- ext-ctype: *
- ext-iconv: *
- ext-pdo: *
- ext-redis: *
- ext-xhprof: *
- codememory/asset: ^1.0
- codememory/caching: ^1.1
- codememory/config: 2.0
- codememory/database-pack: ^1.1
- codememory/date-time: ^1.0
- codememory/environment: ^1.0
- codememory/event-dispatcher: ^1.0
- codememory/finder: ^1.1
- codememory/fs: ^1.1
- codememory/global-config: ^1.1
- codememory/http-foundation: ^2.2
- codememory/json-parser: ^1.0
- codememory/logging: 2.1
- codememory/mailer: ^1.0
- codememory/markup: ^2.0
- codememory/profiling: ^2.0
- codememory/redis: ^1.0
- codememory/routing: ^1.3
- codememory/service-provider: ^1.0
- codememory/services: ^1.0
- codememory/support: ^1.2
- codememory/toolbar: ^1.0
- codememory/translator: ^1.1
- codememory/unit-conversion: ^2.0
- codememory/validator: ^1.3
- codememory/view: ^1.0
- illuminate/collections: ^8.58
- mcaskill/composer-exclude-files: ^2.0
- twig/twig: ^3.3
Requires (Dev)
- symfony/var-dumper: ^5.3
README
创建项目
composer create-project codememory/framework ./
章节链接
文件夹结构
│ ── .config
│ ── app
│ │ ── Controller
│ │ ── Events
│ │ ── Listeners
│ │ ── Models
│ │ ── Orm
│ │ │ ── Entities
│ │ │ ── Repositories
│ │ ── Software
│ │ ── Validations
│ ── bin
│ ── configs
│ ── kernel
│ ── migrations
│ ── public
│ │ ── Assets
│ │ ── Dist
│ ── resource
│ │ ── Templates
│ │ ── Translations
│ ── routes
│ ── storage
命名约定
- 配置中的每个键都必须位于
camelCase
;
-
Bind
描述当前配置键必须以当前配置的名称开头,并通过.
名字。格式{configName}.{bindName}
例如caching: binds: caching.path: "path" # Внимательность на имя ключа! caching.history.path: "path" # Внимательность на имя ключа!
- 对于变量、方法和函数,请使用
camelCase
。例如:$variableName
,functionName()
;
- 每个常量都必须定义访问修饰符;
- 命名空间必须符合 PSR-4;
- 文件和类的名称必须位于
UpperCamelCase
。例如:ProductCreator.php
,class ProductCreator
;
- 抽象类必须包含前缀
Abstract
;
- 接口必须以
Interface
结尾;
- 特质必须以
Trait
结尾;
- 异常必须以
Exception
结尾;
代码风格
- 在
{
符号之后必须有一个空行;
- 在
}
符号之前必须有一个空行;
- 在
namespace
之后必须有一个空行;
- 在最后一个
use
之后必须有一个空行;
- 每个类都必须包含
PHPDoc
标签:class {className}
,@package {namespace}
,@author {author}
;
- 每个方法、属性都必须包含
PHPDoc
,如果方法或属性被重写,则PHPDoc
中必须只有一个@inheritDoc
标签,除了@throw
标签;
- 对于任何使用过的类都必须有
use
;
- 不要使用双引号,除非需要使用转义序列;
- 如果需要在字符串中调用变量,请使用
sprintf
函数;
- 如果调用两个或更多相同的函数,则不要在它们之间使用空字符串;
- 如果
service-provider
被使用两次或更多,则将服务提供者数据放入变量中;
- 每个变量、函数、方法都必须有返回类型;
- 创建类实例时,无论构造函数参数的数量是多少,都必须使用圆括号;
- 在每
,
之后都必须有一个空格;
- 同样使用 PSR-12 风格,它不会覆盖
Codememory Style Guide
;