paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

初心者でも独学でC言語の勉強を始められるサイトと書籍9選

f:id:paiza:20161207180043j:plain
Photo by Bill Bradford

f:id:paiza:20140916135428p:plainこんにちは。谷口がお送りします。

プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人エンジニアの皆さんの中には「C言語を学習したい」という方もいらっしゃるかと思います。

純粋なC言語のみを利用する案件は近年減少していますが、組み込み系、制御系では依然C言語の案件が多く存在します。

また、Linuxカーネルをカスタマイズしたり、nginxの拡張モジュールを置き換えて高速化するような場合や、ゲーム等で高速な処理が求められる場面での高度なチューニングにおけるニーズもあります。

C言語は、各実行環境のネイティブの機械語コンパイルされてCPUが直接コードを実行するため、処理速度が非常に高速であるという特徴があります。

RubyPHP等の開発言語も、C言語で実装されているんですよ。

そこで今回は、プログラミング未経験~初心者の方が、なるべくコストをかけずC言語に触れられて、学習に役立てられるコンテンツを9件ご紹介していきます。


また、paizaラーニングでもC言語の講座を公開しております(無料)。
https://paiza.jp/works/c/primer
f:id:paiza:20170531191138p:plain
1本あたり約3分のレッスン動画と練習問題で、プログラミングの基本を手順を追って学べます。ブラウザさえあればすぐに学習を始められますので、ぜひご利用ください。

■プログラミング経験ゼロからC言語を覚えたい人

◆1.ドットインストー

料金:無料(プレミアム会員は月額¥880)
http://dotinstall.com
f:id:paiza:20150204142015p:plain
動画でCプログラムの書き方や実行環境の作り方等が学べるドットインストールです。実際に独学でプログラミングを始めたという人の中には、とりあえずドットインストールから学習を始めたという方も多いです。「実際のコードの書き方から学びたい!」という方や、「本当はスクールに通いたいけど費用が……」という方は、一度ドットインストールの動画を見てみてはいかがでしょうか。

◆2.苦しんで覚えるC言語

料金:無料
http://9cguide.appspot.com
f:id:paiza:20150417163457p:plain
タイトルだけを見ると難しそうですが、苦しんで覚えるC言語(苦C)は、C言語の基本機能を体系立てて解説している、初心者を対象とした入門サイトです。同名の書籍も発売されています。

◆この段階で書籍を購入するなら……

◇3.これならわかる!C言語入門講座

定価:2,376円

これならわかる!C言語入門講座

これならわかる!C言語入門講座

初心者にはハードルが高めのC言語について、キャラクター達の会話とイラストを使って、環境構築からプログラミングの基礎的な概念についてまで分かりやすく解説されている入門書です。

変数の使い方や条件文、ループ処理等プログラミングの基礎から学べますので、初心者で「プログラミング経験ゼロなんだけど、C言語に手を出すのは無謀ですか……?」という方や、「独学でC言語を使えるようになりたい!」「何か最初の1冊を購入したい!」といった方には最適な書籍だと思います。

◇4.新・明解C言語 入門編

定価:2,376円

C言語の入門書として人気があった『明解C言語 入門編』の改訂版です。

適切なサンプルプログラムと図表を使って、一つ一つのステップを着実に進めていく学習スタイルの入門本で、「C言語は初めて」という方から、「別の本やサイトで勉強しようとしたけど挫折しました……」という方にもお勧めです。

■実際にC言語のコードを書いて動かしてみたい人

◆5.paiza.IO

料金:無料
https://paiza.io/
f:id:paiza:20150205121058p:plain
paiza.IOは、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。面倒な環境構築なしに、例えば本に載っていたコード、ネット上で他の人が公開していたコード等をオンラインで実行して結果を見ることができます。ブログパーツとして使えたり、GitHub(Gist)連携なんかもできますので、ぜひpaiza.IOでどんどんコードを書いてみてください!

詳しくはこちらの記事をごらんください。


24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza開発日誌

コードをリプライとして飛ばすと結果を返信してくれるツイッターアカウントで遊ぶこともできます。


Twitterでプログラムコードを実行!結果を返信してくれるpaiza_run - paiza開発日誌


■基礎的なコードが書けるようになってきた人

◆6.paizaのスキルチェック問題

料金:無料
http://paiza.jp
f:id:paiza:20150205133638p:plain
paizaでは、コーディングスキルをはかるコーディング問題の結果により、S・A・B・C・D・Eの6段階でランクが分かります。ぜひ問題を解いて、ランクアップを目指してみてください!プログラミング業務経験のない方でも、Dランクが取得できると、プログラミングの基礎的な概要は理解できているということになります。

◆この段階で書籍を購入するなら……

◇7.解きながら学ぶC言語

定価:1,944円

解きながら学ぶC言語

解きながら学ぶC言語

こちらは前述の『新版 明解C言語入門編』の演習問題全てと、その解答全てを掲載した問題集となっています。

問題を一つずつ解きながら、C言語でのプログラミングスキルを高めていくことができますので、「とにかくC言語の問題を解きたいです!」「コードを書いて実践的な学習がしたい!」という方にお勧めです。

■paizaでDランク以上が取得できた人

◆この段階で書籍を購入するなら……

◇9.C言語ポインタ完全制覇

定価:2,462円

C言語ポインタ完全制覇 (標準プログラマーズライブラリ)

C言語ポインタ完全制覇 (標準プログラマーズライブラリ)

C言語について学ぶ多くの人達がつまずくのが、「ポインタ」です。

こちらの書籍では、ポインタとメモリの関係性や、ポインタを有効に使う例など、ポインタに焦点を当てた詳しい解説があります。

基礎的な構文は一通り習得できたけど、ポインタでつまずいてる……」という方や、「初心者レベルは抜け出したと思うから、2冊目の書籍が欲しいな~」という方にお勧めです!

■まとめ

他の開発言語では勝手にやってくれているようなメモリの解放やポインタの操作といったことは、C言語では自分で処理するコードを書かなければならず、初心者に優しい開発言語だとは言えないかもしれません。

ただ、一度学習しておくと、プログラムが裏側で何をしているかということが意識できるようになるかと思います。

勉強してある程度の基礎が身につきましたら、ぜひpaizaでご自分のスキルをはかってみてください!




paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

↓詳しくはこちら
paiza.jp

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
paiza.jp
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza


プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編