タグ

javaに関するlam_bdaのブックマーク (23)

  • Google I/O 2018メモ+驚いたところ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Androidが好きなのでAndroid多めです。 見ながらただ当にちょろっとメモしただけのやつと2回見たメモがあります。 間違えがたくさんある気がしているので、何かあればご指摘ください。ソースとして使う前に動画見て確認お願いします。。 驚いたところは太字でかいています ★がついているのはYoutubeでももう一度見たので、割と情報が整ってると思います。 ちょっと全部見返すの時間的に厳しいので一度公開しますが、もう少し見たらWIP外します。 Keynote (Google I/O ’18) ★ Gmail Redesign 機械学習

    Google I/O 2018メモ+驚いたところ - Qiita
  • Seleniumの弱点を補うブラウザ自動テスト用フレームワーク「Selenide」とは

    Webアプリケーションのテスト自動化に特化したJava用のフレームワーク「Selenide」は、人気のある「Selenium」と比べて大きなアドバンテージがある。使い方やコードを交えて解説しよう。 ブラウザテストに特化したフレームワーク「Selenide」 Webアプリケーションのブラウザテストを自動化するツールとして、「Selenium」がよく知られています。@ITの読者でも使っている方は多いのではないでしょうか。人気のあるSeleniumですが、実際に使っていると不満に思う点もあると思います。SeleniumはWebブラウザの操作を自動化するためのツールであり、Webアプリケーションのテストに特化したツールではありません。そのため、Seleniumを使ったテストコードには、冗長になってしまう部分がありました。 特に、非同期処理についてSeleniumは苦手としており、「Selenium

    Seleniumの弱点を補うブラウザ自動テスト用フレームワーク「Selenide」とは
  • Java製のシューティングゲームをTypeScriptでWebに移植する - 技術ブログ | 株式会社アイプランニング IPlanning corporation

    10年前にIPL社員が作ったJava製のシューティングゲームを、Web技術を使ってリメイクしました。 また、JavaからTypeScriptへの移植のポイントについても記載します。 何はともあれゲームを遊ぶ 以下のURLからプレイできます。 https://iplanning.heteml.net/2018-shooting/ Chrome, Firefox, Edgeブラウザで動作確認しております。スマートフォンには非対応です。 操作方法 スペースキー:ゲーム開始&弾を撃つ カーソルキー:上下左右に移動 ハイスコアはお使いのブラウザ内(LocalStorage)に記録されます。 経緯 アイプランニングでは、毎年新人に自由課題を課しています。 ゲームやカロリー計算機など、人によって作るものはそれぞれですが、 10年前に筆者は、当時それなりに新しい技術だったJavaとAWT(当時既にSwin

    Java製のシューティングゲームをTypeScriptでWebに移植する - 技術ブログ | 株式会社アイプランニング IPlanning corporation
  • イマドキなAndroid音楽プレーヤーの作り方 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? こんなものを作ります とても一般的な音楽プレーヤーの雛形を作ります。 また、専用の処理を実装しなくてもWearやAutoに対応できる方法を取ります。 Android音楽プレイヤーに関するの日語記事って皆無ですよね。 色々苦労してなんとか実装できたので記事にしました。 長くなりますが、よければお付き合いください。 実装だけ見たい方は、いざ実装まで飛ばしてください。 Android上で動く音楽プレーヤーのあるべき姿 PCで動く音楽プレイヤーを作る時は、MediaPlayer等のインスタンスの各種メソッドを Formに貼り付けたボタンのク

    イマドキなAndroid音楽プレーヤーの作り方 - Qiita
  • Webサービスの品質向上のために導入しているサービス・ツールまとめ - LCL Engineers' Blog

    LCLが運営しているWebサービスは、品質向上のために、複数のサービスやツールを利用しています。今回はそれらのサービス・ツールをまとめてご紹介します。 品質向上のためのプロセス それぞれのサービス・ツールは以下のタイミングで利用しています。 各サービス・ツールの紹介 各サービス・ツールについて、一つずつご紹介します。 なお、今回はコードレビューや手動テストについては取り上げません。 SideCI SideCIとは、コードレビューを自動化してくれるサービスです。GitHubのプルリクエストを自動で解析して指摘してくれます。 Ruby, PHP, JavaScript, CSS, Java, Python, Go, Swiftなどに対応しているようです(2018/02/15現在)。 詳細は以下の記事でご紹介しています。 techblog.lclco.com SideCIは、プルリクエストが作ら

    Webサービスの品質向上のために導入しているサービス・ツールまとめ - LCL Engineers' Blog
  • 「FuzeDrive for Ryzen」ミニレビュー。19.99ドルで買えるHDD高速化機能は,ゲームPCのデータ読み出しをどこまで高速化できるのか

    19.99ドルで買えるHDD高速化機能は,ゲームPCのデータ読み出しをどこまで高速化できるのか FuzeDrive for Ryzen Text by 石井英男 CES 2018合わせの報道関係者向け説明会で登壇した,AMDのLisa Su CEO AMDはCES 2018の開催に合わせて,2018年にリリース予定の製品の概要やロードマップを明らかにしたが(関連記事),その中に,Enmotusの「FuzeDrive」と呼ばれるHDD高速化ソリューションをAM4プラットフォーム向けに提供するという話があった。 FuzeDrive自体は,SSDなどの高速かつ小容量のストレージと,HDDなどの低速かつ大容量のストレージを組み合わせて,高速かつ大容量のストレージとして使おうという技術だ。“FuzeDrive語”では「高速かつ小容量のストレージ」を「Fast Tier」(ファストティア),「低速かつ

    「FuzeDrive for Ryzen」ミニレビュー。19.99ドルで買えるHDD高速化機能は,ゲームPCのデータ読み出しをどこまで高速化できるのか
  • defmacro - The Nature of Lisp

    Introduction When I first stumbled into Lisp advocacy on various corners of the web I was already an experienced programmer. At that point I had grokked what seemed at the time a wide range of programming languages. I was proud to have the usual suspects (C++, Java, C#, etc.) on my service record and was under impression that I knew everything there is to know about programming languages. I couldn

  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
    lam_bda
    lam_bda 2010/11/07
  • ジェネリクスの代入互換のカラクリ - プログラマーの脳みそ

    Javaジェネリクス再入門 - プログラマーの脳みそでは、「変数の型の宣言」の項で「ジェネリクスの<>の中は一般のJavaの型の代入互換性とは異なる。このことはよく覚えておかなくてはいけない。」と言ったものの、深入りはしなかった。 このあたりについて深入りしてみようじゃないか。 とりあえずサンプルコードはJavaで記述していくが、このあたりはジェネリクス指向の概念の部分だから、あまり言語に依ることはない。便宜的にJavaで書く、としておこう。 まず、型変数の境界について考えるために以下の継承関係のクラスを用意しておく。 public class A {} public class B extends A {} public class C extends B {} public class B2 extends A {} public class C2 extends B {} これは図で

    ジェネリクスの代入互換のカラクリ - プログラマーの脳みそ
    lam_bda
    lam_bda 2010/11/07
  • アクティブレコードパターンの本当の意味 - ひがやすを技術ブログ

    アクティブレコード 1行に対応 ドメインロジックを実装している 最近はDBよりの所にドメインロジックを書くのは廃れている RailsのActiveRecord、S2JDBCとか データマッパー ドメイン設計したクラス群とERモデルのマッピング Hibernate、DjangoのORマッパー オブジェクト指向により忠実 PofEAAをみると、アクティブレコードは、「テーブルの行をオブジェクトでラップしたもの」で、データマッパーは、「データベースとオブジェクトを独立して設計しそれらを結びつけるもの」と書いているので、アクティブレコードパターンは勘違いされやすいかも。 アクティブレコードの定義を原文から持ってくると次のようになります。 An object that wraps a row in a database table or view, encapsulates the database

    アクティブレコードパターンの本当の意味 - ひがやすを技術ブログ
    lam_bda
    lam_bda 2008/11/29
    エンティティクラスは、フレームワークで提供されているデータアクセス機能を持ったクラスを継承して作る
  • 経験年数2年半のJavaプログラマがちょっと書くよ。

    はてな界隈では、Javaって、あんま人気無いみたいだけど、ちょっと書かせてよ。 SIerでお仕事してると、派遣とか常駐とか言う形で、色んな会社に行って、違う会社の人とお仕事するんだけど、「経験年数n年(n>3)です」っていう人達が、恐ろしく使えなくてびっくりすることがしばしば。 特に、Java 5以降の機能 拡張for構文Enum可変長引数辺りを全く知らなかったり。 って言うか、Javaの極々基的な知識である equals/hashCodeの実装Serializableの実装Iteratorの実装が全く出来ないんだよね…。 そういうのを知らなくても(出来なくても)業務をこなせちゃう(?)のが、Javaの言語特性だとは思わないけど、こういう人達だらけなんだよね…。 PMが新しい人を採用しようとして、ここら辺の知識を割りと厳し目にテストしたら、候補が10人居たのに全滅で、プロジェクトのスター

    経験年数2年半のJavaプログラマがちょっと書くよ。
    lam_bda
    lam_bda 2008/08/24
    そういう人は別にJavaだけ3年以上やっている訳でもないからでは・・・。あとずっと古いシステムの保守にいるとTiger使うことなんて無いに等しいんだから、知識が1.4.x止まりでもおかしくないんじゃないかなぁ。
  • 私がScalaを選んだ理由:CodeZine

    はじめに 最近自分の中でScalaという言語が熱い。RubyPython等のスクリプト言語や、JavaやC#等現在のエンタープライズ領域を支える言語、HaskellやErlangといった関数型言語もある。そんなにいっぱいいい言語がある中で、なぜ今Scalaなんだろう? そんな理由を解説してみたいと思います。Rubyの生産性 ここ数年LLブームで、とりわけ日でのRuby人気は目覚ましいものがあります。実は筆者もRubyはとてもお気に入りです。最初に触り始めた頃は、「Rubyはいいよ」という話だったので勉強がてら小さなサンプルを作って遊んでいたのですが、その頃は「楽しいな」「気持ちいい言語だな」という程度であまり熱心にやっていませんでした。なぜなら私は「仕事で使える」ということを非常に重視するタイプだからです。 その認識が一変したのがRubyによるWebアプリケーション開発のプラットフォー

    lam_bda
    lam_bda 2008/05/18
    それにつけてもScalaの見た目はキモい。Erlangぐらいキモい。
  • 2008-05-16 - 出羽ブログ 〜 はてな版 〜 型推論のS2Containerラッパー

    型推論の要素を盛り込んだS2Containerのラッパーを作ってみました。 たとえば、 HttpServletRequest req = SingletonS2Container.getComponent(HttpServletRequest.class); JdbcManager jdbcManager = SingletonS2Container.getComponent(JdbcManager.class); HogeService hogeService = SingletonS2Container.getComponent(HogeService.class); は、次のように書き換えることができます。 HttpServletRequest req = S2.lookup(); JdbcManager jdbcManager = S2.lookup(); HogeService

    2008-05-16 - 出羽ブログ 〜 はてな版 〜 型推論のS2Containerラッパー
  • 典型的な Java屋 は JSP を使うことに何の疑問も持っていない - kwatchの日記

    t_yanoさんのコメントより: 例えばコメント欄に具体例として「たとえばJSPでHTMLエスケープして値を出力するのにわざわざと書くことに疑問を持っている人はどれだけいるでしょうか。私は見たことありません」とか出ていますよね。 で、例えばその「見たことない」例がここにいるわけですよ。私です。いや文字しか見えないでしょうがw 私はJSPなんて死ねばいいのにと公然といってますし、Railsがrhtmlにスクリプトを直接書いてOKなんなら、もうカスタムタグなんて使わないでJSPに直接Javaのコード書いたらいいじゃん、とか公然と言ってますよ。私が一番押している技術はJSP自体使わないですし。 http://d.hatena.ne.jp/kwatch/20080504/1209873687#c1210075670 まあt_yanoさんは問題意識の高い方だから、この方を典型的なJava屋と考えるの

    典型的な Java屋 は JSP を使うことに何の疑問も持っていない - kwatchの日記
    lam_bda
    lam_bda 2008/05/18
    典型的なJava屋ってSIerにいる典型的なサラリーマンのことだよねぇ・・・
  • 今更ながらGenericsのすごさに驚嘆しているわけで。 - Fly me to the Luna

    ActiveObjectsの中にはトランザクションを保証するためのTransactionクラスがある。Transactionクラスのシグネチャはこんな感じ。 public abstract class Transaction<T>; public T execute() throws SQLException; protected abstract T run() throws SQLException; protected final EntityManager getEntityManager(); で、使い方はこんな感じ EntityManager manager = new EntityManager(provider); Person p = new Transaction<Person>(manager){ @Override protected Person run() th

    今更ながらGenericsのすごさに驚嘆しているわけで。 - Fly me to the Luna
    lam_bda
    lam_bda 2008/05/13
    こんな手があったんだなぁ・・・
  • Yoshioriの日記: 1000speakers で話してきました!!!

    1000speakers で 「JavaSE5以降 の Java」を話してきました!! なんか SlideShare に上げると文字が消えちゃうのでとりあえず pdfpdf そもそもなんかの呑み会で id:tokuhirom に 「Java5 以降で勉強したいとき、まとまってるところ少ないよな」 って言われたのでまとめたのですが、 id:tokuhirom は不参加でした!!! やりましたね! 順次追記していきます。

    lam_bda
    lam_bda 2008/04/29
    このPDF超わかりやすい
  • -求人中 - まさたか日記

    昨今、売手市場と言われる中、みなさんいかがおすごしでしょうか。さて、株式会社グルージェントでは絶賛求人中です。最近は人材紹介会社数社にも依頼し、技術キャリアを伸ばしたいと意欲ある方を求めています。直接いきなりアクセスするのにためらいがある場合は、人材紹介会社いくつかに登録してもらってエージェントの方と相談する際に「グルージェント」と言えば間にプロが入ってくれるので安心です。ためらいの無い方は、03-5469-8869にいきなり電話いただいて結構です。エージェントの方も連絡ください。「鈴木さんをお願い」と言えば、何の事かわかります。 JavaやC#が書ける人を中心に、スーツっぽい人も。また、OSSにどっぷり深く関わりたい方も歓迎です。将来起業したい人はそう言っていただければ経営に必要なスキルの伸ばせる仕事に就けるようにも配慮いたします。よろしくお願いいたします。私は夏あたりからたぶん買手市場

    -求人中 - まさたか日記
    lam_bda
    lam_bda 2008/04/26
    「執務室内の椅子は全部アーロンチェアです。」いいなぁ・・・
  • これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ

    NetBeansの中の人経由でこれを発見した。 Without default value for source encoding, platform encoding is used, which is bad for build reproducibility. Then setting a default value consistently across every Maven plugin will improve build reproducibility. Proposed default value: ISO-8859-1, which must be supported by every JVM (see java.nio.Charset) and is already the default value for some plugins (the majority of

    これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ
    lam_bda
    lam_bda 2008/04/26
    まさに絶望
  • Seasar2でサクサクか炎上か - ひがやすを技術ブログ

    可燃プロジェクトに飛び込むことになりました。下記のような炎上する要素満載。 関係者各社に告知済みのためカットオーバーは伸ばせない 外部仕様を策定した会社は行方不明 外部仕様はあるが、OS も AP サーバも環境もアーキテクチャーも未定 外部仕様を分かる人がいないw 開発は 3 社合同なのにソース管理方式も決まってない DB アーキテクト不在っぽい フレームワークに詳しい人がいない AJAX っぽいのたくさん お金がない、規模はわりとでかい、納期短い、残業禁止、増員不可 最初このエントリを見たとき、4/1だったこともあり、一瞬ネタかなと思ったんですが、その後に、SAStrutsとS2JDBCに対する具体的な質問がいくつもあり、私のほうもできる限り質問に答えました。 その後、どうなったのか気がかりだったんですが、今見たらこんな書き込みが 開発メンバからは、簡単で楽でいい! 1 機能が 1 時間

    Seasar2でサクサクか炎上か - ひがやすを技術ブログ
  • 初心者がJavaを“超高速”で学ぶためのコツ:ITpro

    皆さんの中には,「いまどきJavaくらいできなきゃねぇ~」と言われてからもう何年も過ぎちゃった…なんて人も多いのではないでしょうか。いつ何時「新しいプロジェクトJavaでいくから」なんて上司に言われたりしないか,内心ドキドキしてる方もいらっしゃるでしょう。私が受け持つJavaの授業でも,受講生の方からそういった悩みをよく聞きます。 しかしよく聞いてみると,なんだかとても効率の悪い勉強をしているなあと驚くことがあります。なぜなら多くの方が「Javaの入門書で勉強しているのにJavaのプログラムを作れるようにならない」と言われるからです。COBOLやC言語のプログラミング経験があるにもかかわらずです。 なぜJavaの学習がなかなか進まないのでしょうか。残念ながら「Javaのスキルが上がらない」という方の多くは,「データとアルゴリズム」「Javaの文法」「オブジェクト指向」の三つをきちんと学べ

    初心者がJavaを“超高速”で学ぶためのコツ:ITpro
    lam_bda
    lam_bda 2008/04/19
    なんで「これはひどい」タグが全然ついてないの? これは初心者に対する、はてブすら利用した高度なひっかけな訳ですか? こんなの間に受けた奴がいたらどうすんだよ。。。