# 设计与架构目标

CodeIgniter 的目标是在最小、最轻量的软件包中实现最高的性能、功能和灵活性。

为实现这一目标，我们致力于在开发过程的每一步进行基准测试、重构和简化，拒绝任何不符合既定目标的元素。

从技术和架构的角度来看，CodeIgniter 按照以下目标创建：

- 动态实例化。 在 CodeIgniter 中，组件仅在被请求时才加载，函数也仅在被请求时才执行，而不是全局加载。系统不会对除最小核心资源外可能需要的内容做任何假设，因此系统默认非常轻量。由 HTTP 请求触发的事件，以及你设计的控制器和视图将决定调用哪些内容。

- 低耦合。 耦合是指系统组件相互依赖的程度。组件之间相互依赖的程度越低，系统的可重用性和灵活性就越高。我们的目标是建立一个高度低耦合的系统。

- 组件专一性。 专一性是指组件对某个目标的专注程度。在 CodeIgniter 中，每个类及其方法都具有高度的独立性，以实现最大的复用性。

CodeIgniter 是一个动态实例化，高度组件专一性的低耦合系统。它在小巧的基础上力求做到简洁、灵活和高性能。