タグ

ブックマーク / irof.hateblo.jp (23)

  • Javaアプリケーションを作るときにまずやってること - 日々常々

    DevLOVE関西で実験的なイベントをさせてもらいました。 devlove-kansai.doorkeeper.jp このイベントのおかげで、自分がアプリケーション作るときに最初にどうしてるかを確認できたので晒してみます。誰かの役に立つかどうかは知らない。あ、Macです。ある程度はWindowsでもいけると思うけど、ある程度だと思う。 なおSTSとかIDEのプロジェクト生成機能を使えば一発で済むことだったりする。宗教上の理由で使わないけど。 やってること 作業ディレクトリを作る ビルドスクリプトを用意する 必要なディレクトリを作る IDEを起動して取り込む テストを書いて実行する コミットする 基的にマウスを触る必要はないです。それぞれの詳細は次の通り。長く見えるかもしれませんが、(IDEAの起動とgradleのjarのダウンロード時間を除けば)全部で30秒くらいです。 作業ディレクトリ

    Javaアプリケーションを作るときにまずやってること - 日々常々
    msykxxx
    msykxxx 2018/03/07
  • Kotlinに手を出してみる - 日々常々

    Kotlinをはじめてみよう。 と思って、こんなことをした。 インストールする はろわをかく javapして眺める Kotlinに依存しない形(javaコマンド)でkotlincでコンパイルしたクラスを動かす GitHubのほうに同じのをあげてるます。 https://github.com/irof/sandbox/tree/master/kotlin インストールしてみる sdkmanでいけるんじゃないかと思って、sdk install kotlinを叩いてみる。 % sdk install kotlin Downloading: kotlin 1.0.1 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 -

    Kotlinに手を出してみる - 日々常々
    msykxxx
    msykxxx 2016/04/05
  • TimeUnitという物体 - 日々常々

    小ネタ。 java.util.concurrent.TimeUnit というクラスはご存知だろうか。ご存知?なら回れ右してください。お疲れさまでした。またの機会によろしくお願いします。 ... さて、読み進めているならばご存知でないはずなので、まずJavadocのリンクをば。 TimeUnit (Java Platform SE 8) J2SE 5.0 からいらっしゃるので、別段目新しくないどころか古参とも言えるクラスです。 クラスというかenumです。定義されている列挙はナノ秒、マイクロ秒、ミリ秒、秒、分、時、日の7種類。名前の通りTimeのUnitです。できることはその時間に応じた何かしら。 TimeUnitを使えば、3日が何時間かとかすぐに出せます。忘れがちな「1日が何秒か?」とかにも答えてくれます。 long 三日の時間数 = TimeUnit.DAYS.toHours(3); l

    TimeUnitという物体 - 日々常々
    msykxxx
    msykxxx 2015/06/02
  • Java7 体当たり/try-with-resources Statement - 日々常々

    JDK7 を使う準備が出来たので、体当たりします。 Java7 での個人的に嬉しいのが try-with-resources Statement です。AutoCloseable (を実装したクラス)の変数をこの構文で初期化すると、勝手に close してくれるってものです。 ではさらっと使ってみます。 public class TryWithResources { public static void main(String[] args) { try (AutoCloseable imp = new AutoCloseableImpl()) { // New! System.out.println("hoge"); } catch(Exception e) { System.out.println("catch:" + e); } finally { System.out.printl

    Java7 体当たり/try-with-resources Statement - 日々常々
    msykxxx
    msykxxx 2015/01/11
  • Javaであまりしないコーディング - 日々常々

    Java Advent Calendar 2014 - Qiita の9日目です。9日ったら9日です。 なんか難しいエントリが多い中ですが、空気を読まずに軽めでいきます。 Javaでは色々なコードの書き方ができるけど、実際あまりやらないよなーって思うコーディングについて、やらない理由を無理矢理書いてみた。 決して「やってはいけないコーディング」と言う意味ではないです。単に「私はあまりしない」程度で、一般的な(?)業務開発でもあまり見ない、くらいの位置付け。理解した上でやる分には全く問題無いですし、そう言うもんだと思って使っても良いとは思います。 複数変数を同時に宣言する int i, j = 2, k; 同じ型の変数(フィールドでもローカル変数でも)は同じ文で宣言できます。 けど、あまり使ってるのは見ません。 同じ型でしか使えないし、フィールドだとJavaDocコメント書き辛いし、初期化式

    Javaであまりしないコーディング - 日々常々
    msykxxx
    msykxxx 2014/12/10
  • 「Javaエンジニア養成読本」が出るのです - 日々常々

    Javaエンジニア養成読 [現場で役立つ最新知識、満載!] (Software Design plus) 作者: きしだなおき,のざきひろふみ,吉田真也,菊田洋一,渡辺修司,伊賀敏樹出版社/メーカー: 技術評論社発売日: 2014/11/11メディア: 大型この商品を含むブログ (6件) を見る Javaエンジニア養成読の特集の1つを書かせてもらいました。 まさかの名プレイ。みんな名だったから……(流されるスタイル)あ、どれかは内緒です。バレバレでしょうけど内緒です。 エンジニア養成読シリーズみたいな感じで、少し大きめの雑誌。モックムックって言うらしい。読って"どくほん"って読んでたんだけど"とくほん"って読むんだね。どっちでも良いみたいで"どくほん"で通ってるみたいだけど。 Java入門と言うことで 内容は普通の入門書のように、簡単な構文の解説とか、変数とは云々とか。そんな

    「Javaエンジニア養成読本」が出るのです - 日々常々
    msykxxx
    msykxxx 2014/11/07
  • JUnitの知識を棚卸し #JJUG - 日々常々

    Java Advent Calendar 2011の16日目です。 前:JSFUnitでテストしよう! | Kokuzawaの日記 次:JavaEE使ってウェブアプリケーションつくろうよ - 水まんじゅう 書いてること JUnit の話です。使い始めからちょっとだけ踏み込んだ辺りですかね。ちょっとだけなので普通に使ってる方には不要な内容かと思います。私の今持ってる知識を書き殴ってみた感じになりましたが、微妙な理解と残念な文章力の相乗効果でグダグダになってます。お察しください。 内容は Assertion->カスタムAssertion、Matcher->カスタムMatcher、Rule->カスタムRule です。 Assertion JUnitは assert があってこそです。まず org.junit.Assert にある馴染み深い assert を並べてみます。 assertEquals

    JUnitの知識を棚卸し #JJUG - 日々常々
  • enumあれこれ - 日々常々

    EffectiveJava読書会で意外とenumネタで需要がある気がしたので、ちょっと書いてみます。内容的に目新しいものは無いはずの事を書きますので、理解されている方はツッコミ所探しでもしてください。 読み方 enumは enumerate か enumeration が語源になってるわけで、素直にいけば「イニュム」になります。けれど実際どう読まれるかは別の話です。最も大事なのは伝わる事なので、私は基相手が発音したものに合わせます。コウモリです。それはいい。 実現場では「いーなむ」と発音することが多いです。アクセントの位置は地域で変わるかもしれませんが、日では「いーなむ」と言っておけば通じない事はないと思います。「いにゅーむ」とか下手に言っちゃうと「は?」って顔される可能性が非常に高いです。英語のセッションの動画見て「い(え)にゅーむ」って言う事にしたのですが、いざ言おうとしたら「いに

    msykxxx
    msykxxx 2014/08/26
  • 今年とは一体なんだったのか - 日々常々

    いろふAdventCalendar2013の25日目です……今年こそは続かないと思ったのに。 なんか今年はアドベントカレンダー、複数日を書くのがあたりまえになってるようで、数あるアドベントカレンダーもそんな感じで埋まってるのを横目に、「あー今年は書かない感じかなー」なんて思ってました。なんとなく"全部俺"を除いて一人一回にした方がハードルも下がって良いんじゃないかなーとか、とは言え続かなかったらそれはそれで残念な感じになるのかなーとか、モヤモヤと思いつつ師走のアレソレに身を任せて今日に至ります。でもアドベントカレンダーは普段あまり表に出ない(?)方の一つの後押しになると思うんですよ。書かれるのはその分野のお歴々なことも多いので、そこに並んでエントリを書くってのは、ある意味ハードルを超えるとか云々。いや募集はじまって即飛び込めばいいだけなんですが。なかなか、ね?この辺りは答えが出ないのでモヤ

    今年とは一体なんだったのか - 日々常々
    msykxxx
    msykxxx 2013/12/26
  • JUnit実践入門の感想とJUnit依存具合と読書会と #junitbook - 日々常々

    JUnit実践入門が 2012/11/21 に発売されました。献ありがとうございます! 初めてレビューもさせて頂きまして、執筆が進むにつれ話題に上げたいなぁとウズウズする毎日が続いておりました。最初に原型っぽいものを見せて頂いたのが 2011/11/23 で、丁度一年になりますか。見た瞬間に「まさにこれが欲しかった!早く世に出て欲しい!」と思ったのは今でも覚えています。 対象は、JUnitナニソレな方から、ある程度使ったことがある方まで。私がよく話してることの多くが、このにはもっと詳しく書かれてたりします*1。気でおすすめ。 感想 和田さんの推薦のことばとかぶってしまいますが、やはり特筆すべきは語彙の豊富さです。SUTや4フェーズテスト、テストダブルなどが説明なく通じれば色々捗ります。具体的な話をするときは、これらを下敷きにして話をしたいですね。 ユニットテストはみんな「した方がいい

    JUnit実践入門の感想とJUnit依存具合と読書会と #junitbook - 日々常々
  • NUnitのTestCaseが羨ましいのでJUnitでできるようにしてみた - 日々常々

    車輪の再発明万歳。 https://github.com/irof/junit-case-runner こんな感じ。(若干予定含む) @Tests({ @Case({"str1", "str1"}), @Case(value = {"str2", "str2"}, name = "hoge"), @Case(value = {"str3", "str3"}, expected = Exception.class), @Case({"str4", "str4"}) }) public void parameterTestsCase(String actual, String expected) { assertThat(actual, is(expected)); } アノテーションとかJavaの制約が地味にめんどくさい。 同じアノテーションが複数書けない。 だからラップする Tests の

    NUnitのTestCaseが羨ましいのでJUnitでできるようにしてみた - 日々常々
    msykxxx
    msykxxx 2013/10/16
  • 関ジャバでJUnitな話をしたので #kanjava #junitbook - 日々常々

    関西Javaエンジニアの会'13 7月度 - connpass 関西Javaエンジニアの会'13 7月度を7月31日に開催しました。6月に続いて二ヶ月連続ですね。三ヶ月連続は無いので心配しないでくだ……あ、8月にはJavaEEと言うかGlassFishと言うか、あれがありますね!(「関ジャバのイベント」ではありませんが。) Java EE 7 & GlassFish について語ろう - DevLOVE関西 | Doorkeeper 今回の関ジャバは@jyukutyoさんのindy、@chipstar_lightさんのDDD、2連続となる@haljikさんのパズラー、あと私のコレでした。 スライド スライドあげておきます。内容の詳細は……結局このブログへのリンクになるので、中で触れてるのもあわせてリンク並べておくことで代替。 JUnitの知識を棚卸し #JJUG - 日々常々 assertT

    関ジャバでJUnitな話をしたので #kanjava #junitbook - 日々常々
  • JJUG CCC 2013 Spring 行ってきました - 日々常々

    5月11日 JJUG CCC 2013 Spring(東京都) 2013/5/11に開催されたJJUG CCC 2013 Spring に参加してきました。CCCは2度目……かな。二年前の勉強会ツアーが思い出されます。 東京勉強会ツアーしてきました。 - 日々常々 300人弱の参加人数で、結構盛況だったように思えます。 感想文でLTしました JJUG CCC 2013 Springの懇親会LT セッションについて 全体的に基的な「わかりやすい」のが多かった気がします。もう少し尖ったのがあっても良いんじゃないかなと思ったり。 マルチトラックで行くならレベル感的な表示があった方が良いのかなーとも思いました。公募も募集もそんな感じでしたら……難しいかな。自分のセッションでもレベル感なんてなかなか明確にさせるのは難しいので何ともだけども。 その他 LTは良いんだ。当日言われましたが、まぁ「あるか

    JJUG CCC 2013 Spring 行ってきました - 日々常々
  • Eclipseのアレ、IntelliJ IDEAでどうやんの? - 日々常々

    Mac OS X 10.7.5 IntelliJ IDEA 12.0.1 community edition どうしてもオシゴトでは固定でEclipseさんを使うことが多いため、なかなか他のIDEさんに手を出しづらいのが悩みの種だったりする今日この頃。今日この頃と言いつつここ数年。正直Eclipseさんで困ってないってのもありました。 しかし、GroovyさんをEclipseさんからゴニョゴニョしてると、たまに不機嫌になってそっぽ向いたりして萌えるいまいちイケてなくて、IntelliJ IDEAさんのお力を借りねばならんかなーと思いはじめた次第です。 さて掲題の話は既出もいい所。公式にもあるくらいだし、日語訳してくれてる方もいる。 IntelliJ IDEA:: FAQ for Eclipse users (公式) Eclipseユーザの為のIntelliJ IDEA Q&A - 砂漠の

  • Javaっぽいプログラマになる方に薦める5冊 - 日々常々

    いきなりぶっちゃけますが、5冊で足りる訳がありません。でもいきなり難攻不落の城を見せ付けられても困ります。数が多いとそれだけで「うわ、こんな読まないといけないの!?」と思ってしまうものです。なので、私がこれまで読んできたの中から5冊だけピックアップしてみました。ここに挙げたものが全てではありません。これらを読むことで次のに手が伸びるようになると幸いです。学習は継続しなければ意味がありません。だからこそスタート地点はしっかりした方がいいと思います。 ※プログラミングを全く知らない人は対象にしていませんので、悪しからずご了承下さい。最低限の文法等は修得していて、何かしらのシステム開発に携わっている、携わろうとしている、そういう方向けです。 達人プログラマー ソフトウェア開発は技芸です。技芸と言うことは達人が居ます。その域を知って目指すことで、プロフェッショナルな開発者になれると思います。意

    Javaっぽいプログラマになる方に薦める5冊 - 日々常々
  • 私の技術書の選び方 - 日々常々

    技術者たるもの、毎月積読タワーを成長させる義務があります。嘘です。成長させちゃいけません。とは言え毎月のように新しい技術書に触れる事は重要だと思います。私はそれほど読書速度も速くないし、勤勉でもありませんが、それでもそこそこの量は読んでると思います。 毎月の技術書代 「技術書に幾らかけているか?」はたまに話題になります。私の場合だいたい 1万円/月 です。値段がどうしたと思うかもしれませんが、だいたい冊数がわかります。3,000-4,000円 が多いので、だいたい3冊ってことですね。 費用自体は収入や読書速度、近くの図書館の蔵書などにも左右されるとは思いますが、勉強会でお会いする方々に聞いてみたところだいたい似たようなものでした。中には 2-3万円 かけてる方も居ましたが、大事なのは継続して読み続ける事だと思います。なので月当たりの費用を聞いてみました。はそのまま身に付きますので、払えな

    私の技術書の選び方 - 日々常々
  • プログラマになろう - 日々常々

    もうすぐ4月になると言う事で、時事ネタ。コの業界、特にエンタープライズなSIerやその協力会社なんかに就職される方向けに、夢や希望をなるべく潰さないつもりで書いてみる。 PGになってはいけない SIer用語でPGって言葉があります。あとSE、PL、PMとかありますけど、序盤は関係ありません。これらは契約形態は違うのですが、作業内容よりも主に単価で分けられます。で、PGは「末端作業員」と言う意味です。 PGはプログラマではありません。プログラマに失礼です。PGにプログラムは作れません。また、PGはコーダーでもありません。PGにコードは書けません。PGはSEの指示の元、似た事をしている既存システムのコードを切り貼りして、それっぽく動くものを作る下請け作業員でしかありません。そこに創造的な仕事は一切ありません。多くのPGは自らの意思か外部からの圧力によって、思考を放棄もしくは停止しています。PG

    プログラマになろう - 日々常々
  • assertEqualsよりassertThatが好きなわけ - 日々常々

    assertEqualsよりassertThatが好きなのは、Matcherもあるけど、引数の順番に悩まないからです。英語として云々なんてどうでもいい。。。。 2012-07-13 00:07:14 via YoruFukurou 元ネタ*1は「xUnitよりRSpecがいいとか言ってたひとは英文ぽいのがいいとか言ってたけどさー」みたいな感じでしたが、xUnitであるところのJUnitでも最近は assertThat なんてもんが入って英文ぽさを売りにすることもあったりなかったり。 ツイートでも言ってる通り、英文ぽさなんてどうでもいいと思ってます。可読性は大事だけど、読めるならそれ以上は要らない派。ならば決め手は何だ。書きやすさと、エラー時の表示です。 assertEqualsのばあい こんな感じに書きますね。短い。書く量が少ないのは良いです。でも1番目と2番目どっちがどっちだったか。 a

  • Javaプログラマであるかを見分ける10の質問 に答えてみる - 日々常々

    Javaプログラマであるかを見分ける10の質問 - やさしいデスマーチ "自称Javaプログラマを見分ける"や"問題なく答えられる"と、軽く答えるには高いハードルな気もしますけれど、今日時点の私のスナップショットとして晒しておきます。決して露悪趣味があるわけではありません。 主に業務系Webアプリケーション開発で給料貰ってるプログラマです。ホーム言語はJava*1で経験年数3年も超えてます。回答する事自体がすっごくホラーです。 質問 ==演算子とequalsメソッドの違いは何か? 文字列の連結は原則として+演算子を使ってはならない理由を説明せよ。 Listのようにジェネリクス型を使う主たる目的は何か? オブジェクトがガベージコレクション(GC)される主たる条件は何か? チェック例外と非チェック例外の違いを型と例外処理の観点で説明せよ。 フィールドのアクセス修飾子をprivateにしgett

    Javaプログラマであるかを見分ける10の質問 に答えてみる - 日々常々
    msykxxx
    msykxxx 2013/03/23
  • Java8で実行時にメソッドの引数の名前がとれるぽい - 日々常々

    JEP 118: Access to Parameter Names at Runtime http://download.java.net/jdk8/docs/api/java/lang/reflect/Parameter.html#getName() Java8で実行時に Parameter#getName でメソッドの引数の名前がとれる感じです。 やってみる こんなクラスのー public class Hoge { public void method1(String hoge) { } public void method2(Object fuga, Object piyo) { } } メソッド名と引数を引っ張り出すと、こう出る。 method1[ java.lang.String hoge] method2[ java.lang.Object fuga, java.lang.O

    Java8で実行時にメソッドの引数の名前がとれるぽい - 日々常々