プログラマーの種類を知りたいと思う人は
IT業界に興味がある入門一歩手前の人だと思います。
で、調べてみると組込み系とか汎用系とかオープン系とか。意味不明ですよね。
ぶっちゃけ就職活動時以外あまり使わない分類です。
何だか難しそう、こんなの無理・・・とならないよう
もっと単純な種類分けでご説明します。
プログラマー入門時に必要な分け方は以下の2つです。
- OS
- ネイティブ(インストールするやつ)かウェブか
OSで分類する
ではまず、OSで分けていきます。
- Windows系
- Linux系
- iOS系
- OSX系
- Android系
他にもμTRONやINTimeやルネサス製の・・・
まぁ、初心者がそこから入るとは思えませんので割愛します。
一般人はスマホかパソコンです。
馴染みがあるのはスマホで
スマホのプログラミングを覚えたいかもしれません。
しかしとりあえず入門したいのであればWindowsをおススメします。
一つ覚えれば言語やOSが変わっても応用が利きます。
ちなみに国内のOSのシェアです。
参考元:statcounter – https://gs.statcounter.com/os-market-share/all/japan
ついでに世界のOSのシェア。
参考元:statcounter – https://gs.statcounter.com/os-market-share
ネイティブ(インストールするやつ)かウェブか
次に分けるとすれば
- Nativeアプリ
- Webアプリ
これなんかわかりやすかったので貼っておきます。
図 Desktop App vs Web App: Comparative Analysis
雑な僕の意訳を添えておきます。
比較内容 | デスクトップアプリ | ウェブアプリ |
---|---|---|
Internet Connection インターネット接続 |
No required 不要 |
Required 要 |
Install And Update インストールとアップデート |
Manually downloaded and istalled 手動ダウンロードとインストール |
No installation. Automatically updates インストール不要。自動アップデート |
Platform Dependency プラットフォーム依存 |
Paltform-dependent.Separate vesions for each. プラットフォームに依存。しかもバージョン毎。 |
Cross-platform and portable OS等のプラットフォーム横断可。持ち運び自在。 |
Deployment(デプロイ:展開) | New licensed copy required for every system 端末ごとにライセンスが要求されたりする |
You only need a browser and account ブラウザとアカウントがあれば良し |
Performance パフォーマンス |
Faster and has wider range of resource-heavy features より高速で、リソースを大量に使える |
Complex processes can be slower due to lag 複雑なプロセスは、ラグが原因で遅くなる可能性があります |
Security セキュリティ |
Considered to be more secure 安全と考えられる |
Considered to be less secure あまり安全ではないと考えられる |
平たく言えばどっちも良し悪しです。
ただし入門時に限って言えばネイティブアプリがおススメ。
ネットワークやサーバーを考慮しなくてよいので
動くものが出来上がるまでの道のりが短くてすみます。
こなれてきたらサーバーなりネットワークなり
考える部分を徐々に増やしていけばよい。
まとめ
就職活動時に・・・と冒頭で言いましたが
僕が人を採用するときはオープン系とか汎用系とか
組込系とか気にしたことないんですよね。
汎用系?汎用・・・、う~む。
オフコンとかを指すみたいですけど。
言葉の意味自体、あんまりピンときませんね。
よく見るこの分け方って何の役に立つのだろう。
プログラマーの種類
おわり
コメントを残す