Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

Java 17が2021/9/14にリリースされました。 機能的に多くのプログラマに関係ありそうな変更はApple Siliconに対応したくらいですが、LTSであるということが大きいと思います。 詳細はこちら Oracle Releases Java 17 Java SE 17 Platform JSR 392 JDK 17 GA Release APIドキュメントはこちら Overview (Java SE 17) 変更点まとめはこちら https://docs.oracle.com/en/java/javase/17/migrate/significant-changes-jdk-release.html#GUID-339B2415-8BA8-438C-93AF-F9C746F7CE45 今回はLTSなので、前回LTSであるJava 11からの差分もまとめられています。 JEPの差分
Evercookieは、ブラウザに究極的に永続的なCookieを生成するJavaScript APIです。 その目的は、標準的なCookie、Flash Cookieなどを削除した後でもクライアントを識別し続けることです。 これは、可能なかぎり多くのストレージにCookieデータを保存することで達成します。 いずれかのストレージからCookieが削除されたとしても、ひとつでも残っている限り、Evercookieは残ったデータからCookieデータを復旧します。 Flash LSO、SilverlightもしくはJavaが有効な場合、Evercookieはブラウザを超えて同じクライアント上の別のブラウザにCookieを伝播することすら可能です。 本リポジトリは、Samy Kamkarおよび多くのコントリビュータによって作られています。 Browser Storage Mechanisms E
(この記事は 地平線に行く とのマルチポストです) Java でファイルを読み込む処理は、バージョンが上がるごとにどんどん簡単に書けるようになっていきました。 今回は、どれだけ簡単になっていったかを Java のバージョンごとにまとめて説明します。 なお、ここでは以下の処理を行うコードをもとにしています。 そこそこ大きいテキストファイルを一行ずつ読み込む 文字コードは UTF-8 Java 1.1, Java 1.2, Java 1.3 public static void main(String[] args) throws IOException { File file = new File(args[0]); BufferedReader reader = null; try { reader = new BufferedReader( new InputStreamReader(
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Java 16が2021/3/16にリリースされました。 多くのプログラマに関係ありそうな変更は、record、instanceofパターンマッチの正式化、Stream.toListです。またTLS1.0と1.1が無効になっているので古いMySQLなどへの接続でハマることがあるかもしれません。 詳細はこちら Java SE 16 Platform JSR 391 JDK 16 GA Release APIドキュメントはこちら Overview (Java SE 16) MacやLinuxでのインストールにはSDKMAN!をお勧めします
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 伝えたいことは全てタイトルに書いた。 動機 https://github.com/topics/awesome を眺めていて本当にawesomeなものばかりだった (割にあまりどこにもそのawesomeさが書かれていないように見えた) ので書く。 awesomeリストとは GitHub で使われる慣習的なリポジトリについてまとめてみた#awesome より: 「特定テーマに関するキュレーションを行うリポジトリ。Markdown のリスト表記で一覧化するのが一般的。また、Contribution も受け付けている(人気のあるリポジトリはガ
検査例外はJavaで導入された例外に対する興味深い機構です。Javaで導入された当初、検査例外は多くの人々に素晴らしい解決策だと思われました。しかし、最近のメジャーなJVM言語で検査例外をサポートする言語はありません。JVM言語でなくとも、メジャー言語で検査例外をサポートするプログラミング言語は2014年現在1つとして存在しません*1。 何故検査例外は普及しなかったのでしょうか。結論から言えば、Javaの検査例外を用いた例外設計があまりにも難しく、ほとんどの組織にとって設計コストがペイ出来なかったためだと思われます。Javaの検査例外は例外というレイヤーで各々の処理を結びます。この時、別々の抽象度をある単一の例外で結んでしまうと、問題が発生します。つまり、抽象度の異なる処理同士を結びつけるたびに、その差異を吸収する独自例外表現が必要になります。この設計判断は不可能ではないものの、かなり難し
オブジェクト指向 1. オブジェクト指向の起源 2003年チューリング賞の受賞者アラン・ケイさんはよくオブジェクト指向プログラミングの父と称されます。ご本人も憚ることなく、幾度、公の場で発明権を宣言しています。しかし、ケイさんは「C++」や「Java」などの現代のオブジェクト指向言語を蔑ろにしています。これらの言語は「Simula 67」という言語を受け継いだもので、私が作った「Smalltalk」と関係ないのだとケイさんは考えています。 オブジェクト指向という名称は確かにアラン・ケイさんに由来するものです。しかし、C++とJavaで使われている現代のオブジェクト指向は当初のと結構違います。ケイさん自身もこれらの言語を後継者として認めないです。では、ケイさん曰くC++とJavaの親であるSimula 67という言語はどんな言語でしょうか。ここで、簡単なサンプルコードを見てみましょう。 Cl
初めに 私はSESでエンジニアをしています。そのためいろいろな現場に参画して開発をすることが仕事なのですが、コメントを全く書かないどころかドキュメントもあんまりないという思想のチームに1年従事したときに感じた事を書いた記事です。 開発にはJava,Pythonを利用しているので、これらの言語でサンプルを記載しています。 良かったこと まずは良かったことです。大きく分けては 自身のコーディングスキルの向上 文章力の向上 の2点です。 自身のコーディングスキルの向上 コメントがまったくない。という状態でコードを書いていく場合には、変数名、メソッド名等の命名が非常に重要です。もはや命名さえちゃんとできればコーディング自体はそんなに大変でないといってもいいかもしれません。 SIerの案件ではコメントは多く書けという思想が多いです。そのため、これまでのコードは以下のような感じでした。
java.exe -Djava.security.policy=StreamRelay.policy -jar StreamRelay.jar ⇔ StreamRelay.bat InputStream/OutputStreamにReader/Writerを被せる事で、(文字コードを含む)文字列を扱うことができるので、入力の文字コードと出力の文字コードを異なるオプション指定をすれば、文字コード変換を行う事ができる オプション 使うオプションは、 -LocalCharset -RemoteCharset 通信方向ごとに個別に設定したい場合は↓ -LocalRequestCharset -LocalResponseCharset -RemoteRequestCharset -RemoteResponseCharset レスポンスだけ文字コード変換したい。という時に使える 文字コード変換ツールと
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事の目的 「Javaの環境構築」で絶対にハマったり、錯綜する情報にいつも惑わされる人に向けた記事です。 2017年以降のJavaは、移り変わりが激しい世界になりました。このことを認識し、「軸となる考え方」や「重要な動向」を把握できるように、調べた情報をまとめました。 **「5年ぶりに(Java|JVM言語)触るんだけど環境周りが全然わからん」とか、「CorrettoとかAdoptOpenJDKとか、みんな何を言っているんだ」**という人(つまりちょっと前の筆者)が、「今後に渡って2度とハマらないための基礎知識を得られること」を目的
はじめに この記事は、2020年3月13日に正式出版された共著『みんなのJava』タイアップ企画としてお送りします。 英語版の記事は「Summary of information about OpenJDK and JDK Distributions」を参照ください。(リンク先も若干異なる箇所があります。) 簡単に紹介したときのブログ記事はこちらですが、私の担当した2章のうち、2-4節「最新JDKディストリビューション大全」の最後に、動向把握用の情報源をまとめています。 電子版の場合はリンクを辿れると思いますが、紙版の書籍を購入いただいた方には厳しいでしょうし、今後にリンク先が変わる可能性もあるため、記事としてまとめておきます。 その他、2-4節にある注目しておきたいJDKへのリンクや、参考資料・追加情報も若干補足します。 2-5節にある各ディストリビューションのアップデート提供期間(EO
Java 14が2020/3/17にリリースされました。 Java SE 14 Platform JSR 389 ダウンロード OpenJDKサイトからダウンロードできます。 https://jdk.java.net/14/ MacやLinuxでのインストールにはSDKMAN!をお勧めします Oracle OpenJDK以外に無償で商用利用できるディストリビューションとしては、次のようなものがあります。 AdoptOpenJDK Azul Zulu Community Liberica JDK LTSではないのでAmazon Correttoではリリースされないようです。 アップデートは4月に14.0.1が、7月に14.0.2がリリースされることになります。 Oracle JDKは開発用途には利用できますが、商用利用にはJava SE Subscriptionを購入する必要があります。 J
「オブジェクト指向が5000%理解できる記事」 https://qiita.com/gorillab/items/b2f8e39d7cc23ad505f9 「オブジェクト指向を5000%理解できたら、次に5000兆%理解できように実社会の例でオブジェクト指向を考えてみる。」 https://qiita.com/_-_-_-_-_/items/1f604f6205b8bfd8a823 うわあ....これはヒドイ.まるで憂鬱本の悪夢が蘇ったようだ. 憂鬱本やオブ脳みたいな悪書で洗脳された人が落ちる,闇の深淵って感じ.*1 憂鬱なプログラマのためのオブジェクト指向開発講座 (DDJ Selection) 作者: Tucker出版社/メーカー: 翔泳社発売日: 1998/05/31メディア: 大型本購入: 10人 クリック: 508回この商品を含むブログ (78件) を見る なぜか名著と勘違いする
初めに この記事を見ているということはもうKotlinが熱い!っていう話をする必要はないと思いますが、KotlinはJavaとの互換性が高く、将来的にはAndroid、iPhone、Webを全てKotlinで書くようになるかもしれません。アツイ!! 現在では企業が続々とKotlinを開発に取り入れており、方々でその有用性がうたわれています。 ・「Kotlinで書くとJavaには戻れない」Androidアプリ開発にKotlinを導入したヤフーが感じたメリット ・Android開発を受注したからKotlinをガッツリ使ってみたら最高だった 僕はインターン先であるZOZOテクノロジーズのAndroidエンジニアの方に聞いてKotlinの存在を知りました。 Kotlinを用いてWebで何かしてみたいと思い、少し勉強しようとしたところ、なかなか情報が出てきません(Androidアプリを作ったりするや
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事について Effective Java 3rd Edition が発行されました。Java7以降のJava9までの新言語要素が加味されていて、そういうのはとりあえずLambdaなのだろうと思うのですがそれ以外に変わった・追加されたところが気になりました。そこで、第2版と第3版を横に並べて見比べてそういう所をざっくり確認してみました。 この記事では新規の Item についてではなく既存の Item 内で変化した所について「特徴的かも!」と思ったところを並べています。1 多分あなたがこの記事を読まれてもわかった気分になることは決して
すでにJava12はRampdownフェーズに入り、機能がほぼ確定しており、順調に行けば3月19日にリリースされます。->されました。 ということで、Java12に入る機能をJEP、API、その他にわけてまとめます。 JDK 12 Early-Access Builds JEP まずは大きな機能をまとめたJEPベースの変更 http://openjdk.java.net/projects/jdk/12/ 全部で8個のJEPが入ってます。ふつうのJavaプログラマに影響ありそうなのは上の3つとDefault CDSですかね。残念ながらRaw String Literalsはドロップされました。 189: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) 230: Microbenchmark Suite 325: Sw
はじめに 今どきなWEBアプリを作ろうとすると、画面はSPA、データ入出力(CRUDな操作)や複雑なビジネスロジックはWEB APIという構成が選ばれがちだと思います。 現在開発中の弊社のサービスでもフロントエンドのSPAにNuxt.js、バックエンドにSpring Bootといった構成をとることになりそうな気配を察知したため、個人的に検証作業を行いました。 他社様でも有用な情報になるかと思うので公開します。 SPAをSpring Bootからホストする方法のみが知りたい方は、サンプルコードのここを参照していただければブログ全文読む必要はないです(たぶん)。 目的 画面はSPA(Nuxt.js)で作りたい バックエンドはSpring Bootで作りたい フロントエンドの開発はHMRを利用して開発したい バックエンドの開発はspring bootのdevtools使って開発したい 状況 フロ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く