Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? AndroidもScalaで書きたい!という衝動に身を任せ、パズルゲームを作ってみました。 公開中のゲームはこちらです。 4方向にフィールドのあるパズルゲームです。ブロックを積んで消していく風のやつですね。 コア部分のコードはこちらです。 これまで、ブラウザで動くscala-js版や、ターミナル上で動くscala-native版を作っていたのですが、満を持してAndroid版に挑戦した次第です。 今回は、とりあえずリリースまで出来たということで、セットアップやScalaで書く上での実装方針など、軽く触れたいと思います。 モチベーション
はじめに 本記事は、最近一部でレガシー言語といわれたりオワコンといわれたり 踏んだり蹴ったりなJavaの面白さを語る記事です。 筆者はSE3年目実務ではJava,JavaScript(たまにPythonとScala)をよく使い 個人的にReactとHaskellの勉強をしているぐらいのスペックです。 暇つぶしに読んでいただければ幸いです。 Javaが古めかしいといわれる所以を考察 大きく分けて3点あると思います。 ・構文が長くなりがちである ・Javaを取り巻く環境 ・Java9以降の機能があまり知られていない 順にみていこうと思います。 途中、他言語との比較を行いますが、優劣を決めるものではありません。 構文が長くなりがちである。 以下のソースコードは、紹介されているのを見たことのある Listに要素を格納するコードです。 public class sample { public sta
◆ NamingConvention https://namingconvention.org/ 紹介 「NamingConvention」は、プログラミング命名規則のガイドラインを作成・収集・維持するオープンソースプロジェクトです。 「C#・Git・Java・PHP・VueJS・Python」が、現在作成進行中です。 Gitの章には、ブランチ名やコミットメッセージ、プルリクのネーミング規定が記載されています。 例えば、ブランチネームだと必須や許可と一緒に例文も記載されています。 プログラミング言語(Java)だと、このようになっています。 推奨のネーミングというより、キャメルケースなど、最低限準拠すべき形式が書かれています。 プログラミング版wikipediaになるような、熱量高いコミュニティが続いて欲しいです。 ◆ NamingConvention https://namingconv
概要 私自身がコンテナや、コンテナ関連のAWSサービスについてはほぼ分からない状態だったのですが、そこからできる限り効率的に知識をキャッチアップしたくて学習したときの道のりです。 同じように困っていらっしゃる方のお役に立てばと思い、記事にしてみました。この道のりの通りに進んでいただければ、時間を無駄にすることなく、多少なりともスムーズに知識をキャッチアップできると思います。 主要な概念や全体像を理解するまでの道のり いきなり詳細に踏み込んでも、つまりいきなりFargateなどのAWSサービスを使っても、すぐに迷子になることは目に見えていましたので、まずは全体感や重要な概念、用語を理解しようと思いました。 そこで色々と調べていると、次の記事を見つけました。ものすごく分かりやすかったです。 「それコンテナにする意味あんの?」迷える子羊に捧げるコンテナ環境徹底比較 (https://dev.cl
ヌーラボの松浦です。私がSREのエンジニアリングマネージャーとしてプロジェクトのサポートに携わっているプロジェクト管理ツールのBacklogは、2019年7月にJavaからScala / Play Frameworkに完全移行をしました。 このPlay化プロジェクトは、10年がかりで改良され仕様が明文化されていなかったBacklogを、JavaからScala / Play Frameworkに移行するという壮大なプロジェクトでした。 約4年にわたる「Backlog Playプロジェクト」(以下、Play化プロジェクト) で体験した“紆余曲折”を記録に残し、後のプロジェクトにつなげるために、今回から7回に渡って、技術的な挑戦やプロジェクト管理の視点など、当時のチームメンバーが独自の目線でPlay化プロジェクトを振り返った記事を連載します。 連載第1回目の本記事では、序章としてPlay化プロジ
Javaでシリアライズを扱う機会があったので、Effective Java 第3版 12章を読みました。 まとめを記載します。 シリアライズ/ディシリアライズ(Serialize/Deserialize)とは オブジェクトをバイトストリームとして符号化する、また反対にオブジェクトを再構築する手法。 Javaのフレームワークでは、オブジェクトにSerializableインターフェースを実装することによって容易に実装できる。 例えば、以下の様にUserをシリアライズ化した場合、インスタンス化されたUserオブジェクトはObjectInputStream#readObject()を呼び出せば、容易にディシリアライズされる。 public class User implements Serializable { private static final long serialVersionUID
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
はじめに 分からないことだらけなので、とりあえずrunしてlocalhostで見れるところまでをまとめました。 環境 Java 12(openjdk 12.0.1) IntelliJ IDEA 2019.2(無料版,Community で問題なし) Mac OS X 10.14.6 IntelliJ でプラグインを導入 IntelliJ のトップ(Welcome to IntelliJ IDEA)を開く 別のプロジェクトを開いている場合は、File -> Close Project で閉じる 右下 Configure -> Plugins を開く - Marketplace から**Spring Assistant**を検索で探し、Install - IntelliJ をリスタート プロジェクト作成 その1 Create New Project を選択 左側に先ほどインストールしたSpri
2019年9月16~19日にかけての4日間、米サンフランシスコのMoscone CenterにおいてOracle主催の技術カンファレンス「Oracle Code One 2019」が開催されました。Oracle Code Oneは2年前までは「JavaOne」の名称で開催されていたもので、Javaを中心とした開発者向けのセッションやブース展示、交流会などが行われる年次イベントです。 今年のCode Oneで話題の中心となっていたのは、2018年にOracleがリリースした「GraalVM」です。GraalVMは、Java仮想マシン(以下、JVM)およびJIT(Just-in-Time)/AOT(Ahead-of-Time)コンパイラの技術を利用して作成された多言語対応の汎用仮想マシンです。昨年のCode Oneレポートでも『【Oracle Code Oneレポート】Oracleが開発中の仮
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? エンジニア歴半年の自分がMaven Central Repositoryに自作ライブラリを初めて登録・公開してみました。 ちょくちょく詰まったところがあったので、その軌跡を残しておこうと思います。 自分と同じく初心者の方がライブラリ公開をするときの手助けになればと。。。 以下のリンクを主に参考にしました。 https://blog.tagbangers.co.jp/2015/02/27/to-register-the-source-code-that-was-published-in-github-to-maven-central-re
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く