用封装类来合理的设计PHP项目--谈PHP项目中类的封装_PHP
编码对于合格的PHP程序员来说并不是什么难事(也许只是花费时间长短的问题),因此系统分析和设计这一阶段就显得尤为重要。不过本文并不打算讨论和需求分析、获取商业逻辑相关的话题,而是针对系统设计方面进行探讨。
编码对于合格的PHP程序员来说并不是什么难事(也许只是花费时间长短的问题),因此系统分析和设计这一阶段就显得尤为重要。对于一个担任PHP项目的系统分析员来说,面临着两个难题:
- PHP语言本身的限制。
这一点在复杂系统的面向对象设计中尤其显著。PHP的面向对象特性在现有版本中虽然得到了改善,但是还不甚健全,根本不足以担任面向对象设计的实现语言;即使眼光长远一些,在即将释出的以Zend Engine 2.0支持的全新PHP中,面向对象特性也不会像现在流行的Java或者C++那样(关于这方面的内容可以参见我在developerWorks中国网站发表的另一篇文章)。但是如果采用完全面向过程(准确说是面向Web页面)的方式,可以想见整个系统的设计会非常复杂,而由此带来的编码复杂和维护困难更加难以应付。 - 现有资料的严重缺乏。
这是众所周知的现象即针对Web项目的系统设计资料不足;而在这些有限资料中,关于PHP的设计资料又非常匮乏。如果本公司或本人也没有相关的技术积累,系统分析员只能在黑暗中摸索方法(更坏的两种情况,一是照搬其他项目比如Java或者C++的设计,二是认为项目简单而不负责任的草草了事)。
既然如此,采用何种方法妥善处理PHP系统的分析和设计?最初的构想应该需要分清项目承担任务的类型:
- 涉及大量客户本身或者客户所在行业的商业逻辑的项目,包括办公系统、订单系统以及其他商业系统。
- 简单网站项目,包括一些需要承担高访问量或要求快速响应的项目比如品牌网站或者活动网站以及其他一些网站。
- 综合性网站项目。通常包含多个相对独立的子系统比如新闻子系统、论坛子系统、产品陈列子系统等等。
PHP的设计初衷在于解决后两种项目的迫切需求,语言本身对于这些项目进行了良好的改造。而众多的PHP开发者对这些项目也具有或多或少的经验,相关书籍中的范例也大都围绕于此。相对说来第一种系统所有的资料不多,各种出版物对其内容也很少提及。因此在本文中将题所述对第一种类型的项目进行详细讲述(有关MVC模式和类封装),同时附带提及第二种项目(有关黑客代码)以及第三种项目的设计方法。当然,并不是被归类的这些项目就只能采用本文描述的方式,系统分析员需要权衡各方面因素加以选择。
如何分离用户界面和后台操作?如何避免将商业逻辑混淆于一般的流程控制中?作为一个严谨的商用项目,就需要考虑很多类似的问题。对于由PHP担当的这类项目,贯彻Model-View-Controller(MVC)模式的设计是一个非常好的方法。
理论描述
在这里我不想多加解释MVC模式本身--简单的从字面上以及应用上说,通过将系统的设计分为Model模型/逻辑、View视图/界面、Controller控制/流程三个逻辑部分达到良好的项目效果,以此便利各部分开发者的工作并降低日后的维护成本。(如果您熟悉JSP开发的Model 2模式,可以发现它也是MVC模式的很好体现。)就现实的项目开发而言,现存的很大问题包括网页设计人员和程序开发人员的工作交错和冲突以及商业逻辑嵌入页面造成不可重用也很难维护等等。引入MVC模式一方面可以为系统的总体设计指出明确的方向,对于开发团队的分工也是良好的指导。
既然依照MVC模式要求对系统的总体结构在逻辑上分成三部分,那么团队的开发者中也存在着针对各个部分的开发者。
开发者角色 | 相关系统逻辑 | 职责 |
网页设计人员 | View视图/界面 | 设计所有用户界面的网页模板。 |
控制流程开发人员 | Controller控制/流程 | 编写系统流程中的所有PHP页面。 |
商业逻辑开发人员 | Model模型/逻辑 | 开发系统设计中规定的各个类(其中的方法)。 |

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Bagaimana untuk melaksanakan kod pengesahan dan mencegah serangan bot dalam projek PHP? Dengan perkembangan dan populariti Internet, semakin banyak laman web dan aplikasi mula diancam oleh serangan bot. Untuk melindungi keselamatan maklumat pengguna dan memberikan pengalaman pengguna yang baik, pembangun perlu melaksanakan kod pengesahan dan langkah-langkah untuk mencegah serangan bot dalam projek mereka. Artikel ini akan memperkenalkan cara melaksanakan kod pengesahan dan mencegah serangan bot dalam projek PHP. 1. Pelaksanaan kod pengesahan Kod pengesahan ialah kaedah biasa untuk mencegah serangan robot. Pengguna perlu memasukkan kod pengesahan semasa log masuk atau mendaftar.

Bagaimana untuk melaksanakan fungsi sandaran dan pemulihan data dalam projek PHP? Dalam proses membangunkan dan mengurus projek PHP, sandaran data dan fungsi pemulihan adalah sangat penting. Sama ada untuk mengelakkan kehilangan data secara tidak sengaja atau untuk memastikan keselamatan data semasa pemindahan dan peningkatan projek, kita perlu menguasai kaedah sandaran dan pemulihan data. Artikel ini akan memperkenalkan cara melaksanakan fungsi sandaran dan pemulihan data dalam projek PHP. 1. Laluan sandaran definisi sandaran data: Pertama, kita perlu menentukan laluan yang digunakan untuk menyimpan fail sandaran. Boleh ditakrifkan dalam fail konfigurasi projek

Bagaimana untuk melaksanakan pengesahan pengguna dan kawalan kebenaran dalam projek PHP? Dalam aplikasi web moden, pengesahan pengguna dan kawalan kebenaran adalah salah satu fungsi yang paling penting. Pengesahan pengguna digunakan untuk mengesahkan identiti dan kebenaran pengguna, manakala kawalan kebenaran menentukan kebenaran akses pengguna kepada pelbagai sumber dalam sistem. Melaksanakan pengesahan pengguna dan kawalan kebenaran dalam projek PHP boleh melindungi keselamatan data pengguna dan memastikan bahawa hanya pengguna yang dibenarkan sistem boleh mengakses maklumat sensitif. Artikel ini akan memperkenalkan kaedah asas untuk membantu anda melaksanakan fungsi pengesahan pengguna dan kawalan kebenaran untuk memastikan

Tutorial pengenalan penyebar: Mengoptimumkan proses penggunaan projek PHP Pengenalan: Dalam pembangunan moden, penggunaan automatik telah menjadi bahagian yang sangat diperlukan. Deployer ialah alat penggunaan projek PHP yang sangat baik, yang boleh membantu kami memudahkan proses penggunaan dan meningkatkan kecekapan. Artikel ini akan memperkenalkan penggunaan asas Deployer, dan menunjukkan melalui contoh kod cara mengoptimumkan proses penempatan projek PHP melalui Deployer. 1. Mengapa memilih Deployer? Penyebar adalah ringan

Bagaimana untuk melaksanakan pemprosesan imej dan penambahan tera air dalam projek PHP? Dalam beberapa tahun kebelakangan ini, dengan perkembangan pesat Internet, penggunaan imej telah memainkan peranan yang semakin penting dalam reka bentuk web dan pembangunan aplikasi. Untuk memenuhi keperluan pengguna untuk imej berkualiti tinggi, kami perlu melaksanakan pemprosesan imej dan fungsi penambahan tera air dalam projek PHP. Artikel ini akan memperkenalkan kaedah yang mudah dan berkesan untuk mencapai matlamat ini. 1. Fungsi pemprosesan imej PHP PHP menyediakan satu siri fungsi untuk pemprosesan imej, yang boleh membantu kami mengezum, memangkas, memutar, dll. imej.

Pengenalan kepada tutorial penggunaan automatik projek PHP berdasarkan Deployer: Apabila membangunkan projek PHP, kita selalunya perlu menggunakan kod ke pelayan. Kaedah penggunaan tradisional mungkin melibatkan langkah yang membosankan seperti memuat naik fail secara manual dan membuat sandaran pangkalan data. Untuk meningkatkan kecekapan dan mengurangkan ralat, kami boleh menggunakan alatan penggunaan automatik. Deployer ialah alat penggunaan automatik yang berkuasa untuk projek PHP, yang boleh membantu kami menggunakan kod dan mengkonfigurasi pelayan dengan cepat dan boleh dipercayai. Artikel ini akan memperkenalkan cara menggunakan Deploye

Bagaimana untuk melaksanakan penalaan prestasi dan pengoptimuman sumber dalam projek PHP? Dengan perkembangan pesat Internet, semakin banyak aplikasi menggunakan PHP sebagai bahasa pembangunan. Disebabkan oleh kemudahan penggunaan dan fleksibiliti PHP, ramai pembangun memilih untuk menggunakannya untuk membina tapak web dan aplikasi mereka. Walau bagaimanapun, disebabkan sifat PHP yang dinamik dan ditafsirkan, sesetengah pembangun mungkin menghadapi masalah prestasi. Artikel ini akan meneroka cara melakukan penalaan prestasi dan pengoptimuman sumber dalam projek PHP untuk meningkatkan prestasi dan responsif aplikasi. 1. Gunakan struktur data yang sesuai

Projek PHP Xiaomi Mall termasuk: 1. Sistem pengurusan pengguna, yang merupakan salah satu fungsi teras keseluruhan sistem pusat membeli-belah Ia mengendalikan permintaan pengguna, mengesahkan identiti pengguna dan interaksi pangkalan data, dll. 2. Sistem pengurusan produk, menguruskan semua produk dan produk yang dijual di pusat membeli-belah, pemadaman, pengubahsuaian, pengurusan inventori dan pelarasan harga, dll proses dan logik aktiviti promosi 5. Sistem statistik data, mengekstrak data daripada pangkalan data, melakukan pengiraan data dan menjana laporan dan memaparkannya kepada pentadbir.
