並び順

ブックマーク数

期間指定

  • から
  • まで

481 - 520 件 / 8007件

新着順 人気順

println javaの検索結果481 - 520 件 / 8007件

  • Javaの新元号対応を試す。そして実用には問題がある。 - きしだのHatena

    新元号対応はNewEraという仮の元号で対応が進んでいるので、試してみました。 おそらく、実用では使えない場面がある仕様になっています。 なので、元号対応が必要そうな人は、早めに試して声をあげる必要があると思います。 ビルドする ※ 2018/6/16追記 ea18が出ているのでそのまま試せます Masterブランチに取り込まれているので、明日あたりにでてくるea18で使えるようになると思いますが、いまは自分でビルドする必要があります。 ビルドについては、こちらを参考にしてください。ここに書いてるのとは違って、リポジトリはhttp://hg.openjdk.java.net/jdk/jdkです。 http://d.hatena.ne.jp/nowokay/20171104#1509753358 使ってみる JShellで使ってみます。 jdk $build/macosx-x86_64-no

      Javaの新元号対応を試す。そして実用には問題がある。 - きしだのHatena
    • Javaが遅いって お前それPetrの前でも同じ事言えんの? - 宇宙ツイッタラーXの憂鬱

      うっかり「Javaは遅いので競技プログラミングには向いていない」みたいなことを言ってしまう人が稀にいますが、世界最強の一角であるところのPetrさんはJavaで問題を解きまくっているわけです。 _,,;' '" '' ゛''" ゛' ';;,, (rヽ,;''"""''゛゛゛'';, ノr)   Javaが遅いって ,;'゛ i _  、_ iヽ゛';,    お前それPetrの前でも同じ事言えんの? ,;'" ''| ヽ・〉 〈・ノ |゙゛ `';, ,;'' "|   ▼   |゙゛ `';, ,;''  ヽ_人_ /  ,;'_ /シ、  ヽ⌒⌒ /   リ \ |   "r,, `"'''゙´  ,,ミ゛   | |      リ、    ,リ    | |   i   ゛r、ノ,,r" i   _| |   `ー――----┴ ⌒´ ) (ヽ  ______ ,, _´) (_⌒

        Javaが遅いって お前それPetrの前でも同じ事言えんの? - 宇宙ツイッタラーXの憂鬱
      • Javaのジェネリクスは「まがい物」ではない - kmizuの日記

        先日、自分が書いた kmizu.hatenablog.com に対する反応として、「Javaのようなまがい物のジェネリクスと比較するのは適切でない」「Javaのジェネリクスと比較するのは適切でない」(おそらくC#や(C++等(2017/09/24追記))の言語と比較して)といった コメントをいくつか見かけました(はてなブックマークコメントやツイッターなどで)。しかし、ここでは、そのような言説こそが適切でない、ということを言いたいです。なお、methane氏との 対話については既に終わったものなので、それとは関係ありません。 そもそも、Javaジェネリクスは、静的型付き関数型言語で既に一般的であったパラメータ多相をJavaに追加する目的で導入されました(C++テンプレートのようなものをJavaに追加するためだと思っている人がいるかもしれませんが、それは実態にあっていません)。実際、Java

          Javaのジェネリクスは「まがい物」ではない - kmizuの日記
        • 図で理解するJavaの参照 - Qiita

          int[]型はintに[](ブランケット)を付けて表現するので勘違いしやすいと思います。int型とint[]型は違うので気をつけましょう。String型は文字列を代入しますが、Stringオブジェクト内部で文字列をchar配列として扱っていることに気をつけましょう。下の三つはオブジェクト生成の記法は違いますが、全て等価になります。同値と等価は意味が違うので気をつけてください。同値と等価についてはこちらの記事を読んでもらえると嬉しいです。 String a = "りんご"; String b = new String("りんご"); String c = new String(new char[]{'り', 'ん', 'ご'}); System.out.println(a); // りんご System.out.println(b); // りんご System.out.println(c)

            図で理解するJavaの参照 - Qiita
          • 良いコ―ドへの道―普通のプログラマのためのステップアップガイド:第2回 名前付け重要。または,良いコードは良い名前から生まれるんです。―その1 良い名前の条件|gihyo.jp …

            良いコ-ドへの道―普通のプログラマのためのステップアップガイド 第2回名前付け重要。または、良いコードは良い名前から生まれるんです。―その1 良い名前の条件 Coding is freedom(犬井ヒロシ風) プログラミングは自由です[1]⁠。たとえば「コネクションに接続できないときの例外クラス」が必要になったら、「⁠FatalConnectException」「⁠CannotConnectException」「⁠ExternalConnetException」といったふうに、いかようにも作成することができます。設計やアーキテクチャの決定なども組み合わせは無限にあり、どれを選択するかに絶対的な決まりはありません。今回は自由だからこそ難しい「名前付け」についてのお話です。 良い名前をつけよう プログラミングを行っていると、変数名、メソッド名、クラス名など「名前」を考える場面が多々あります。良

              良いコ―ドへの道―普通のプログラマのためのステップアップガイド:第2回 名前付け重要。または,良いコードは良い名前から生まれるんです。―その1 良い名前の条件|gihyo.jp …
            • Swiftを触ってみた - ギークに憧れて

              2014-06-04 Swiftを触ってみた Swiftの基本を学習したメモ。 Objective-CやCocoaの知識は全く無い。とりあえずObjective-Cより速いとか。LLVMでネイティブコードにコンパイル出来るらしい。 参考 ドキュメントは公式を読む。 とりあえずSwift Tourをザッと眺めてみる。 Web https://developer.apple.com/swift/ https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/index.html 書籍 https://itunes.apple.com/jp/book/swift-programming-language/id881256329?l=en&mt=11 ダウンロード Xco

              • 知らないと恥をかく プログラミングの常識 - ぐるぐる~

                新人プログラマが身につけるべき 知らないと恥をかくプログラミングの常識 作者: 日向俊二出版社/メーカー: アスキー・メディアワークス発売日: 2009/02/25メディア: 単行本(ソフトカバー) クリック: 108回この商品を含むブログ (8件) を見る メールアドレスが載っていたから問題点をまとめて*1送ったら、意外と早く返信が来たものの・・・・ 私の考え方は223ページ以降に記したとおりです。 一部、ご指摘のことを踏まえて、将来の版でより適切に書き直すことを検討させていただきたいと思います。 本書の出版が、他の「プログラミングの常識」に関連した書籍の内容の比較等も含めて、活発な議論のきっかけになれば幸いです。 亜阿相界 あぁそうかい。 なら議論のきっかけになるように、「一部」ではなかったことを示しておくことにするよ*2 *3。 223 ページの「私の考え」はどんなものかというと、

                  知らないと恥をかく プログラミングの常識 - ぐるぐる~
                • Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル

                  仕事でLensを使う機会があった。Lensは複雑で入り組んだデータ構造の読み書きに非常に効果的な手法であるにもかかわらず、関数型プログラマ以外にはあまり知られていないように思える。 そこでこの記事では、Lensとは何なのか、なにが良いのか、具体的にどのようなケースでLensが役立ったか、そしてLensの亜種について紹介する。業務でも使ってます! AIくんが考えるLens 前提条件 Lensとは Lensの使いどころ データをモデリングする場合 (とても つらい) Lensを使う場合: Lensはアクセスパスである Lensと愉快な仲間たち Lensの合成 -- andThenでひっつけよう Lens Law Monocleの便利機能 Lensの自動生成でサボる Focusでもっとサボる Lensがもたらしたもの まとめ あわせて読みたい 前提条件 この記事ではLensを紹介する言語としてS

                    Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル
                  • Java言語プログラミングレッスン第3版

                    はじめに 『Java言語プログラミングレッスン第3版』は、Java言語の入門書です。 本書を通して、Java言語を基礎からていねいに学ぶことができます。 本書は1999年の出版以来、本当に数多くの読者さんからの応援を受け、ロングセラーとなりました。 本書では、Java言語を基本からていねいに解説しています。 読みにくい用語にはルビを振り、初心者でも読みやすくなっています。 また、クイズや練習問題で自分の理解を確かめながら進むことができます。 「上巻」ではJavaの基本的な文法を解説し、 「下巻」ではオブジェクト指向言語としての特徴を中心に解説しました。 本書も、引き続きJava言語を学ぶみなさんのお役に立ちますように。 書籍に掲載されたプログラムリストのダウンロード 書籍中に登場したプログラムリストを以下からダウンロードできます。 ZIPファイルを展開後、readme.txtファイルをお読

                    • ここがヘンだよScala言語 - 駄文生産所

                      Scalaを触ったり言語仕様を眺めた上で、ストレスを感じたものをいくつか挙げる。おそらくコミュニティでの議論は既に終了しているであろうし、無意味な作業に感じられて仕方がないが、某所でまとめると言ってしまったので、我慢して進める。 突撃されると面倒なので一応述べておくが、別にScalaがダメだとか、Scalaが使えないとか言いたいわけではない。この程度の訓練は必要なのだ、ということだ。 追記 びっくりするほどのバカだと思われている節があるが、ScalaやJavaの思想を知った上で、あえて記述している部分も多分にある。一応。 捉え違いしている部分や、Scala的な考え方が知りたい方は、コメントをご覧になるのが良いでしょう。 if式の返り値 val v1 = if (1 < 2) {"a"} println(v1) val v2 = if (1 < 2) {"a"} else {"b"} pri

                        ここがヘンだよScala言語 - 駄文生産所
                      • タイムゾーン呪いの書 (Java 編)

                        「タイムゾーン呪いの書」は、もともと 2018年に Qiita に投稿した記事でしたが、大幅な改訂を 2021年におこない、同時にこちらの Zenn に引っ越してきました。この改訂で記事全体が長大になったので、「知識編」・「実装編」・「Java 編」と記事を分けることにしました。 この「Java 編」は、「知識編」と「実装編」に続く最終章です。本記事全体を通して、「知識編」「実装編」を読んでいることを前提にしているので、ご注意ください。 はじめに 「知識編」と「実装編」では、言語やソフトウェア特有の話にはあまり踏み込まずに、時刻とタイムゾーンについてなるべく一般論を書いてきました。そんな中でも Java の JSR 310: Date and Time API は何度も参照しています。 JSR 310 は時刻やタイムゾーンという概念をけっこう上手に一般化していて、一般論の検討にもいいモデル

                          タイムゾーン呪いの書 (Java 編)
                        • 【レポート】JavaOne Tokyo 2005 - 自動化、心掛けてますか? 貴重な時間は大切に (1) 無駄をなくす心がけ - 俺様の時間はとっても貴重 (MYCOM PC WEB 11/10)

                          JavaOne TokyoのDay-0、Javaデベロッパにはおなじみの稚内北星学園大学 丸山不二雄氏が提供する「丸山先生レクチャーシリーズ」が開かれた。この最後に「定時退社のためにJava」という一風変わった名前のセッションが開かれ、米Sun Microsystems Technical Stuffの川口耕介氏が、デベロッパはいかにして幸せになるべきか、などについて語った。 川口氏もまた、Javaコミュニティには有名だろう。2005年度未踏ソフトウェア創造事業(いわゆる未踏ユース)において、筧捷彦PMにより川口氏の「スレッド冬眠技術を利用したイベント駆動によらないワークフローエンジンの開発」というプロジェクトが採択されている。また、Hudson、com4j、parse-ipr、parse-dot-classpath、args4jといったオープンソースソフトウェアの開発も行う。parse-

                          • SwiftのArrayとDictionaryの使い方 - Qiita

                            背景 基本的な言語仕様はふんわりと学んだので、今後多用するであろうArrayとDictionaryの使い方を調べたのでメモ。 間違いとかあれば指摘お願いします。 Array サンプルコード // immutableなString型の配列 let names: String[] = ["name5", "name2", "name1", "name3"] //各データを取得 let name1 = names[0] //name5 let name2 = names[1] //name2 let name3 = names[2] //name1 let name4 = names[3] //name3 //各件数 names.capacity // 4 names.startIndex // 0 names.endIndex // 4 names.count // 4 // mutableな

                              SwiftのArrayとDictionaryの使い方 - Qiita
                            • 接続先のURLへ情報を送信し、結果を保存する

                              Javaプログラムで、あるWebページにアクセスし、その内容を取得する方法として、java.net.URL#openStreamメソッドの利用があります。しかし、この方法には以下の問題があります。 サーバへのリクエスト中にHTTPヘッダをセットすることができない GETメソッドによるデータ取得しかできず、POSTメソッドによるデータ送信ができない こうしたことは、単純なWebページの取得だけなら問題にはなりません。しかし、ブラウザの種類(HTTPのUSER_AGENTヘッダの値)によって取得内容を変化させるようなWebページにアクセスし、特定のWebブラウザがアクセスしたときと同様の結果を取得したり、POSTメソッドによって入力データを送信するFORM入力の動作をエミュレートできません。 これらの問題は、java.net.URLConnectionクラスを利用すれば解決することができます。

                                接続先のURLへ情報を送信し、結果を保存する
                              • Swift言語の入門 (6) オプション型編

                                Swiftの言語仕様を読んでいくと、はじめにみつかる特徴的な仕様に、オプション型があります。オプション型とは、名前の通り、必ずしも存在する訳ではない、と言った意味合いがあり、その型そのものの値を含むか、もしくはその値が存在しないことを意味する型です。 他の言語ではNullableなどと呼ばれていることもありますが、Swiftでは全ての型にオプション型が用意されており、IntやDoubleに対しても利用することができます。 JavaではNullableというタイプアノテーションがありますが、これはプリミティブ型(値型)には対応しておらず、C#のNullableは逆に値型にのみ対応しています。Swiftではどちらの種類の型のオプション型を作ることができるため、IntやDoubleなどの型や、独自のクラスのためのオプション型を作ることができます。 1.宣言 var optionalName: S

                                • ScalaでDeeplearning4jを使い自動運転で峠を攻める! - FLINTERS Engineer's Blog

                                  こんにちは。菅野です。 最近、AIとか機械学習とかが話題ですね。 AIに仕事を奪われる職業がどうとかの記事もよく見かけます。 このブログ記事もAIが書いてくれたら良いのにと思っている今日この頃です。 …でも思ってるだけでは仕事を奪ってくれないので、やっぱり何かしら自分で作るしか無さそう。 という訳で、今回はJavaでディープラーニングが出来るDeeplearning4jを使って機械学習を試します! プロジェクトD さて、何を作りましょう? 最終的には私の仕事を勝手にやってくれるAIを作りたいです。 でも、はじめは簡単なものから少しずつ作っていこうと思います。 よくディープラーニングでネタにされるのは手書き文字の識別ですが、正直面白くないので道路上を自動運転するAIを作ります! 嘘です。 いきなり作るのは無理があるので、画像の道路が左カーブなのか、右カーブなのか、あるいは直線なのかを分類し画

                                    ScalaでDeeplearning4jを使い自動運転で峠を攻める! - FLINTERS Engineer's Blog
                                  • go言語におけるロギングについて | さにあらず

                                    僕は Java 方面に慣れていますのでslf4j(Logback)やlog4j2の様なロギングライブラリがあると扱い易いなぁ…と思う次第です。 まとめ#例によって結論から書くと XML で設定する事に耐えられる ならseelogがオススメ。 CLI で指定出来る程度の設定が出来れば良いなら、公式リリースなglogがオススメ。 標準のlogパッケージについて#まず、僕の開発環境は Windows7 ですので、log/syslog を直接使うようなコードは避けたいのです。 加えて、コードをあまり変更せずに出力先や出力内容を変更したいのですけども、その為の標準的な方法は機能としてライブラリ内に組込まれていません。 テスティングフレームワークの時も同様に感じましたけども、go 言語のコアライブラリは本当に一番下の足回りがあるのみです。 例えば、設定可能な項目はこれだけです。抜粋すると、 時間や日付

                                      go言語におけるロギングについて | さにあらず
                                    • 比較:並行処理 - Java とScala とGo - | TECHSCORE BLOG | TECHSCORE BLOG

                                      こんにちは、馬場です。 完全に出遅れていますが、個人的に触ってみたかったGo言語と戯れてみたいと思います。Go 言語といえば並行処理ですよね。せっかくですので、他の言語Java 8 / Scala 2.11 と比較しながら見ていきたいと思います。 お題:二分探索木を比較する。 並行処理のお題は、超充実しているGo 言語のチュートリアルTour of Goのエクササイズ、Equivalent Binary Tree です。 二分探索木とは、子の数が最大2である二分木で、「あるノードの左の子およびその全ての子孫ノードの持つ値はそのノードの値より小さく、右の子及びその全ての子孫ノードの持つ値はそのノードの値より大きくなるように構成した」もの(Wikipedia)です。 2つの二分木が、形はちがえど同じ値を保持している場合があります。そのために、 1. 二分探索木を生成し、 2. 2つの二分木の解

                                      • 2005/12/28 日記: SWTを用いた JavaからWin32APIへのアクセス サンプル

                                        [いがぴょんの日記v2,diary,igapyon,Java,SWT,Win32,JNI] SWTを用いると 各種Win32APIを呼び出しできることを知りました。びっくりしました。極めつけは Javaからレジストリへのアクセスが可能であるということです。 広告: BlancoEclipseDistribution 最新安定版 (3.4-20080626) リリース 07/04 最新版の Eclipse である Eclipse Classic (SDK) 3.4 一式 (日本語化済み) が Windowsインストーラを用いてインストールできます。 BlancoEclipseDistribution は Eclipseディストリビューションのひとつに該当します。 いがぴょんの日記メーリングリストに流れていた会話の流れから、SWTを用いると 各種Win32APIを呼び出しできること

                                        • Groovy v1.8の新機能をサクっと紹介するよ - No Programming, No Life

                                          このシリーズの一覧はこちら Groovy v1.8リリースノートより。 はじめに 待ちに待ったGroovy v1.8がやっと出ましたね!ということで、Groovy v1.8の新機能をサクっと紹介したいと思います。 Groovy v1.8は結構多くの機能拡張がなされておりますので、サラっと行きたいと思います。 コマンドチェーン(ドメイン固有言語:DSL) Groovy v1.8以前まではトップレベルでのメソッド呼び出しの括弧は省略できませんでしたが、新しいコマンドチェーン機能を使えば括弧なしのメソッド呼び出しが可能になります。 これは、a b c d のように呼び出した場合は実際には a(b).c(d) と同等となるようなことです。複数メソッドやクロージャ、名前付き引数と一緒に機能して、さらに右側に連ねてゆくことができます。 新しい構文でサポートされている例を見てみましょう。 turn le

                                            Groovy v1.8の新機能をサクっと紹介するよ - No Programming, No Life
                                          • niw.at — Scala 事始め、あるいは新しい言語の勉強方法

                                            ご存知かとは思いますが、これまで仕事場では皆様のツイートと呼ばれる140文字程度の投稿を読んで適切なタイムラインに仕分けしたり、ハッシュタグを見て検索結果に追加したりとなかなか骨が折れる作業をしていて、随分慣れてきたのですが、どうしても最近はじまった「60秒でツイートを届けるキャンペーン」で間に合わないことが多く、中にはUnicodeの合字を組み合わせた塩抜きポテトみたいなツイートも多く、一部、Ruby を使って自動化したりしてみたのですが、そろそろ体力の限界を感じていたところでした1。 そんな折、同僚が、「オレ、Scala を使ってるんだけど肩こりも治ったし、60秒キャンペーンも余裕だよー」って言ってるのを聞いて、そんなにいいなら、とちょっと使ってみることにしました。 新しい言語を覚える 実際のところ、仕事場ではかなり前から Scala で書かれたプロジェクトがありましたが、この公開され

                                            • 第27回 JSONデータを扱うためのJavaライブラリ「Jackson Java JSON-processor」 | gihyo.jp

                                              「Jackson Java JSON-processor」とは 近年のWebアプリケーション開発では、JSONが必須の技術になっています。クライアントサイドで利用されるJavaScriptで容易に扱えることから、Webサーバとのデータ交換のためのフォーマットとして広く利用されているからです。Javaアプリケーションも例外ではなく、次期Java EE仕様であるJava EE 7(JSR 343として仕様策定中)にもJSONを扱うためのAPIが標準で取り込まれる見込みになっています。 それに伴い、Java用のJSON APIの標準仕様についても、JSR 353として標準化プロセスに入っています。その他にも、すでにJavaでJSONを扱うための様々なライブラリが存在しています。中でも「Jackson Java JSON-processor」や「google-json」はJSR 353にも既存実装

                                                第27回 JSONデータを扱うためのJavaライブラリ「Jackson Java JSON-processor」 | gihyo.jp
                                              • 正規表現

                                                Javaにおける正規表現 Javaには正規表現に関する機能を実現するためのパッケージ java.util.regex があります (Java SDK 1.4 で導入)。 このパッケージにより、強力な正規表現の機能を持つ Perl とほぼ同等の機能が実現されています。 クラス java.util.regex.Pattern が正規表現を表すクラスで、このクラスの matcher メソッドによって、実際にマッチングを行うクラス java.util.regex.Matcher のインスタンスを生成します。 クラス Pattern は new ではなく、compile という static メソッドによりインスタンスを生成します。なお、static メソッドはクラスに属し、インスタンスがなくても呼び出すことができます。通常のメソッド呼び出しは「インスタンス名.メソッド名」ですが、static メソ

                                                • RxJavaを使ってCallback Hellから脱出する( Vert.x がいいね!第5回 ) - Taste of Tech Topics

                                                  id:KenichiroMurata(@muraken720 )です。 本記事はJava Advent Calendar 2013 - Adventarの6日目の記事です。 皆さん、RxJava 使っていますか? RxJava はNetflixが開発する Reactive Extensions のJava版です。Reactive Extensions (Rx)はReactive Programmingを可能にするライブラリです。 私はReactive Programmingとはなんぞや?と語れるほどには詳しくないので、ここでは asynchronous で event-based なプログラムを書くのに便利なライブラリというレベルの紹介とさせて頂きます。:-) さて、なぜ RxJava なのか?というと Vert.x を使って、asynchronous で eventbusベースのプログラ

                                                    RxJavaを使ってCallback Hellから脱出する( Vert.x がいいね!第5回 ) - Taste of Tech Topics
                                                  • 第3回 Restlet 1.0.1―RESTアプリケーションを手軽に実現するフレームワーク|gihyo.jp

                                                    Restletとは? Restlet(http://www.restlet.org/)は、Web APIなどで主流となっているREST(REpresentational State Transfer)型の通信を行うアプリケーションを構築する「軽量な(Lightweight)」Javaフレームワークです。CDDL1.0とGPL2.0のデュアルライセンスの下で配布されています。開発はフランスのNoelios Consulting社(http://www.noelios.com/:フランス語)が主体となって行っています。バージョン1.0.1がリリースされたのは2007年5月3日です。 JavaのREST APIといえば、JAX-RS(JSR 311)の仕様をJCPで詰めている最中ですが、Restletではバージョン2.0のAPIをJCPに提出することを計画しています(2007年4月25日付のNo

                                                      第3回 Restlet 1.0.1―RESTアプリケーションを手軽に実現するフレームワーク|gihyo.jp
                                                    • テストと言うパートナー #TddAdventJp - 日々常々

                                                      TDD Advent Calendar jp: 2011の 12日目です。 前:あなたは写経しますか - pocketberserkerの爆走 次:TDD戦略 -TDDを導入し進化させる方法- #TDDAdventJP - うさぎ組 テストはパートナー 「何を言ってるんだ?」な感じかもしれませんが、私にとってテストはパートナーです。 私がTDDのコンテキストで言う「テスト」はDeveloperTestです。このテストは開発者の開発者による開発者のためのテストであり、つまり開発者たる私のためのものです。私だけのためにテストは働いてくれます。 テストに対する不安 TDDや自動テストと言う言葉に触れ、「いざテストを書こう」と思った時。もしくはよく知らないままテストコードを書かなければならなくなった時。テストに対して不安を感じると思います。TDDは「不安をテストにする」とか言いますが、そもそもテス

                                                        テストと言うパートナー #TddAdventJp - 日々常々
                                                      • SOCKETプログラミング

                                                        このページではBerkeley SOCKET、Winsock及びJava Socketのプログラミングについて紹介する。SOCKETも好きだな。 記述例およびサンプルに含まれるファイルの全部、または一部を使用したことによる損害等について、一切の責任を負いません。また、サンプルの文字コードはS-JISで提供しますので、ご使用の際はWindowsからFTPするなどして適切な文字コードに変換してください。尚、サンプル中には説明の簡略化のため意味のないコードや、実用上問題のあるコードも含まれていますのでご注意ください。 [UNIX]スレッドでrecv [UNIX]selectを使う [Winsock]スレッドでrecv [Winsock]selectを使う [Winsock]イベントを使う [Java]Socket(クライアント) [Java]ServerSocket(サーバー) [UNIX]スレ

                                                        • Java変態?コード最速マスター - うなの日記

                                                          Java変態文法最速マスター - プログラマーの脳みそが面白かった && 参考になったので便乗してリスペクト。変態世間であまり見かけない(かも知れない)Javaコードを、過去のエントリからまとめてみました。 nullでなければループ 「配列がnullでなければループ」というシーンはまれにありますが、nullチェックのためにインデントが深くなるのが我慢ならん、というときにこういう記述はどうでしょう。 String[] strs = // 略 // 配列がnullでなければ各要素に対して処理を実行 if ( strs != null ) for ( String str : strs ) { // 処理 } if文の「{}」を省略してforを繋げているだけですが、インデントをさりげなく削れます。 似たような例で、「例外を無視して次へ」とかも。 // 例外が発生しても無視して次へ for ( S

                                                            Java変態?コード最速マスター - うなの日記
                                                          • ObserverパターンとHelloWorldからはじめるRxJava - Qiita

                                                            RxJavaはObserverパターンの拡張です.ObserverパターンはGoFのデザインパターンにも登場するほど非常に一般的なものです.「オブジェクトの状態変化をそれに依存する他のオブジェクトたちが監視し,通知があったら各自が自動的に適切な振る舞いをしてほしい」というのが基本的なアイディアです.Javaではこれをinterfaceを使って実現します. 関心がある状態変化イベントをもつ対象をObservableと呼び,そのイベントを監視する対象をObserverと呼びます.java.utilパッケージにもObserverインターフェースとObservableクラスがあります. java.util.Observerインターフェースはupdate()メソッドを定義しています.状態変化を知りたい対象にはObserverインターフェースを実装してObservableに登録しておきます.そして,状

                                                              ObserverパターンとHelloWorldからはじめるRxJava - Qiita
                                                            • Java8でDuckTyping的なこと - yojikのlog

                                                              Javaのラムダ式のついでに導入されたメソッド参照がなかなか便利な感じです。メソッド参照をつかってDuckTyping的なことができます。 HasName という関数型インタフェースを受け入れるGreeterクラスの定義*1 public class Greeter { /** 関数型インタフェースの定義 */ @FunctionalInterface interface HasName { String getName();} /** 「名前を持っているオブジェクトに挨拶をしてもらう」メソッド */ public void greet(HasName... targets) { for(HasName it : targets) { System.out.println(it.getName()); }; } } 「HasNameの関数型インタフェースと同じシグネチャを持つメソッド」を持

                                                                Java8でDuckTyping的なこと - yojikのlog
                                                              • Java で HTTP クライアントを作ってみよう (2)

                                                                Java で HTTP クライアントを作ってみよう (2) HttpURLConnection クラス Socket クラスでごりごり書くのも悪くはないですが、 実際に使用するプログラムを書くとなると結構つらいものがあります。 より便利な HttpURLConnection クラスが用意されていますので、これを使ってみましょう。 % javac HttpClientHttpURLConnection.java とコンパイルすることで HttpClientHttpURLConnection.class が生成され、 % java HttpClientHttpURLConnection で実行できます。このプログラムは http://www.debian.org/ にアクセスし、 以下のような出力を行います。 レスポンスヘッダ: ETag: ["233112-3ea9-42284510;422

                                                                • enum basics - しげるメモ

                                                                  仕事柄、Javaのenumを使うことが多いのですが、あまり世の中のプログラムでenumを全力で使ってるところをあまり見かけません。 ということで、自分でもどうなのと思うときがちらほらあるenumの使い方をまとめてみようと思いますが、とりあえず今回は普通の復習用に基本的な機能を。 型付の定数が宣言できる enumはもともとCのint形の値に名前をつけただけじゃなくて、型安全な列挙定数が作れるってことでJava5から導入されました。 こんな感じ。 public enum Sample { HOGE, FOO, BAR, } で、世の中で見かけるenumは上記くらいのシンプルなのが多いみたいです。 クラス本体が宣言できる 定数定義のあとに ";" で区切ると、以降をクラスの本体としてメソッドとか定義できます。 public enum Sample { HOGE, FOO, BAR, ; // セ

                                                                    enum basics - しげるメモ
                                                                  • d.y.d. DanoMoi と Haskell

                                                                    17:24 06/09/27 XP theme 昨日 OSXP というビジュアルスタイルを知りました。 完全にMacOS化してない辺りがかなり好みです。しばらく使ってみよう。 ただ日本語のせいかスタートメニュー周りがずれるので、TClockで調整したりユーザーの 表示名をスタイルに合わせて変えたりと適当に酷い合わせ方をしてます。 マジメに直そうよ>自分。 LCSD LCSD '06 (Library-Centric Software Design) のプログラムが出てました。 "ライブラリ" そのものを対象にしてその設計や実装について議論する学会…ということで 特に言語について限定されてはいません。が、実際中身を覗いてみると、 基調講演や Program commitee の面々の名前を見る人が見ればすぐわかるように、 えらく濃いC++使いが集結する感じの学会です。 (や、必ずしも皆が皆C

                                                                    • 橋本商会 » AndroidのUSBホスト機能でArduinoとシリアル通信する

                                                                      超便利なライブラリ作ったのでこっち使うといいです → 橋本商会 » Android版ArduinoFirmataを作った ——-以下本文 なんか意外と簡単にできたし、まったくやってる人の情報が無いので書いておく。 Nexus7+Arduino(Seeduino)+サーボモータ を動かした AndroidにArduino等のシリアルデバイスを直つなぎできる。 ADKやUSBホストシールドやIOIOと違って、むずかしい回路やプログラムはいらないし、電源もAndroid側から供給もできる。 マイコン側は単純にシリアル通信するだけ。Android側もUSBシリアルポートを探して接続するだけ。 Nexus7にはUSBポートとは別に充電ポートがあるのでそっちで充電させつつ、デバイス制御もできそう 必要な物は3つ 1. USBホスト機能に対応したAndroid端末 2. USBホストケーブル 3. Ar

                                                                        橋本商会 » AndroidのUSBホスト機能でArduinoとシリアル通信する
                                                                      • cve-2022-22965 Spring4Shell の影響調査 | DevelopersIO

                                                                        はじめに こむろです。 Spring4Shell についてです。どうせお前ら調査してたんだろ?と思ったあなた、大正解です。 結論 非常に広範な影響がありましたが、現時点で、Spring Framework 本体への修正パッチがすでに適用されています。そのためこれに準じたアップデートを実施することで脆弱性を回避できます。 spring-boot-2-6-6 spring-boot-2-5-12 spring-framework-5.3.18 Tomcat 9.0.62 またこれらのアップデートができない場合、以下の対応を取ることもできます。 不要なパラメータのマッピングを行わないようにコードを追加する (Binding のブラックリストへ class.* 系を追加) Java8 へ一旦ダウングレードする Tomcat 9.0.62 へ Update することで設定値自体の書き換えをできないよ

                                                                          cve-2022-22965 Spring4Shell の影響調査 | DevelopersIO
                                                                        • Rust製JVMを作成した話

                                                                          rchaser53noMacBook-Pro:rj rchaser53$ javap -v java/io/PrintStream Classfile jar:file:/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/rt.jar!/java/io/PrintStream.class Last modified 2017/07/21; size 9048 bytes MD5 checksum f62b2b102171bb9cd2cefa5efcf0e487 Compiled from "PrintStream.java" public class java.io.PrintStream extends java.io.FilterOutputStream implements java.lan

                                                                            Rust製JVMを作成した話
                                                                          • Go (プログラミング言語) - Wikipedia

                                                                            Goはプログラミング言語の1つである。Googleにおいて2009年[4]ロバート・グリースマ、ロブ・パイク、ケン・トンプソンによって設計された[5]。Goは、静的型付け、C言語の伝統に則ったコンパイル言語、メモリ安全性、ガベージコレクション、構造的型付け(英語版)、CSPスタイルの並行性などの特徴を持つ[6]。Goのコンパイラ、ツール、およびソースコードは、すべてフリーかつオープンソースである[7]。 また、軽量スレッディングのための機能、Pythonのような動的型付け言語のようなプログラミングの容易性、などの特徴もある。Go処理系としてはコンパイラのみが開発されている。マスコット・キャラクターはGopher(ホリネズミ)。 発表当初はLinuxとMac OS Xのみしかサポートしていなかったが[8]、2012年3月にリリースされたバージョン1.0からはWindowsもサポートされている

                                                                              Go (プログラミング言語) - Wikipedia
                                                                            • ボク、if文。わるいモンスターじゃないよ! - 都元ダイスケ IT-PRESS

                                                                              id:aroundthedistance に召還されたぜ。 http://d.hatena.ne.jp/aroundthedistance/20100727/1280227851 …その昔なー。Seasar Conferenceで「あなたのコードからnewとifが消えます、魔法のDI」みたいなセッションをした。今思い出して「釣りすぎたぜサーセン」という気分になったことをまず懺悔しておく。 この doBusinessん中のif〜else ifをなんとかしたい。 …(中略)… ちょっとすっきりした。けどまだifが残ってるよね。 ポリモーフィズムの例をもうちっと実用的に書いてみた。 - 都元ダイスケ IT-PRESS どんだけif文悪者なんだ。そこまで嫌ならば、一度もif文を書かずにコードを書けばいい。無理だがなw と自嘲。 if文に限らず、問題になるのは濫用なのだ。"ある知識"がトッ散らかって

                                                                                ボク、if文。わるいモンスターじゃないよ! - 都元ダイスケ IT-PRESS
                                                                              • Java8のインタフェース実装から多重継承とMix-inを考える | ギークを目指して

                                                                                2014年3月18日、ついにJava8が正式にリリースを迎えた。 折角なので、今後、Java8の新機能に関する記事をいくつかアップしていきたい。 Java8といえばやはりラムダ式だけど、既に色々な方がブログ等々で紹介しているので、今回は、Java8にて導入されたインタフェースのデフォルト実装と多重継承、Mix-inの関係について書いていきたいと思う。 かなり長丁場になりそうだが、最後までお付き合いいただければ幸いである。 では、Java8の世界に飛びだそう! Java8のインタフェース実装とは? Java8では、インタフェースに実装を持てるようになった。 定義の方法は「default」句、または「static」句を利用する2パターンが存在する。 今回の記事では「default」句を利用した場合のメソッドの振る舞いから多重継承とmix-inについて考えていく。 default句を使用したイン

                                                                                  Java8のインタフェース実装から多重継承とMix-inを考える | ギークを目指して
                                                                                • Twitter4J から OAuth 認証部分だけを利用する方法

                                                                                  ※前置き長いです。本題はここから。 9/6 ごろから 9/9 にかけて、TwitMgr (閉鎖済) と Splitwit (閉鎖済) の OAuth 認証が正しく動作しなくなってしまっていました。 これらは、JavaScript で Twitter API を扱うライブラリとして、TwitAPI.js を使っており、それがうまく動作していなかったのです。で、原因を追ったところ、JavaScript 側ではなく、OAuth 認証を肩代わりするプロキシサーバである taj-proxy 側に問題があることがわかったので、今回はそれを直したときの話です。 そもそも、taj-proxy は、開発当初 GAE/j 上でうまく Twitter OAuth 認証を扱えるライブラリがなかった (と思っていた) ため、OAuth 認証部分をすべて独自実装してました。Twitter 側の何らかの実装の変更により

                                                                                    Twitter4J から OAuth 認証部分だけを利用する方法