web-dev-qa-db-ja.com

Perl、Python、Rubyがアプリケーション言語としてC ++、C#またはJavaを使用している場合、Ruby $ ===?

C++、C#、Java開発者が動的言語を学びたいのはなぜだろうか?

同社が主要な開発言語をC++/C#/ Javaから動的言語に切り替えないと仮定すると、動的言語にはどのような用途がありますか?

動的言語では、数年間使用してきた静的言語よりも、わずか数日間の学習でより速く、またはより良いヘルパータスクを実行できますか?

更新

最初のいくつかの応答を見た後、2つの問題があることは明らかです。私の主な関心は、費用として雇用主に正当化されるものです。つまり、私は雇用主が動的言語の学習に資金を提供する正当な理由を探しています。従業員がより広い視野を持っているという明白なことは別として、雇用主は通常、「本当の」利益を探しています。

66
szabgab

多くの場合、開発中のメインソフトウェアの一部ではない簡単なタスクがいくつか発生します。時々、タスクは1回だけです。つまり、このファイルをデータベースと比較して、違いを教えてください。 Perl/Ruby/Pythonでのテキスト解析は、JavaやC#よりもはるかに簡単です(これは、正規表現を使用する方がはるかに簡単だからです)。 Perl/Ruby/Python(またはvbscript cringeを使用してテキストファイルを解析し、データベースにロードするのにJava/C#プログラムを作成するよりもはるかに時間がかかりません。それを行うか、手でそれを行う。

また、ほとんどの動的言語はテキストを簡単に解析できるため、コード生成に最適です。最終プロジェクトはC#/ Java/Transact SQLである必要がありますが、100回カットアンドペーストしてエラーを見つけ、さらに100回カットアンドペーストする代わりに、コードジェネレーターを使用する方が簡単です(常にではありません)。

仕事中の最近の例として、ある会計システムから会計システムにデータを取り込む必要があります。システムにはインポート形式がありますが、古いシステムには完全に異なる形式がありました(いくつかの条件を一致させる必要がありましたが、幅は固定されていました)。タスクは、データを何度も移行するプログラムを作成することではありません。データをシステムに押し込んでから、そこに保持します。そのため、私たちはC#とSQL Serverのショップですが、Pythonを使用して、データをアプリケーションでインポートできる形式に変換しました。最終的には、私がpythonを使用したかどうかは問題ではなく、データがシステム内にあることが重要です。私の上司はとても感銘を受けました。

私がよく使われる動的言語を見るのはテストです。同等のJavaプログラムを作成するよりも、WebサービスにリンクしてデータをスローするPython/Perl/Rubyプログラムを作成する方がはるかに簡単です。 pythonを使用して、コマンドラインプログラムにヒットしたり、大量の(しかしまだ有効な)テストデータを生成したりすることもできます。

動的言語が重要なもう1つのことは、コード生成です。 C#/ C++/Javaコードの作成。以下に例を示します。

私がよく目にする最初のコード生成タスクは、動的言語を使用してシステムの定数を維持する人々です。多数の列挙を手動でコーディングする代わりに、動的言語を使用して、テキストファイルをかなり簡単に解析し、列挙を使用してJava/C#コードを作成できます。

SQLはまったく別のボールゲームですが、多くの場合、機能を実行する代わりに100回カットアンドペーストすることでパフォーマンスが向上します(実行計画のキャッシュや関数に複雑なロジックを配置することにより、行ではなく行ごとに移動するため)セット)。実際、テーブル定義を使用して特定のストアドプロシージャを自動的に作成すると非常に便利です。

コードジェネレーターを購入することをお勧めします。しかし、あなたがそうしなくても、カット/ペーストに時間を費やすのはもっと楽しいのでしょうか、それともPerl/Python/Rubyスクリプトを一度作成してからコードを生成させるのがもっと楽しいのでしょうか?何かをコード化するのに数時間かかるが、コードジェネレーターを作成するのに時間がかからない場合は、時間とお金を節約してからそれを使用しても。コードジェネレーターを作成するのに、コードを1回渡すよりも時間がかかりますが、コードを複数回更新する必要があることがわかっている場合は、それでも意味があります。コードの作成に2時間、ジェネレーターの実行に4時間かかりますが、ジェネレーターを作成するよりも明らかに5〜6回、同等の作業をコード化する必要があることがわかります。

また、動的言語を使用すると、Java/C#/ C/C++よりも簡単なことがあります。特に、正規表現が思い浮かびます。 Perlで正規表現の使用を開始し、その値を認識した場合、Java正規表現ライブラリを使用し始めたことがあります。もしそうなら、何か他のものがあるかもしれません。

動的言語に最適なタスクの最後の例を1つ残しておきます。私の同僚は、ファイルでいっぱいのディレクトリを取り、さまざまな顧客のためにさまざまなCDにそれらを書き込む必要がありました。少数の顧客がいましたが、多くのファイルがあり、それらを調べてそれらが何であるかを確認する必要がありました。彼は手作業でこのタスクを実行しました。Java/ C#プログラムは時間を節約しますが、一時的にはすべての開発オーバーヘッドがあったため、それだけの価値はありません。しかし、Perl/Python/Rubyで何かをまとめることはおそらく価値があったでしょう。彼はそれを数時間費やしました。 Pythonスクリプトを作成して各ファイルを検査し、どの顧客にアクセスするかを一致させてから、ファイルを適切な場所に移動するのに1つもかかりませんでした。標準的な仕事。しかし、タスクは1回限りでした。自分でやるのが良いのか、Java/C#でタスクを実行するのにより長い時間を費やすのか、Python/Perl/Rubyでそれを行うのにはるかに短い時間を費やす方がよいでしょうか。 CまたはC++を使用している場合、CまたはC++でのプログラミングの余分な懸念(ポインター、配列境界チェックなしなど)により、ポイントはさらに劇的になります。

81
Cervo

別の言語を学ぶためにアメリカ英語を話す人にそれをどのように使用するか尋ねることによって、あなたの質問に頭を向けさせてください。

私たちが話す言語(およびプログラムする言語)は、私たちの考え方を伝えます。これは、c ++対javascript対LISPなどの基本レベルで、またはRubyコンストラクトが「実際の仕事」のソリューションにユーレカの瞬間を提供する実装レベルで発生する可能性があります。

あなたの本当の仕事について言えば、市場が南下し、雇用主があなたを「適切な規模」に決めた場合、彼はあなたの限られた言語ではなく数十の言語でソフトウェアを書いているので、柔軟な人に対してどのように積み重なると思いますか暴露?すべてが平等であるため、答えは明確だと思います。

最後に、あなたはプログラミングが好きだから生計を立てます...

21
Pete Michaud

誰もまだこれについて言及していないと思います。新しい言語を学ぶのは楽しいことです!確かにそれは何か新しいことを試すのに十分な理由です。

14
epochwolf

私は主にJavaとC#でプログラムしますが、動的言語(Ruby/Perl)を使用して、スムーズな展開、OSタスクの開始、自動レポート、ログ解析などをサポートします。

RubyまたはPerlを少し学習して実験した後、データ形式を変更したり、ログから情報を取得したりできる正規表現操作スクリプトを作成できるはずです。小さなRuby/Perlスクリプトの例これは、非常に大きなログファイルを解析し、人間が読める形式またはcsv形式で関心のあるいくつかのイベントのみをレポートするスクリプトです。

また、さまざまなプログラミング言語の経験があることは、Java、C++、C#などのより構造化された言語の問題に取り組む新しい方法を考えるのに役立ちます。

9
Alex B

PerlまたはRubyを学ぶ大きな理由の1つは、繰り返し行う必要のある複雑なタスクを自動化できるようにすることです。

または、ログファイルの内容を分析する必要があり、grep、sedなどを使用して利用できる以上の変更が必要な場合.

また、他の言語を使用して、例えば「セットアップコスト」の少ないRubyを使用すると、アイデアをC++、Javaなどで実装する前にすばやくプロトタイプ化できます。

HTH

乾杯、

ロブ

7
Rob Wells

この会社で永遠に働くことを期待していますか?就職市場に出かけているのであれば、おそらく将来の雇用主が Pythonパラドックス に気付くでしょう。

5
Chris Upchurch

パックのある場所で優れたホッケー選手がプレイします。パックのある場所で素晴らしいホッケー選手がプレイします。-ウェイン・グレツキー

私たちの業界は常に変化しています。永遠に主流になる言語はありません。私にとってJava、C++ 、. Netは、パックが今ある場所です。そして、Python、Ruby、PerlはPuckが置かれる場所です。あなたが良いか偉大になりたいかどうかを自分で決めてください!

5
liangzan

ポール・グラハムは数年前になぜPythonプログラマーが良くなったJavaプログラマー。( http://www.paulgraham.com/ pypar.html

基本的に、新しい言語が会社の現在の方法論に関連しているかどうかに関係なく、新しい言語を学ぶことは新しいアイデアを学ぶことを意味します。 「ビジネスクラス」とは見なされない言語を喜んで習得する人は、給与を稼ぐだけでなく、プログラミングに興味があることを意味します。

ポールのサイトを引用するには:

そして、人々は学ぶことはありませんPythonそれは彼らに仕事を与えるからです。彼らは本当にプログラミングが好きで、すでに知っている言語に満足していないので、彼らはそれを学びます。

これにより、彼らはまさに企業が雇いたいプログラマーになります。したがって、より良い名前がないため、Python paradox:企業が比較的難解な言語でソフトウェアを作成することを選択した場合、より良いプログラマを雇うことができますそして、彼らはそれを学ぶのに十分な思いやりのある人だけを引き付けるからです。そして、プログラマーにとって逆説はさらに顕著です:あなたが良い仕事をしたいなら、学ぶべき言語は人々が単に学ぶことのない言語です就職する。

雇用主が新しい言語の学習費用を支払おうとする場合、学習することを志願した人々(必須のクラスではないと仮定した場合)がすでに「ファーストトラック」に参加している人々と同じである可能性があります。

5
crystalattice

Pythonを初めて学んだとき、Javaショップで働いていました。たまに、Pythonプログラムよりも迅速なJavaスクリプトを使用する方がはるかに簡単な、深刻なテキスト処理タスクを実行する必要がありました。たとえば、複雑なCSVファイルを解析し、その行のどれがOracleデータベースの行に対応しているかを把握する必要がある場合、JavaよりもPythonの方がはるかに簡単でした。

それ以上に、Pythonを学ぶことで、はるかに優れたJavaプログラマになることがわかりました。別の言語で同じ概念の多くを学んだので、私はそれらの概念をよりよく理解していると感じています。 PythonがJavaよりも簡単になる理由については、次の質問をご覧ください。 Java-> Python?

4
Eli Courtwright

編集:元の質問の更新を読む前にこれを書きました。更新された質問に対するより良い回答については、他の回答をご覧ください。西側で最速の銃であることに対する警告としてこれをそのままにします=)

10年以上前、私がコンピューターのやり方を学んでいたとき、ひげを持つ老人はCとC++が業界のツールである方法を説明しました。 Pascalを使用した人はいませんでした。

そしてもちろん、誰もJavaと呼ばれるひどく遅いいことに言及する人もいませんそれは深刻なビジネスのためのツールではありません。

そう。あの上記のストーリーの言語を置き換えると、おそらく将来を予測できます。おそらくできません。ポイントは、Javaはこれまでにない最後のプログラミング言語であり、雇用主も切り替える可能性が高いでしょう。将来は1日24時間課金されます。準備してください。

新しい言語を学ぶことはあなたにとって良いことです。また、場合によっては長い間自慢する権利を与えることができます。私の最初の大学のコースはSchemeでした。だから、人々が新しい言語du jourについて話すとき、私の応答は「一流の関数?それは前世紀だ」というようなものです。

そしてもちろん、高級言語ではその他の処理が完了しましたが得られます。

3
Antti Rasinen

更新された質問への回答に向けて、それは鶏/卵の問題です。費用を正当化する最良の方法は、どこかでコストを削減する方法を示すことです。そのため、何らかの機能的なプロトタイプを構築するために何かを最初に学ぶために余分な時間をかける必要があるかもしれません。

上司に「ねえ、このことをやったので、これで時間を節約できました(または、これだけで十分です)、みんながこれをどれだけ節約できるか想像してみてください」のようなデモを見せてください。

そして、彼らが同意した後、それが他の技術である方法と、より多くのトレーニングを受けるための費用の価値があること、そしてそれをより良くする方法について他の人のためのトレーニングを説明します。

2
John Gardner

新しい言語を学ぶことは長期的なプロセスです。数日のうちに、基本を学習します、はい。だが!おそらくご存知のように、あらゆる言語の実際の実用性は、標準ライブラリと他の利用可能なコンポーネントに関係しています。を効率的に使用する方法を学ぶには、多くの実践的な経験が必要です。

おそらく、当面の短期的なメリットは、開発者がPython/Perl/Ruby -hammerを必要とする釘を区別することを学ぶことです。そして、もし彼らが良ければ、彼らはさらに勉強し(おそらくオンラインで!)、本当の専門家になることができます。

長期的なメリットは簡単に想像できます。

  1. 従業員はより良い開発者になります。開発者の向上=>品質の向上。私たちは最近、知識経済に住んでいます。すでにあなたのために働いている脳に投資するのが賢明です。

  2. 次の大きな言語が出現したときに適応するのは簡単です。 NBLには、今日のスクリプト言語に存在する多くの機能(ファーストクラス関数、クロージャー、ストリーム/ジェネレーターなど)が備わっている可能性が非常に高いです。

  3. 新しい市場の可能性とより迅速な対応能力。 Pythonを書いていない場合でも、他の人はです。あなたのクライアント?プロジェクト内の別のベンダー?おそらく、重要なコンポーネントは他の言語で書かれたのでしょうか?コードを理解し、それとインターフェースを取ることができる人がいなければ、お金と時間がかかります。

  4. 募集。あなたの会社が新しい興味深いものを人々に教えるという評判を持っているなら、トップの人々を採用するのは簡単です。 EveryoneはJava/C#/ C++を実行しています。雇用市場で差別化するのにあまり効果的な方法ではありません。

2
Antti Rasinen

JVMで動的言語(da-vinci vmなど)を実行することに焦点が当てられ、JVMで実行される動的言語(JRuby、Grovy、Jython)の数が増えていることを考えると、ユースケースは増えていると思います。私が本当におもしろいと思ったシナリオのいくつかは

  1. プロトタイピング-RoRまたはGrailsを使用して、標準のアプリサーバーで実行でき、(おそらく)既存のサービスなどを再利用できるという利点を持つクイックプロトタイプを構築します。

  2. テスト-動的言語での正しいユニットテストがはるかに高速

  3. パフォーマンス/自動化テストスクリプト-これらのツールの一部は、独自のスクリプト言語ではなく、標準の動的言語を使用してテストスクリプトを記述できるようになり始めています。副次的な利点は、すでに作成したユニットテストコードを再利用できることです。

1
mataal

動的言語の主な利点は次のように要約できると思います

  1. 急速な発展
  2. 接着剤

設計コードテストのサイクル時間が短いため、動的言語はプロトタイピング、ツール、および迅速で汚れた1回限りのスクリプトに最適です。私見、後者2つはプログラマの生産性に大きな影響を与える可能性があります。自分のためにツールを作るのではなく、多くの人が物事を手作業で追うのを驚かせます。ツールボックスにPerlのようなものがないためだと思います。

ほぼすべてのもの(他のプログラムまたは言語、データベースなど)とのインターフェース機能により、既存の作業を簡単に再利用したり、手動で行う必要のあるタスクを自動化したりすることができます。

1
Michael Carman

別の言語、特に動的に型付けされた言語を学ぶことで、他の言語について学ぶことができ、全体的に優れたプログラマーになることがよくわかりました。たとえば、Rubyを学ぶことで、オブジェクト指向プログラミングをJavaとは逆に、またその逆に)学ぶことができます。単一の言語。それは、あなたが働いている会社/クライアントにとってより価値のあるものになります。

1
Mike Farmer

Rubyで遊ぶほど、C#の理解が深まることがわかりました。

1)これらの言語を切り替えると、それぞれの言語が解決しようとする問題の背後にある独自の構造と哲学を持っていることがわかります。これは、ジョブに適したツールまたは問題の領域を見つけるときに役立ちます。

2)コンパイラの役割(または一部の言語のインタープリター)がより顕著になります。 Rubyの型システムが.Net/C#システムと異なるのはなぜですか?これらはそれぞれどのような問題を解決しますか?下位レベルでコンパイラの構造と言語への影響を理解していることに気付くでしょう。

3)RubyとC#を切り替えると、本当に理解しやすくなりましたデザインパターンより良いです。C#などの言語で、次にRuby:コンパイラーのセレモニーから特定のパターンの哲学を見るのに役立ちました。

4)別のコミュニティ。 C#、Java、Ruby、Pythonなどには、さまざまなコミュニティがあり、それぞれの能力を活用できます。クラフトを次のレベルに引き上げるのに最適な方法です。

5)最後になりましたが、新しい言語は楽しいからです:)

1
Jimmy Lyke

LISPやPerl(Mooseを参照)のような柔軟なOOPシステムで何かを学べば、ソフトウェアエンジニアリングに関する考えをよりよく理解できるようになります。理想的には、すべての言語に独自の側面がありますプログラマーとしての能力を強化、拡張、および成長させるCLOSまたはその他の手法)。

1
jshirley

このtheadへの答えをチェックしてください:

https://stackoverflow.com/questions/76364/what-is-the-single-most-effective-thing-you-did-to-improve-your-programming-ski#84112

新しい言語を学ぶことは、心を開いて、物事の新しい方法を学ぶことです。

1
Jean

これがあなたが探しているものかどうかはわかりませんが、私は主なアプリケーションをJavaで働いていますが、pythonバックアップソフトウェア、データを操作する一時スクリプト、結果をプッシュアウトする。pythonで座って、クラスやものを台無しにするよりも簡単なスクリプトを書く方が簡単な場合があるJava。

一時的なスクリプトにこだわることはありませんが、多くの設計時間を無駄にする必要はありません。

そして私は怠け者ですが、もちろんできる限り多くを学び、他の言語にどんな機能が存在するかを見るのは良いことです。より多くを知ることは、将来のキャリアの変化であなたを傷つけることはありません:)

1
Arthur Thomas

開発者としての視野を広げることがすべてです。厳密に型指定された言語のみに限定すると、最高のプログラマーになれない可能性があります。

タスクに関しては、Python/Lua/Ruby/Perlは、いくつかのファイルを見つけて名前を変更するなど、小さな単純なタスクに最適です。また、シンプルなアプリを迅速に開発するためのフレームワーク(例:Rails、Django、Lua for Windows)と組み合わせると優れた機能を発揮します。地獄、37SignalsはRuby on Railsでシンプルかつ非常に便利なアプリを作成することに基づいています。

1
Ed Schwehm

それらは、メイン言語で同じものを開発するよりも速く(そして潜在的に汚い)修正のためにメイン言語のギャップを埋める「クイックハック」に役立ちます。例:大きなテキストファイルを処理して、メールアドレスのすべてのインスタンスを別のインスタンスに置き換えるPerlの単純なスクリプトは、10分の範囲でかかる時間でささいなことです。コンソールアプリを一緒にハックしてメイン言語で同じことを行うには、その倍数がかかります。

また、追加の言語に身をさらすと能力が広がり、異なる言語の観点から問題を攻撃することを学ぶことは、言語自体と同じくらい価値があるという利点もあります。

最後に、スクリプト言語は拡張の領域で非常に役立ちます。例としてLUAを取り上げます。非常に少ないオーバーヘッドでluaインタープリターをアプリにボルトすることができ、アプリ全体の再構築を必要とせずにエンドユーザーに公開したり、迅速に変更および配布できる豊富なスクリプト機能を作成できるようになりました。これは、World of Warcraftをはじめとする多くのゲームで大きな効果を発揮します。

1
Wolfwyrd

ハンマーしか持っていない場合、すべての問題は釘のように見え始めます。

ドライバーやペンチを使用すると、複雑な問題が簡単になる場合があります。

請負業者や大工などに「ハンマーをすでに持っているのに、なぜドライバーを使うことを学ぶのか」と尋ねる人はいません。本当に優れた請負業者/大工はたくさんのツールを持っており、それらをうまく使う方法を知っています。すべてのプログラマは同じことを行い、新しいツールを使用し、それらをうまく使用することを学ぶ必要があります。

しかし、電動工具を使用する前に、ショップの安全性について話しましょう。必ず電動工具に付属しているすべての安全規則を読み、理解し、従ってください。そうすることで、けがの危険性が大幅に減少します。そして、これを覚えておいてください:これらを着用することよりも重要なルールはありません:安全メガネ-ノルム

1
John Gardner

個人的には、Javaアプリで作業していますが、いくつかのサポートスクリプトについてはPerlがなければ手に入れることができませんでした。

私が指しているデータベースをすばやく反転させるスクリプト、ビルドスクリプトを実行するスクリプト、データをスクレイプして内容を比較するスクリプトがあります。

確かに私はcouldすべてをJavaで、または多分Shellスクリプト(私もそれらのいくつかを持っています)で行いますが、クラスをコンパイルしたい(クラスパスが正しく設定されていることを確認するなど)早くて汚いものが必要です。スクリプト言語を知っていると、これらの退屈な/反復的な手動タスクの90%を削除できます。

1
shelfoo

Rubyを学びたいと雇用主に言わないでください。彼に、Webフレームワーク技術の最新技術について学びたいと言ってください。最もホットなものはDjangoとRuby on Railsです。

1
ykaganovich

動的言語は、アイデアのプロトタイプ作成に最適です。多くの場合、パフォーマンス上の理由から、永続的なソリューションや製品では機能しません。 ただし、Pythonのような言語を使用すると、標準のC/C++/Javaを内部に埋め込むことができ、その逆も可能です。本当に重要な部分を高速化できますが、言語。

...そして、あなたは両方の世界の最高を得る。より多くの人々がこれらの言語を学ぶ必要があるという理由でこれを正当化する必要がある場合、同じソフトウェアをより速く開発でき、ソリューションがどれほど堅牢であるかを指摘するだけです(動的言語の問題のデバッグ/修正は私の経験にあるため、かなり簡単です!)。

0
Jon Cage

テスト。

多くの場合、動的言語を使用してC#/ Javaアプリケーションをテストする方が迅速かつ簡単です。インタラクティブプロンプトで探索的テストを実行し、自動化されたテストスクリプトをすばやく作成できます。

0
Ryan

また、Scalaのような関数型プログラミング言語の学習も検討する必要があります。簡潔な構文やクロージャーなどの強力な機能など、Rubyの多くの利点があります。しかし、それはJavaクラスファイルにコンパイルされ、Javaスタックにシームレスに統合されます。これにより、雇用主が飲み込みやすくなります。

Scalaは動的に型付けされていませんが、その「暗黙的な変換」機能により、静的型付けの多くの利点を保持しながら、動的型付けの多くの、おそらくすべての利点が得られます。

0
sanity

仕事の後の仕事のため、フリーランスの仕事のために... :)、そして最終的に可能な限り読み書きができるように...;)

0
vaske

GrepとRubyを知っていると、多くのJavaいくつかの実動サーバーでの例外に関連する問題。ソリューションをRubyにまとめて、数日ではなく午後に(設計、実装、テスト、実行、バグ修正、再実行、強化、結果分析)が完了しました。同じ問題を解決できましたすべてJavaのソリューションまたはC#のソリューションを使用しますが、おそらくそれよりも時間がかかります。

動的言語の専門知識があると、動的でない言語でよりシンプルなソリューションが得られることもあります。 Ruby、Perl、またはpythonでは、問題が発生したときに静的に型付けされた言語で複雑なクラス階層を作成したくなるような、小さなもののための連想配列(ハッシュ、辞書、使用するWordなど)に直観的に到達します。必ずしもそれを要求するわけではありません。

さらに、ほとんどのスクリプト言語をほとんどのランタイムにプラグインできます。したがって、どちらかまたは両方である必要はありません。

0
JasonTrue

動的言語は異なる考え方であり、動的言語または関数型言語から学んだ慣習は、より静的に型付けされた言語に移行できる場合がありますが、異なる言語を習得するために時間をかけなければ、コーディングするときの考え方を知っていました。

0
sontek

雇用主が見ることができる「本当の利点」は、ソリューションをより迅速に実装できる優れたプログラマーです。ただし、費用を正当化するためのハードナンバーを提供することはできず、雇用主は、将来をより良くすることに取り組むこととは対照的に、現在、お金を稼ぐものに取り組むことになるでしょう。

あなたが雇用主のダイムに関するトレーニングを受けることができるのは、彼らがその必要性を認識し、そのスキルセットをすでに持っている新しい人を雇うよりも安いときだけです。

0
Dan

哲学的な問題は別として、私はRubyが大きすぎた強引な問題を解決するための手っ取り早いJavaスクリプトを書くことから価値を得ていることを知っています昨年、私は3つの個別のディレクトリ構造を持っていましたが、それらはほぼ同じでしたが、ファイル間に多くの違いがありました(クライアントはバージョン管理について聞いていなかったので、残りはあなたの想像に任せます) 。

Javaでアナライザーを作成するのに多大なオーバーヘッドがかかりますが、Rubyでは約40分で作業していました。

0
Jim Kiley

多くの場合、動的な言語(特にpythonおよびlua)は、プラグインのような機能を追加するためにプログラムに埋め込まれています。低/中レベルの言語は必要ありません。

Luaは、一般的なプログラミング言語としてではなく、プログラム内に機能を追加するための使いやすさを目的として設計されているため、具体的にすべての低レベルシステムコールを欠いています。

0
Christian P.

雇用主を煩わせたり、本に40ドル以下を費やしたり、ソフトウェアをダウンロードしたり、毎日読書や演習に時間を割いたりしないでください。すぐにあなたは訓練されます:)

0
none

他の人は、より多くの言語を学ぶことがあなたをより良いプログラマにする理由をすでに説明しています。

上司を説得することは価値がありますが、これはおそらくあなたの会社の文化です。キャリアとスキルの進歩をポリシーにしたり(上に移動したり)する場所もあれば、それを高く評価するが従業員のイニシアチブに任せる場所もあります。

なぜ言語を学ぶことが上司にとって良いことなのかを説明する必要がある場合、私のアドバイスは、必要な時間だけ仕事を続けて、家に帰って自分で新しいことを勉強することです。

0
magpulse