Heim >Backend-Entwicklung >PHP-Tutorial >Entwickeln Sie große und mittelgroße Anwendungen basierend auf dem Typecho CMS-Framework

Entwickeln Sie große und mittelgroße Anwendungen basierend auf dem Typecho CMS-Framework

WBOY
WBOYOriginal
2016-07-29 09:12:381210Durchsuche

Entwicklung großer und mittelgroßer Anwendungen auf Basis des Typecho CMS-Frameworks

Große und mittelgroße Anwendungen werden vorübergehend definiert als: Anwendungen mit mehr als oder gleich 3 Datentabellen! Schwitz es!

Typecho war ursprünglich ein Blog-System. Sein Framework-System unterscheidet sich vom allgemeinen MVC-Framework auf dem Markt. Der Hauptcode verwendet das selbst erstellte Widget als Basisklasse und das Ganze ist sehr einfach.

Die Grundfunktionen von Typecho sind wie folgt:

  1. Einzelner Eingang
  2. Mit Ausnahme der DB-Konfiguration werden andere Konfigurationen in der DB gespeichert
  3. Routing-Konfiguration wird auch in der Datenbank gespeichert
  4. Selbst erstellte Widget-Ebene, keine herkömmliche Modellebene
  5. Selbst erstellte Aktionsebene, ähnlich der herkömmlichen Controller-Ebene
  6. Hook-Mechanismus
  7. Der Pan-Plugin-Mechanismus umfasst das Registrieren von Handlern für vorhandene Hooks, Methoden zum Erweitern vorhandener Widgets und das Registrieren neuer Front-End-Routen zum Zuordnen neuer Aktionen. und Registrierung der Back-End-Verwaltung.
  8. Unterstützte UI-Themen

Warum sollten wir Anwendungen entwickeln, die auf Typecho basieren?

Ich bin kein offizieller Entwickler von Typecho, noch bin ich in der relevanten Hintergrundeinheit segmentfault.com Warum dieses Nischen-Framework für die Arbeit verwenden?

Tatsächlich müssen Sie Typecho wirklich nicht verwenden. Es gibt zu viele Frameworks in der PHP-Welt, und Sie können ein fortgeschritteneres Framework wählen.

Ich weiß nicht, wann mir klar wurde, dass ich ein „Nischenpatient“ bin und nicht gerne dem gewöhnlichen Weg folge. So wie Linux im Desktop-Bereich vielleicht eher eine Nische ist, verwende ich gerne FreeBSD, das noch mehr eine Nische ist.

Das ist nur mein Versuch.

Üben Sie das

-Prinzip: Fügen Sie basierend auf dem MVC-Modell eine Service-Schicht hinzu.

  1. C-Schicht

Wie wir bereits sagten, hat Typecho sein eigenes Action-Konzept erstellt, das die Grundlage unserer C-Schicht bildet, aber Action hat keine klare Definition. Also werde ich eine Controller-Basisklasse definieren.

  1. M-Schicht

In Typecho gibt es kein Modellkonzept und alle SQL-Abfragen werden direkt aufgerufen. Daher muss auch die Model-Basisklasse definiert werden.

  1. V-Schicht

View-Datei ist der Inhaltsträger von View. Um die Lernkosten zu senken, wird die Template-Engine nicht mehr eingeführt, das heißt PHP-Syntax wird direkt verwendet und zur Ausführung direkt in C importiert.

  1. Serviceschicht

Bei komplexen Anwendungen besteht das größte Problem von MVC darin, dass der wiederverwendbare Code nicht ausreichend verfeinert ist. und manche Leute haben eine M-Schicht. Die Einführung der Service-Geschäftsschicht trägt dazu bei, die Geschäftsschicht zu verfeinern und zu kapseln und die Wiederverwendung von Code zu maximieren.

Demoprojekt: Typecho Alumni Plug-in-Projekt

Codeadresse: https://github.com/web3d/plugins/tree/master/Alumni

Projektcodestruktur:

/plugins/Alumni/Base/Action.php|Model.php|Service.php|Helper.php
/plugins/Alumni/Model/
/plugins /Alumni/Service/
/plugins/Alumni/Action/
/plugins/Alumni/views/default/

/plugins/Alumni/Plugin.php
/plugins/Alumni/panel .php

==========
Fortsetzung folgt...

Das Obige stellt die Entwicklung großer und mittelgroßer Anwendungen basierend auf dem Typecho CMS-Framework vor, einschließlich PHP-Syntax und Github-Inhalten. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn