2024年1月7日に行われたFukuoka Engineers Dayでの登壇資料です。
はじめに 最近、若手のコードレビューをしていて例外の使い方を教える機会があったので、ブログの方にもまとめたいと思います。今回はバッチ編。オンラインだとまた少し違う観点があると思います。また、言語はJavaを前提していますが考え方は例外機構をもつ言語ならあまり変わりません。 TL;DR 例外は原則キャッチしない。バッチは速やかに殺せ 個別箇所でログを出さずに必要な業務情報はExceptionを入れ子にして乗せる 長いバッチのためにはスキップもやむなし 原則、例外はキャッチしない JavaにはErrorとExceptionが存在し、OutOfMemoryErrorとかプログラム上ではどうしようもないものがエラー、ファイルが存在しない(FileNotFoundException)とかプログラム側でハンドリングするもの、と教科書では習うと思います。なのでException系はキャッチするものと、と
SI企業の強み・弱みを分析し、SIビジネスの先行きについてまとめた書籍『SI企業の進む道 業界歴40年のSEが現役世代に託すバトン』。同書から抜粋し、「誰も指摘しなかったSI企業の課題」を連載で指摘する。今回は、SIerがユーザー企業の要望に応えられない根源的な理由を探る。(技術プロダクツユニットクロスメディア編集部) 既存ITシステムの問題をユーザー企業以上に理解しているのはSIerである。ところが、その問題をユーザー企業に説明し、対策をとろうとはしない。ではなぜ、SIerのIT技術者たちは口を閉ざしているのだろうか。 その答えはこうだ。問題を説明した後に「では、どうすればいい?」と問われても答えられないからである。つまり、既存ITシステムの変革をどのように行えばいいのか分からないのだ。 情報処理推進機構(IPA)が平成29年に出したレポート「システム再構築を成功に導くユーザガイド」には
Webセキュリティ製品などを手掛ける米LunaSecの報告によると、Minecraftの他、ゲームプラットフォームのSteamやAppleの「iCloud」もこの脆弱性を持つことが分かっており、影響は広範囲に及ぶと考えられるという。 この脆弱性の影響があるのは、Log4jのバージョン2.0から2.14.1までと当初みられていたが、Log4jのGitHub上の議論では、1.x系も同様の脆弱性を抱えていることが報告されている。対策には、修正済みのバージョンである2.15.0-rc2へのアップデートが推奨されている。 セキュリティニュースサイト「Cyber Kendra」によれば、この脆弱性に対して付与されるCVE番号は「CVE-2021-44228」という。 脆弱性の報告を受け、Twitter上ではITエンジニアたちが続々反応。「やばすぎる」「思っていたよりずっとひどいバグだった」「なぜこんな
オラクルは、同社が提供している企業向けのJavaディストリビューションであるOracle JDKのライセンスを変更し、無料で本番環境などでの利用を可能にしました。 同社が9月14日付で公開したブログ「Introducing the Free Java License 」で、次のように説明しています(関連するプレスリリース「Oracle Releases Java 17」)。 Oracle JDKを無料で提供し、四半期ごとのセキュリティアップデートも提供する。 新ライセンス「Oracle No-Fee Terms and Conditions (NFTC)」は、商用利用や本番環境での利用を含むすべてのユーザーに対して無料での利用を許可する。 Oracle JDK 17から、この無料のリリースとアップデートの提供を開始する。これは次の長期サポート(LTS:Long Term Support)が
マイクロソフトが無償でJavaの長期サポートを提供へ、「Microsoft Build of OpenJDK」をリリース マイクロソフトは同社独自のOpenJDKディストリビューションとなる「Microsoft Build of OpenJDK」のプレビューリリースを発表しました。 Say hello to Microsoft Build of #OpenJDK! New Long-Term Support distribution of @OpenJDK for your @Java workloads, in the #Cloud and everywhere else! Visit https://t.co/VPM63V5M2H to learn more. pic.twitter.com/8MBIFu1PF5 — Java at Microsoft (@JavaAtMicrosof
このエントリはIT企業について詳しくない人に読んでもらいたい。 IT企業で働いたことがある人なら大方は知っている内容なので新鮮味はないからだ。ただ、それでも読み物として共感を得られて楽しめる部分はあるかもしれない。 さっそくいきます。 まず、IT業界にはどんな種類の会社があるのか。 ●SIer(受託開発) 客の要望をもとにシステム開発を受注し、開発して納品したら終わり。保守サポートが続く場合も多く、それで継続的に利益をもらう。スーツを着ている人も多く、堅い会社が多い印象。ITというより普通の会社員のイメージが強い。発注先が大手の企業だったりするし、客先に常駐する機会もあるので社会性を求められる。需要が多く、なかなか潰れにくい。 ●自社製品開発 客からの要望ではなく、自社で自ら開発したパッケージ製品を売る会社。ゲームなども広い意味ではここに含まれる。社風はSIerよりも自由な傾向が強い。自社
ハイクラス求人TOPIT記事一覧Javaなら「この書き方がベスト」と信じて書ける - きしだなおきに聞く、Javaのこれまでとこれから Javaなら「この書き方がベスト」と信じて書ける - きしだなおきに聞く、Javaのこれまでとこれから Javaは1995年に誕生し、数多くのコミュニティや企業の影響を色濃く受けてきました。では、黎明期から現代に至るまで、Javaはどのように進化し、生態系を変化させてきたのでしょうか。Javaのスペシャリストとして知られる、きしだなおきさんに聞きました。 1995年に誕生した、オブジェクト指向プログラミング言語・Java。この言語の歴史は、数多くのコミュニティや企業の影響を色濃く受けてきました。 例えば、OracleによるSun Microsystemsの買収後、Javaのリリースサイクルは大きく変化しました。また日本においては、JavaカンファレンスやS
Spring以前 RPC 業務で使うシステムはサーバー間で連携することが多い。2019年現在ではREST apiに対してjsonやprotocolbufferで呼び出す事が当たり前のように行われているが、まだjsonも発見されていない時代はもっと複雑な仕組みが取られていた1。異機種間でやりとりするためのCORBAや、機種に依存しないデータプロトコルのASN.1なども利用されていたが、仕様は複雑でそれぞれをハンドリングするライブラリは有償で売られ、ベンダーからサポートを受けながら使用するようなものだった。 RMI Javaの世界ではJava同士でやりとりするためのRMIが定義され、比較的に楽にRPCできるようになった2。とはいえhttpでrestをコールすることに比べたらアホみたいな複雑さである。 https://docs.oracle.com/javase/jp/1.3/guide/rmi
Javasparrow株式会社(読み:ジャバスパロウ、本社:東京都千代田区、代表取締役:國舛等志・稲田祐介、以下「当社」)は、米国Oracle America Inc.(以下「オラクル社」より、弊社商標「Javasparrow」の商標登録に対する無効審判請求を前提とした商標権一部放棄の検討要求を受けましたので、下記の通りお知らせいたします。 社名の由来について弊社の社名である「Javasparrow」は、鳥綱スズメ目カエデチョウ科キンパラ属に分類される鳥類である文鳥の英名です。 代表取締役が文鳥好きで、文鳥のように人々に愛されるような存在でありたい、また鳥瞰の目をもって物事を大きくとらえ全体を見渡したもの作りをしたい、という想いから社名をJavasparrow株式会社にしました。 2017年10月には、社名である「Javasparrow」および弊社の第1号製品である「wesign」について
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog はじめに こんにちは。第8代黒帯〜プログラミング言語(Java)〜 の森下と申します。 ヤフーでは、最近はJavaで書かれたさまざまなOSSの利用や貢献がされていたり、サービス開発でもJavaが使われることが増えてきているなど、社内でのJava利用が拡大してきています。 その背景には、ヤフーにおける標準言語の一つとしてJavaが位置付けられていることや、システムが大規模になるにつれて静的型付けやコンパイルなどできっちり作れるという利点が活きてくる点、また社内で利用できるPaaS環境(Pivotal Cloud Foundry)でもSpring Bootベースのアプリケーションがサポートされていて親和性があるといったことからだと思い
追記:対象としているJavaエンジニアの範囲を大袈裟にしすぎたかなと感じましたので、その辺を修正しました。 なぜ書いたのか タイトルの件ですが、有識者の方々が様々な媒体や場所で発信をされているおかげで、以前に比べて少なくなったと感じてはいるものの、まだ時々誤解を持たれている「Javaが有償化する」と呟かれているエンジニアの方もたまに見かけます。 Oracle JDK 8およびOpenJDK 11、それぞれ最後の無償アップデートがリリースされ、これから有償または無償のLTSでアップデートを受け続けるか、OpenJDK 12に移行するのかといった選択を決めていく状況になる時にまだこのような誤解を持ったままでいいのかなと感じました。 そこで自分の経験を基に誤解をする側の立場になって、なぜ「Javaが有償化する」という誤解が生まれたのかを考察してみようと思いました。 尚、この内容は個人の見解で、間
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 私はこれまでのエンジニア歴で継続的にJavaを使い続けていますが、以前と比較すると使い勝手の面で格段に良くなっていると実感しています。 また、JJUG、JSUGなどで講演を聞いたりしたりする中で、個人的に最近のJava界隈は非常に進歩的で良い感じだと感じています。 そんな中、「Javaは人口が多いだけで特別に採用するメリットが無い」「Javaはレガシーで生産性が低い」というツイートを見かけたので、その反論を込めて私の考えを書き連ねたいと思います。 なお、以下で述べる内容には、Javaが良いというよりは、特定のフレームワークが良
Javaはなぜ変わらなくてはならなかったのか。JavaOne改め「Oracle CodeOne」の基調講演で語られた理由。Oracle CodeOne 2018 米オラクルがOracle OpenWorld 2018と同時開催していたイベント「Oracle CodeOne 2018」は、昨年までJavaOneとして開催されていたイベントです。今年から「CodeOne」と名称が変わりました。 このイベントがJavaデベロッパーにとって最大のイベントであることに変わりはありません。初日の基調講演は「 The Future of Java Is Today」としてJavaの最新動向と今後が紹介されました。その内容をダイジェストで紹介しましょう。 Javaが迎えた変化の理由とは Javaと言えばこの人。米オラクルJava Platform Groupチーフアーキテクト Mark Reinhold氏
(前回からつづく) 米オラクル(Oracle)が提供するJava開発実行環境「Java SE」(Java Platform, Standard Edition)。現在、最も長いサポート期間が残っているバージョンがJava SE 8だ。無償サポートは2019年1月(非商用に限って2020年12月)、有償サポートは2025年3月までである、 ユーザーはこの期間が終わる前に新しいバージョンに移行する必要がある。その際には、長期間のサポートが設定されるLTS(Long Term Support)と呼ばれるバージョンであるJava SE 11が最有力候補になる。オラクルはJava SE 11を2018年9月にリリースし、2026年9月まで有償サポートを提供する。同じタイミングでオープンソースとして提供されるOpenJDKのJDK 11でも、同じ期間の無料サポートが提供される可能性が高い。 ところが、
日本オラクルが今後のJavaのリリースモデルと公式バイナリについてあらためてJava Day Tokyoで説明。オラクルによる公式バイナリの無償提供はOpenJDKベース 日本オラクルは5月18日に都内でイベント「Java Day Tokyo 2018」を開催。午後に行われたセッション「Java SE の新しいリリースモデル」で、あらためて今後のJavaのリリースモデルと配布について説明を行いました。 説明の基本的な内容は、以前の記事「来月にはJava 10が登場し、9月にはJava 11が登場予定。新しいリリースモデルを採用した今後のJava、入手方法やサポート期間はこう変わる(OpenJDKに関する追記あり) - Publickey」と変わっていません。 本記事はセッションの内容を基に、現時点でのステータスをあらためて確認するものです。 Javaは6カ月ごとのタイムベースのリリースへ
米オラクル(Oracle)はこれまで、Java開発実行環境「Java SE」(Java Platform, Standard Edition)を無償で提供してきた。ところが、2018年9月からは有償版しかなくなるのをご存じだろうか。 オラクルが現行の最新バージョンである「Java SE 10」をリリースしたのは2018年3月。ローカル変数の型を指定せずに済む型推論などの機能を備えているのが特徴だ。 そしてJava SE 10は、「オラクルが提供する最後の無償版Java SE」でもある。9月にリリースする次期バージョンのJava SE 11からは有償版だけになる。 バージョンアップの方針を大幅変更 オラクルは、Java SEの有償化の方針を2017年に公表した。同時に打ち出したのが、Java SEのリリースサイクルの変更だ。リリースサイクルに対しては企業ユーザーの関心が高い。日本IBM クラ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く