パスワードを忘れた? アカウント作成
14009749 story
Java

Javaにヒアドキュメントが来る(けど不安) 58

ストーリー by hylom
Python風だけど違う 部門より

Anonymous Coward曰く、

Java 13では「Text Blocks」として、いわゆるヒアドキュメントのサポートが行われるという(Publickey)。

Javaでは「"」で囲まれた文字列中では改行は許されなかったため、文字列中に改行を入れたい場合は「\n」などの表現を使用する必要があった。Text Blocksでは文字列を「"""」で囲むことで、文字列中に改行を含めることが可能になる。また、インデントを認識して自動的に各行の先頭のホワイトスペースを除去することも行なってくれるようだ。

/* 例えばXMLはどうなるのかとか誤認識されないのかとかそのへんが気になる どうせなら文字列の中に変数を埋め込めるようにしてくれたほうが良かった。 */

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • string interpolationは別概念なので、その希望があってもいいが実現にはちょっと道筋が違うと思う...

    --
    M-FalconSky (暑いか寒い)
  • by Anonymous Coward on 2019年09月25日 8時11分 (#3690764)

    Switch Expressionsがいいと思う。
    条件が多くなった時は特に。

    • by Anonymous Coward

      そういやつい先日C#にも入ったね。

    • by Anonymous Coward

      条件が多くなったときはSwitch文を使ってほしい…

      • by Anonymous Coward

        switch式相当の事をswitch文でやろうとすると、値を返すための変数を用意してcase毎に代入する処理を書くことになるので

    • by Anonymous Coward

      これのためだけにJava13にしたいくらい

    • by Anonymous Coward

      たまーに、COBOLのevaluateみたいに値を複数指定したいときがある。

  • オワコン (スコア:0, 荒らし)

    by Anonymous Coward on 2019年09月25日 9時31分 (#3690799)

    終わったコンピュータ言語の話はどうでもいいです。

    • Re:オワコン (スコア:2, おもしろおかしい)

      by Anonymous Coward on 2019年09月25日 9時38分 (#3690801)

      いち早く駆け付けて「どうでもいい」

      親コメント
      • by Anonymous Coward

        これも愛の形のひとつか

    • by Anonymous Coward

      どうでもいいなら書き込まないだろ
      Javaに親でも殺された口だな

      • by Anonymous Coward on 2019年09月25日 10時03分 (#3690823)

        たぶん親を殺されたわけじゃなくて、
        面子を潰されたのでは。

        基本的には王道でシンプルな言語だけど、それでもぺちぱーには難しすぎる言語だから。

        親コメント
        • by Anonymous Coward

          Oracle被害者の可能性もあるべよ

      • by Anonymous Coward

        エンジニアの子供を殺された親ならそこそこいそう

  • by Anonymous Coward on 2019年09月25日 10時05分 (#3690826)

    20年間導入しなかった機能なんだから本質的に要らないんじゃねーの?
    これまで慎重に検討してきた何かがあるのかしら。

    • Goslingのおっさんを説得するのに必要だったんでしょ
      // そんなことより文字列リテラルが64kバイト制限なのは治ってないのかい
      親コメント
    • by Anonymous Coward

      > まだこんな
      というレベルでも定期的にバージョンを上げてゆかないと死亡推定されそうですから、遠い昔の積み残しでも世の流行りとか作業の優先順位とかを見て回収するタイミングに至ったのでしょう。

    • by Anonymous Coward

      ほかの言語がこういうの対応してるからその真似。色んな言語に手を出してると同じような機能が欲しくなる。そしてどんどん便利になる。

      #バグ修正以外のアプデも新しい言語も本質的に要らないってなるよw

    • by Anonymous Coward

      最初からC#のような路線を取っていれば多くの開発者やコードが救われただろうに。

  • by Anonymous Coward on 2019年09月25日 13時44分 (#3690934)

    > どうせなら文字列の中に変数を埋め込めるようにしてくれたほうが良かった。
    えっ、これまだ出来ないの?
    クソ言語なりに型安全やNull安全に着実に進化してきてPhpStormを使えばかなり安全快適に開発できるようになってきたPHPですらできるのに?

    • by Anonymous Coward

      テンプレート言語とは第一に考える点が違うからな。

      • by Anonymous Coward

        C#でもKotlinでもScalaでも出来ますけど…

    • by Anonymous Coward

      "hoge${x}fuga" と "hoge"+x+"fuga" がそんなに違うとは感じ無いけどな…

      • by Anonymous Coward

        みんなそう思ってるならクソ言語Java以外はだいたい使えるようにはなってないんですよ

      • by Anonymous Coward

        全く違いますよ。

        Javaでいえば "hoge"+x+"fuga" ではなく Strig.format("hoge{%s}fuga",x.toString()) を$"hoge{x}fuga" って書けるわけですよ。
        Javaで "hoge"+x+"fuga" なんてコード書いてるレベルの人だったら理解できないかもしれませんが、現実的なコード考えれば差があるのはわかるでしょう。

        • by Anonymous Coward on 2019年09月25日 22時51分 (#3691239)

          基本的にはMessageFormatを使うなあ。

          親コメント
        • by Anonymous Coward

          toString()って暗黙的に呼び出されるんだからそれでも冗長なんじゃ…

        • by Anonymous Coward

          …同等な結果の物をわざわざString.format を呼び出す方が妥当ってすごい思想だな。
          toString() 明示するだけの事はある。

          • by Anonymous Coward

            まあこっちの方が一般に高速でしょうし。
            どうとうではない。

          • by Anonymous Coward

            toStringを明示するかどうかは、書いても書かなくても同じなので、どうでもいいんですけど。
            String.formatと + での連結が同じだと思ってるのは、議論の参加できるレベルじゃないな。

            • by Anonymous Coward

              あのな…
              + は StringBuilder("hoge").append(x).append("fuga") になる事が決まってる。
              String.format はソース見てみりゃ判るがはるかに遅いぞ。

              同等と言ってるのは結果。String.format に引数渡す方は NPE の可能性がある
              が + は "null" になるという違いくらいしかない。

              • by Anonymous Coward

                nullを突っ込んでNPEにならないのって致命的なバグを生みますよ。
                ユーザー名:null
                みたいな間抜けな表示を生む

    • by Anonymous Coward

      お手軽スクリプト向けの機能でJavaみたいなのには無いイメージだったが、そうか今はC#にもあるんだな。

    • by Anonymous Coward

      Java単体でできなくてもJava用のテンプレートエンジンは大量にあります

      • by Anonymous Coward

        お前ログ出力で内容とコードをちょろっと出しておきたいみたいなシンプルな要件のときにわざわざテンプレートエンジン使うの?

    • by Anonymous Coward

      ぬるせーふなんて軟弱者はコトリンをあたりつかう
      私は軟弱者

  • by Anonymous Coward on 2019年09月25日 19時06分 (#3691108)

    っていうけど、スペースも保存して欲しいときは?

  • by Anonymous Coward on 2019年09月25日 21時33分 (#3691207)

    まだあったんだ

  • by Anonymous Coward on 2019年09月26日 15時04分 (#3691705)

    随分なものいいがおおいねー

typodupeerror

あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall

読み込み中...