プログラム言語・規約・解法の非保護とは?
プログラム言語・規約・解法の非保護とは、著作権法は、プログラムを作るための言語、通信手順などの約束事(規約)、アルゴリズム(解法)そのものは保護の対象外と定めている。保護されるのは、それらを用いて具体的に表現されたソースコードや実行形式のプログラムである。
高度試験・午前I(全区分共通)の過去問では2回出題されています(2017年度〜2020年度)。
ぷろぐらむげんご・きやく・かいほうのひほご
プログラム言語・規約・解法の非保護の意味
著作権法は、プログラムを作るための言語、通信手順などの約束事(規約)、アルゴリズム(解法)そのものは保護の対象外と定めている。保護されるのは、それらを用いて具体的に表現されたソースコードや実行形式のプログラムである。
プログラム言語・規約・解法の非保護の具体例
他社ツールと同じ処理の考え方を参考に、自社で一から書き起こしたプログラムを作る場面。手順の考え方をまねること自体は著作権侵害にならないが、ソースコードを流用すれば侵害になる。特許が成立していないかは別途調査する。
プログラム言語・規約・解法の非保護は試験でどう引っ掛けられる?
アルゴリズムが著作権で保護されないからといって自由に使えるとは限らず、特許権や営業秘密として守られていることがある。逆に、変数名だけ書き換えたコードは実質的に複製とみなされる。
プログラム言語・規約・解法の非保護と関連する用語
プログラム言語・規約・解法の非保護が出た過去問
あるプログラム言語において,識別子(identifier)は,先頭が英字で始まり,それ以降に任意個の英数字が続く文字列である。これをBNFで定義したとき,aに入…
正解:<letter> | <identifier><digit> | <identifier><letter>
要点:BNFの再帰は基底+末尾に1文字追加の形で書き下す
識別子は先頭が英字で、その後ろに英字か数字が任意個続く。再帰的に書くと、基底は英字1文字だけの場合であり、既にできている識別子の末尾に英字または数字を1つ付け足す規則を加えればよい。先頭に数字が来る形や、後ろに識別子を置く形は定義に合わない。
出典:平成29年度 春期 高度共通_午前I試験 am1 問2(IPA)オブジェクト指向のプログラム言語であり、クラスや関数、条件文などのコードブロックの範囲はインデントの深さによって指定する仕様であるものはどれか。
正解:Python
要点:Pythonはインデントの深さでブロック範囲を表す
Pythonは、波括弧やendキーワードではなくインデントの深さでブロックの範囲を表す(オフサイドルール)ことが大きな特徴のオブジェクト指向言語である。この仕様により、書式が統一され可読性が高まる一方、インデントの誤りが構文エラーや意図しない動作に直結する。機械学習やデータ分析の分野で広く使われている。
出典:令和2年度 10月 高度共通_午前I試験 am1 問3(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。