昨日は環境構築と5 min QuickstartのSHOW IT WITH MAIN.TSまでやったのでそこから続きをやった。基本的にはおもちメタルさん @omochimetaru に教えてもらっていたが、途中からmizchiさん @mizchi が見学にきて色々な補足をしてもらったり、ドズフルさん @dzfl さんがその様子を見てケタケタ笑ったり、TL上のプログラミング界隈の人間がザワザワしていたりと賑やかで楽しかった。以下詳細。
HTML
Webページを生成するためにHTMLというマークアップ言語を知った。単語そのものは知っていて、Webページ関連の何かというざっくりとした理解だったが、CSSとの関連性やtagを含めて概念としての理解をした。
・open tag < > とclose tag</ >があって、基本的に開いて閉じて挟むのが基本
例:<h1>My First Angular 2 App</h1>
→ただし、閉じなくてもいいやつ ( e.g. <meta hogehoge> )とか、閉じるんだけど中身を挟まずにtag内にぶちこむやつ ( e.g. <script hagehage></script> )とかがあって、稀によくある文法上の例外を作った先人に圧倒的感謝をした。大変ややこしい。
・HTMLとCSSの違いをよく理解していなかったが、ざっくりと役割を理解した。
→HTMLさん「この文字列を強調してください」(強調等の動作の指定)
CSS「この文字列を赤くします。」(強調等の動作の内容)
→こういった役割分担をする理由としては、CSSの内容を変えることでPC用とモバイル用に切り替えることができたり、あるいは動作の内容を変えることができるようになるため(赤文字→青文字)。動作確認をするときはWebページで要素の検証を行うことで簡単に確認できる。
例:
・TypeScript→JavaScriptに変換する動作のことをTranspiringというらしいという話を聞いた。
→わざわざ変換するくらいなら、そもそも何故JavaScriptで書かずにTypeScriptで書く必要があるの?という率直な質問をしたところ、JavaScriptは古い言語でそのまま書くのは不便な面があり、それを解消するために新しくTypeScriptという言語を作ったという答えが返ってきた。もうちょっと踏み込んで聞こうとしたが、プログラミング界の闇を覗いてしまいそうなのでやめた。
このあたりから講師陣のおもちメタルさんとmizchiさんが†プログラミングの闇†で盛り上がってしまい、
「我々がどれだけIE6を恨んでいるのか」
「activeXはセキュリティ的にヤバい」
「HTMLを作ったのはCERNのティム・バーナーズ=リー」
「ベルチームがUNIXを作り、リーナス・トーバルズがUNIXのパクリであるLINUX(LinusのUNIXの意味)を作ったのだが、このリーナスは口が悪くて有名。NVIDIA Fuck You!」
等々の歴史の授業を聞いた。
最後に5 min Quickstartをしっかり終わらせて勉強会は終了した。
疑問点
・やっぱりComponent周りの概念をしっかり理解できてないような気がする。色々といじりながら再度確認していきたい。