◆当ページにはプロモーションが含まれています

初学者向け

【初心者】非同期通信?Webサーバ?プログラミング学習を始めた時の疑問4選

みなさん、こんにちは。どんぶラッコです。

私エンジニアとして活動を始めた当初、プログラム以前のところですごく悩んでいたなあ、と思っています。

そこで、私が詰まっていたポイントをいくつか整理してみました!

今から学ぶ人にとっての小さな「?」を解決できたら嬉しいです。

名前ってどうやってつけたらいいの?

私が地味に困ったのはこれでした。
変数や定数を宣言する時どうやって書いたらいいのか、全くわかりませんでした。
そんな方は、

  • リーダブルコード

を読むことを強くオススメします!


また、各言語によって、変数の英単語を宣言する方法が異なっています。

  • パスカルケース
    • TestName
  • ケバブケース
    • test-name
  • スネークケース
    • test_name
  • キャメルケース
    • testName

といった具合です。

言語によって↑のどれが使われているのかは異なりますが、そのほとんどの理由は”それを使っている人が多いから”です。

なので、極論自分が好きな宣言方法で記述すればいいのですが、使っている人が多いルールを使ったほうがチームで開発する時にはルールを共通化しやすいです。

なので、言語ごとの傾向がそのまま残っているんですね。ちなみに、傾向として定数は大文字(Name, NAME など)を使うことが多いです。

詳しいお話についてはこちらの記事でも解説しています!

https://proglearn.com/2020/06/06/%e3%80%90%e5%8b%95%e7%94%bb%e8%a7%a3%e8%aa%ac%e3%81%a4%e3%81%8d%e3%80%91sampletext-sample_text-%e5%a4%89%e6%95%b0%e3%81%a3%e3%81%a6%e3%81%a9%e3%81%86%e3%82%84%e3%81%a3%e3%81%a6%e6%9b%b8/

https://proglearn.com/2019/06/13/%e3%80%90post_detail-html%e3%80%91-%e2%86%90%e3%81%93%e3%81%ae%e5%90%8d%e5%89%8d%e3%81%afng%e3%81%a7%e3%81%99%ef%bc%81-html%e3%81%ae%e5%91%bd%e5%90%8d%e8%a6%8f%e5%89%87%e3%82%92%e3%81%94%e7%b4%b9/

テストって何?

テストがなんで必要なのか、そもそもテストってなんなのか。全く理解できていませんでした。

テスト駆動開発の先駆者である @t_wada さんがde:code2017で講演されている内容がとてもわかりやすいです。

https://channel9.msdn.com/Events/de-code/2017/DO03

具体的なテストコードの書き方は、JESTというライブラリを例に解説した記事があります!

https://proglearn.com/2019/10/19/node-js-%e3%81%a7%e3%83%86%e3%82%b9%e3%83%88%e3%82%92%e8%a1%8c%e3%81%86%e3%81%ab%e3%81%afjest%e3%81%8c%e4%be%bf%e5%88%a9%ef%bc%81-jest%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9%e5%85%a5%e9%96%80/

https://proglearn.com/2020/06/13/%e3%80%90jest%e3%80%91nuxt-js%e3%81%a7%e3%83%86%e3%82%b9%e3%83%88%e3%82%b3%e3%83%bc%e3%83%89%e3%82%92%e6%9b%b8%e3%81%84%e3%81%a6%e3%81%bf%e3%82%88%e3%81%86%ef%bc%81%e3%80%90%e5%ad%a6%e7%bf%92%e6%96%b9/

非同期通信って何?

名前もわかりづらいし、結局なんでこれをやらなきゃいけないのか、全然わかりませんでした。
こういうのは、たとえ話で解決するしかないです!←
まとめると、こういうことです。

image.png

詳細の説明は、私がQiitaに投稿した記事があるので併せて参照ください。

[JS] 図で理解する 同期 / 非同期処理 の概念と実際の実装方法 – Promise, Generate, async

Webサーバって何してるんだ?

これが一番わからなかったです。さくらのレンタルサーバやXAMPPを使ってそこにファイルを置くとWebサービスが公開できるらしい、ということまでは理解していましたが、それが実際問題どのような動きが後ろ側で起こっているのか、全く理解できていませんでした。

オススメとしては、Webブラウザがそもそもどのように情報をとってきて表示しているのか、そのプロセスを追ってみることです。

リクエスト、レスポンスという言葉を聞いてピンとこない場合、ぜひ一度学習してみてください。

ちなみに、私はこんな感じで整理をしています。
(スクレイピングの説明資料用に色々省いちゃってますが。。)

image.png

↑の資料はSpeakerdeckにアップロードされています。


今日はここまで!また思いついたら追加していきます。

皆さんも”ここ詰まってた!”や”これ悩んでた〜!”なことがあったら教えてください!

エンジニアにおすすめ転職サイト

マイナビIT AGENT
迷ったらまずはココ。求人数が多いため希望や条件にマッチする求人が見つかる!

レバテックキャリア
担当者のレベルが高い。エンジニア特化で15年の実績がある実績で初回提案での内定率驚異の90%!

JOIN
副業やフリーランスとして高額報酬案件を見つけるならJOIN。未経験者でも案件獲得実績豊富が強み!

\面白いと思ったら/

記事のシェア & Twitter のフォロー をお願いします!

@proglearn
一緒によく読まれている記事

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です