タグ

ブックマーク / yujisoftware.hatenablog.com (9)

  • JJUG CCC 2021 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く

    JJUG CCC 2021 Fall に参加しました! JJUG CCC オンラインも3回目ということで、JJUG運営の方も参加者の方もお互い慣れてきた感じがします。 自分も、今回は夕方から用事があったので、時間差でセッションを見ながら電車で移動ということをやりました。ラジオの生放送と Radiko のオンデマンドの組み合わせみたいな感じで、リアルタイムでみんなで一緒にわいわいできるのも、時間と場所にとらわれずに見れるのもどっちもいいなーと思うようになりました。 だから、オフラインで集まりつつ1、今回のように配信でも見れるといいのかな、と。 コストが不安になりますがw セッションは、最近のお仕事に関連しそうな「エキサイトブログ刷新に向けて序章」など、パフォーマンス改善やリファクタリングの話を中心に聞いていました。 教科書的な話だけでなく、なぜか歴史的経緯で不思議な構成になっているという話に

    JJUG CCC 2021 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く
    quodius
    quodius 2021/11/22
  • JJUG CCC 2021 Spring ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く

    JJUG CCC 2021 Spring に参加しました! 前回に引き続き、今回もオンライン開催となりました。 オンラインだと移動が楽というメリットがあって、これはどっちのセッション見ようかなーというときに、途中でさっとほかの動画に移れるのは便利でした。 あとは、家なので適当にお菓子つまんだり休憩時間中にちょっと横になって昼寝したりと、気軽に楽しめました。 (オフラインと違い、コーヒースポンサーがないのが残念w) 今回、一番おもしろかったのはとださんの「Java8〜16におけるバイトコード生成の変化」でした。 コンパイラーが変なクラスファイル吐くけど⇒Java言語仕様に則っているよ!とか、短いながらもへぇ!という内容が満載でした。 JJUG CCC は、こういう Java の奥深い話が聞けるのが個人的に大好です。 次回の秋も、オンライン開催予定とのことです(日程未定)。 2022年の JJ

    JJUG CCC 2021 Spring ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く
    quodius
    quodius 2021/05/26
  • JJUG CCC 2020 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く

    JJUG CCC 2020 Fall に参加しました! 今回は、初のオンライン開催ということで、いつもと違って自宅からの視聴。 でも、twitter のハッシュタグを見るとみんなでわいわいやってる感は変わらず、質疑応答もありでいつもと変わらず楽しめました。 それに加えて、気軽にセッションを行ったり来たりできたり、放送中に登壇者の方が随時コメントをしていたりと、オンラインならではというところがあって、これがとてもよかったです。 とはいえ、懇親会がないので、、、ちょっといつもよりもモチベーションが低めでした。 自分の主な参加動機は一度にいろんな話を聞けるってところだし、人見知りだし、懇親会がないならないでもいいかなとか最初は思っていたんですが…。 いざなくなってみると、全国からいろんな人に会える機会というのは貴重だし、自分自身それを楽しみにしていたんだなって改めて気づきました。 次回は、オフラ

    JJUG CCC 2020 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く
    quodius
    quodius 2020/12/04
  • JJUG CCC 2019 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く

    JJUG CCC 2019 Fall に行ってきました! 最近 Java のシステムをまたいじるようになって*1、 Java 欲が高まってきていたところにいろんなセッションを聞けてすごいテンション上がりました。 特に、「開け!ドメイン駆動設計の扉」がちょうどこれから一部のシステムをリプレースするにあたって導入したいけど「DDD、さっぱりわからん」と思っていたところだったのでとても助かりました。 また、マニアックな話も多数あってやっぱり JJUG CCC 最高!という気持ちです。 「CLR の ValueType を起点に Project Valhala を覗いてみる」とか「オレ流OpenJDK「の」開発環境」とか、普段の JJUG では聞けない、でもとても知りたかった内容でした。こういうの、もっと聞きたい! そして、懇親会で話しかけてくださった方、ありがとうございました! すごく楽しかった

    JJUG CCC 2019 Fall ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く
    quodius
    quodius 2020/11/13
  • Enumerationを拡張for文で使う - 地平線に行く

    たまに、Java の Enumeration を使ったサンプルを見かけることがありますが、その大半が Iterator と同じようなアクセスの仕方をしています。 NetworkInterface nic = NetworkInterface.getByName("eth0"); Enumeration<InetAddress> nicAddress = nic.getInetAddresses(); while(nicAddress.hasMoreElements()){ InetAddress address = nicAddress.nextElement(); (以下省略) でも、ちょっと工夫して拡張 for 文を使った方が見やすいです。 NetworkInterface nic = NetworkInterface.getByName("eth0"); for(InetAddres

    Enumerationを拡張for文で使う - 地平線に行く
    quodius
    quodius 2017/07/13
  • JavaとC#で、フィールドの初期化順序が違う (JavaプログラマーがC#でプログラムを書いて引っかかったところ その5) - 地平線に行く

    C# のを読んでいたら、クラスのフィールドの初期化順序が Java と違っていてびっくりしました。 Java のフィールド初期化順序 Java でインスタンスを作成した場合、親クラスのフィールド初期化 → 親クラスのコンストラクタ実行 → 子クラスのフィールド初期化 → 子クラスのコンストラクタ実行 の順番で処理が行われます。 そのため、下記では Parent クラスのコンストラクタを呼び出した時点では Child クラスの c フィールドは初期化されていないため、System.out.println での出力が初期値である null になっています。 public class Program { public static void main(String[] args) { new Child(); } public static class Parent { // 順序① - 親ク

    JavaとC#で、フィールドの初期化順序が違う (JavaプログラマーがC#でプログラムを書いて引っかかったところ その5) - 地平線に行く
  • LINQの拡張メソッド一覧と、ほぼ全部のサンプルを作ってみました。 - 地平線に行く

    C#のLINQメソッドは超便利!!、なんですが…肝心のAPIがわかりづらいです。 そこで、種類ごとにまとめて、簡単なサンプルを書いてみました。 結果の表示に、独自の拡張メソッド ToResult(this IEnumerable) を使用しています。このメソッドは、文の最後に記載しています。 サンプルコードのダウンロードはこちら。 要素の取得(単一) メソッド名 機能 ElementAt ElementAtOrDefault 指定した位置(インデックス)にある要素を返します。 First FirstOrDefault 最初の要素を返します。 Last LastOrDefault 最後の要素を返します。 Single SingleOrDefault 唯一の要素を返します。該当する要素が複数ある場合、例外をスローします。 該当の要素がない場合は… 「〜OrDefault」が付いていないメソッ

    LINQの拡張メソッド一覧と、ほぼ全部のサンプルを作ってみました。 - 地平線に行く
    quodius
    quodius 2013/05/30
  • Javaのメソッド名によく使われる単語・接頭辞 - 地平線に行く

    Javaの標準APIjava.*, javax.*)に含まれるメソッド名を分析して、よく使われている単語や接頭辞を抜き出してみました。 これで、もうメソッド名を決めるのに迷わない!はず…。 接頭辞 順位 単語 意味 代表例 出現回数 1 get 取得する List#get() 21198 2 set 設定する List#set() 8197 3 is 〜かどうか List#isEmpty() 4373 4 remove 取り除く List#remove() 2403 5 add 追加する List#add() 2213 6 create 作成する URI#create() 853 7 paint 描画する Component#paint() 731 8 update 更新する Component#update() 573 9 contains 含んでいるか List#contains()

    Javaのメソッド名によく使われる単語・接頭辞 - 地平線に行く
    quodius
    quodius 2012/10/15
  • JavaプログラマーがC#でプログラムを書いて引っかかったところ その1 - 地平線に行く

    案件が変わり、仕事で使う言語がJavaからC#に変わりました。 その際に、C#でプログラムを書いていて引っかかったところをメモしておきます。 とりあえず、連想配列(Dictionary)を使ったときのことをメモ。 書き方の違い C#は、連想配列用に言語仕様が用意されています(インデクサ―)。 /* -- Java -- */ String str = map.get("abc"); /* -- C# -- */ string str = dictionary["abc"]; 最初に書いた際、このことを忘れて取得メソッドを探してしまいました・・・*1。 挙動の違い 要素を登録する際に、すでに同じキーを持つ要素が登録されていた場合、 Javaは、新しい要素を登録する。このとき、すでにある要素を戻り値として返す。 C#は、新しい要素を登録する。このとき、すでにある要素を戻り値として返さない。 た

    JavaプログラマーがC#でプログラムを書いて引っかかったところ その1 - 地平線に行く
    quodius
    quodius 2012/09/19
  • 1