ITエンジニアが語るIT業界で必要な知識 (その2)

以前、次のようなコラムを書きました。

ITエンジニアが語るIT業界で必要な知識 (その1)
この記事は、ある程度ITの経験のある私が、まだIT関連の仕事にはついたことがないけれどITの仕事に興味がある人、またはITの仕事についたばか...

今回は、IT業界で必要な知識について、より具体的な内容をまとめてみました。

スポンサーリンク

IT業界で必要な知識

IT業界で必要な知識を1枚のスライドにまとめると、ざっと以下のようになります。

WS000149

  • 開発のライフサイクル(SDLC, System Development Life Cycle)

  • 業界の知識

  • OS(オペレーティングシステム、基本ソフト)
    • Windows, Linux(UNIX), MacOS, Android, iOS, Windows Phone

  • データベース
    • 商用: Oracle, DB2, SQL Server
    • オープン: MariaDB, MySQL, Postgres, SQLite

  • プログラミング言語
    • コンパイラ: C, C++, C#, Java, Objective C, Swift, Visual Basic
    • インタープリタ: PHP, JavaScript, Perl, Ruby, Python

  • TCP/IP&WEBサーバー (ネットワークとインターネット)
    • TCP/IP
    • WEBサーバー

それでは、順番に見ていきましょう。

開発のライフサイクル(SDLC, System Development Life Cycle)

SDLC、System Development Life Cycleとは、SIあるいは受託開発におけるソフトウェア開発の流れです。

開発手法として、ウォーターフォールモデル、スパイラル、アジャイル、クリーンルームなどいろいろありますが、現在、主流の開発手法はウォーターフォールモデルです。

ウォーターフォールモデル(局面化開発手法)においては、要件定義、外部設計(基本設計)、内部設計(詳細設計)、システム開発、単体テスト、統合テスト、納品、保守の順番で作業は進みます。

これらの局面で何を作るか、何をやるかを理解して実践する必要があります。

業界の知識

ITが扱う業種は多種に富みますが、業界独自の知識はシステム開発において必須になります。

業種の分類として何か正解というものはありませんが、日本標準産業分類の大分類を基準としては以下に分類しています。

  • A 農業,林業
  • B 漁業
  • C 鉱業,採石業,砂利採取業
  • D 建設業
  • E 製造業
  • F 電気・ガス・熱供給・水道業
  • G 情報通信業
  • H 運輸業,郵便業
  • I 卸売業・小売業
  • J 金融業,保険業
  • K 不動産業,物品賃貸業
  • L 学術研究,専門・技術サービス業
  • M 宿泊業,飲食店
  • N 生活関連サービス業,娯楽業
  • O 教育学習支援業
  • P 医療、福祉
  • Q 複合サービス事業
  • R サービス業(他に分類されないもの)
  • S 公務(他に分類されるものを除く)
  • T 分類不能の産業

他には、以下の6業種に分けるという考え方もあります。

  • 流通・サービス業界
  • 製造業界
  • 金融業界
  • 通信業界
  • 医療・バイオ業界
  • 官公庁・公共サービス業界

分類方法はさておき、業界の知識は、一般に難解で一朝一夕で理解できるものではありません。

また、本で学ぶだけで不十分なことが多く、長年の経験が必要になります。

これらは実務を通じで学ぶものになります。

OS(オペレーティングシステム、基本ソフト)

os-mini-logo

OSは一番ベースとなるソフトウェアです。

OSそのものを開発する機会はまずないと思いますが、OSの仕組み、種類、OSのAPI(アプリケーションプログラミングインターフェース)は理解する必要があります。

主なOSとしては、Windows、Linux(UNIX)、Android、MacOS、iOS、Windows Phoneに分類できます。

OSについては以下にまとめました。

OS(オペレーティングシステム、基本ソフト)とは
この記事の親記事は以下です。 OS、オペレーティングシステムって知っていますか? OSは、日本語では基本...

データベース

database

データベースはデータを保存するためのソフトウェアです。

OSと同様にデータベースそのものを開発することはまずないと思います。

データベースは歴史上は、階層型の階層データベースから、関係型のリレーショナルデータベースへと進化してきました。

現在のデータベースは、ほとんどリレーショナルデータベース(RDB, 関係データベース)です。

主なデータベースとして、商用ではOracle, DB2 UDB, SQL Server、オープン系としてMariaDB, MySQL, Postgres, SQLiteなどがあります。

いずれのリレーショナルデータベースもSQL(Structured Query Language)を使ってデータにアクセスします。

データベースについては以下にまとめました。

データベース(DB)とは
この記事の親記事は以下です。 データベースとは、 大量のデータを集めて、コンピューターでデータの追加、削除...

プログラミング言語

program

現在の主要なプログラミング言語は、アセンブラと異なり、人間が見て直感的に理解できるという意味で、いわゆる高級言語とよばれるものです。

プログラミング言語は処理系によって、コンパイラ、バイトコード、インタープリタのように分類できます。

  • コンパイラ: Fortran, COBOL, C, C++, Objective C, Swift, Visual Basic
  • バイトコード: C#, Java
  • インタープリタ: PHP, JavaScript, Perl, Ruby, Python

処理系ではなくて、クライアント系かサーバー系かで分けるという考え方もあります。

プログラミング言語については以下にまとめました。

プログラミング言語とは
この記事の親記事は以下です。 プログラミング言語はコンピュータプログラムを記述するための言語で...

TCP/IP&WEBサーバー (ネットワークとインターネット)

internet_earth

インターネットが普及する以前のLAN, WANの仕組みと、インターネットが普及後のWEBの知識が必要になります。

LAN, WAN, インターネットも含めて、プロトコルであるTCP/IPを理解する必要があります。

WEBアプリケーションを作るなら、また、WEBサーバーやWEBアプリケーションフレームワークの知識も必要です。

多くのWEBアプリケーションは、Linux、Apache、MySQL、PHPで構成されるため、LAMPと呼ばれることがあります。

TCP/IPとWEBサーバーについては以下にまとめました。

TCP/IPとWEBサーバー
この記事の親記事は以下です。 現在はパソコンもスマホもインターネットに接続して使うのが一般的ですね。 た...

まとめ

業界の知識がない、または経験がない人は、まず、

  • OSの知識
  • データベース
  • プログラミング言語
  • TCP/IPとWEBサーバー

について理解を深めてください。

これらは座学、本、ネットからの勉強でも十分学べます。

その後、経験を積んで、

  • 開発のライフサイクル
  • 業界の知識

を深めていきます。

最後まで読んでいただきありがとうござました。

この記事が気に入っていただけたらシェアしてくれると嬉しいです。

スポンサーリンク
スポンサーリンク
Translate »