エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

プログラミング

【OCPJ】マルチキャッチは暗黙的例外

きっかけ OCPJ11 Goldの勉強をしている際、マルチキャッチの問題を解いた際に間違えたので載せる。 テストコード public class Ocpj3_9 { public static void main(String[] args) { try{ throw new Ex1(); }catch (Ex1 | RuntimeException e) { // eは暗黙…

【OCPJ】JavaのAutoclose時の例外発生時の動きの勉強

きっかけ OCPJ11 Goldの勉強をしている際、Autocloseの問題を解いた際に躓いたので、勉強がてら実際にコードを書いて試したので載せる。 ここら辺は、機能追加されたときにしっかり勉強したので大丈夫かと思ったが、間違えたので、結構ショックだった。。。 …

2021/10/11週 気づきと振り返り アーキテクチャの検証ってどうやってるんだ?

業務こなしての問題・気づき 闇を見ているのかもしれない 今、参画しているプロジェクトで、アーキテクチャレベルの問題を抱えていることが分かった。 単体テストがやりにくく、テストを通すためのテストデータを作ってしまうので、テストにならない場合が多…

2021/10/04週 気づきと振り返り covarageで悩まされた

業務こなしての問題・気づき なし。テストするだけなので、新規の発見をするのは、かなり難しい。 趣味開発での問題・気づき sonarcloud covarage計測 プルリクを何度か出して解析していたら、とうとうcovarageに引っかかることに。。。 今までは行数自体が…

2021/09/27週 気づきと振り返り 静的コード解析はボッチの強い味方

業務こなしての問題・気づき 開発後の工程によるドキュメントの理解 書いてあることで100%理解できるドキュメントって、かなり難しいのではないかと感じている。 挙動と合わせて読みすすめないと厳しいと正しく読み込めているか、怪しいと思った。 かなり信…

2021/08/16週 気づきと振り返り また、くだらぬことで躓いてしまった

業務こなしての問題・気づき c# delegate Javaのlambda式を覚えたあとだと、記述方法にものすごい違和感があるのだが、これが普通なのだろうか? SendGrid c#でSendGrid利用しているので、そのときにハマったことを書いてく 送信リクエストのレスポンスに4…

2021/08/09週 気づきと振り返り DIちょっと分かる

業務こなしての問題・気づき C# linq 使いどきがないのだが、俺がおかしいのか? Javaのラムダ式みたいに、forEachが使いたいときがあるのだが、イマイチ使い方が分からん。 メソッドの命名規則 C#の命名規則で、メソッド名が大文字始まりなのが、ものすご…

SpringでMirageSQLをAutowiredでDIして使う

背景 久しぶりにJavaで何か作りたくなって、とりあえずDBアクセス絡みの機能を実装した。 その際、今風にDIしたいと思って色々調べてたりしてたら、かなり手間取ったのでまとめる。 環境 IntelliJ IDEA 2021.2 (Community Edition) ビルド #IC-212.4746.92、…

【Typescript移行】完結編 ~そして静的型の世界へ~

経緯 js→tsへの移行がやっと終わって、mainブランチに統合できたから、これまでの経緯を振り返って見ようと思い書いた。 移行話 とりあえず、移行を思い立ってから、移行が完結するまでを物語風でまとめておく。 内容 一章 決意 最初の段階で、tsにするかjs…

【typescript移行】Typescriptで`'x' is not defined`

経緯 js→tsへの移行をしているのだが、掲題の通り'x' is not definedが発生していて、かなり悩んだ。。。 ts移行の記事は以下 suzaku-tec.hatenadiary.jp suzaku-tec.hatenadiary.jp suzaku-tec.hatenadiary.jp 内容 htmlからtsで定義したfunctionを呼び出し…

JavascriptからTypesctiptへの移行~ts-migrateを活用

経緯 個人で開発してるプロジェクトで、どうしても型を使えたほうが開発効率が上がりそうというのが見えてきたので、一旦挫折したTypescriptへの移行を四苦八苦しながら調査した 対応方法 いろいろ調べた結果、どうやらts-migrateを使えば、比較的、低労力で…

2021/06/21週 気づきと振り返り ライブラリ管理は、どの言語でも面倒くさい

業務こなしての問題・気づき リモートワーク 便意を我慢してはならない 便意って、頭脳労働の天敵だと感じた。 通話しているときに便意が来ると、ほとんど話している内容が頭に入ってこない。 便意を我慢して通話を遮らないようにするより、ちゃんとトイレ行…

Javascriptの構文に出てくる「??」って何?

背景 Javascriptでコードを読んでいる際に、var a = test ?? "empty"みたいなコードに出会った。 三項演算子でもないし、一体何なんだ?ってのが疑問になったので調べた。 調査結果 Null合体演算子 というものらしい。 左辺が null または undefined の場合…

Bootstrap4でModalが表示されなくなった

現象 modalを用途によって表示するために、複数定義をしたあと、動作確認のためにmodalの表示を行ったら、既存のmodalが動かなくなった。。。 環境 jQuery v3.3.1 bootstrap v4.3.1 原因 おそらく、下記の箇所の記述で、画面上で1度に1個までが引っかかって…

2021/06/14週 気づきと振り返り

業務こなしての問題・気づき C HttpResponseMessageのReasonPhrase APIを作った際に、exceptionのMessageをreasonPhraseに入れてレスポンスを返していたのだが、応答が予期したものにならない。 応答が帰ってきてはいるのだが、思った通りのレスポンス表示に…

`TypeError: Converting circular structure to JSON`の意味と対処

背景 JSでデバックのためにJSON.stringify()を使ったら発生した。 printデバックの是非は置いておいて、この事象の意味と、なぜ発症したのか、対象方法についてメモする。 意味 「循環参照しているJSONを変換しようとしている」って意味らしい。 Google翻訳…

2021/05/31週 気づきと振り返り アンチswitch民に居場所はないのか!

業務こなしての問題・気づき レビューア どこまで役割を果たせば・・・ レビューアとして活動しているのだが、どこまでやるべきか迷う。 明らかに可読性最悪なんだけど、レビュー依頼されてきて、時間的にやり直してる時間がない場合、通すか通さないかで悩…

2021/05/24週 気づきと振り返り 「throw e」でなんでトレース情報が消えるねん!!

業務こなしての問題・気づき c# 「throw e」と「throw」 違い トレース情報がリセットされるかされないか。 リセットされるのは、「throw e」 なぜリセットする言語仕様なのかは分からない。。。 基本的に、リセットしたいときってないと思うのだが。。。 …

【参加報告】JJUG CCC 2021 Spring

イベント内容 【オンライン】 JJUG CCC 2021 Spring - 日本Javaユーザーグループ/Japan Java User Group | Doorkeeper 全部見ることはできなかったけど、興味関心あるものは見れた。 参加セッション感想+メモ フロントエンド・バックエンド分離の道のり 昔…

2021/05/17週 気づきと振り返り はーやくこいこいボーナス日

業務こなしての問題・気づき c テスト用のプログラムを実行したい C#をほとんどやったことがなかったので、この実装はイケるのか?って思うことがたまにある。 Javaのときは、クラスを適当に作って試してたけど、C#のビルドプロセスが分からなかったので、ど…

2021/04/26週+5/3週 気づきと振り返り GW明けは休み疲れがひどかった。。。

業務こなしての問題・気づき C# やったことがないのだが、なぜかレビューアにされてしまった。。。 using 用途がいろいろあって、javaのimportと同じ認識でいると、たまに戸惑うことがあった。 使い方としては、下記がある。 usingディレクティブ javaのimpo…

2021/04/12週 気づきと振り返り Azure Functionsは怖くない

業務こなしての問題・気づき C#.NET 何か知らんけど、なぜか.NET案件に入ってしまった。。。 ライブラリ管理 どうやるのが普通なんだろうか? Javaだとgradleとかmavenとかでやるけど、.NET系は何でしているのか分からん。 案の定、環境構築でミスって時間が…

JavaScript Advent Calendar 2020 まとメモ

Advent Calendar きっかけ 感想 【超初心者向け】javascriptとjQueryの違いは何?5分で解説。 JavaScript における配列コピー JS直書きでGoogle DoodleのCanvasを録画してGifに JavaScriptの非同期処理を制御する方法 プログラミング初学者の現役医師が、fir…

Java Advent Calendar 2020 まとメモ

Advent Calendar Java Advent Calendar 2020 - Qiita きっかけ 周囲のエンジニアに置いていかれないよう、投稿されてる内容を把握できれば、ある程度やっていけるはず。 だから、書いてある内容には一通り目を通して、知らないことを知るようにしていこうと…

Javaでコンパイル時に「エンコーディングwindows-31jにマップできません」が発生

きっかけ Java Advent Calendarのサンプルコードを実行しようと思ったら、当該事象が発生したので、調べたことメモとして、記録を残す。 環境 バージョン: 1.52.0 (system setup) コミット: 940b5f4bb5fa47866a54529ed759d95d09ee80be 日付: 2020-12-10T22:4…

2020/12/07週 気づきと振り返り 40分500円の価値

業務こなしての問題・気づき 設計書にどこまで書くのか? 既存の設計書にない箇所が修正対象になっているのだが、どうすればよいのだろうか? 書こうとすると、いろんなロジックが入ってるから、芋づる式に設計書にない箇所をどんどん書かないといけない気が…

electron実行時に`'attachShadow' on 'Element': This element does not support attachShadow`

発生に至った経緯 electronで、canvas-datagridを使おうとしていたら発生した。 発生時の環境 $ electron -v v1.4.13 発生の原因 electronのベースであるchromiumeがshadow domをサポートしているバージョンではなかったので、発生していた。 canvas-datagri…

2020/11/16週 気づきと振り返り 普通に実装してたら出会わないエラーばかりに合う1週間だった

業務こなしての問題・気づき Java streamを使えない現場 使いたくても使えない現場ってのがあるんだなって、思いました。 配列でデータが独立して保持してたりすると、使うのが難しい。 データ構造の重要性 今の現場が、画面の項目1つ1つが独立しており、…

JJUG CCC 2020 Fall 参加報告

各種リンク doorkeeper 【オンライン】 JJUG CCC 2020 Fall - 日本Javaユーザーグループ/Japan Java User Group | Doorkeeper 感想・まとメモ jq を使いこなして、開発効率アップ まとメモ フロントとバックエンド推移 前まで→サーバーで動的にHTML作成 今→U…

【Java】Java15先取り調査 JEP 375: Pattern Matching for instanceof (Second Preview)

JEP JEP 375: Pattern Matching for instanceof (Second Preview) 内容 大元であるJEP305との違いがよく分からんかった。。。 第二プレビューみたいな感じに捉えたけど、あってるのかな? 英語は、Google翻訳に一任しているから、あってるか、若干不安がある…