今回はプログラマー、特にウェブプログラマーが勉強するプログラミング言語に関わらず共通的に知っておいたほうが良い知識を紹介していきます。
これだけは押さえておきたいプログラミング知識5選
1. JavaScript
特にウェブサービスを構築するとなると、サーバーサイドはPHP、Java、Perl、Ruby、Python、Scala、node.js…などなど色々な選択肢があります。プログラミング入門者だとPHP、最近だとRubyから入るというパターンもあるかもしれません。これらのいずれかを知っておけばデータベースを操作して、HTMLを出力してとりあえず動的なウェブサービスは作ることが出来ます。
しかし、最近はリッチクライアントなサービス(クリックで色々な要素がアニメーションしたり、ページ読み込みが発生せずにページが切り替わったりすること)が増えています。
これを実現するにはクライアントサイドスクリプトの知識が不可欠になります。そして、クライアントサイドスクリプトはサーバーサイドと違い、ほぼJavaScript一択!!
よって、ウェブサービスを作るとなるとサーバーサイドの言語は自分にあったものを勉強すれば良いですが、いずれ必ずと言って良いほどJavaScriptを勉強する必要があります。
JavaScriptもプログラミング入門に最適と言われていますが、サーバーサイドの言語ばかり書いていると色々な考え方の違いなどもありますので、苦労するかと思います。
ですのでJavaScriptも概念やどんな事ができるかは把握しておくと良いでしょう。
2. MySQL
上記でも少し触れましたがサーバーサイドの言語を勉強すればデータベースを操作することが出来ます。ウェブサービスを作る上ではデータベースを使うことはほぼ必要不可欠です。データベースが必要になるのは例えばユーザ登録/ログイン機能、ユーザによる投稿の保存/表示、サイトの最新情報の表示などがあります。これらの機能はサーバーサイドのプログラミングでデータベースを操作する事で作る事が出来、データベースを操作するための言語がMySQLになります。厳密にはデータベースを操作する言語はMySQL以外にもOracle、PostgreSQL、SQLiteなどがありますが、初めてウェブプログラミングを勉強するとなるとまずはMySQLを勉強すると良いでしょう。
MySQLもJavaScriptと同じように、サーバーサイドの言語に依らず使用することが出来ますので、必須知識の一つと言えます。
3. Linuxコマンド
Linuxコマンドはターミナル、いわゆる黒い画面で実行するコマンドです。基本的なコマンドに、ls、cd、mkdir、cpなどがあります。これらのコマンドは作ったサービスを公開するためのサーバーを構築する際に必要になります。Macでしたらターミナルというアプリケーションがあり、一般的なサーバーと同じコマンドが使えますので、色々試してみましょう。ターミナルはCUIとも呼ばれますが、これらを習得すればパソコン上での色々な作業の自動化も出来ます。
4. Vim
先ほど紹介した、ターミナル上でテキスト編集を行うためのアプリケーションです。サーバー上ではVimを使い様々な設定ファイルを編集することになりますので、Vimの基本的な使い方は是非覚えましょう。Vimは一般的なテキスト編集ソフトと違い、操作方法にとても癖がありますが慣れるととても効率的にテキスト編集ができます。ターミナル以外でもコードを書くためのエディタとしても使用出来る無料アプリケーションで、MacでしたらMacVimとして別アプリケーションとしてダウンロードも可能です。
5. 正規表現
正規表現とは入力されたテキストから特定のパターンを検索、取得、変換するための方法です。例えば、ユーザから入力されたテキストをデータベースに保存する前に、必須項目が入力されているか?不正な文字は入っていないか?メールアドレスに@が含まれているか?などをチェックしたり、電話番号をハイフン無しに変換したりする際に必要になります。
これも言語に依らず普遍的に使用することが出来ます。サーバーサイドはもちろん、JavaScriptやテキストエディタによっては、エディタ上での文字列検索、変換作業にも使えたりします。またファイル名変換アプリケーションでも変換の方式に正規表現が使える場合あります。
ここで紹介した以上の知識は習得するプログラミング言語に関わらず、長く使う知識です。いきなり全て覚えるのは難しいでしょうが合間を見つけて1つずつ、概要を把握するだけでも行っておくと確実にスキルアップになります!!
コメント