2ちゃんねる★スマホ版★■掲示板に戻る■全部1-最新50

【java】jdk8も出るし、何か作ってみるか【lambda】

1 :
デフォルトの名無しさん
2014/03/17(月) 02:13:19.85 ID:EZQcdYaK
リリース目前!
2 :
2014/03/17(月) 04:37:09.29 ID:JMxqWrlx
建ったか。
3 :
2014/03/17(月) 08:43:08.80 ID:qMMcKosj
robocodeはどうなるんだろう…。
4 :
デフォルトの名無しさん
2014/03/17(月) 14:24:10.58 ID:YHJqMXtq
Javaの書き方が気にくわないから
俺はJavaそんなに好きになれない
5 :
2014/03/17(月) 16:38:34.63 ID:ywio8KhI
いよいよ明日か
6 :
2014/03/17(月) 16:53:42.16 ID:JMxqWrlx
JDK8 RC版でラムダ書くの面白かったよ。
少し前にリフレクションでnew()するオーバーヘッドを消すために
javassistで書き換えてるフレームワークがよくあったけど、
これからはファクトリーメソッドをラムダで書かせるだろうね。
7 :
デフォルトの名無しさん
2014/03/17(月) 17:02:03.36 ID:mUTbUFyO
とりあえず初めの方はバグが多いんだろうな
しかし新機能や改良点には期待してる
8 :
2014/03/17(月) 17:24:38.63 ID:JMxqWrlx
DBUtilっぽいものをちょいと作ってみた(実用性は無理があるけど
http://hoeppe.the-ninja.jp/java_entity_ruler/index.html

// サンプルコード
http://gmdev.xrea.jp/st/up/1018.txt
http://gmdev.xrea.jp/st/up/1017.txt
9 :
2014/03/17(月) 17:44:12.40 ID:JMxqWrlx
JPA, Hibernate, その他もろもろにおいて、Entity Bean class は
トップレベルであることが必須だった。

これはリフレクション.newInstance()における制約があったからで、
これからは1ファイル内に何個も定義できるようになる方向に変化していくはず。
10 :
2014/03/17(月) 19:29:28.32 ID:ciRVQ9zl
日本だとJBoss EAP8が出てから1年後くらいじゃないと業務で使えないな
11 :
2014/03/17(月) 20:35:18.59 ID:JMxqWrlx
>>9についてだが、MVCフレームワークとかも同じだな
Controller(Action)はpublic classである必要があったが〜(以下略
12 :
2014/03/17(月) 20:39:06.74 ID:xMKm5zL3
職場では、つい先月、やっとJDK7を使えるようになったんだが。
13 :
2014/03/17(月) 23:34:38.94 ID:JMxqWrlx
たぶん一番恩恵を受けるのはAndroidのイベントリスナーだと思う
googleのAPI対応も早いだろうし
14 :
2014/03/18(火) 09:16:23.90 ID:cNXBm7Ks
嵐の前の静けさ ←イマココ
嵐の中の静けさ
嵐の後の静けさ
15 :
デフォルトの名無しさん
2014/03/18(火) 18:32:14.29 ID:s3PeK3NF
何時に出るの?
16 :
デフォルトの名無しさん
2014/03/18(火) 19:45:34.17 ID:8JATeyAW
PermGenは名前が変わっただけで直ってないんだろ。java9に期待。
17 :
2014/03/18(火) 20:06:42.89 ID:tRXj2H8I
今でしょ・・・アレ?
18 :
2014/03/18(火) 20:59:24.26 ID:SyPosiOD
wktk
19 :
2014/03/18(火) 21:49:21.41 ID:m0FYIubb
ラムダつくのかー
20 :
2014/03/18(火) 21:52:07.08 ID:khf9ZUrC
ちょうど日付操作したいからJava8を試すかと思ったらまだ来てないとは
Joda-Timeでも試すか
21 :
2014/03/18(火) 22:41:55.89 ID:maR4oJ9k
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
22 :
2014/03/18(火) 23:56:41.57 ID:tRXj2H8I
アイちゃん遅刻だよ
23 :
2014/03/19(水) 05:51:44.36 ID:m51+QobB
>>20
Joda-Timeでなく、敢えてJDK8の日時クラスを使う理由が見いだせない。
設計者の変なこだわりで使いにくくなってると思うんだが。
24 :
デフォルトの名無しさん
2014/03/19(水) 10:20:24.37 ID:Zr8WYTiP
早朝に来てたか…!

[速報]Java 8が正式公開。ラムダ式、新しい日時API、JavaFX8など。NetBeans 8.0も登場
http://www.publickey1.jp/blog/14/java_8apijavafx8netbeans_80.html

Java SE 8、JDK 8が正式リリース
http://www.atmarkit.co.jp/ait/articles/1403/17/news105.html
25 :
2014/03/19(水) 23:18:01.57 ID:TKTiQtiy
気のせいか起動が早くなってない?
電源入れた後の初回起動のイライラ感があんまりない
26 :
2014/03/19(水) 23:22:11.96 ID:pgTJKr0l
ちょぱーり
27 :
2014/03/21(金) 02:44:04.79 ID:RgzJi1bk
JDT/Eclipseの正式対応が5月くらいになるのか
28 :
2014/03/21(金) 03:05:50.90 ID:J9XPjdPv
WinとLinuxは入れ替えても良いけどMacだとめんどくさいお
全部のプラットフォームつかってるからなおさらめんどくさいお
29 :
2014/03/21(金) 09:40:23.55 ID:wYRkXsLz
>>27
4.3.2 JDTのJava8対応は、すでに正式版(GA)。
30 :
デフォルトの名無しさん
2014/03/21(金) 23:33:45.67 ID:pR5rAGyq
>>25
Linux版だけど起動は確かに速くなってるな
31 :
2014/03/22(土) 04:06:59.14 ID:RKvZhqtL
どっかからJava8にしないでくださいってメールがきたぞw
32 :
2014/03/22(土) 07:10:58.70 ID:5gx6vbDt
嬉しくてチンチンたちまくりレイプ事件が多くなるのを心配してるんだよ
33 :
2014/03/22(土) 11:46:18.19 ID:bsv8fewG
すべってますよー
34 :
2014/03/22(土) 12:06:48.36 ID:pO1WrkSi
>>31
例えばこれだね www.gaitame.com/info.html
> 現在、「Java8」では『外貨ネクストネオ』のリッチアプリ版が起動しないこと、Webブラウザ版のチャートが表示されないことを確認しておりますので、アップデートをしないようお願いいたします。
35 :
2014/03/22(土) 12:09:24.76 ID:oreZJNMZ
>>34
今回そんな互換性なくなるような変更点あったっけ?
セキュリティ関連でデフォルトが変わった奴とかのせいか?
36 :
デフォルトの名無しさん
2014/03/30(日) 17:15:39.34 ID:jhRCncdW
JDTがしょっちゅう固まるのだが
37 :
2014/03/30(日) 22:53:50.31 ID:pBWL0FS5
lambda?
オッサンにはぜんぜん理解できん(T_T)
あんなんで書かれた日にゃメンテナンス性が著しく低下しそう
38 :
2014/03/31(月) 21:14:42.92 ID:YRh/37pv
それはさすがに理解してくれよ。
最初は匿名クラスのシンタックスシュガーぐらいのもんだと思ってりゃいいんだよ。

匿名クラス禁止とか言い出すようなら、転職するしかない…
39 :
2014/03/31(月) 21:47:34.56 ID:QzEXOdpw
http://news.mynavi.jp/special/2014/java8/
この辺の例にある、

list.sort(new Comparator<String>(){
@Override
public int compare(String s1, String s2){
return s1.length() - s2.length();
}
});

が、

list.sort((s1, s2) -> s1.length() - s2.length());

こう書けるのはすごく便利そう。というか下の見た後だと上は冗長過ぎ。
複雑なラムダ式はよう判らんが、こういうレベルのはどんどん普及してほしい。
むしろこれすら理解できない老害は氏ね。
40 :
2014/04/01(火) 00:56:28.29 ID:NI6qZZms
Androidとかの対応はどうなるんだろうねぇ
41 :
2014/04/01(火) 18:06:01.00 ID:DnaG0wEC
何か作ってみるかと思ったらインストールできない
調べたらXPはサポート外かよゴミ言語だな
42 :
デフォルトの名無しさん
2014/04/01(火) 18:29:50.90 ID:bN6Ka3eO
逆!
XPがゴミ
43 :
2014/04/01(火) 19:39:57.65 ID:PR3x9no5
XPがゴミだとふざくんなよ


いまだにXPでネットやってる >>41 がゴミ
44 :
2014/04/03(木) 11:22:03.46 ID:ZxAxSvKk
み・・みんな・・ひどい・・・・・
45 :
2014/04/03(木) 12:03:37.80 ID:KbAl46jm
>>44
酷いつーか、来週からどうすんだ?
割とマジで迷惑だろ>>XP残留組
46 :
2014/04/03(木) 20:45:39.26 ID:ISM3Ag2e
えっ・・・Java8はWindows XP で動かんの?
プラットフォームに依存しない、ってのがJavaの最大の"ウリ"ではなかったのか
47 :
2014/04/03(木) 21:02:33.65 ID:KbAl46jm
>>46
終わったプラットフォームとか生まれる前から死んでるプラットフォームでは動かないよ
48 :
2014/04/04(金) 23:30:21.48 ID:6t2n97/t
Write once, run anywhere
49 :
2014/04/05(土) 00:21:43.57 ID:3yuavrKE
データベース関連は難しいな
50 :
2014/04/06(日) 00:57:50.68 ID:IBDsli1X
もう少し違うものを作ってみよう(汗
51 :
2014/04/07(月) 00:26:40.02 ID:5yVEedO3
EclipseはLuna4.4待ちなのかと思ったら
JDT自体はGA来てたのな
52 :
2014/04/09(水) 00:59:51.31 ID:jKnccCoL
使った感じeclipseのjdtアドオンはまだ不安定だよ
53 :
2014/04/09(水) 18:18:00.80 ID:jKnccCoL
サーブレットのライブラリを作ってみる
http://hoeppe.the-ninja.jp/java_markup_ruler/html/tutorial/tutorial1.html
54 :
2014/04/11(金) 14:07:16.84 ID:6rfX8xtJ
55 :
2014/04/11(金) 20:36:22.79 ID:0xnK6ibc
Once write, debug everywhener
56 :
2014/04/12(土) 14:03:01.71 ID:KEuyoGFu
>>37
どこが難しいのかさっぱり。。。
むしろ7より前でコーディングする気が失せた
今の職場は当然のように7だけどね

あとAndroidとかGAE対応はどうなんだろうね
ここあたりすっげー遅いイメージしかないんだが、Google先生
57 :
2014/04/12(土) 23:58:58.17 ID:oJ1LFVkB
Month while, the dog everyone.
58 :
2014/04/13(日) 01:52:36.69 ID:cpdOQcgc
59 :
2014/04/14(月) 03:48:52.30 ID:3UflCQPn
60 :
2014/04/14(月) 03:51:49.14 ID:3UflCQPn
HTML idだとまずいことに気づいた
独自属性java:keyにして、出力時には消えるようにしよう
61 :
2014/04/15(火) 01:17:54.07 ID:QjDXpoj9
感想0とはつらいものだ
62 :
2014/04/15(火) 13:56:25.77 ID:3Sv4k8i4
>>61
なんか読めなかった
後でPCで見ておくよ
63 :
2014/04/15(火) 14:20:27.79 ID:QGh49XkA
>>61
感想なんて書かれないのが普通なんだからアクセスログでほくそ笑んでれば良いじゃんよ。
64 :
2014/04/16(水) 00:28:38.94 ID:F5idbQac
一部修正した。html idで全部やってたことを独自属性java:xxxに変更。
これによってhtmlからjavaのスケルトンソースを生成するツールも作れる
65 :
2014/04/16(水) 01:08:38.67 ID:F5idbQac
Qiitaで書き散らそうかと覗いてみたけどそういう雰囲気じゃなかった
66 :
2014/04/16(水) 15:47:25.91 ID:ZPDSwdSk
感想:

ラムダ使う必要なくね?
67 :
2014/04/16(水) 18:35:30.68 ID:F5idbQac
サーブレットのdoGET, doPost... に値するところは
メソッドのオーバーライドでも大して変わらんね

少し前のフレームワークではアノテーションでやっていた
httpパラメータからのコンバータやバリデータをラムダでやると効果的かもしれん
wicketのそれが近いと思う
68 :
2014/04/16(水) 18:48:21.55 ID:EhohGL0g
Lambdaでやらせるなら表示の絞り込みとかの方がよくね?(SQLで得た一覧をmemcachedに蓄えたりした奴のフィルターとかソートね)
69 :
2014/04/16(水) 19:58:23.28 ID:F5idbQac
Model側で別の層になるなそれ。

少し前にEntity Rulerという名前で
RDBライブラリ(O/Rマッパー)作ろうとしていたのだが
アイデアがフラフラしたあげくに頓挫しちゃったんだよね
70 :
2014/04/16(水) 20:12:03.87 ID:F5idbQac
>>68
で言われているようなことをする場合、普通はSQL内でやるもんだよね。
whereとかjoin書かないで全部拾ってきて、java側でフィルターすると
ネットワークIOがボトルネックになるからさ。

HSQLかH2に限定すれば、ストアド(具体的にはユーザー定義関数)を
javaで書けるから何でもストアド化するって手もあるんだけど、
(そうするとネットワークIOの問題は解決する)
RDBに関する全般的な知識がないから、おれにはちょっと荷が重い
71 :
デフォルトの名無しさん
2014/04/18(金) 00:52:11.94 ID:qfiz40wI
さて、Webライブラリの話に戻るんだけど、
cakePHPとかだとバリデータがModelの処理とされているように、
web(http/html)と直接関係ないものは全てModelとして扱う。
(コンバータ、バリデータ etc...)

そして本ライブラリはMVCのVとCのみを扱うため、
HTTPクエリ/パラメータからのコンバータなどは作らない。
従ってあとはクッキーとセッションあたりをどうするべきか考えれば
とりあえず完成、version1.0をリリースできるな。
72 :
2014/04/22(火) 00:31:42.80 ID:+hEYAfLs
おいJava8めっちゃ高速になってないか
GCの性能もめっちゃ良くなってるようなきがするんだが
みんなどう?
73 :
2014/04/22(火) 20:25:51.82 ID:LK8qL++Z
みんなまだ様子見くらいしかしてないんじゃないの?
JRE7とJRE8でパフォーマンス計測したなら教えてよ
74 :
2014/04/23(水) 10:28:23.85 ID:IIePiM6b
ベンチの結果が20%向上した
うちの場合
75 :
2014/04/23(水) 10:30:45.74 ID:IIePiM6b
あと、Nashornクソ遅い
巷ではRhinoより速いと言われてるらしいが
76 :
2014/04/23(水) 13:35:11.28 ID:kB34xYG+
>>75
何と比べて遅いん?
77 :
2014/04/23(水) 13:53:28.44 ID:qlKuU/ND
>>76
Rhino-1.7R5

Node.jsのサブセットみたいなものを自作して使用中なんだが
使い方が悪いのかしらんがNashornは超遅い
78 :
2014/04/24(木) 01:25:00.86 ID:uw+Asd59
おとなしくnode.js使えよ
V8パワーを実感できるぞ
79 :
2014/04/24(木) 03:52:08.38 ID:ic8Kyj+r
自作言語をjavascriptに変換して実行とか面白いかもな
javassist使ったほうがいいかもしれんが
80 :
2014/04/25(金) 16:51:13.24 ID:tzejnHu3
>>78
JSだけで完結するならそうなんだけど、
Java資産を流用せにゃあかんという要求がありまして
81 :
2014/04/28(月) 03:07:46.77 ID:4J9xjlOi
ランバダ?
82 :
2014/04/29(火) 00:15:08.02 ID:9kKuqxmA
UncheckedIOException 見て
Javaはそろそろ限界だと感じた
83 :
2014/05/09(金) 11:50:47.96 ID:SYgUl/A2
ソースのプロトタイプ生成ツールの試作品ができた
具体的には.htmlから.javaを生成するツール

入力(html)

<?xml version="1.0" encoding="UTF-8"?>

<html xmlns:java="http://hoeppe.the-ninja.jp/" java:page="Tutorial4">
<body>
<div>Item List</div>
<div java:canvas="list">

<div java:group="fragment">
<div>Item</div>
<div java:key="index"></div>
<div java:key="name"></div>
</div>
</div>
</body>
</html>
84 :
2014/05/09(金) 11:51:44.16 ID:SYgUl/A2
出力(java)

package org.ruler.markup.tool.export;

import org.ruler.markup.api.Page;
import org.ruler.markup.api.Canvas;
import org.ruler.markup.api.Group;

@Mount(path="/default.html")
@Source(file="tutorial4.java")
public class tutorial4 extends Page {

@Source
Group fragment = new Group();

@Source
Canvas list = (node) -> {

};

@Override
public void action(Http http) {
http.GET = (event) -> {

event.setCode(Code.OK_200);
event.setType(Type.html);
event.draw(this);
};
};

}
85 :
2014/05/09(金) 13:20:04.59 ID:uFy0rdVu
ラムダ??

BGM聴きたい
86 :
2014/05/11(日) 17:47:09.64 ID:4QdDd3nu
とりあえずjavadocとjar本体をアップしたぜ
チュートリアルだけ試せます
87 :
2014/05/11(日) 19:56:13.04 ID:4QdDd3nu
tomcatプラグイン紛らわしいね。使わないほうが良さそう
88 :
2014/05/13(火) 20:45:35.20 ID:0208S0UM
javaさようなら。

見捨てられたXPユーザより。
89 :
2014/05/13(火) 22:05:00.93 ID:M8thHBuI
XPはjava以前だろうにwww
90 :
2014/05/13(火) 23:10:44.12 ID:yjKm7ka1
>>88

はいさようなら シッシッ
91 :
2014/05/14(水) 09:43:53.65 ID:Yp3DnhFD
>>88
頼むからネットに繋ぐのはやめてもらえないか?
92 :
2014/05/14(水) 20:38:43.95 ID:9YZWsYJ2
おちんこぴゅっぴゅぴゅ
93 :
>>53
2014/05/16(金) 15:09:03.38 ID:t+BktqNJ
協力者募集中〜
94 :
>>53
2014/05/17(土) 01:56:05.90 ID:C6+8ucAK
わびしい。キータに投稿してみっか
95 :
デフォルトの名無しさん
2014/05/17(土) 01:59:54.60 ID:cEn7MAy/
UIラップだけに切り出した方がいいんじゃないかねぇ
96 :
>>53
2014/05/17(土) 02:59:52.74 ID:C6+8ucAK
それは可能だし、Viewのみにすると規模が縮小して俺も楽なんだけど、
どちらにせよSpringMVCとかJersey、JSF2といった
今主流のControllerと連携はできないんだよね
97 :
デフォルトの名無しさん
2014/05/17(土) 03:51:13.79 ID:cEn7MAy/
Controller周辺は拡張ライブラリで自由に選べるようにして置けば汎用性高いのが出来ると思う
コンテナまで実装は無駄が多すぎる
IDや特殊IDでマッピング出来てピュアなhtmlで作れるのはそれなりに需要高いと思う
98 :
>>53
2014/05/17(土) 13:17:10.19 ID:C6+8ucAK
参照実装つくるならstruts1だろうね
単なるライブラリとして完全に分離された状態で連携できる
(サーブレットAPIのRequestとResponseを直接使えるから)

SpringMVC、Jersey、Playだとフレームワーク毎に対応したもの作るの大変
99 :
>>53
2014/05/17(土) 21:23:21.32 ID:C6+8ucAK
前言撤回w よく調査したら、独自Viewを持つJSF2以外は簡単に連携できそう

とりあえず自作コンテナ or Jersey(EE標準)で利用可能な方向に修正しようと思う
SpringMVCやPlayでもそのまま動かせると思うが、触れないで置く

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.ruler.markup.api.Page;
import org.ruler.markup.api.Source;
import org.ruler.markup.api.Canvas;

@Source(file="/xml/template.xml")
@Path("/hello")
public class HelloWorld extends Page {

@GET
@Produces(MediaType.TEXT_HTML)
public String sayHello(){
String html = super.draw();
return html;
}

@Source
Canvas canvas = (node) -> {
node.setAttr("style", "color:FFFFFF;");
node.addText("Hello World");
};
}
100 :
>>53
2014/05/18(日) 00:29:13.30 ID:LWas9+0T
そのさい、多少APIを変更するのは避けられない

Responseを乗っ取れないようなので
いったん丸ごと一つの文字列にしなければならなくなる
無駄に大きい文字列結合は結構コストになる

それでもDI、コンバータ、バリデータが全部流用できるのが大きいが
101 :
>>53
2014/05/18(日) 17:37:20.86 ID:LWas9+0T
JAX-RS v2.0 を試そうとApache CXFを試したが、hello worldも実行できず断念
Glassfish(Jersey)やJBoss(JBoss Rest Easy)はtomcatで使いたいので断念

JAX-RS v1.1 しか使えないが、jarも少なくてコンパクトなApache Winkで調査中〜
102 :
2014/05/18(日) 19:26:31.34 ID:TTQj//9Y
>>53
よくわかんねーや、仕様を日本語で書いてくれ。
103 :
>>53
2014/05/18(日) 21:25:44.60 ID:LWas9+0T
javadocとかhtml書くのも大変なのよ
javadocは日本語と英語を併記しようとして失敗した
チュートリアルも日本語がおかしいかもしれない

もしくは、もっと全体的な概要のことだろうか?
104 :
2014/05/18(日) 21:29:41.51 ID:N+11ThYv
>>103
そうだよ、ぱっとみてなにやってんの?てなかんじ
105 :
2014/05/18(日) 21:30:57.47 ID:N+11ThYv
それとDOMが遅いのは知ってるよね?
106 :
>>53
2014/05/18(日) 22:53:36.54 ID:LWas9+0T
どれを指していってる?
107 :
>>53
2014/05/18(日) 23:02:35.40 ID:LWas9+0T
その指摘はたぶん半分正しい。

XML(REST, AJAX)だとDOMは遅くない
HTMLだとDOMは遅い。

なぜならHTMLはほとんどが静的なデータの塊であって、
動的でない部分をDOMで保有していると、直列な文字列へと変換する無駄が生じる。

チュートリアル1では、全てをDOMで操作しているので、たしかに処理に無駄がある。
従ってチュートリアル1は最も自由度の高いAPIであるが、HTMLではなくXML(REST, AJAX)向きだ。
108 :
>>53
2014/05/18(日) 23:08:29.27 ID:LWas9+0T
これを踏まえたうえで、チュートリアル02, 03を見てほしい。
Canvasというクラスがでてくる。Canvasに指定されたノードは、動的な領域である。

逆説的に言えば、それ以外の領域は静的であるということ。
実は、内部で静的な領域を最適化している。

Node.classにはjavadocに載っていないが、onReady()というメソッドがあって、
あらかじめ直列化された(変わりに変更不能になった)文字列へと最適化している
109 :
>>53
2014/05/18(日) 23:18:39.38 ID:LWas9+0T
具体的に書くと、Nodeは通常以下のデータを持っている

String タグ
HashMap<String, String> 属性
List<Node> 子ノード

コレを連結して < + タグ + 属性="属性値" + > </ + タグ + >を生成する。
静的な領域として登録されたNodeは、次のように固定される

String 開始タグ <div class="xxx" onclick="xxx">
String 終了タグ </div>
List<Node> 子ノード

従ってDOMは自動的に、最適な形式で最適化されるのだ
110 :
>>53
2014/05/18(日) 23:21:28.16 ID:LWas9+0T
ちなみに、このonReady()というメソッドはサーバー起動時に行われる
初期化の中で実行され、アプリ開発者には触れないようにパッケージアクセスになっている
111 :
>>53
2014/05/18(日) 23:29:41.69 ID:LWas9+0T
そんなわけで、計測していないが、JSPでタグライブラリ使うよりは
むしろ早いんじゃないかと思う。

JSPだとBeanUtilsとかでリフレクション使うが、
こちらはまったくリフレクションと無縁だし。
112 :
>>53
2014/05/19(月) 01:30:36.99 ID:sKL+/ft2
そーいえば、バグを修正してからソースアップしてなかったや
113 :
>>53
2014/05/19(月) 23:11:24.30 ID:sKL+/ft2
質問してた人は分かってくれたのだろーか?
ま、いっかー♪
114 :
2014/05/19(月) 23:14:52.36 ID:tS67yV1L
わかんねーよ、まあいいよ
115 :
>>53
2014/05/20(火) 12:43:37.30 ID:6S2+5F+I
このフレームワークは、JSPを代替するものである。他はあってもオマケなのさ
SpringMVCといったモダンなフレームワークやJSP/Servletをそもそもほとんど知らないと
さすがに厳しいだろうね
116 :
2014/05/20(火) 13:29:36.59 ID:01pyNPJw
.どうでもいいけど^2、大きくでたね、恥ずかしい。
117 :
2014/05/20(火) 20:12:46.72 ID:6S2+5F+I
どうでもいいなら最初から質問しないこと
そして>>105のような知ったかをかまさないことだな
118 :
2014/05/20(火) 20:41:00.48 ID:PNoH4CCh
119 :
2014/05/21(水) 08:29:43.45 ID:5ztNVRYW
スルースキルなさすぎ
120 :
2014/05/23(金) 18:50:26.17 ID:a5qO5SrY
2chの調子がおかしい。またscの件だろうか
121 :
2014/05/28(水) 00:33:35.50 ID:9OS265q7
JAX-RS(Jerseyとか)に対応したかったが、
あれJAXB専用だという結論に達した

EE標準で他になんか無かったっけ
122 :
デフォルトの名無しさん
2014/05/30(金) 02:26:09.40 ID:tZAWFEUT
テンプレート指定でpojoぶち込んで変換する程度なのになぜそんな難しい事だと思うんだろう・・・
ちゃんと考えたらオプショナルなライブラリとして切り出せるよ
123 :
2014/05/30(金) 06:22:55.92 ID:6rGA/Qk9
JAX-RSはInputStreamでリクエストを処理できるから何使ったっていいやろ
124 :
2014/05/30(金) 16:50:49.26 ID:qoYBEuMa
いたいんだろう
125 :
2014/05/31(土) 22:40:21.59 ID:5baBS0eH
@Templateはglassfish独自だったような。
もう一度JAX-RSの勉強してみる。
126 :
2014/05/31(土) 23:19:28.12 ID:5baBS0eH
できれば、glassfishに依存しない、jbossでも可能な純粋なJAX-RSが望ましい

それでプレーンテキストではなく、xml/htmlやjsonを
次のような形式で返すのはダメだった気がするけど、俺の気のせいか?
まあ試してみるか!

public class POJO {
@GET
@Path("/aaa")
@Produces("text/html") // @Produces("text/plain")
public String hello(){
return "<? XML宣言 ?><html><body>fuck you</body></html>";
}
}
127 :
2014/05/31(土) 23:24:09.73 ID:5baBS0eH
あと良く見たら、HttpServletResponseのOutputStreamで出力みたいな方法があるね
どうやって使うのか分からないけど、上記の方法(>>126)がダメだったらこっちを調べる
128 :
2014/05/31(土) 23:55:24.75 ID:5baBS0eH
今やってみたら普通にできた。俺は一体なにを勘違いしてたのだろう・・・。

今後の方針。
>>99の形式のAPIで作りなおす。
Apache Winkライブラリ実装によるJAX-RX1.1環境でテスト。
JBoss(JBoss Rest Easy)・GlassFish(Jersy)・Apache CXFでそのまま動くと思う。
129 :
2014/06/01(日) 20:41:47.80 ID:NBeHYS0k
アホは見得をはるな
130 :
2014/06/01(日) 23:39:25.02 ID:wxYsWL3a
まあそういうなって。とりあえず動く段階までできたよ

最適化の余地があるのと、ファイルパスのミスなどに対して
親切にエラーメッセージを吐かなかったり、内部実装は雑だが、
とりあえず前回のチュートリアル4(繰り返し出力)までできるようになった
http://hoeppe.the-ninja.jp/java_markup_ruler/html/tutorial/tutorial4.html
131 :
2014/06/01(日) 23:42:32.85 ID:wxYsWL3a
出力結果とリソースとなるhtmlは>>130のチュートリアルと同一のもので、
今回のバージョンでは次のようなコードになる

package test;

import java.util.HashSet;
import java.util.Set;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@ApplicationPath("/rest")
public class HelloApplication extends Application {


public HelloApplication(){
}

@Override
public Set<Class<?>> getClasses() {

Set<Class<?>> set = new HashSet<Class<?>>();
set.add(HelloWorld.class);
return set;
}

}
132 :
2014/06/01(日) 23:45:36.71 ID:wxYsWL3a
package test;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.ruler.markup.api.*;

@Source(file="/WEB-INF/html/tutorial4.html")
@Path("/hello")
public class HelloWorld extends Page {
@GET @Produces(MediaType.TEXT_HTML)
public String hello(){
String markup = super.draw();
return markup;
}
@Source
Group fragment = new Group();
@Source
Canvas list = (node) -> {
String[] names = {"A", "B", "C", "D", "E"};
for(int i=0; i<5; i++){
Node copy = new Node(fragment);
copy.in(node);
Node name = copy.key("name");
name.text(names[i]);
Node index = copy.key("index");
index.text("index("+i+")");
}
};
}
133 :
2014/06/02(月) 00:28:07.03 ID:avVQoG9D
HTMLでドキュメント書くのめんどくさい
今月末にEclipse4.4がリリースされる前には、こっちも仕上げたい
134 :
2014/06/02(月) 15:17:04.58 ID:avVQoG9D
ホームページに2.0のjar, javadoc、環境設定をアップしたぞ
135 :
2014/06/02(月) 22:31:14.92 ID:oBwkaK0R
何するフレームワークなの?
サイト見てみたけど、そもそもプロジェクトの大目的も書いて無ければ
設計思想も不明。誰に対して何を発信してるのかさっぱりわからん。

伝えるべき思想を失ったプロダクトは、やがて自身が失われていくだけ。
136 :
2014/06/03(火) 00:41:34.09 ID:W3xt/cSk
だからそういうのをhtmlで用意するのも手間がかかるんだって
見て分かる人は分かるし、分からない人は待つか、何か考えてちょうだい
137 :
2014/06/03(火) 01:14:51.76 ID:M8ABeZfO
>待つか、何か考えて

いや、もうすでにメジャーな解決手段が山ほどあるわけで。
先入観も予備知識もなく、いちJava開発者としてあなたのプロジェクトの
サイトを見た時に、なにがしたいのか、なんのために情報発信しているのかが
さっぱり理解できなかっただけ。
このスレ見たって、だれもダウンロードもしてなけりゃ使ってもいなさそうだし。

個人的な趣味や研究としてやるぶんには全然いいと思うけど、だったら
2chじゃなくてそれこそQiitaなりForkwellなりGitHubあたりで発信したほうがいいと思う。
138 :
2014/06/03(火) 01:35:20.27 ID:W3xt/cSk
>個人的な趣味や研究としてやるぶんには全然いいと思うけど、
>QiitaなりForkwellなりGitHubあたりで発信したほうがいいと思う。

その辺くわしくないの。ツールの使い方覚えるのも面倒くさいしさ
スレ違いという話だったら、ここ俺が建てたところだし、他に話題もないようだからいいでしょ
139 :
2014/06/03(火) 01:37:36.98 ID:W3xt/cSk
マ板が、2ch自体もすごく過疎ってるのは分かっている
それでも有用な案を出してくれる人が全くいないわけでもないんだよね
140 :
2014/06/03(火) 19:48:44.30 ID:W3xt/cSk
>なにがしたいのか?
考えてみたら特にないんだよね。なんとなく作ってきたものを改めて自己定義してみる

自分はもともとwicketの信者で、プレーンなHTMLでデザインするというのが構想の根幹にあったのだけど、
新バージョン(2.0)では、方向性を変えてテンプレートエンジンに収まった感じかな

velocityとかsmartyと競合するわけなんだけど、違いは.vmファイルとか、独自スクリプトがないところ

2.0シリーズはテンプレートエンジンのみで他のフレームワークと組み合わせて使い、
1.0シリーズはオレオレコンテナー付きでたぶんパフォーマンスも少し良い
141 :
2014/06/04(水) 14:47:53.40 ID:Q5ELIKYC
チュートリアルを足した
あと2つ足したら、ショッピングカートとか
解説本によくあるサンプルアプリを作りたいところだ

他のtodoリストとしては、ver2.1において
wicket:removeやjsp:includeにあたるものがほしいかな
それと、htmlに埋め込む属性がjava:canvas="xxx"のように、
属性の名前空間が"java:"なんだけど、なんとなく"view:"に変えようと思う
142 :
2014/06/07(土) 13:43:51.09 ID:A9n/DlGy
どうせ誰もダウンロードしてないしな
こっそり互換性のない変更しとくか
143 :
2014/06/08(日) 02:34:45.24 ID:XG86MQWF
プレーンなHTMLで書けるテンプレートエンジンは、Thymeleafってのが既にアルヨ
http://www.thymeleaf.org/
144 :
2014/06/08(日) 08:48:30.26 ID:muM/tUAt
それは全く参考にならない
ホームページのデザインがカッコイイのは認めよう
145 :
2014/06/10(火) 07:59:12.82 ID:ktfRooiL
チュートリアル追加
「02.動的なページ」
146 :
2014/06/10(火) 22:46:27.33 ID:JLLjF1QC
変なのが居着いちゃったな
147 :
2014/06/12(木) 11:36:50.08 ID:Ti9BpqIm
OGNL系のテンプレートエンジン、テンプレートにスクリプト埋め込むエンジンは根本的に失敗してるんだな
148 :
2014/06/20(金) 13:51:47.16 ID:jx2J3NNK
最近進める暇が無い。PHPはもう嫌だー
149 :
2014/07/03(木) 22:45:18.73 ID:yCk6IM6o
Javaもc#のマネしてlinq機能採用すればいいのに
λも中途半端で使いづらい
150 :
デフォルトの名無しさん
2014/07/04(金) 15:51:21.82 ID:G5qrkZAQ
xml,json,csvあたりは必要としていないし、RDBには力不足、
KVSではよく分からんけどlinqは汎用ではなく何か専用にならないと使えない
151 :
2014/07/04(金) 16:24:59.01 ID:Qs7fnNPT
>>149
λとかQuery関係はjvmで動くLispのClojureとか使うと楽なんだけどそういうのは無しな方向なんだろうなぁと思うとちょっとかなしい
152 :
デフォルトの名無しさん
2014/07/05(土) 14:24:57.02 ID:+lHURxz4
俺が一番ほしいのは右辺型推論の進化かな

jdk7で次のように書けるようになったけど

ArrayList<String> array = new ArrayList<>();

左辺と同一の型の場合、このくらい略せてもいいよね。

ArrayList<String> array = new();

ラムダができても以前のイベントリスナーみたいなのは今後もあるわけだし、
無名クラスが楽になるんだわ。

Listener listener = new(){
@Override void onA(Event e){}
@Override void onB(Event e){}
};
153 :
2014/07/05(土) 22:56:30.92 ID:CDO6L6dP
符号なしバイト変数さえあれば他はどうでもいい
154 :
2014/07/06(日) 02:46:09.09 ID:dYSoFRpx
とりあえずJigsawの実用化に全力を出せばそれでいい
155 :
2014/07/10(木) 14:30:00.56 ID:GIbup2ZZ
忘れてたけど先月にEclipseの新しいやつでてたね
156 :
2014/07/16(水) 13:40:07.49 ID:espMUnFN
>>155
LunaからJDK8に対応したね
Streamはstream()オブジェクトを作ってからフィルタを通す感じで、最初に
オブジェクトを作る必要がある以外は正直LINQと同じだと思った
ただクエリ形式がなくメソッド形式のみという違いはあるが
ラムダ式で使う事を前提にしてるんだからそれでいいと思うけど

ジェネリック型(総称型)もC#が入れてからJDK5で入れたもんな
157 :
2014/07/16(水) 21:20:06.52 ID:CuJEK7rH
JAVAでオンラインゲーム作れる?ブラウザゲームの
158 :
2014/07/18(金) 07:00:39.21 ID:ebrrZgfr
作れるよ。しかも方法はひとつじゃない〜
159 :
2014/07/18(金) 07:07:01.90 ID:ebrrZgfr
>>155
前のやつでもJDK8プラグインあったけど
何かインテリセンスがちょこちょこバグって初期化させられたり酷かった

コレで安心
160 :
2014/07/19(土) 17:36:20.89 ID:l+e584H0
インテリセンスはMS用語だボケ
161 :
2014/07/19(土) 17:38:57.19 ID:EB3tijtC
>>160
汎用的にはなんて呼ぶの?
Abbrebiation?
162 :
2014/07/19(土) 17:58:29.28 ID:1hzYIwWV
>>161
自動補完でいいんじゃね?
Eclipse的にはコンテンツアシストだけど
163 :
2014/07/19(土) 19:02:08.22 ID:EB3tijtC
>>162
おお、日本語で考えること放棄してた、ありがと
164 :
デフォルトの名無しさん
2014/07/22(火) 02:25:39.78 ID:WNvZZG9N
λ式勉強するのに良い本ある?
検索したらこんなのみつかったけど、どうかな?

Java8ではじめる「ラムダ式」
清水 美樹
http://www.amazon.co.jp/dp/4777518418/

Java 8 Lambdas: Pragmatic Functional Programming
http://www.amazon.co.jp/dp/B00J3B3J3C/
165 :
2014/07/22(火) 04:42:35.99 ID:oJhyWV2m
>>164
プログラムの根本からやるなら「計算論 計算可能性とラムダ計算 」とか「プログラム意味論」とかの方が良いよ。
jdk8のラムダ式を理解したいってだけだと後で困ると思う(jdkが消える未来とか嫌だけど)
166 :
2014/07/22(火) 07:12:52.02 ID:uw3Yx8Ji
C++とかC#にもラムダ式あるけど言語毎に覚えれば済む話じゃん
学者になって言語そのものを開発したいわけでなければね
167 :
2014/07/22(火) 11:45:21.95 ID:iu3Ufd63
構文やらをおぼえるんじゃなくて
機能的な限界と回避方法・設計アプローチを把握することが重要なのは理解出来てるよな
168 :
2014/07/22(火) 21:25:25.74 ID:uw3Yx8Ji
内容のない掛け声だな。アーキテクト様()ですか?
標準APIや大手OSS、GoogleのAndroidフレームワークとかが示す設計に従うだけだろ

アプリケーション層なんて別に昔のやり方でも十分なのよ
169 :
2014/07/23(水) 20:13:35.66 ID:QSNktYB/
その「設計に従う」ってことができない奴が多くてな…
170 :
2014/08/02(土) 16:18:37.55 ID:jWpcYE6C
結局、ラムダを連発するようなものは何も思いつかなかったぜ
171 :
2014/08/02(土) 19:28:08.08 ID:B8TVS7ae
ラムダ無駄
ラムダ無駄
ラムダ無駄
172 :
2014/08/03(日) 07:42:15.61 ID:VwgAezGJ
λ:波長
ε:エネルギー、微少量
δ:変分
173 :
2014/08/03(日) 08:40:48.79 ID:yEk1GdIN
θ:角度
ω:猫っぱな
174 :
2014/08/07(木) 13:49:26.82 ID:6rKKJZ7q
散々いわれてるかもしれないけど
ラムダ式、マルチスレッドの勉強するときに凄い便利だね
本文にスレッドの内容直接書いてる感じで
うさんくさいprivate class...{public void run()...って長ったらしく書く必要もないし
175 :
2014/08/07(木) 20:00:29.48 ID:AO7k9w1g
(;´Д`)ノθヴイィィィン
176 :
2014/08/16(土) 00:33:31.18 ID:RxOZrK77
この本買ってみた。分かりやすくてなかなかいい。

Java8ではじめる「ラムダ式」
http://www.amazon.co.jp/dp/4777518418/

O'Reillyにもこういう本あるけど翻訳でるのかなあ?
http://shop.oreilly.com/product/0636920030713.do
177 :
2014/08/16(土) 10:41:32.32 ID:uEJao/p1
ラムだって本一冊書くほど難しいことあるか?
178 :
2014/08/16(土) 19:51:46.69 ID:pdj/Wpw5
ない
C#のLINQと大して変わらない
179 :
2014/08/23(土) 02:24:00.98 ID:giz2gH8K
(;´Д`)ノθヴイィィィン
javaもいいけどさ、Groovyどうよ。
ラムダ風も昔からサポートしてるし、
並列処理GParsも備える。

javaコードからの動的スクリプト対応強化されてるし、もっとgroovyユーザー増えてほしいわ。
なんか日本は食いつき悪いよねこの言語。
180 :
2014/08/23(土) 02:41:54.74 ID:3qxK8v5g
厳密さがJavaのいいとこなのに
それ取ったらただの使いにくい言語やん
181 :
2014/08/23(土) 16:42:17.69 ID:67RgqQJA
そうだな
Scalaも完全にオワコン化しているしな
182 :
2014/08/23(土) 19:31:51.75 ID:ypGwZfbR
だってJavaで同じもの書けるんだもん。

「Javaのライブラリを呼び出せます!」っていかにも利点のように言うけど、
Javaを常に意識しながら、GroovyなりScalaの文法で書け、ってことじゃん。

すでにPythonやRubyの文法を知ってる人がJythonやJRuby使うのはわかるけど…。
183 :
2014/08/23(土) 19:56:44.05 ID:NjTFO7Nu
そこに颯爽とclojureが
184 :
2014/09/11(木) 23:02:07.22 ID:3OFSQCDc
つまりJavaにGenericsは不要である

http://pc5.2ch.net/tech/kako/1055/10555/1055519583.html
185 :
2014/11/01(土) 12:47:48.17 ID:xWhOrI96
floatの二次元配列を作ったけど、1次元目は行の管理用で、floatである必要ないんですが、
これってムダですかね?
でもArrayListだと値の再設定とか面倒だし・・・・
186 :
2014/11/02(日) 02:58:33.29 ID:Rnn+BjWS
ここって53のためのスレじゃないの?
187 :
2014/11/10(月) 21:14:43.63 ID:WFh7SgJF
>>185
昔みたいに1バイト減らすのにあれこれする必要もなかろう
どーんといっとけ
188 :
2014/11/16(日) 09:30:37.74 ID:CWn0dPnD
ムダというか作り方が悪い
189 :
2014/11/16(日) 13:00:17.01 ID:JHjMVLlI
mapじゃダメなんだろ
190 :
あぼーん
あぼーん
191 :
2015/07/15(水) 22:15:06.97 ID:jtYC3/OV
ラムダってzendの呼び出しっぽいの?
192 :
2015/07/15(水) 22:15:54.85 ID:jtYC3/OV
>>185
フロートって使う意味あるの?
ダブルじゃダメなん?
193 :
デフォルトの名無しさん
2015/12/19(土) 10:23:22.99 ID:BwkC8e+4
プログラマはMacを使ってるってマジ?
http://hayabusa3.2ch.net/test/read.cgi/news/1450395043/
194 :
デフォルトの名無しさん
2016/07/05(火) 11:10:25.61 ID:r4+ml8tJ
「Java EE以外の仕事に取り組むように指示が出た(中略)
Java EEチームへの資本投下がすでに終了している(中略)
収益的な意味があるという意見に加え、今後どちらにも転がる可能性がある(中略)
Java EEはエンタープライズ向けシステムなどで使われている」

Oracle、Java EEから手を引く可能性も | マイナビニュース
http://news.mynavi.jp/news/2016/07/04/261/
195 :
デフォルトの名無しさん
2016/07/12(火) 09:21:04.68 ID:cmjSgBCd
「2016年7月に開催されるJavaOneにおいて詳細を公開する計画でいる。
Oracleが次期Java EEに関してどういった方向性を示すのかは今年の9月に公開」

Java EEは死んでいない、これからも進化する - Oracle | マイナビニュース
http://news.mynavi.jp/news/2016/07/11/145/
196 :
2016/07/26(火) 06:52:02.44 ID:HN1KCMsQ
F#覚えた方がマシ
197 :
デフォルトの名無しさん
2016/09/21(水) 21:13:13.14 ID:meh3BzuJ
おいもう9月も終盤だぞ
198 :
2017/03/26(日) 18:52:28.58 ID:ZQ7XFyaE
J
53KB

新着レスの表示

★スマホ版★■掲示板に戻る■全部前100次100最新50

名前:E-mail: