エンターテイメント!!

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

【Java】Java16先取り調査 環境構築編

検証環境

Visual Studio Codeのバージョン情報そのまま貼り付け。

バージョン: 1.53.2 (system setup)
コミット: 622cb03f7e070a9670c94bae1a45d78d7181fbd4
日付: 2021-02-11T11:48:04.245Z
Electron: 11.2.1
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: 8.7.220.31-electron.0
OS: Windows_NT x64 10.0.19041

環境構築

sdkmanがインストール済みで話を進める。
sdkmanのインストールやら使い方は、過去の記事参照

suzaku-tec.hatenadiary.jp

Java16のインストール

インストールするバージョン情報を確認する。

$ sdk list java

結果

================================================================================
Available Java Versions
================================================================================
 Vendor        | Use | Version      | Dist    | Status     | Identifier
--------------------------------------------------------------------------------
 AdoptOpenJDK  |     | 15.0.2.j9    | adpt    |            | 15.0.2.j9-adpt
               |     | 15.0.2.hs    | adpt    |            | 15.0.2.hs-adpt
               |     | 11.0.10.j9   | adpt    |            | 11.0.10.j9-adpt
               |     | 11.0.10.hs   | adpt    |            | 11.0.10.hs-adpt
               |     | 11.0.9.open  | adpt    |            | 11.0.9.open-adpt    
               |     | 11.0.5.hs    | adpt    | local only | 11.0.5.hs-adpt
               |     | 8.0.282.j9   | adpt    |            | 8.0.282.j9-adpt
               |     | 8.0.282.hs   | adpt    |            | 8.0.282.hs-adpt
               |     | 8.0.275.open | adpt    |            | 8.0.275.open-adpt
 Alibaba       |     | 11.0.9.4     | albba   |            | 11.0.9.4-albba
 Amazon        |     | 15.0.2.7.1   | amzn    |            | 15.0.2.7.1-amzn
               |     | 11.0.10.9.1  | amzn    |            | 11.0.10.9.1-amzn
               |     | 8.282.08.1   | amzn    |            | 8.282.08.1-amzn
 Azul Zulu     |     | 15.0.2       | zulu    |            | 15.0.2-zulu
               |     | 15.0.2.fx    | zulu    |            | 15.0.2.fx-zulu
               |     | 11.0.10      | zulu    |            | 11.0.10-zulu
               |     | 11.0.10.fx   | zulu    |            | 11.0.10.fx-zulu
               |     | 8.0.282      | zulu    |            | 8.0.282-zulu
               |     | 8.0.282.fx   | zulu    |            | 8.0.282.fx-zulu
               |     | 6.0.119      | zulu    |            | 6.0.119-zulu
 BellSoft      |     | 15.0.2.fx    | librca  |            | 15.0.2.fx-librca
               |     | 15.0.2       | librca  |            | 15.0.2-librca
               |     | 11.0.10.fx   | librca  |            | 11.0.10.fx-librca
               |     | 11.0.10      | librca  |            | 11.0.10-librca
               |     | 8.0.282.fx   | librca  |            | 8.0.282.fx-librca
               |     | 8.0.282      | librca  |            | 8.0.282-librca
 GraalVM       |     | 21.0.0.2.r11 | grl     |            | 21.0.0.2.r11-grl
               |     | 21.0.0.2.r8  | grl     |            | 21.0.0.2.r8-grl
               |     | 20.3.1.2.r11 | grl     |            | 20.3.1.2.r11-grl
               |     | 20.3.1.2.r8  | grl     |            | 20.3.1.2.r8-grl
               |     | 19.3.5.r11   | grl     |            | 19.3.5.r11-grl
               |     | 19.3.5.r8    | grl     |            | 19.3.5.r8-grl
               |     | 19.1.0       | grl     |            | 19.1.0-grl
 Java.net      |     | 17.ea.13     | open    |            | 17.ea.13-open
               |     | 17.ea.2.pma  | open    |            | 17.ea.2.pma-open
               |     | 17.ea.2.lm   | open    |            | 17.ea.2.lm-open
               |     | 16.ea.36     | open    |            | 16.ea.36-open
               |     | 15.ea.36     | open    | local only | 15.ea.36-open
               |     | 15.0.2       | open    |            | 15.0.2-open
               | >>> | 15.0.1       | open    | local only | 15.0.1-open
               |     | 14.ea.36     | open    | local only | 14.ea.36-open
               |     | 14.ea.24     | open    | local only | 14.ea.24-open
               |     | 11.0.10      | open    |            | 11.0.10-open
               |     | 11.0.2       | open    |            | 11.0.2-open
               |     | 8.0.282      | open    |            | 8.0.282-open
               |     | 8.0.265      | open    |            | 8.0.265-open
 Mandrel       |     | 21.0.0.0     | mandrel |            | 21.0.0.0-mandrel
               |     | 20.3.1.2     | mandrel |            | 20.3.1.2-mandrel
 SAP           |     | 15.0.2       | sapmchn |            | 15.0.2-sapmchn
               |     | 11.0.10      | sapmchn |            | 11.0.10-sapmchn
 TravaOpenJDK  |     | 11.0.9       | trava   |            | 11.0.9-trava
================================================================================
Use the Identifier for installation:

    $ sdk install java 11.0.3.hs-adpt
================================================================================

欲しいのは、Java16なので、下記のコマンドで16.ea.36をインストール。

$ sdk install java 16.ea.36-open

インストールできたかバージョン確認。

$ java -version
openjdk version "16" 2021-03-16
OpenJDK Runtime Environment (build 16+36-2231)
OpenJDK 64-Bit Server VM (build 16+36-2231, mixed mode, sharing)

$ javac -version
javac 16

ちゃんと変わったので、環境構築終了

2021/02/01週 気づきと振り返り 「辛い」しか思いつかない

業務こなしての問題・気づき

画面に詰め込み過ぎは良くない

画面に大量に項目があるのだが、結合テストがキツイ。。。
打鍵ミスも多いし、頭がパンクしそう。。。

期限もあるし、かなり焦る。
正直、データ準備するだけで億劫になるのが辛い。

業務がわからない状態での結合テスト

テストになってるのかよく分からない。。。
業務がわからないから、データ準備もかなり苦戦する。

聞いたら、若干キレ気味に答えられるし、苦痛が半端ないですわ。。。

はじめての心療内科

案外あっさり終わった。
ヒアリングして薬だった。

なんか、もっとこう掘り下げられるのかと思ったが、そんなものなのだろうか?

軽めの睡眠薬と気分高揚の薬をもらった。

【書評】コンピュータアーキテクチャのエッセンス

読むに至ったきっかけ

翔泳社ブックアンバサダー』に応募した結果、当選したので読むに至る。
いくつか候補があったが、一番興味を引いたので選んだ。

目次

第1章 序論と概要

■第1部 基礎

第2章 デジタル論理回路の基礎
第3章 データとプログラムの表現

■第2部 プロセッサ

第4章 さまざまなプロセッサと計算エンジン
第5章 プロセッサの種類と命令セット
第6章 データパスと命令実行
第7章 オペランドのアドレッシングと命令表現
第8章 CPU:マイクロコード、保護、プロセッサモード
第9章 アセンブリ言語とプログラミングパラダイム

■第3部 メモリ

第10章 メモリとストレージ
第11章 物理メモリと物理アドレッシング
第12章 キャッシュとキャッシング
第13章 仮想メモリ技術と仮想アドレッシング

■第4部 入出力

第14章 入出力の概念と用語
第15章 バスとバスアーキテクチャ
第16章 プログラム駆動と割り込み駆動の入出力
第17章 デバイスと入出力とバッファのプログラミング

■第5部 高度な話題

第18章 並列処理
第19章 パイプライン処理
第20章 電力とエネルギー
第21章 性能評価
第22章 アーキテクチャのサンプルと階層構造
第23章 ハードウェアのモジュール化

リンク

コンピュータアーキテクチャのエッセンス[第2版](Douglas E. Comer 吉川 邦夫)|翔泳社の本

感想

献本頂いた本なので、若干贔屓目で読んでいるかも。
また、ITエンジニアと仕事に従事しているので、そういう視点から見ての感想である点を考慮して感想を見ていただければと思う。

ざっくり呼んだ感想としては、非情に内容が濃い本であったと思う。
1度ですべてを理解するのは不可能。何度も読み返したり、ネットで調べながらの作業になる。
実際、読むのがかなり大変だった。書いてある内容を吟味して、自分の中に落とし込むのが大変な1冊だったと思う。

学校で習った知識の深堀り的な意味合いが強い印象だった。
デジタル回路の仕組みや理論は、読み返しても難しい。AND、OR、NANDは、電子回路で理解はしているのだが、電子回路の設計にどう役立っているのか、学生時代はよく分からなかった。
本書を呼んで、実際に電流や時間の流れを考慮してくると、ANDとかの単純なものより、XORとかの方が使いやすいという考え方が腑に落ちた。情報処理技術者試験とかでもXORで難解なものが出てくることがあるが、どちらかというと、実務に近い方の問題だったのかもしれない。
メモリやデータの扱いに関しては、ハードよりの記載が多く、Javaエンジニアである自分には、少しハードルが高かった。学生時代にC言語を少しやっていたので、ある程度の話にはついていけたが、メモリの扱いやポインタとかを使ってない言語系の人には、かなり難解かもしれない。

本書を通して一番感じたのは、人間にとっての分かりやすさが、そのままコンピュータにとっての分かりやすさ、効率化ではないことだと感じた。
プログラマーとしてハードの知識を知っていることで、効率化に活かせるような気がするが、個人的には、最適化よりも、まずは理解しやすいものを作るべきだと思っている。
人間に理解しやすいものから、どれだけハードに寄せるかは、作ったあとに考える必要があるので、ハードの知識は、そのときに必要になってくる。
本書の知識が必要になってくるのは、そういった当たり前ができるようになってからだと思う。
自分の知識レベルを吟味した上で、本書は読むべきだと思った。
※自分に対しては、早かった気がする。。。

まとメモ

続きを読む

2021/01/18週 気づきと振り返り

業務こなしての問題・気づき

スケジュール大事

胃が痛むようなプロジェクトに入っているのだが、スケジュールがあることの大事さを痛烈に感じてる。

スケジュールがないと、頑張るラインが判断できず、真面目な僕は死ぬまで頑張るを選択してしまうのです。。。

スケジュール感が分からないのは、精神的プレッシャーを感じる。
スケジュールは、立てておかないと、チーム開発では致命的だと思った。

見当違いでも、スケジュールはあるべきだと思う。
見当違いのスケジュールは、立てた人が責任を負えばいいので、とりあえずスケジュール立てて欲しい。

VSCodeのterminal起動時に`Cannot read property ‘length‘ of null`

きっかけ

mac OSのバージョンアップして、vscode開いたときにterminalが開かなかったので、メモ

対処

bashzshに変更

terminalの設定を/bin/zshに変える。

settings.jsonを設定

settings.jsonに、下記を設定する。

"terminal.integrated.localEchoStyle": "#ffffff",

workspaceのsettings.jsonに追記したけど、既定の設定の方のsettings.jsonに追記しても大丈夫な気がする。

原因(おそらく)

.vscodeのフォルダができなかったのが原因な気がする。
「lengthがnullになってる」みたいなメッセージだったけど、なんでこの設定で直るのかは、よく分からなかった。。。

参考サイト

Cannot read property ‘length‘ of null while opening vscode terminal_昔风不起,唯有努力生存!-CSDN博客
※なんかポップアップが大量に出てきたから、リンクを開くときは注意して。

Catalinaでデフォルトシェルが「zsh」に変わる、bashとの違いは? - 新・OS X ハッキング!(241) | マイナビニュース

闇の魔術に対する防衛術 Advent Calendar 2020 まとメモ

Advent Calendar 2020

闇の魔術に対する防衛術 Advent Calendar 2020 - Qiita

書くきっかけ

僕は光の戦士だが、闇を知ることで戦いに勝利できると思い、各戦士たちの戦いの記録を読んで自分の力にしようと思ったから。(厨二文章です。要約すると、"みんなの苦労を自分の力にしたいから"です)

記録

DEAD CODE COOKBOOK ~デッドコードの作り方と復活の呪文~ の紹介

DEAD CODE COOKBOOK ~デッドコードの作り方と復活の呪文~ の紹介 - Qiita

dead coadよりunreachable codeの方が心が踊る。
大半は、returnで引き起こされることが多いなって印象。

ありえない分岐に入るときは、なるべく例外投げるようにしているが、他の人はどうやって付き合っているのだろうかという疑問はある。

存在しない正規表現 ~正規表現と秘密の部屋~

存在しない正規表現 ~正規表現と秘密の部屋~ - Qiita

rubyは疎いのでJSで試したが、たしかに同じ結果になる。

正規表現が難解なのは、矛盾を作りやすいところにあるのではないかと思った。
デバックが難しいのも、拍車をかけている気がする。

可視化や統計でデータに『恣意的なストーリーを語らせる』16の闇の魔術【bad charts】

可視化や統計でデータに『恣意的なストーリーを語らせる』16の闇の魔術【bad charts】 - Qiita

見てて思うところがある。
これって、テレビとかがよく使う図の詐欺グラフと一緒だ。。。
俺がメディア嫌いになった理由の一つとして、自分たちの主張のために、わざと錯覚させるようなグラフを作ってくることにある。

無知でそうなることもあれば、恣意的にやることもありそうだ。
だから、表現方法として適切化どうか、グラフ作るときは慎重に考えなければいけない気がする。
むしろ、1つのグラフで情報をすべて理解したような気になるのは、かなり怪しいのかもな。。。
グラフを見たら、いろんな疑問を持つようにしたほうが良いのかもしれない。

642日前に日本中を震撼させた闇の魔術に対する防衛術 の授業

642日前に日本中を震撼させた闇の魔術に対する防衛術 の授業 - Qiita

これって、ウイルスどうこう言ってたやつだっけ?
これはウイルスじゃなくてバグだったというオチだった気がするが、記憶にない。。。

GitHub Hacking ~GitHubを容量無制限のクラウドストレージとして使用する試み~

GitHub Hacking ~GitHubを容量無制限のクラウドストレージとして使用する試み~ - Qiita

容量制限の問題は、前に引っかかったことがある。
その時は、git管理を諦めたんだったかな?
ストレージ逼迫させる攻撃とかのリスクはありそうだな。。。

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(前編)

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(前編) - Qiita

こういうの、場数を踏まないと得られなさそう。。。

netstatは、たまに使う。
開発で、サーバー起動しっぱなしだったけど、プロセスが分からなくなったとかに使う。

話を聞けば分かるんだけど、いざ、実際の問題を目の前にしたら、何もできなくなりそう。。。

こういうのを訓練できる教材って、どこかにあるものなのだろうか?
こういうのを解決できる力って、重要だと思うのだが、いかんせん、どうやって身につけられるのかが分からない。。。

【闇の魔術】【2020年】Qiitaの2020年に読んでおくべき闇の魔術に関する記事100選【手動集計】

【闇の魔術】【2020年】Qiitaの2020年に読んでおくべき闇の魔術に関する記事100選【手動集計】 - Qiita

理解されやすいコードの書き方

理解されやすいコードの書き方 - Qiita

コードの整理方法って感じだった。
rubyは詳しくないので、サラ見だったが、なんとなく意味は伝わるものもあった。

Excel VBA に対する防衛術

Excel VBA に対する防衛術 - Qiita

VBAでプログラムは組むもんじゃないなと思いました(小並感)

一般的なプログラミングのパラダイムが通用しないので、普通の感覚で実装するとハマることが多そう。
なるべく使わないor使うとしてもサポート程度に留めるのが良さそう。
システムに組み込むと、いろいろ問題を引き起こしそうな気がする。

作用を「計算」できる Java で純粋関数プログラミングしよう

作用を「計算」できる Java で純粋関数プログラミングしよう - Qiita

逆に闇を見ている気がする。。。
Javaだと、関数型プログラミングは、整理がちゃんとできてないと、逆に可読性を落としそうな気がしないでもない。

echo "hello, darkness" ~Webサービスにおけるダークモードという闇~

echo "hello, darkness" ~Webサービスにおけるダークモードという闇~ - Qiita

ダークモード対応は、異なる領域で別個に対応があるのが、闇を読んでるんだろうなって気がする。

// なぜかこの行がないと動かない

// なぜかこの行がないと動かない - Qiita

読み物的な感じだったので、既読終了

FileMaker】リレーションシップグラフの闇に勝つために

【FileMaker】リレーションシップグラフの闇に勝つために - Qiita

FileMakerを詳しくしらんので、なんとも言えないな。。。

素性がよくわからない闇システムの解析方法

素性がよくわからない闇システムの解析方法 - Qiita

読み物的な感じだったので、既読終了

不死鳥のOffice仕事

不死鳥のOffice仕事 - 青ポスの部屋

読み物的な感じだったので、既読終了

チェックリストの牢獄から抜け出すために

チェックリストの牢獄から抜け出すために - Qiita

チェックリストは、どっちかと言うと、なくして欲しい。
正直、仕様覚えたり、ロジック考えたりしてると時間的余裕がなくなり、チェックリストの実施は大雑把になる。

また、日本語の問題になることもあるのが、やっかいなところだと思うんだよね。。。

アプリからのクソクエリを変更できない闇の魔術、に対する防衛術[MySQL]

アプリからのクソクエリを変更できない闇の魔術、に対する防衛術[MySQL] | キムラデービーブログ

mysqlは詳しくないのだが、インデックス張ってなんとか高速化しましたって認識でいいのかな?

「レガシーのメンテばかりは嫌だ」と言う学生さんへのマジレス

「レガシーのメンテばかりは嫌だ」と言う学生さんへのマジレス - Qiita

学生の言う「レガシーのメンテばかりは嫌だ」は、たぶん、スキルのつかない場所で働くのは嫌だって意味な気がする。
アレじゃない?漫画の予告犯みたいな現場を予想している学生が多いんじゃないかな?って気がする。
さすがに、俺もあんな現場は嫌だよ。。。

リディクラス(馬鹿馬鹿しいコード)

リディクラス(馬鹿馬鹿しいコード) - ばぁど・うぉっちんぐ

見て分かることをコメントに残すのは、意味がない。変数名も同じ。

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(中編)

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(中編) - Qiita

防衛術って、実態調査がメインな気がしてきた。。。
実態を明らかにするのが難しいんだよね。。。

検証無視は蜜の味?多くのプログラマーが1度は手を染めたことがあるかもしれない(?)闇魔術

検証無視は蜜の味?多くのプログラマーが1度は手を染めたことがあるかもしれない(?)闇魔術 - Qiita

認証の話か。。。
こういう場合は、オレオレ証明書を作って乗り切れって、誰かが言ってた気がする。

いつかTomcat10を使用する……気になれないパッケージ名変更の闇

いつかTomcat10を使用する……気になれないパッケージ名変更の闇 - Qiita

どこかのJavaのバージョンで、JavaEEが切り離された余波が、Java10で顕在化するわけか。。。

関数電卓プログラミングの世界:闇の魔術編

関数電卓プログラミングの世界:闇の魔術編 - Project Fx 2.0

話が濃すぎて追いつけそうにないので、スルーします。。。

Ruby】🏡THE HOUSE OF THE DEAD CODE

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(後編)

よく知らないアプリケーションの性能と戦わないといけないときの防衛術(後編) - Qiita

もう、追いつけないところまで行ってしまったのね。。。

全体感想

話の内容が濃すぎて、追いつけないのがチラホラ。。。

さすがに、専門外は、追いつけないな。。。
やれることを増やしていかないといけないとは思いました。

JavaScript Advent Calendar 2020 まとメモ

Advent Calendar

JavaScript Advent Calendar 2020 - Qiita

きっかけ

エンジニアとして、周囲に置いていかれないように、多くの人が情報を乗せる場所で自分の知識レベルを合わせるためにまとめてみようと思ったから。

感想

【超初心者向け】javascriptjQueryの違いは何?5分で解説。

【超初心者向け】javascriptとjQueryの違いは何?5分で解説。 - Qiita

最近は、あんまりjQueryは使わないかな。
jsで楽して書くようにすることが多い。
未だに、$とかが意味分からなくて、結構固まる。

jsの開発は、nodeってイメージが強い。
というか、これって、jsとnodeの違いも、同じことが言えるよね。。。
jsは、ライブラリが大量に出回っているから、素のJavaScriptの実装と、ライブラリを利用している実装の見分けが、初学者にはキツイ印象がある。
実際、自分も初めてJavaScriptやったときは、ライブラリを使った記述なのか、JavaScript標準の記述なのか迷ったことが多かった気がする。

JavaScript における配列コピー

JavaScript における配列コピー - Qiita

個人的には、concat使っちゃう。
スプレッド構文は、パット見で固まりそう。。。
慣れればスプレッドが良いんだろうけど、配列コピーしたいシーンが、まだそんなに多くない。

JS直書きでGoogle DoodleのCanvasを録画してGifに

JS直書きでGoogle DoodleのCanvasを録画してGifに - Qiita

canvasとかのダウンロードの実装って、そうやってできるんだってのが、参考になった。
jsのダウンロードの実装って、どうやってるんだろうって毎回疑問に思ってたが、aタグを使うやり方があるのね。

JavaScriptの非同期処理を制御する方法

JavaScriptの非同期処理を制御する方法 - Qiita

JavaScriptやるなら、必ず通る非同期処理だね。
Promiseは、知らないうちにコールバック地獄になるから、今はawaitをなるべく使うようにしている。

プログラミング初学者の現役医師が、firebase使って診断名を管理できるLINEBOTを実装してみた。

プログラミング初学者の現役医師が、firebase使って診断名を管理できるLINEBOTを実装してみた。 - Qiita

初学者でも、サービス連携すれば、ある程度形になるんだって感じた。
最初は、まずサービスを作ることが重要なのかもしれない。
何か作るにしても、いろんなことが気になりすぎて、重要なことの優先順位が落ちるってことは、ありえそう。。。

Canvas2Dについてさっくり復習してみた

Canvas2Dについてさっくり復習してみた - Qiita

素のCanvas2Dは、俺も触ったことはない。
何かしらのフレームワークで隠蔽されているものを使うことが多い。

API見たけど、素で使うのは、俺にとってはレベルが高そう。。。

JavaScript】プリミティブ型とオブジェクト型を理解したい

【JavaScript】プリミティブ型とオブジェクト型を理解したい - Qiita

JavaScriptに型がないと感じるのは、型の宣言を書くことが極端に少ないからではないかと思う。
めったに書かないから、ないと思ってしまっても仕方ないのかもしれない。

JavaScript】Function.prototype.bind() とthis束縛の歴史

【JavaScript】Function.prototype.bind() とthis束縛の歴史 - estie inside blog

javascriptのthisは、未だによくわからないのが実情。。。
とりあえず、アロー関数使っておけば、違和感なく使えるって理解くらいしかない。

selfで回避は、昔、よくやったなぁと懐かしむばかりである。
もう、ここらへんの理詰めは、思い出せない。

JavaScript】非同期処理 まとめ

【JavaScript】非同期処理 まとめ

やっぱり、promise, async/awaitで躓く人は多いんだ。。。
自分も、理解するのに結構時間がかかった。

Promise.allSettledは、使ったことないな。
どれかがコケたら例外処理ってのが普通だから、出会ったことがなかった。
ES2020から導入されたから知らんかったのだろうな。。。

あとで試す。

楽天 ラッキーくじ」を自動化して、運試しをしてみる Tampermonkey篇

「楽天 ラッキーくじ」を自動化して、運試しをしてみる Tampermonkey篇 - Qiita

こういうのは、作ったほうが便利なんだとは思うが、なかなか腰が上がらない。。。

[JavaScript (クラスの作り方)] JSやURLのアレコレについて触れながら、URLを操作するクラスを作ってみよう!

[JavaScript (クラスの作り方)] JSやURLのアレコレについて触れながら、URLを操作するクラスを作ってみよう! - Qiita

typescriptから入ったせいか、javascriptでも普通にclass書いちゃう。
むしろ、序盤の方が違和感が強かった。
古くからjavascriptやってる人は、classの記載に違和感を覚えたりするのだろうか?

[JavaScript]作業効率を上げるためにデバックを身に付けよう

[JavaScript]作業効率を上げるためにデバックを身に付けよう - Qiita

javascriptのデバックは、だいたいブラウザで完結できるからな。。。
ただ、サーバーサイドのjavascriptは、そうはいかない。
consoleログを大量に使った記憶がある。
console.dir()は、実用性ありそう。

console系のメソッドは、試す。

急に難しくなったJavascript

急に難しくなったJavascript - Qiita

昔が分からんから、なんとも言えないな。。。

JavaScriptの口寄せ的な存在? call()メソッド

JavaScriptの口寄せ的な存在? call()メソッド - Qiita

callは、あんまり使ったことないな。
ただでさえややこしいthisの参照先を覚えるのが嫌だから、アロー関数とかselfでなんとかすることが多かった。

callやapplyからは、かなり嫌な臭いを感じる。
深みにハマりそうだから、ふ~ん程度で辞めときます。。。

JavaScriptで特定のキー入力をトリガーにしたい

JavaScriptで特定のキー入力をトリガーにしたい - Qiita

特に目新しいものはなかったので、既読

JavaScriptはthisで挫折して初めて成長する

JavaScriptはthisで挫折して初めて成長する - Qiita

やっぱり、thisで挫折するのは全員共通なんだ。。。

【JS入門】 JS 初めの一歩に必要な知識を解説

【JS入門】 JS 初めの一歩に必要な知識を解説 - Qiita

特に目新しいものはなかったので、既読

外部サイトへの「埋め込みjsタグ」を作る際に気をつけていること

外部サイトへの「埋め込みjsタグ」を作る際に気をつけていること - Qiita

scriptタグにasyncを付けられるのを初めて知った。
dom操作系ならdeferがまるそう。
いっつも、onloadで完了後にdom操作してたが、そんなことしなくても良かったんだな。。。

忙しいプログラマーのための関数型プログラミング

忙しいプログラマーのための関数型プログラミング Functional Programming for the Working Programmer

UNIT1に該当する箇所を読んで、挫折しました。。。
なんとかUNIT1相当の箇所は読み込めたけど、それ以降はキツイ。。。

動的にCSSを生成してテーブルをフィルター

動的にCSSを生成してテーブルをフィルター

どっちかと言うと、正規表現がメインな気がしないでもない。

Web制作で使えるJavaScript

Web制作で使えるJavaScript集 - Qiita

List.jsは、気になった。最近、個人で開発しているのやつで、データの表記をどうするか考えているのがあったのだが、使えそうな気がしないでもない。

<input type="file">JavaScriptで扱うときに気をつけること

<input type="file">をJavaScriptで扱うときに気をつけること - 青色の紙切れ

<input type="file">で、最近悩まされていろいろ調べたから、既知だった。

TODO

  • Promise.allSettledを試す
  • console系のメソッドを試す