earc/minimal

eArc - 显式架构框架 - 最小化安装骨架

安装: 12

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:项目

0.1-rc 2018-08-11 09:58 UTC

This package is auto-updated.

Last update: 2024-09-20 07:42:49 UTC


README

eArc框架的安装骨架。

eArc代表显式架构。它关乎让代码尽可能易于理解,尽可能减少对程序员编码自由的干预。简而言之,它关乎简洁和良好的架构。

为了开箱即用,此安装包含twig模板引擎。您可以使用任何喜欢的模板引擎。

此骨架配置为与apache2网络服务器一起使用,安装说明将参照它。您可以使用任何想要的网络服务器。请注意,PHP版本必须是7.2或更高。

eArc框架组件的详细文档可在其git页面找到

目录

分类

eArc框架是传统MVC框架的对立面,其中每个文件使用(例如控制器、实体、服务、视图等)只有一个基础目录。eArcs创建之初的核心思想是

我们有这个文件系统。它是所有通用操作系统中最基本的概念之一。树是非常强大的数据结构。为什么不通过它表达常见的编程概念和问题,如所有权、访问、流程、控制、领域和依赖呢?为什么不让文件系统本身来提升我们对编程代码的理解呢?

当工作进展时,我意识到Web后端框架问题领域已经分解为两个树领域。每个领域都有其自己的基础概念和语言。

  1. 第一个树领域是用户界面世界。通过/src/web-route文件夹及其访问和主控制器以及视图,表达了路由访问请求流程/控制用户交互

  2. 第二个树领域是服务和业务逻辑的世界。通过四个顶级领域基础文件夹/src/businessDomains/src/configurationDomains/src/outputDomains/src/persistenceDomains、领域结构和特定领域接口,表达了领域领域聚合领域交互。每个领域都是自己的小型MVC世界(尽管业务、配置和持久化领域缺少视图,输出领域缺少模型)。

eArc框架将传统MVC的单一应用方法转变为某种微服务与控制器-模板树架构的结合。

第三方服务位于/vendor文件夹中。只有当应用程序通过反腐败层或适配器服务或具有单独的应用特定配置服务来保护第三方服务时,它才能通过基础领域文件夹结构检测到。

安装

1. 获取源代码

假设您的eArc应用程序的项目文件夹是/path/to/your/new/projekt/app。通过composer安装

$ composer create-project earc/minimal /path/to/your/new/projekt/app

如果您尚未安装composer,请访问composer官网查看安装说明。

2. 配置网络服务器

以下说明适用于运行Apache2 web服务器的Linux用户。如果您正在使用其他web服务器或在Windows或mac上操作,或者以非标准方式配置了Apache,请查阅互联网上的相关资料。

(1) 在/etc/apache2/sites-available目录中创建并打开一个名为my-app.conf的文件。

$ sudo vim /etc/apache2/sites-available/my-app.conf

当然,您也可以使用nano或您喜欢的任何编辑器。

(2) 添加Apache配置并保存文件。出于开发目的,以下内容应该足够。

<VirtualHost *:80>
    ServerName my-app.vm 
    ServerAlias www.my-app.vm
   
    ServerAdmin webmaster@localhost
    DocumentRoot /path/to/your/new/projekt/app/public/
   
    <Directory /path/to/your/new/projekt/app/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride FileInfo
        Require all granted
    </Directory>
   
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

(3) 启用my-app.vm站点。

$ sudo a2ensite

(4) 检查是否需要编辑/etc/hosts

$ sudo vim /etc/hosts

可能需要添加以下内容。

127.0.0.2   my-app.vm   www.my-app.vm

(5) 重新加载Apache

sudo service apache2 restart

(6) 在浏览器中打开http://my-app.vm

如果一切顺利,您现在可以查看eArc欢迎页面的简化版。

3. 编辑composer.json

现在是编辑项目基本文件夹中的composer.json文件以符合您需求的好时机。

4. 初始化您的版本控制系统

如果您使用git,请转到项目基本文件夹并输入

$ git init

太棒了!您现在可以开始编码了...

如果您是eArc框架的新用户,请阅读下一节!

用法

启动应用程序

使用控制器

高级用法

应用程序生命周期

分发过程有5个阶段

  1. 开始执行注册到分发的中间件。
  2. 执行访问控制器。
  3. 执行注册到分发之间的中间件。
  4. 执行主控制器。
  5. 执行注册到分发结束的中间件。

如果其中一个控制器返回一个路由器对象,分发过程将重新开始并注入新的路由器对象。

访问控制器

主控制器

中间件

示例

版本

版本v0.1

首个官方版本