web-dev-qa-db-ja.com

ソフトウェアの命名と一意性

ソフトウェアに名前を付けることになると、製品(アプリケーションかライブラリかに関係なく)、何をしますか?

誰かの小さな趣味のプロジェクトであろうと、それを販売している会社であろうと、他のソフトウェアでまだ採用されていない名前を選択することは不可能に思えます。フェニックスが他のソフトウェア製品名と衝突したため、FirefoxがFirefoxになることは誰もが知っています。

名前はどの程度一意である必要がありますか?フェニックスは、コンピューターのBIOSの名前でした-Webブラウザーにほとんど似ていませんね。そして反例として、オペレーティングシステムのFedoraとリポジトリソフトウェアのFedoraが共存しています。別の反例は、JavaScriptフレームワークのmidoriとWebブラウザのmidoriです。

アプリケーションまたはライブラリの名前が他の人に取られないようにするためにどのような手順を実行しますか。同じ名前の他のものを探す場合、製品の種類に関してどのくらい遠くを見ますか?

20
thomasrutter

名前の一意性は、次の3つの理由で重要です。

  • 同じまたは類似の市場にすでに存在する製品の名前をとった場合、一部の国ではこの製品会社はあなたを訴えることができますです。例:Photoshopという名前のグラフィック編集プログラムを作成します。

  • すでに広く使用されている名前を使用すると、Googleまたは他の検索エンジンの結果の最初の10件になることはほとんどできません。例:アプリケーションを呼び出すAgile

  • 2つの製品またはテクノロジーが同じ名前を共有する場合、ユーザーを混乱させる可能性があります。例:多くの顧客(技術的な背景はほとんどありません)が、ブラウザでのWebサイトの対話性について話すときにJavaコードを書くように依頼します)。

これらの3つの理由は、すべての状況で名前の一意性を気にする必要がないであることを意味します。代わりに:

  • 名前がコンカレントで使用されていないことを確認してください。

  • 選択する前に、製品に使用する単語を検索して、Googleで十分な可視性があることを確認してください。例:製品をAgileと呼ぶのは良い考えではありません。製品の呼び出しAgile Mediaworksは問題ありません(この名前が愚かでも)。この名前はGoogleにもBingにも結果がないためです。

  • 同じ名前がすでに使用されている場合でも、ユーザーを混乱させないようにしてください。 Java/JavaScriptは紛らわしいです。 ASP/ASP.NETも。

さて、名前を選ぶには?ここにいくつかのアドバイスがあります:

  • 製品名にブランド/会社の名前を使用。ただし、会社名が長すぎる場合は、行わないでください。例:Microsoft Word 結構です。 Pelican Design & Development Criollo System Centerは醜いです。

  • 一般的な名前を使用を恐れないでください。ただし、製品の内容を表す直接的な用語は使用しないでください。例:Microsoft Excel 結構です。 Microsoft Spreadsheet Application ではありません。

  • あなたができることを忘れないでくださいもしそれらがうまく省略できるなら長い名前を使用してください(検索可能な省略形で)。 Windows Presentation Foundation、別名。 WPFは問題ありません。

  • ファンシーな名前を使用する魔法の生き物の名前のように(例:Firefox)、または特別な用語(私の会社では馬の品種をよく使用します:CampolinaCriollo System Centerなど)、または神話の言葉(例:私たちのプロジェクトの1つはSyrinxと呼ばれていました)など.

  • 良さそうであれば、自分の名前を発明するを使用することもできます。ただし、世界中で販売される製品を作成する場合は注意してください。英語でよく聞こえる単語の中には、他の言語にはないものがあります。ちなみに、これは一般的な言葉にも当てはまります。例:Bluewaterブランドの名前は、ロシア語の「嘔吐」という言葉と同じように発音されます。

結論として、一般的な名前、神話の名前、IT以外の特定の分野で使用されている名前、ブランド名が含まれている名前、よく省略されている化合物名など、幅広い選択肢があるようです。以前に存在しなかった名前を選択することを気にする必要はありません。あなたが注意しなければならない唯一の考えは、コンカレントがすでに使用している名前をとらないこと、簡単に検索できるものを選択すること、そしてユーザーを混乱させないことです。

16

会社名と(望ましい)製品名の組み合わせを使用します。

$ CompanyName $ ProductName

または、一般的な単語の使用をやめ、より創造的になる;)

2
user2567

援助についてはproductionoss.orgを参照してください。ただし、簡単に言うと、プロジェクトが実際に何をしているのかを説明する名前をデフォルトに戻すことができます。 OpenOfficeはこの典型的な例です。

あなたの名前が薄い空気から引き出されたものでなければならないなら、あなたの使命声明と説明が目立つことを確認してください。

.net、.org、または.comドメインを利用できる名前を見つけてください。ほとんどの場合、まったく異なるフィールドにいる場合は、別の「ビジネス」と同じ名前を使用することが実際に許可されています。

2
Martijn Verburg

私の見解では、印象的な「ブランド」またはその可能性のある名前を選択する必要があります。あなたはあまりにも一般的なものを望んでおらず、明らかに他の人のつま先を名前で踏みたくありませんが、IMOは、何もしない奇妙な名前を持つ "Web 2.0"の方法を使いたくありません。あなたの製品で(今はそれが流行しているように機能すると思いますが)、たとえば、タスクアプリに「Bluefrog」のような奇妙な名前を付けます。同様)

私は実際にアプリを伝える標準の命名規則に従うことを好むので、会話でそれを育てることができます。ばかげているように聞こえることなく、名前を付けて創造的にすることができます。たとえば、連絡先管理アプリを実行している場合、「Virtudex」または「Digidex」(Virtual/Digital + Rolodex-非常に基本的な例ではあまり読みすぎない)と呼んでもかまいませんが、「究極の連絡先マネージャー」というのは、それが一般的で大げさなためです。

2
Wayne Molina

アプリケーション名を一意にするためにできることはほとんどありません。最も明白な方法は、実行可能ファイルに本当に長い名前を使用することですが、それが行われることはほとんどありません。

ライブラリは、一意にするのがはるかに簡単です。ピエールが言ったように、会社名と製品名の組み合わせを使用できます。 CompanyName :: ProductRange :: ProductName :: CodeNamespaceLevel1:Level2など、必要に応じてさらに先に進むことができます。

商用製品の場合、オープンスペースプロジェクトと比較して、名前が衝突する可能性は低くなります。あまり気にする必要はないと思います。

0
DPD