泡沫記

備忘録あるいは自分の背骨

Webアプリをつくるときに必要な知識

Create a Twitter-like App with Python Django JavaScript and React. Full TUTORIAL - YouTube

これを視聴中。やろうと決心して1ヶ月以上経ちどこまで進んだのかというと、実はしばらく前から70レッスン前後でいったん戦線離脱。見て手を動かしてcodeを読んでわからないと喚き、ググり調べて迷走して発見し、復習し勉強しまたやりなおし…12時間では終わらんわ、3倍以上時間かかるわと自分の知識のなさを嘆いても仕方がない。ちょっとずつ前に進んでいる手応えはあるのでリベンジマッチはあり。でももうちょっと勉強する。もがきながら感じたことをメモっておく。

人のプログラミングしている様子を見ると、ツールの使い方やバグったときの対処法が見られて面白い

「あ、これってこういう使い方するんだ」「え?そうやってデバッグするんの!」「やだ、惚れちゃう」と素晴らしく勉強になる。ただバグってもあれよあれよという間に直しちゃったりして、なんでそんなことができるんだ、何でこんなコードを書いたんだ、どういう意味なんだ、さっぱりわからんと落ち込む原因にもなる。

ReactとDjangoつなげるときDjango REST Framework が必要

どうやってデータのやりとりしてるのかと思っていたら、JSON形式にしてやり取りしてるってことを学んだ。Django REST Frameworkがなぜあるのかって、データをJSON形式にするため。ググると「エンドポイント」という言葉が出てきて何なの?と疑問だったが、何のことはない、JSONが吐き出されたwebページってことで、DjangoとReactの出会いの場みたいなもんだった。

Web APIAjaxの知識が必要

XMLHttpRequestという命令?を使ってクライアントがサーバーとやりとりすることも学ぶ。最近はfetchらしいが。非同期通信という言葉も初めて知る。JavaScriptをもっとしっかり勉強しなきゃって思った。あまりにもサラッと流しすぎたなと反省。そしてJavaScriptを勉強するための環境構築で、サーバーを建てるのどうすりゃいいんだろうと悩んでいたら、python -m http.server 8000 という1行で済むことを知り驚愕。ひと昔前、LAMPだなんだかんだとやった経験がある身としては、何だコレ感が凄い。VSCodeでLive Server の機能拡張でも一瞬で済む。溜息が出る。

ReactってClassコンポーネントよりHooks使った関数コンポーネントの方が今や主流みたいだ

本家のチュートリアルをやった身としては、おいおい回り道させんじゃないよという感想。React Hooks ばっかり使ってるやないかと。そっちの方を最優先のチュートリアルにしてくれよと。そして思う。「作用・副作用」という訳語は何とかならんかったのかと。副作用というと薬をイメージしてしまってどうしても馴染めない。明治時代の作家は偉大なる翻訳家で、西洋の概念をうまく翻訳して日本に輸入し、新たな日本語を構築するのに多大なる貢献を果たしたと聞くが、プログラミングの世界も偉大なる翻訳家が必要なのではなかろうか。カタカナのままでの使用もコンセンサスがアライアンスできなくてウィンウィンにならないのでワケワカメ。

さて勉強続けよう…