Search for:
  • ブログ
    • IT・プログラミング
    • デジタルマーケティング
    • 起業・スタートアップ
    • 自由気ままな移住と生活&働き方
うずらのヤドリギ(旧Uzublo) - 海外移住して起業した自由人エンジニアのブログ
うずらのヤドリギ - 海外移住して起業した自由人エンジニアのブログ
  • ブログ
    • IT・プログラミング
    • デジタルマーケティング
    • 起業・スタートアップ
    • 自由気ままな移住と生活&働き方

Blog

【プログラマー向け】イラつかせるWordPressの非MVC的な構造

access_time2018年10月28日
perm_identity Posted by Hisashi
folder_open IT・プログラミング

WordPressは、言わずもがな世界のシェアの25%を占める、世界で一番有名なオープンソースのCMS(コンテンツマネージメントシステム)だ。

Webのことに詳しくない方でも、Wordpressという言葉を聞いたことがある方はかなり多いと思う。特にネカフェ(ネットカフェ)で、イヤホンしながらノリノリでMacいじってる人いたら、その人はもしかしたらWordpressに記事を投稿している可能性は高い。

今回は、そのWordpressに関すプログラマの悩みについてお伝えする。

エンジニアの中でも、評価が分かれるWordpress

このWordpress。実は、Web屋さんとシステム屋さんで、評価がかなり分かれる。

このブログでは、Webの世界には、サーバーサイドエンジニアとフロントエンドエンジニアという2種類があることを、度々お伝えしているが、彼らからWordpressの評価はそれぞれ大きく異なる。

フロントエンドエンジニアから見たWordpress

私の知人に聞いたところによると、Web屋から見た場合、Wordpressは肯定的な評価をする人が多いかな、という印象だ。

特に、日々コンテンツを更新したり、アニメーション追加したり、画像差し替えたりといったタスクは、機能の多さよりも操作のシンプル性を重要視する運用者が多い。その点、機能がシンプルでググれば見つかるようなWordpressは、他のCMSと比べても比較的運用しやすい。

サーバーサイドエンジニアから見たWordpress

これは私の独断と偏見が多分に入るが、フロントエンドエンジニアさんと比べてあまり肯定的な評価は多くない。

その理由は、主にこんな理由があった。

  • 作り(プログラム構造)が悪い!
    プログラムの書き方、ファイルの配置等、分かりづらいところがある。
    MVCモデルになっていない。
  • カスタマイズしずらい!
    プラグインが画面と一体化してしまっており、追加の処理を挟めないケースがあると、プラグイン本体を修正する必要が出てくる。
    その結果、プラグインをアップデートするとカスタマイズ内容がぶっ飛ぶ。

MVCとは?

特に、Webシステムの世界では、MVCモデルになっているか否かで、カスタマイズの規模が変わってしまうことが多い。
では、そもそもMVCモデルって何?というと、以下のようにWebサイトやシステムの処理を実装する一つのフレームワークな考え方だ。実装方針といったほうが分かりやすいかもしれない。

  • M(Model)
    データの構造や処理を定義。
  • V(View)
    Webサイトの表示を行ったり、入力フォームの制御を定義。
  • C(Controller)
    Webサイトの内部処理(ビジネスロジック)を制御したり、入力内容をチェックする内部処理を定義。

 

MVCになっていないと何が問題?

最近ではプログラミング教室が増えてきたこともあり、他の教室との差別化?の観点から、座学でMVCモデルについても教えるところが増えてきている。

ところが、

なぜMVCじゃないと問題なのか?

をお伝えしている講師やスクールは少ない。

個人的な経験をもとに、なぜMVCじゃないと問題なのか?を解説すると、

  • 処理がどこに書いてあるかわからない!
  • 出力処理(View)と内部処理(Controller)が同じ関数に書かれていて、
    出力処理を少しいじっただけで、内部処理にも影響が出てしまう(≒バグる)
  • セキュリティの脆弱性を作りかねない

といった、Webサイトの保守性を損なうような弊害を生み出す可能性が出てくる。

そこで、

処理をどこに書くのか?どこで処理を受け渡すのか?

を、プログラマ達が試行錯誤した結果生まれたのが、MVCモデルという実装モデルなのだ。

逆にMVCモデルになっていないWordpressは、カスタマイズしようとすると、うまくハマるケースとハマらないケースがはっきり分かれる。

大抵のWebサイトの場合は問題ないが、高パフォーマンスを求められるサイトやECサイトをWordpressで構築すると、途端に問題が頻発する。

では、どうすればWordpressを効率的にカスタマイズできるようになるのか?については、内部構造の解説を含め、後日詳しくお伝えしていく。

関連

Tags: CMSMVCWebプログラミングWordpress
Newer メールが届かない!?迷惑メール&メール不達対策 - DNS(SPF)の設定
Older ソースコードが汚くなる?ワケとその対策

返信をキャンセルする。

コメントを残すにはログインしてください。

CAPTCHA


プロフィール

Hisashi

インフラメインのIT屋。一応某社Founder & Director & CEO。現在は時間場所に依存しない悠々自適な引きこもり生活を実現。
 
>>> 詳しいプロフィールはこちら

★Twitter☆
@freelife_man007

★LINE☆
友だち追加

Search for:
カテゴリから探す
  • ブログ
    • IT・プログラミング
      • AWS(Amazon Web Service)
      • ITインフラ・ネットワーク
      • Laravel(PHP)
      • Wordpress
      • デジタルマーケティング
      • プログラミング学習
    • 会社設立
    • 政治・社会
    • 自由気ままな移住と生活&働き方
    • 起業・スタートアップ
タグから探す
5G Amazon LightSail Amazon Web Service Instagram ITリテラシー PDCA PHP SEO SNS Web Webマーケティング Wordpress きっかけ アフィリエイト インフルエンサー インフルエンサーマーケティング エンジニア カリブ キャッシュフロー キャリア キラキラ起業女子 クアラルンプール コンテンツマーケティング コンバージョン システムエンジニア セキュリティ ソースコード デザインパターン ノマドワーカー ノービザでいける国 ビザ(査証) フリーランス フルスタックエンジニア プログラミング プログラミング学習 マレーシア マレーシア移住 リモートワーク 仕事の自由 場所の自由 時間の自由 海外移住 物販 独立 起業
Menu
  • プロフィール
  • プライバシーポリシ
  • 免責事項
About me

日本と東南アジアを往来しながら、
プログラミングしたり、
ネットワーク構築したり、
AWSをもてあそんでいます。

ブログは、気が向いたら更新。
晴耕雨読の生活を楽しんでいます。

オンラインサロンも立ち上げる予定なので、興味のある方は是非のぞいてみてください。

Ads
Twitter
Tweets by freelife_man007
Uzula Business All Rights Reserved.
keyboard_arrow_up