・JavaScript
~前回までのあらすじ~
四女神オンラインのネタバレ感想を書くために「続きを読む」機能を使おうと思ったのだが、アメーバブログに「続きを読む」機能はサポートされていないため、ユーザーが自分で実装しなければならないらしい。
適当なサイトの方法を試してみたがうまく行かなかったので、俺は自分で勉強することにして、図書館から
独習JavaScript 第2版
Amazon |
を借りてきたのだった。
タプリスもやってたしちょうどJAVAを勉強したかったところだったんだよね~と思ったら、JAVAとJavaScriptは完全な別物らしい(同じだと思ってた)。
さて、俺は一応理系だしプログラミングを学ぶことは(稀に)あるのだが、プログラミングというのはメガネのオタクの領域だけあって内容に際限がなく、合目的的な意識を持たなければすぐに泥沼にハマってしまう。
いくら俺の頭がいいとは言っても技術書を一読しただけでその本の知識で作れるプログラムが全て淀みなく書けるわけではない。実際にその段階に至るためには実機を動かしていかなければならないのだが、それは大抵時間の無駄である。
俺は職業プログラマーでは無ければ、普段からプログラミングをする趣味もないので、細かい文法など一瞬で忘れてしまう。いつか忘れる上に忘れるまでに使わないことを覚えるほど無駄なことはないわけで、この辺りをはき違えると膨大な時間をドブに捨てることになる。
プログラミングに限らず、頭の中に全てをインプットする必要はなく、精々欲しいときに引き出せれば十分という知識は多い。昔の俺は天才だったので全ての知識を頭に叩き込めたが、最近は加齢による記憶系機能の低下が著しく、いちいち選別していかなければすぐに容量が足りなくなってしまう。老いに適応せよ。
ちなみに俺が最初に独学したのはC言語で、そのときは結構な時間を無駄にしたような気もするが、入り口の学習はそのくらいが丁度いいのかもしれない。
こういうケースで俺が得るべきだと考える知識は以下の三点である。
1.辞書の引き方
2.(テクノロジーなどの)抽象的な理解
3.単語に親しむ
1.辞書の引き方
「無知」という状態には2パターンあり、何を知ればいいのか自体がわからない状態と、何を知ればいいのかはわかっている状態がある。
例えば、テレビの映りが悪くなった場合、大抵の人はテレビの原理など知らないので、症状を診たところで原理的に正しい直し方がわかることはない。それでもまずは取説を見て、次に企業に問い合わせるとか、解決するための手順は知っている。手順を知らなければ、いきなり電気店に行ってテレビを買い替える羽目になるかもしれない。
そんな風に、
「『何を知らないか』を知らないので『何をすればいいのか』わからない」
から
「『何を知らないか』を知っているので『何をすればいいのか』はわかる」
にさえなれば、検索機能が充実した現代社会では十分なことが多い。
特にプログラミングはそもそもが何かを実現するための手段であるため、ほとんどの知識に目的を対応させることができる。
今回、Webブラウザ上で通信などを含めて動作するプログラムは初めて知ったので、この先Webブラウザ上で動作する何か(いむドラオンラインとか)を作りたいなあ~と思った時は、またJavaScriptの本を借りてきて、目的の知識があるページを捲ればいいわけだ。
2.(テクノロジーなどの)抽象的な理解
インタプリタ型とコンパイル型の違いとか、オブジェクト指向の目的とは……みたいな類のやつ。
こういう抽象的な知識は持っておいて損しない気がする。色々な領域で使われるので(この言語は大文字小文字の区別をするかなどという知識と比べて)費用対効果がいいというのもあるし、内容を保持しておくと流用が効く。
抽象化された概念は縦横無尽に流用できる。δ-ε論法はプラグマティズムと結び付くし、今回学んだ中では、HTMLとCSSの関係は記号学の所記と能記の関係に似ていると思った(CSS自体がHTMLを意味するわけではないので、正確にはCSSは所記と能記の関係性の記述に近い)。
「なんだか面白い」というだけでも十分なのだが、ある問題を別の構造からの類推で解決できればなおよい。
3.単語に親しむ
どちらかというと個別的な知識なのだが、固有名詞は覚えておくと捗ることが多い(それっぽい単語としては、今回はAjaxやDOMも覚えた)。実用的には自分で説明できればベストだが、「なんか知っている言葉だぞ」というくらいでも十分な気がする。フックは多い方がいい。
例えば、一昨日りっぷるが技術関係の記事を書いていたが、
http://ripplegashi.hatenablog.com/entry/2017/04/07/162651
今回JavaScriptの勉強をして「ブックマークレート」という単語を知ったおかげで理解できた(一週間前なら「なんかよくわかんねーこと書いてるな」で終わった)。
で、
JavaScriptの勉強を終わらせていざ元のコードに立ち向かったのだが、やっぱり動かない。
色々調べていると、先々月にフリープラグインの機能自体が無効化されていることがわかった。
http://ameblo.jp/staff/entry-12247397187.html
もうどうにもならないことがわかったので、Livedoorブログに移転することにする。
しかし、アメーバブログからの引っ越しに対応していない。記事数は大したことがないので手動で移してもいいのだが、FC2ブログ移転を経由してLivedoorブログに行く方法を取ろうとしたら、今度は認証エラーが出る。アメーバブログの設定変更をしてから2日くらいはうまく移転できないらしく、今それを待っている状態。
3日待って駄目なら手動で移転しようと思う。
・続き/作品内の自由意志について
次回でいいですか?
・アポカリプスの砦
アポカリプスの砦(1) (月刊少年ライバルコミックス)
Amazon |
ゾンビものなんだけど、どっかで見た設定のオンパレードでオリジナリティがほとんどない。「それっぽい展開」をやるために整合性を捨てていることが多く、浅すぎて面白かった。
特に吉岡くん、君A-BOUTにもいたよね?