【ロピタルの学習記録 3/8】Javascriptと応用情報

GraphQLを取り入れたアプリ作ってみたいなぁ... 小さいプロジェクトじゃ真価は発揮できないかもやけど勉強として一回作ってみたい

そしてフォロワーさんのツイートでRubyのコード見てみたらクラス変数の定義方法すら忘れてました笑 こんなのあったっけって感じでした。やっぱ人間は忘れる生き物なのね

Javascript

久しぶりにJavascriptやりました。Promise理解したことによって結構ブラックボックスだった部分が見えてきて嬉しくなりました。

てか非同期とPromiseの関係を理解させてくれる記事がほとんどないから本当にjs-primerはおすすめです。

エントリーポイント

jsprimer.net

  • Webアプリケーションにおいて、エントリーポイントは常にHTMLとなる

HTTP通信

jsprimer.net

  • ブラウザ上でJavascriptからHTTP通信をする場合、Fetch APIを使用する
  • HTTP通信は、XMLHttpRequestでもできるが、Fetch APIの方が強力で柔軟
  • URLのクエリ部分は、セキュリティ上エンコードするのが定石
  • エンコードとは、特殊な意味を持った記号を文字列に変換する

上の記事の説明で気になったのは

const userId = "js-primer-example";
fetch(`https://api.github.com/users/${encodeURIComponent(userId)}`)
    .then(response => {
        console.log(response.status); 
        // エラーレスポンスが返されたことを検知する
        if (!response.ok) {
            console.error("エラーレスポンス", response);
        } else {
            return response.json().then(userInfo => {
                console.log(userInfo);
            });
        }
    }).catch(error => {
        console.error(error);
    });

このコード.thenに登録したコールバック関数で、response.okで条件分岐していますが、そもそもステータスコードが200番台以外だった場合、.thenが実行されないから意味がないのではと思いました(後々意味がわかりました)

データを表示する

jsprimer.net

テンプレートリテラルのタグ付けのところが理解できませんでしたが今は飛ばします。

Promiseを活用する

jsprimer.net

  • エラーを外側に伝えるためにPromiseオブジェクトを返し、catchでエラーをキャッチし処理する。

応用情報

今日は午後問題を解きましたが、めっちゃ不調で多分5割くらいしか取れませんでした。

セキュリティ

表の部分をきちんと読んでいれば取れた問題でした。いつも、問題文は全文読むようにしているのですが、表の説明は必要になったときに必要な場所だけ読むようにしています。

必要になったときに読むのは総合的に見て良いのですが、必要な部分だけ読むというのは、なかなか判断が難しいの、必要になったときに全部読むようにしたいと思います。

システムアーキテクチャ

初めて解きましたがボロボロでした。アルゴリズムができず焦ってこの問題を解いたのですが、今回の場合、知識があれば時間もかからず満点近く取れたとは思います。これからも演習をしてみて、こういう感じの問題が多かったら、対策しても良いかなって感じです。

今回は稼働率が出たのですが、うまい考え方ができず、取れませんでした。午後の稼働率は毎回単純化できると思うので、しっかり取っていこうと思います

ネットワーク

前回は全然できずあまりとりたくないと思ってましたが、今回は簡単でした。でも、もうちょっと考えろよ的な不正解もしていたので、反省です。というか今回は全問題頭の回転が悪く、考えが浅かった気がします。

データベース

これはただ単に僕の頭が悪くて解けないところがあったのでどうしようって感じです。データベースって、復習しても、それが身についているのか判断しづらいので、問題演習してなれるしかないですね。

情報システム開発

初めて解きました。今回はテストケースについての問題で、コツコツやる系で自分にはあまり合わないなと感じました。やっているうちに間違いがないか不安になって、全然問題が進まないという感じにいつもなります。しかもハマったら結構な時間ロスになります。

まだ初めてなのでどんな問題が出題されるのかわかりませんが、コツコツ系の問題だったら解かない方針でいきます

共有

qiita.com

明日

インプット

アウトプット

  • 応用情報: 過去問
  • TDCカレッジ: 開発(ヘッダーのアニメーション)

久しぶりにJavascriptインプットやったら忘れてる部分あったのでコツコツ復習も頑張ります。おやすみん😴