「開発者の英語力」を理解するために最も重要な概念は何ですか?[閉まっている]


10

4月に、英語教師のグループに対して**英語2.0-開発者の言語を理解する "と呼ばれる講演を行う予定です。目的は、2時間以内に主要な概念の背景を提供し、主要な概念を理解してもらうことです。開発者のブログとポッドキャストをよりよく理解し、開発者と話すときにより良い質問をすることができます。

理解する必要がある最も重要な概念、開発者が当たり前と思っているが、一般の人が慣れていない概念は何だと思いますか?ここにいくつかのアイデアがあります:

  • バージョン管理
  • 抽象化
  • パブ/サブ
  • プッシュとプル
  • デバッグ
  • モジュール性
  • 3層アーキテクチャ
  • クラス/オブジェクト
  • 「スパゲッティコード」対OOP
  • 例外スロー
  • クラウドソーシング
  • リファクタリング
  • クラウド
  • DRY-繰り返さないでください
  • クライアントサーバー
  • ユニットテスト
  • デザイナー/開発者

2
いくつかのWebサイト(オープンソースプロジェクトなど)を介してそれらを取得し、彼らが理解していない単語/用語を選択することは可能ですか?
Martijn Verburg、2011年

2
@Martijn:このページはそのために最適です;-)
Syg

9
スパゲッティコード対OOP?Spaghetti OOPコードと、適切に構造化された読み取り可能な非OOPコードを使用できます。
Jon Hopkins

4
なぜ英語の教師は、特に医師や物理学者とは対照的に、特にソフトウェア開発者と話したいのですか?
ケビンクライン

2
なぜ英語の先生がこれらの用語を知る必要があるのか​​尋ねてもいいですか?これらのほとんどは実装レベルの情報であり、英語の教師が利害関係者である場合、彼らはいくつかの非常に異なる用語についてもっと気にするでしょう。
リグ

回答:


7

これらの用語の定義については、ネットワーク辞書を参照してください

これにより、これまでに遭遇する可能性のあるすべての用語のほぼ完全なリストが提供されます(これは、このページで見逃されている可能性のある語句をカバーしています)。明らかに、あなたやあなたの意図する聴衆に関連するものを探してこれらを探し回る必要があるでしょう。

例として、Dの下のエントリをいくつか考えます。

Daemon
Data Architect
Database Normalization

すべて非常に便利に見えます。ただし、何百万ものエントリがあるため、いくつかのルールを適用することをお勧めします(聞いたことがある場合は、それが適用され、そうでない場合は適用されません)。

  1. 頭字語はありません(例:TCP / IPが入っている、OODが出ている)
  2. 特定のアプリケーション名はありません(例:Microsoft Wordが入っている、Kazaa-Liteが出ている)
  3. 特定の言語名はありません(例:Javaが入っている、Haskellが出ている)

それが役に立てば幸い

編集:もともとはhttp://www.networkdictionary.com/software/dictionary.phpから提供されていますが、サイトは放棄されているようです。

編集2:インターネットアーカイブにはコピーがあるようです:https : //web.archive.org/web/20120507195610/http : //www.networkdictionary.com/software/d.phpリンクをありがとう@locster


デーモンいいですね!+1

3
リンクが機能していないようです。
Jan Hudec

@JanHudec削除されたことを反映するように編集されました。恥-それは良い資料源でした。
Gary Rowe


5

数学からのいくつかの言葉:

  1. 正規。同等のアイテムのグループを代表するもの。
  2. ハッシュ。通常キャベツから作られていません。
  3. ヒューリスティック。状況を考えれば問題ないかもしれない不完全な解決策であり、それは約束しすぎない。
  4. 線形/指数。メモリまたはプロセッサの速度が入力のサイズによってどのように影響を受けるか。

誤解されることが多いいくつかの単語:

  1. プロキシ。他の人のために行動する何か。
  2. クライアントサーバー。ブラウザとWebサーバーのように。
  3. マスター/スレーブ。通常、人間の奴隷制度やS&Mとは関係ありません。
  4. デーモン。通常は人間の介入なしで実行されるプロセス。悪魔的なものは何もありません。
  5. ウィザード。手順を通じて人間を導くユーザーインターフェイス要素。

暴力的な意味合いが通常意図されていないいくつかの単語:

  1. 殺します。子猫ではなくプロセスに適用した場合。
  2. スラッシュ。展開するメモリが不足しているために何も実行されていないプロセス。
  3. バッシュ。スクリプト言語。
  4. クラッシュ。再起動可能なものであれば何でも存続します。
  5. バン。記号「!」の別名。

そして、誰もがいつ話されているのか知りたいので、先のとがった上司など、エピソードのリストを含めることは価値があるかもしれません。


2

私はそれらを追加します:

  • アジャイル
  • KISS(Keep It Simple Stupid)
  • リファクタリング
  • アプリケーションプログラミングインターフェース

彼らはブログやprogrammers.seで十分頻繁に放り出されます。私はKISSから育ちました。(バンドについてはお話ししません...)
Berin Loritsch

1
  • YAGNI-あなたはそれを必要としないでしょう
  • スクラム
  • 接吻
  • アヤックス
  • カプセル化
  • 継承
  • ウェブサービス
  • 部品

1

言語の正確さについて話したいと思うかもしれません。ソフトウェア開発は必ずしも私たちをペダントに変えると冗談を言うことがあります。それは私たちがそれを楽しんでいるからではなく、プログラミングをしているときに非常に正確でなければならないことが多いからです。ドメイン固有の言語を使用すると、迅速かつ正確であることができるため、これは大量の専門用語につながります。


+1これは本当です。質問者が本当に「推奨」を意味するときに、Xが「必須」か「必要」かを尋ねるすべての質問をここで見てください。正確に質問することができない場合、私たちの分野には正確さが要求されるため、それらは不利になります。
GrandmasterB 2014年

1

「ソースがコンマを使用しなかったときに、文字列リテラル引用符にコンマを入れることを拒否する」など、一部のプログラマーで一般的な句読点の非標準的な使用法に対処する場合は、それが好きです。<-----ブライアンは言った。

[]かっこ、、および口ひげ(または腰の混雑が少ない場合は中かっこ)の使用{}も同様に治療できます。

3-再帰は指摘するのが楽しいかもしれません。ポイント3を参照してください。

楽しい休憩のために、猛禽類(ありがとう、XKCD)からモンティパイソンまで、開発者コミュニティの多くに共通する純粋に文化的なインスピレーションを指摘して、初期の共通の理由のいくつかに戻るポインタを示すのは楽しいかもしれません。 IRC、掲示板/フォーラム、およびUsenetのモダンコミュニティを設立。


0

SDLCは、カバーする別のトピックに対する私の提案です。

カバーする価値のある他のいくつかの用語:

  • 応用
  • システム
  • プログラム
  • 必要条件

あなたが技術者の外に出ると、これらの用語のいくつかは他の意味を帯びることがあります。仕事に応募することは、アプリケーションを採用することを意味する可能性があるため、一部の人々はアプリケーションの観点からソフトウェアを考えないかもしれません。同様に、一部の人々がプログラムとして見るかもしれないレクリエーション活動と政府のイニシアチブがあります。したがって、ここで特定の例を示すために、MicrosoftのプログラムマネージャーとYMCAのプログラムマネージャーの間には違いがあるかもしれません。

事前に参加者からアイデアを募り、話の一部をもう少しインタラクティブにすることができるかどうかを知りたくなります。これは、あなたがすでにこれを検討しているかどうかわからない、トーク自体のアイデアにすぎません。


0

全員が家に持ち帰れるように、参照カード/チートシートを含めます。多くのものが新しい場合、それらすべてを思い出すことは困難になります。

このテーマについては、「デザインパターン」を一般的な概念として間違いなく追加します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.