ElchinatorによるPixabayからの画像
こんにちは。倉内です。
C言語というと初心者の方にとっては「難しそう…」「ポインタっていうやつ、絶対つまずくやつだ……」なんてイメージがあるかもしれませんね。
50年近くの歴史があり、多数の後発プログラミング言語がある中、特に組み込みシステムでは今もC言語が幅広く使われています。
仕様としてはそれほど難しくない言語なのですが、やはりメモリ管理やポインタなどプログラミングに初めて取り組む方には難解な部分があります。ただ、C++やC#といったC系の言語はもちろん、PHPやJavaもC言語の影響を受けて作られており、学んでおくとさまざまな場面で役立ちます。
そこで今回は、C言語の基本を学びたい方向けに6つのおすすめサイトを内容、形式、料金などの項目で比較してみたいと思います。
なお、各学習サイトの情報は2020年9月19日時点のものです。
学習形式・料金比較
サービス名 | 形式 | 料金 |
---|---|---|
Udemy | 動画・ローカル環境 | 有料(コースにより異なる) |
ドットインストール | 動画・ローカル環境 | 無料 |
paizaラーニング | 動画・オンライン環境 | 「C言語入門編」一部無料*1 |
一週間で身につくC言語の基本 | テキスト・ローカル環境 | 無料 |
苦しんで覚えるC言語 | テキスト・ローカル環境 | 無料 |
Programiz | テキスト・オンライン環境 | 無料 |
(補足)実行環境について
自分で環境構築をしなくてもブラウザ上でコードを書いて実行できることを「オンライン環境」、PCに実行環境を構築する必要があることを「ローカル環境」といいます。
プログラミング初心者の方はオンライン環境のほうが取り掛かりやすいと思いますが、業務で必要になる場合には環境構築からやるほうが役に立つかもしれません。ご自身の用途に合わせて選んでみてください。
学習内容比較
内容/サービス名 | Udemy*2 | ドット | paiza | 一週間 | 苦C | Programiz |
---|---|---|---|---|---|---|
環境構築 | ○ | ○ | ○ | ○ | ||
変数 | ○ | ○ | ○ | ○ | ○ | ○ |
データ型 | ○ | ○ | ○ | ○ | ○ | ○ |
演算子 | ○ | ○ | ○ | ○ | ○ | ○ |
条件分岐(if) | ○ | ○ | ○ | ○ | ○ | ○ |
条件分岐(switch) | ○ | ○ | ○ | ○ | ||
繰り返し | ○ | ○ | ○ | ○ | ○ | ○ |
配列 | ○ | ○ | ○ | ○ | ○ | ○ |
文字列 | ○ | ○ | ○ | ○ | ○ | ○ |
アドレスとポインタ | ○ | ○ | ○ | ○ | ○ | ○ |
関数の使い方 | ○ | ○ | ○ | ○ | ○ | ○ |
関数の作り方 | ○ | ○ | ○ | ○ | ○ | ○ |
構造体 | ○ | ○ | ○ | ○ | ○ | ○ |
ファイル入出力 | ○ | ○ | ○ | ○ |
※文字数の関係で一部サービス名を省略させていただいています。
(補足)学習内容の項目について
基本的な内容を挙げましたが、各学習サイトの名称がこれに完全一致しない場合があります。また、ここに挙げていない学習コンテンツがあるサイトもあります。
6つの学習サイトの特徴
Udemy
C言語コースはこちら
こんな人におすすめ!
- テキストを読むよりも動画で学習したい
- 多くの候補から自分に合ったものを選びたい
- 有料でもいいのでさまざまな内容を学習したい
有料の動画学習コースが提供されており、基本から応用、演習や実践的な開発を経験できるものなどとにかく種類が豊富です。
内容や学習時間、レクチャー数はさまざまですが、たとえば「イメージでわかる!基礎知識ゼロからのC言語。現役エンジニアが教えるC言語完全攻略コース」といった初心者向けのものから「IoT開発のためのC言語入門 with M5Stack」など特定分野に特化したものもあります。
最初のいくつかはプレビューで見ることができるので購入前に確かめることができ、受講人数や評価(最高を★5つで表示)も表示されています。
ドットインストール
C言語入門はこちら
こんな人におすすめ!
- 開発環境の構築からしっかり学びたい
- 基礎を確実に固めたい
- 独学でつまずいたことがある
ドットインストールの「C言語入門」は無料で受講することができます。
動画で講師の画面操作を見ながら進められるので、独学で苦戦したことがある人も「どうすればいいか分からない」といったことになりにくい作りになっていると思います。
初心者がつまずきやすいポインタとメモリ、参照渡しなどの内容をていねいに説明しているため確実に理解しながら進められます。
また、ローカル環境構築の講座が別に用意されており(Windows版とMac版があります)初めて自分で開発環境を整える人にもおすすめです。
paizaラーニング
C言語入門編はこちら
こんな人におすすめ!
- 初めてプログラミングを学習する
- 環境構築せずにブラウザ上で受講も演習も完結させたい
- 勉強といえど楽しんで学びたい
paizaラーニングでは、ブラウザ上で学習動画を見て学び、演習問題も解くことができます。プロの声優さんが解説しているため、聞き取りやすいのが特徴です。
学習講座以外にもプログラミングを学べるコンテンツがあり、難易度別に分かれたプログラミング問題を時間制限内に解く「スキルチェック」や、エンジニア男子と一緒にプログラミングバトルに挑むゲーム『推しと学べるプログラミング』など楽しみながら学ぶことができます。
ほとんどのコンテンツでC言語に対応していますので、基本を学んだあとはこちらで問題をたくさん解いてコードを書くことに慣れましょう。ゲームイベント一覧はこちら
一週間で身につくC言語の基本
こんな人におすすめ!
- 短期間で基本をものにしたい
- 練習問題を解いてコードをたくさん書きたい
一週間で身につくというサイト名通り、何日目に何を学ぶというのが対応していて、短期間で確実に学びたい人におすすめです。
C言語を初めて学ぶ人はまず「基本編」を学習しましょう。「発展」ではC言語の理解を深めるために重要な「アドレスとポインタ」、「構造体」などについてサンプルコードを見ながら学べます。
練習問題も充実していて、こちらも基本と応用に分かれています。コードは読むだけでなく書くことが大切なので練習問題にもぜひチャレンジしましょう。
苦しんで覚えるC言語
こんな人におすすめ!
- コードの書き方だけでなく「C言語とは何か」という知識もつけたい
- C言語ならではの書き方の慣習や特徴を知りたい
名前のインパクトが大きいですが、C言語の基本を体系立てて学習できる優良サイトです。
各単元に練習問題があり、実行結果を問うものから自分でコードを書いてみるものまで幅広く、基礎知識からプログラミングまでしっかり学ぶことができます。
実はスマートフォンからもテキストがとても見やすいので、テキスト部分は移動中など隙間時間に読んで学習するのにも向いています。
Programiz
こんな人におすすめ!
- チュートリアルと豊富なコードサンプルで学びたい
- ブラウザ上でコードを書きながら身につけたい
英語サイトですが、チュートリアルがていねいかつコードサンプルが非常に多いので、とにかくコードを読みたい!書きたい!という方にはとてもおすすめです。
また、「Online Compiler」というメニューをクリックするとブラウザ上でC言語のコードを書いて実行できる環境が利用できます。
完全無料でこれだけ充実しているサイトはなかなかないので、英語にちょっと抵抗が…という方もぜひ一度覗いてみてください。
まとめ
プログラミング初心者でも基本からC言語を学べるおすすめの学習サイトをご紹介しました。
Web開発ではあまり用いられることはないかもしれませんが、冒頭でも述べたとおりC言語は歴史が長く、他の言語に多く影響を与えているプログラミング言語なので学んでおいて損はありません。
今回ご紹介したサイト以外にも書籍も含めたくさん学習方法がありますので、継続した学習ができるようご自分に合うものを見つけてみてくださいね。
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら