見出し画像

素人が2020年までの1ヶ月でLINE BOTに挑戦する毎日note. 【Day 21:Javascriptとnode.jsのインプット】

こんにちは!
12月1日から2019年残り1ヶ月でスケジュール調整BOTの開発に挑戦している"くろ"です。

21日目になります。21日目にしてまだ設計中なのです。

結構絶望的なスケジュールになってきましたが、最後スパートかけていきたいと思います。

BOTの概要:Day 2の記事

BOTの仕様:機能一覧やフローチャート Day 10の記事

昨日は「2,Repository」「3,Service logic」「4,Controller」について書きました。

今日はJavascriptとnode.js(+Express)のインプットをしていきます。

Javascriptはこの本をざっと読みました。

読んだ本のリンクをはろうと思ったのですが、家に置いてきてしまったので、年明けになるかもですが、リンクを貼っておきます。

本屋さんで見つけた初心者でもわかるjavascript的な本だったと思います。

初心者向けの評価が高い本を一冊まずやればOKだと思います。


node.jsについては、このサイトを一通りまずやりました。

また、記事の中でも紹介してくれているのですが、下記のリンクが日本のNode.js協会があってそこが日本語で色々まとめてくれているので、適宜参照すると良さそうです。

以下はメモを兼ねて大事そうな所や不明な単語の引用だけ入れていきますので、読み飛ばしてもらって大丈夫です。

※ポート番号


ここでは、1234というポート番号で実行していますが、これは自由に変更できます。80に変更すれば、ポート番号を設定せず、単に127.0.0.1でアクセスできます。また通常は127.0.0.1の代りに「localhost」でもアクセスできます。

※Procfile

●Procfileの作成
これもWebアプリのルートに配置します。拡張子は付けず、ただ「Procfile」という名前で作成してください。これには以下の一文のみを記述します。

※Procfile
web: node sampleapp.js
これで、指定のスクリプトが実行されるようになります。Node.jsのアプリでは、このように「web: node スクリプトファイル」という形で記述をします。これにより、クラウド側でnode sampleapp.jsが実行され、Node.jsのサーバーが起動します。

※コールバック関数

※イベントハンドラ

非同期的なメソッドを持つクラスが利用する「イベント」という仕組みについて紹介しておこう。たとえばWebサーバーとしての処理が実装された「http.Server」というクラスでは、「待ち受けを行う」という処理に対し「クライアントからのリクエストを受信した」や「接続エラーが発生した」、「特別に処理すべきリクエストを受信した」といったさまざまなイベントが発生し、それぞれのイベントごとに異なる処理が必要となる。そこで、非同期的なメソッドを持つクラスではそのインスタンスに「イベントハンドラ」と呼ばれるコールバック関数を登録することで、それぞれのイベントに対応する処理を実行できるようになっている。

画像1

https://mag.osdn.jp/13/03/18/0939236/3

この記事が参加している募集

よろしければサポートお願いします! 頂いたサポートはクリエイター活動に活用させて頂きます。