パスワードを忘れた? アカウント作成
11182272 story
プログラミング

次々に登場する新しいプログラミング言語、どうなの? 84

ストーリー by hylom
流行っているからとりあえず、はNG 部門より

ASCII.jpにて、「開発者は言語をいくつ覚えればいいのか?」という記事が出ている。すでに何百ものプログラミング言語が存在しており、常にその数は増え続けているが、プログラマは常に新しい言語を学び続けなければならないのか、と問いかけるものだ。

Appleが新言語「Swift」を発表したことを受けてのものだが、それ以外にも新しい言語は次々と登場している。しかし、記事では「プログラマーが複数の言語を理解することは重要であるが、常に新しい言語を習得し続けることを強要するのは意味をなさない」との意見を紹介。また、「独自の言語」が増えすぎると開発スピードが遅くなるとしている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 言語より (スコア:5, 興味深い)

    by lcc (46023) on 2014年07月02日 17時34分 (#2631848) 日記

    ライブラリ覚えるのがしんどいのだが…

    • Re:言語より (スコア:3, すばらしい洞察)

      by SteppingWind (2654) on 2014年07月02日 19時19分 (#2631916)

      「覚える」ですむうちはどうにでもなる. 問題はプログラミングパラダイムなどを「理解する」必要が出てきた時だ.

      親コメント
    • Re:言語より (スコア:2, 興味深い)

      by Anonymous Coward on 2014年07月02日 18時07分 (#2631878)

      ライブラリより、フレームワークを覚える方が大変。
      Swiftもしばらくは地道な構築期があるけど、ある程度経ったらフレームワークがいくつか出てくるでしょう。
      そうなると、どのフレームワークを選択するのか、非常に大切になってくる。
      今時、一から全部作っていたら時間がいくら合っても足りないですからね。
      言語で開発が楽になる部分なんて大した割合じゃ無いですよ。

      親コメント
      • by nim (10479) on 2014年07月02日 18時33分 (#2631895)

        Java で業務システム構築って案件で、いざ担当してみると Java より XML を書く量のほうがはるかに多かったでござる。

        親コメント
        • by Anonymous Coward

          XMLを人間が手で、もしくはフリーのXMLエディタ(使いにくい)で書いているのですから、誰得という感じです…

        • by Anonymous Coward

          Java関係ってなんでXMLが多いんだろう・・・
          コンピュータにも人間にも読み書きするのにコストがかかると思うのだけど。

          • by Anonymous Coward on 2014年07月02日 20時31分 (#2631993)
            だからってS式にしたらお前らカッコ悪いとか言うんだろ。どうしろっつんだよ。
            親コメント
          • by Anonymous Coward

            androidのsdkもxmlが多様されてるね。画面のレイアウト、widgetインスタンスののid、menu定義がそれぞれ別のxmlファイルになっててたりして、なんかとっ散らかった感じ。

      • by tmt (39622) on 2014年07月02日 18時33分 (#2631896)

        フレームワークって、結局何をドコに書くかっていう決まりだけの問題だから、切り替えたとしても割とすぐになんとかなる。
        ライブラリを使いこなすのは、どうやって書くか、の部分に関わりのある問題だから、ちょっとしんどい事があると思う。
        まずデータ構造から理解する必要がある、とかさ。

        親コメント
        • by Anonymous Coward on 2014年07月02日 19時45分 (#2631945)

          >フレームワークって、結局何をドコに書くかっていう決まりだけの問題だから、切り替えたとしても割とすぐになんとかなる。

          それは同種同系統のフレームワークしか触ってないからじゃね。

          親コメント
        • by Anonymous Coward

          寿命の読めないフレームワークの恐ろしさを知らなすぎ
          さらに奇妙にカスタマイズされたオレオレフレームワークを使って追加開発しろとかゲロがでる

      • デザインパターンを覚える方が大変

        ごめん。言ってみたかっただけ

        親コメント
    • Re:言語より (スコア:2, おもしろおかしい)

      by Anonymous Coward on 2014年07月02日 19時32分 (#2631931)
      tolower/ToLower/downcase/lower/toLowerCase/lowercaseStringに新たなバリエーションを増やす輩はそろそろ断罪されて欲しい
      親コメント
    • by Anonymous Coward on 2014年07月02日 17時41分 (#2631860)

      rubyistですが。 gemの導入判定と説得が常々しんどいです…。

      親コメント
    • by Anonymous Coward

      ライブラリなんて覚えられるものですかね・・・せいぜい、都度調べられる程度に理解する程度だ、私は。

      • by lcc (46023) on 2014年07月02日 18時37分 (#2631898) 日記

        全部は覚えないよ。
        (標準ライブラリの)全体の概要と使いそうな部分を一通り頭に入れておくだけ。
        流石に全部調べてたら仕事にならん。

        言語が違っても似てる機能はあるけど、微妙に異なるので混ざって困る。

        「この関数スレッドセーフだっけ?」
        「String.Format()の書式指定どうだったっけ?」
        とか

        親コメント
    • by Anonymous Coward

      だよねぇ。元記事はプログラム書いたことがない人がアレコレ言ってる感じ。

      • by Anonymous Coward

        コンピュータ言語の違いなんて、所詮キーワードと文法が若干違うだけで
        似た言語を習得してれば直ぐに覚えれる。
        例外はPerlとXSLT。正直あれは無理だと思った。

        • by nim (10479) on 2014年07月03日 12時34分 (#2632478)

          大筋同意ですが、私の場合

          ・perl は大丈夫
          ・COBOLは無理だった
          ・XSLTは頑張れば読み書きできなくはないけど、あれは……

          親コメント
          • by ei (19798) on 2014年07月06日 4時24分 (#2634014) 日記

            大筋同意ですが、私の場合

            ・perl は大丈夫

            昨年、約15年前に書いた(他人が若干手を入れてる)perlをメンテしたのですが、最大最強の罠は単なる「文字列の比較」ですた。今時、C(高級アセンブラ)系は専用比較函数を使うとして、その他な高級言語は汎用な比較演算子が型に見合った適切な比較をしてくれるものと…。よもや「==」ぢゃ駄目とわ…。

            親コメント
    • by Anonymous Coward

      なんでプログラミング言語の話でラブライブかと思ったら…疲れてますね…

  • 問題がないなら使わなければいいし、自分で問題解決をするより使ったほうが楽なら使えばいいわけだから、基本的にはあればあるほど楽になってるはず。

  • ただし、新しいシステムで使う言語が使えない人は不要です。
    ああ、もちろん将来もこの言語を使い続けるなんて保証もありません(笑

    ですねわかります。

    #文句は客とメーカーに言ってください

    • by Anonymous Coward

      煽ってる主体がよくわからん

  • by yohshiy (44859) on 2014年07月02日 18時27分 (#2631893)

    言語を作るというのはそれなりに労力がかかるんだから、ジョーク言語でもないかぎり、
    既存の言語に満足できなかったからこそ、新しい言語ができているはず。
    後出の言語の方が優れていることが多いので、次々に登場するということは
    プログラミング言語がどんどんよくなってきているともいえる。

    勉強のためだけに 1 年に 1 つ言語を覚える達人プログラマーに比べたら、
    必要な時に必要な言語を覚えるのは普通だと思う。

    • by Anonymous Coward

      新しいのが増えるだけなら良いかもしれませんが、
      過去の資産をメンテできるcobolプログラマが不足している
      みたいな問題も起きるわけじゃないですか。
      贅沢と言えば贅沢ですが、
      システムのライフサイクルと言語のライフサイクルが
      一致してくれると良いなぁと思いますね。

      #何故かバベルの塔の話が頭をよぎった。

      • by Anonymous Coward

        そりゃ
        本来耐用年数のないソフトウェアを無理矢理旧式化させて
        リプレースさせて稼ぐために新しい言語やフレームワーク、OSを作ってるんだからな。
        IT屋としては無知を騙して儲けたいだけなので効率なんてどうでもいいんだよ。

    • by Anonymous Coward

      C#あたりだと、
      互換性無視して好き勝手やった方がVisualJ++ の方が楽じゃね?
      → 互換性のないJ++がJavaを名乗るのはライセンス違反
      → じゃあJavaとは違うC#という別言語ってことにしよう!

      みたいな流れを感じるけどね。

      技術力がない会社が互換性を保って実装を作るのは大変なんだよ。
      むしろ行き当たりバッタリで作る方がなんぼか楽。
      #それこそPHPなんてバージョンアップごとの互換性問題が、ブツブツ...

  • by Anonymous Coward on 2014年07月02日 19時23分 (#2631921)
    Dart, Go, Swift, Hack どれも、まだ企業の独自言語の枠から踏み出せてない。
    というか踏み出す意図があるかどうか不明なのもある。
    そういうのは必要になった時に覚えれば十分。
    あらかじめ覚えようとする必要性などどこにもない。

    際だった特徴や思想のない言語なんて、覚えても面白くもなんともないよ。
    • by Anonymous Coward on 2014年07月02日 19時28分 (#2631928)

      D言語とかGoとかC・C++を置き換えるとか言ってるけど
      全然そんなことできる気がしないんだよね。
      MSにWindowsをDで実装させてからそういうこと言えっての。

      C好きじゃないけど「新しい技術」を使うにはCが必須だもん。
      モダンな言語なんて標準出力に文字を出すのを効率よくやってるだけで
      新しいことなんて何もやってない。
      最新技術は常にCでしかできない。
      モダンな言語ばっかやってる奴らは原始人

      親コメント
      • そもそもGCのっけてる時点で、DもGoもC・C++を置き換える気なんて最初からない、外野が騒いているだけ。
        本気でC・C++を置き換える気なら、mozilaのこれみたいにRust [wikipedia.org]コア言語仕様にGCは入れない。

        親コメント
      • by Anonymous Coward

        速度こそ正義ってか。
        C++だって早かったから増殖したわけだし、
        Python Ruby Lua あたりもいい線いってんじゃねーのかな。

        • by Anonymous Coward
          C/C++ との比較なんだから、いくらなんでも Python/Ruby は遅いすぎだろ。
          • by Anonymous Coward

            いやほら、開発時間と実行時間のバランスだよ。

      • by Anonymous Coward
        > 最新技術は常にCでしかできない。
        > モダンな言語ばっかやってる奴らは原始人

        なぜか納得がいく不思議。
        Cを憎むJava至上主義の人がいたので、「じゃあ Java で書き直して Java のガベコレ高速化して」と言ったみたことがある。

        ブートストラップできるのは C とアセンブラ以外に何かあるかな?
  • by Anonymous Coward on 2014年07月02日 20時28分 (#2631990)

    ライブラリ名・クラス名・メンバ名・関数名などにもISO標準なり何なりがあればいいんでは

  • by Anonymous Coward on 2014年07月02日 19時24分 (#2631925)

    JavaScript で何の不便もないし、大丈夫なんですけど、もうちょっと見やすくならないですかね。
    こういう感じの。pythonみたいな文法になると理想的なんですが。

    var hoge = (function(){

            return function(){

                    var bar = new Array(8);
                    var baz = 'bazbaz';

                    this.fuga= function(a, b) {
                            return a + b;
                    }
            }

    })();

  • by Anonymous Coward on 2014年07月02日 20時35分 (#2631997)

    良くてC++だな。しかし、基本、スタティックリソースなので相性が悪い。
    デバグもしづらい。
    コンパイラが吐いたコードを追いかけてデバックなんてしょっちゅう。
    うん、Arduinoは比較的良くできていると思うよ。仕事には使ったことないけど。
    PICAXEなんてのも機会があったら触ってみたいね。

    • by nim (10479) on 2014年07月03日 13時21分 (#2632513)

      組み込み屋さんはアセンブラを使うものだと思ってました。
      今はCだけなんですね……

      親コメント
    • by Anonymous Coward on 2014年07月03日 13時58分 (#2632545)

      ところが。
      最近はプログラミング言語を吹っ飛ばして、Matlab Simlinkで作っといてコードジェネレータで吐かせて突っ込む形が増えておりまして。
      自動車屋なんかは本当にシビアなECU回りを除いたら、大半これで作っちゃっているのだそうですよ。

      親コメント
  • by Anonymous Coward on 2014年07月02日 21時55分 (#2632074)

    defineで定義して、headにしちゃえ!

typodupeerror

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

読み込み中...