fc2ブログ

ツクールのプラグインに正しい記述方法は必要?

私は正直、プラグイン制作をしてきた中でJavaScriptの記述方法の勉強はかなり疎かにしてきました。

記述方法とは、ざっくりいうとコードの書き方です。
ある程度周囲の人と同じルールでコードを書くことで、競合対策しやすくしたり、後から修正を加えやすいように気遣った書き方ってことですね。

ちょっと前までツクール公式フォーラムでも話題になってました。
最初のうちは
 「プロの方がアマチュアの私たちにプロの知識を分けてくれている」
くらいのものでした。
この頃書かれていた内容は、私にとっても助かるもので本当にありがたかったです。

ですが段々と
 「プログラミングする上で正しい記述方法をとるのは当たり前」
みたいに、押し付けるような意見が増えてきたのを覚えてます。
私は「本当にそうなのかな?」とは思いつつも、変に意見のぶつけ合いもしたくなかったので、黙ってフォーラムを見に行くのをやめました。
もう何か月もフォーラム見てないし、行くこともないでしょう。

でも人に言うことはなくても、自分のブログに書き留めとくくらいはしておこうと思ったので、今回は記述方法について記事にしてみます。

記述方法は学んだほうがいい

まず、変に誤解されないために先に書いておきます。

記述方法は勉強したほうがいいです。

記述の勉強は後回しにするほど苦労します。
私は後回しにしてきたおかげで、だいぶ苦労しました。

ただ、だいぶ苦労した身でありながら言います。

最優先でやる必要はないです。

なぜなら、それより優先すべきことがあるからです。

使ってもらうが最優先

そもそも、プラグイン製作者をプログラマーのくくりに入れてることが間違いだと私は思ってます。

作ったプラグインを公開するとき、あなたなら何を売りにしますか?

A. 「コードがきれいで競合が起きりにくく、後から対応がしやすいプラグインです。」
B. 「他のプラグインではできないことができます。」


当然Bでしょう。
だって、利用する人がそっちを選ぶわけだから。

競合の起きりにくさは売りにはなりません。
なぜなら利用者は
 「競合起きたら製作者さんに言って対処してもらえばいい」
くらいにしか思ってないからです。

プラグイン製作者というのはどちらかといえばシステムエンジニアです。
プログラミングはその一部に過ぎません。
そもそもプログラマーは案件を引き受けてから要望にあったものを作るのに対し、プラグイン製作者は作ってからそれを宣伝するという違いがあります。
見てもらいたいのは中身ではなく、機能です。

プラグインを使ってもらいたくて公開しているのであれば、使ってもらうことを最優先にすべきです。
もし、
 「他のプラグイン製作者さんの手本になるようなプラグインを公開したい」
と思っているのであれば、コードのきれいさを最優先してください。
公式プラグイン製作者とかね)

プロとアマチュアの世界は違う

仕事でプログラミングをしているのであれば、正しい記述は必須ともいえるものです。

だからといって、それをそのままアマチュアにも当てはめるのは間違いです。

そもそもルールがないのがアマチュアの世界なのに、ルールを敷こうとするのは無理があります。

モラルはあってもルールはないです。
なので、モラルとして「やった方がいい」くらいの意見が限度だと私は思います。

そもそもプロの世界でなぜ正しい記述方法が必要なのか考える

プロの世界で正しい記述法が求められるのは、だいたい以下のような感じです。
  1. 共同開発
  2. デバッグ等の改修
  3. 後任への引継ぎ
さて、このうちツクールのプラグイン製作者にとって必須のものはどれか?

1.共同開発
いるならやった方がいいですね。
でもたいてい一人でやってる方が多いと思います。

2.デバッグ等の改修
一人でやっているのであれば、ここで苦労するのも自分だけです。
それでよければ無視できます。

ただ、プラグインには競合問題というものがあります。
これについてはちょっと長くなるので、別項目で書きます。

3.後任への引継ぎ
自分が世に放ったものは、いずれ誰かが引き継ぐ可能性があります。
これはプロの世界では意識しなければいけないことです。

アマチュアの世界でもありうる話です。
実際、私がMZを購入するか悩んでた時、私のプラグインをMZに移植しようとしている方がいました。

ただ、私がその人たちをケアしなければならない理由はありません。
プロの世界で例えるなら、「社内の人間でもなければクライアントでもない無関係な人たちでもコードいじれるように考えてプログラミングしろ」 と言われているようなものです。
「・・・いや、知らんがな」

競合も一応無視はできる

結局、プラグイン製作者がコードのきれいさを気にする理由は、競合が起きたときに誰が対応するかわからないからというのが一番ということになります。

ただこれもMITライセンスがあれば無視できます。

MITライセンスには「プラグインによって問題が起きても一切責任を負わない」とあります。
この「問題」には当然、競合も含まれます。

そもそも競合が起こるためには前提条件があります。
それは使ってもらうことです。
プラグインを使ってもらわなければ、競合なんて起こりえません。

『競合対策』より『使ってもらえるようにする』の優先度は必ず上です。
そうなる以上、記述方法の勉強が先になることはありません。

とは言っても・・・

ここまで書いたのは極論です。
アマチュアなんて、細かいこと気にせず適当にやりたい人の集まりです。

MITライセンスを盾にするのはあくまで最終手段。
「ああすべきだこうすべきだ」とルールを押し付けてくる人に対して、「いやMITライセンスあるから」とルールで返答するための手段です。

やっぱり不具合や競合にはできる限りの対応がしたいです。

でもそれは責任があるからやるわけではありません。
対応したほうが使ってもらえる確率が上がるからやるんです。
そこもプロとアマチュアの違いですね。

ある程度の言語化は必要かも?

アマチュアは適当にやっている分、自分の意見を言語化することをあまりしません。
こうやって記事にしたのも、ほとんどのアマチュアが自分の意見を言語化していないと思ったからです。

プロの方は自分の意見を言語化できます。
いざ細かいルールの話になれば、何の準備もしていないアマチュアは言い返せません。
「だからプロの意見だけがまかり通るのだな」と、当時のフォーラムを見て感じました。

アマチュアだしお金をもらってないんだから、責任を持ってやる必要はありません。
プラグイン利用者を満足させるために、プラグインを作っているんです。
ただ、もしものために反論できる程度には、自分のルールを言語化しておくと良いかもしれません。

スポンサーサイト



2022-05-08 : MV&MZプラグイン : コメント : 0 : トラックバック : 0 :
コメントの投稿
非公開コメント

« next  ホーム  prev »

プロフィール

木星ペンギン

Author:木星ペンギン
ほぼツクールのことばかり書いてます。
名前は↑から取りました。
木製ですが木星です。
トカゲは関係ありません。

ゲーム

  • 箱庭の勇者たち(体験版)
  • ぼくらの大革命!

メールフォーム

wood_penguin@yahoo.co.jp

名前:
メール:
件名:
本文:

月別アーカイブ

広告

寄付(Donate)