こんにちは、意識低い系サラリーマンのKENです。
こんな記事を読みました。
アラフォーになってから、プログラミングに挑戦する。素晴らしいです。僕なんて最近新しいことほとんど始めてません。
ただ、上記記事のiGCNさんが「明確な目標はない」と言われていますが、これはちょっと気になりました。
自分の場合は例えばiPhoneアプリを作りたいとか、Webサービスを立ち上げたいとかの明確な目標があるわけではない。目標があれば、それに適した言語を選択すれば良いのだが。転職目的でもないから、求人の多寡なども参考にはならない。
というのも、プログラミングは目的無しに漠然と始めるとほとんどの人は途中で飽きて投げ出す可能性が高いです。
Webサービスを作るでもスマホアプリを作るでもなんでもいいですが、何か形のある目標を立てたほうが多分上手くいきます。
まあ、それはそれとして。プログラミング初心者の方は「どんなプログラミング言語を学べばいいのさ?」というのがまずは気になるポイントかと思います。
一応僕もシステムエンジニアの端くれなので、各プログラミング言語の特徴を超ざっくりと説明してみようと思います。
かなり意識の低い上に適当な説明なので何の参考にもならないと思われますが、気にせず説明してみます。
C言語
プログラミングに興味の無い人でも聞いたことある人多いかと。元々はOS*1を記述するために作られた言語なので、機械制御に関する部分をガリガリ書くことが出来る。
反面、アプリとかを組むにはちょっと不向き。教育現場で学生に教えることが多い言語だけど、あまり初心者向きではない気がする。これを習得してIT業界に入ると、「組み込み系」という地獄に放り込まれるので要注意。
余談だが、入門書として有名な下記本はタイトルが恥ずかしくて書店で買いづらいことで有名。
改訂第5版 ANSI C対応 はじめてのC (Software Technology)
- 作者: 椋田實
- 出版社/メーカー: 技術評論社
- 発売日: 2008/01/10
- メディア: 単行本(ソフトカバー)
- 購入: 2人 クリック: 9回
- この商品を含むブログ (8件) を見る
Java
15年位前に一時期もてはやされたが、「Javaで組まれたシステムは重い」という不名誉を負わされフェードアウトしかける雰囲気をかもし出したが、GoogleがAndrolidアプリを組むための標準言語に採用したために再び脚光を浴びている言語。Webとも親和性が高い。
AndroidアプリやWebサービスを組みたいならこれを覚えるといい。
企業からの人気も高いので、これ習得しておくとIT業界に入りやすいけど、IT業界自体はお勧めできない。
JavaからはじめようAndroidプログラミング―Android Studio対応版
- 作者: 大津真
- 出版社/メーカー: インプレス
- 発売日: 2015/07/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Objective-C
C言語をベースにオブジェクト指向*2機能を持たせた言語。
アップルがiPhoneアプリを組むための言語に採用したために一気に有名になったが、それ以前はかなりマイナーな存在だった。というか、僕は名前すら知らなかった。意識の高いちゃんとしたシステムエンジニアならきっと知っていたかもしれない。
iPhoneアプリを組みたい人にはお勧めだが、それ以外の人は覚える必要はほとんどないと思われる。
詳細! Objective-C iPhoneアプリ開発 入門ノート Xcode5+iOS7対応
- 作者: 大重美幸
- 出版社/メーカー: ソーテック社
- 発売日: 2013/11/02
- メディア: 単行本
- この商品を含むブログ (3件) を見る
JavaScript
Javaと名前が似てるけどまったく別物の言語。ブラウザ上で動作し、動的なコンテンツを作成するために使われる。
昔はJavaScriptを利用した不正コード実行、みたいなことがよくあり、「JavaScriptはブラウザの設定でOFFにしとけ」みたいに言われたものだが、いまとなってはJavaScriptが無かったらほとんどのWebサービスはまともに動かない。
ゲームで学ぶJavaScript入門 HTML5&CSSも身につく!
- 作者: 田中賢一郎
- 出版社/メーカー: インプレス
- 発売日: 2015/12/11
- メディア: Kindle版
- この商品を含むブログを見る
Ruby
日本人が開発したプログラミング言語。Webと親和性が高いので、Webサービスの開発などに向く。Twitterも最初の頃はRubyで組まれていた・・・はず。確か。
Ruby on Railsというフレームワーク*3が超便利。
- 作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/01/26
- メディア: 大型本
- 購入: 21人 クリック: 356回
- この商品を含むブログ (129件) を見る
C#
C言語をベースにマイクロソフトが開発したオブジェクト指向言語。Javaをパクって参考に作られており、完成度は高い。お手軽にWindowsアプリを組みたいならこれ。
.NETフレームワークが便利すぎる。いわばC#はステインメン、.NETフレームワークはデンドロビウムのようなもの*4
Perl
テキスト処理に定評のある言語。たいていのWebサーバーにPerl実行環境がインストールされているので、Web上で動作するアプリをお手軽に組める。
Webアプリ用の言語、というと最近ではRubyとかPythonとかがもてはやされているけど、Perlだってまだまだ捨てたもんじゃない。昔からあるので情報も豊富で、初心者は学びやすい。
HSP
小難しい理屈はいいから、とにかく簡単に何か作ってみたい、という人にはこれ。昔のBASICのような感覚で組める。ちょっとしたゲームやツール作りに最適。
今回はこのあたりで。