【基本情報】システム開発で勉強することをざっくりまとめた記事

お茶ん太
お茶ん太

この記事では、基本情報のシステム開発編でどんなことを学ぶのかを、ざっくり解説します。この記事でシステム開発についてざっくり学んだ後に、システム開発編の記事一覧から詳細な知識を詰め込んでみて下さい。

コンピュータの手順書:アルゴリズム

アルゴリズムとは、コンピュータがある作業をするために人間が決めてあげた手順書です。例えば、入園料を計算するプログラムを作るときは、どう計算すれば入園料を決めれるのか、コンピュータに教えてあげなければいけません。

ただし、各人が好きなようにアルゴリズムを書いてしまうと、別の人が見たときに意味が通じない可能性があります。なので、誰が見ても分かるように、アルゴリズムを書き方にはルールがあります。まずは、アルゴリズムを書くために必要な知識を身に付けましょう。

プログラムは分割して作る:モジュール

プログラムを作るとき、全ての処理を一気に作るのではなく、ある程度の処理のまとまりで分割して作ります。このまとまり達をモジュールと言います。モジュールはプログラムを構成する部品のようなものですね。モジュール同士が関わりあいながらプログラムは動くんですね。

モジュール同士が関わり合うと言いながら、関係性が強すぎるとデメリットだったりします。モジュール間の関係性の強さをモジュール結合度と呼びます。

プログラムの中のデータの集まり:配列とリスト

アルゴリズムはコンピュータのための手順書でした。アルゴリズムを基に、実際にコンピュータにして欲しい命令を一文ずつ書いたものがソースコードです。ソースコードの中で数字や文字を使うときは変数と呼ばれる箱に入れてから使います。

この変数をひとまとまりにしたものが配列やリストです。配列やリストにデータを入れる方法はいくつかあるので、それも勉強しましょう。配列に入れたデータを探しやすくするための入れ方なんてのもあります。

オブジェクト指向

オブジェクト指向とは、JavaやC++のようなプログラミング言語で使われる考え方で、処理や操作では無く、「モノ」に着目して設計する考え方です。オブジェクト指向でいう「モノ」とはなんでしょうか?

ゲーム開発を例に考えてみましょう。ゲームには「人間」・「武器」・「モンスター」等、様々な性質を持った「モノ」が登場します。これらのモノが歩く・攻撃する・回復する等の動作を行うことでゲームとして成立します。

このようにシステム全体をモノの集合体と捉え、モノに動作を与えることでシステムを動かそうと考えるのがオブジェクト指向です。オブジェクト指向では「モノ」のことを「オブジェクト」と言います。

オブジェクト指向の設計

オブジェクト指向の設計ではUMLが使われます。UMLはUnified Modeling Languageの略で、統一モデリング言語と訳されます。「言語」なので、他者とコミュニケーションをするために使われるんですね。UMLはオブジェクト指向プログラミングで設計するときに、設計の考え方を複数人で共有するために分かりやすく図式化したものです。

テストの手法

システム開発をした後はテストが必要です。テストの目的は開発したプログラムが想定通りに動くのかを確かめることで、プログラム内に存在する欠陥をバグと言います。テストの手法は色々あります。ここではそんなテストの手法について学びます。

アジャイル開発

アジャイルとはシステム開発の進め方の1つで、少しずつ機能を開発してリリース(納品)する、を繰り返す開発手法です。システムを完全に作り切ってからリリースするのではなく、出来た機能からちょっとずつリリースするのが特徴ですね。

アジャイルの特徴は、途中で仕様変更があるのは当たり前であると踏んだ上で開発を進めていく所です。そのため、大体の要件が決まった段階で開発を始めてしまいます。また、少しずつ開発・リリースを進めるので、素早くユーザーにシステムを提供出来ます