平成22年度 春期8テクノロジ系

基本情報 平成22年度 春期 問8:テクノロジ系に関する問題

java のプログラムにおいて, よく使われる機能などを部品化し, 再利用できるよう にコンボーネント化するための仕様はどれか。

  • aJavaBeans正答
  • bTavaScript
  • cJavaアプリケーション
  • dJava アプレット
正答:AJavaBeans

AI解説(初心者・標準・上級)

理解度に合わせて3レベルの解説を無料で読めます。

初心者向けまずはここから。やさしく要点を解説

答えは a「JavaBeans」 です。

JavaBeansは「プログラムの部品(コンポーネント)化のルール」。「よく使う機能をパーツとして作って、何度でも別のプログラムで使い回せるようにしよう」という考え方。

プラモデルのパーツみたいに「決まった形」を満たせば、他のプログラムにポン付けできる。

👉 覚え方:JavaBeans=「Java製の再利用パーツ」。

ほかの選択肢:b JavaScript=Webブラウザで動く別言語/c Javaアプリケーション=ふつうのJavaプログラム/d Javaアプレット=Webブラウザで動かす昔のJavaプログラム(今は廃止)。どれもコンポーネント化の仕様ではない。

標準試験対策の基準レベル

なぜこれが正解か

正解は a。JavaBeansは、Javaのクラスを「再利用可能なコンポーネント」として扱うための規約(仕様)。条件は (1) 引数なしのpublicコンストラクタを持つ、(2) プロパティのアクセスはgetter/setter(getXxx/setXxx)でする、(3) Serializableを実装する(永続化対応)。これにより、GUIビルダ等のツールがクラスを動的に組み合わせて使える。

各選択肢の解説

  • b JavaScript:JavaとほぼJava無関係の別言語。Webブラウザで動的スクリプトを実行。
  • c Javaアプリケーション:mainメソッドから起動する一般的なJavaプログラム。コンポーネント仕様ではない。
  • d Javaアプレット:Webブラウザ内で動作する小さなJavaプログラム。現在は廃止(Java 11で削除)。

覚え方・ひっかけ注意

Java系用語の整理:JavaBeans(再利用部品)/EJB(Enterprise JavaBeans、サーバサイドコンポーネント)/JavaServer Pages(JSP、サーバサイドHTML生成)/Servlet(サーバサイドJavaクラス)/Java EE(現Jakarta EE、エンタープライズ仕様群)。「Beans=部品」と語感で覚える。

上級誤答論破・背景理論まで深掘り

理論的背景

JavaBeans仕様(1996年〜)は再利用可能ソフトウェアコンポーネントモデルとして設計された。POJO(Plain Old Java Object)+規約により、リフレクションAPI(java.beans.Introspector)でプロパティを動的発見でき、ビジュアル開発ツール(IBM VisualAge for Java、JBuilder等)でドラッグ&ドロップ開発を可能にした。Java Beans Specificationは7部構成:(1) Properties、(2) Methods、(3) Events、(4) Introspection、(5) Customization、(6) Persistence、(7) Packaging。PropertyChangeListenerによる変更通知、EventListenerによる疎結合イベント駆動はObserverパターンのJava実装。

実務での使われ方

サーバサイドの拡張版EJB(Enterprise JavaBeans、現Jakarta Enterprise Beans)はトランザクション・セキュリティ・分散処理を提供する重量級コンポーネント。Session Bean(Stateful/Stateless)、Entity Bean(→JPAに置換)、Message-Driven Beanの3種。EJBの複雑性反動でSpring Framework(DI、AOP)とJava EE5以降の軽量化(CDI: Contexts and Dependency Injection、JAX-RS、JPA)が主流化。Spring Boot(自動設定、組込みTomcat、12-Factor App対応)は現代のJavaサーバサイド開発の標準。Reactive Programming(Project Reactor、RxJava)、関数型Java(StreamAPI、Optional)、Kotlin/Scalaへの広がりも実務トレンド。

試験での位置づけ

FE科目AでJava関連用語の識別問題が頻出。応用情報・システムアーキテクトではJ2EE/Jakarta EE基本仕様、Spring/Spring Bootアーキテクチャ、マイクロサービス、DDD(Domain-Driven Design)が問われる。情報処理安全確保支援士ではJavaセキュリティ(CWE、Log4Shell:Log4j脆弱性のような著名事例)が頻出。

選択肢の発展補足

関連コンポーネント技術:OSGi(モジュラJava、Eclipse・IntelliJのプラグイン基盤)/JigSaw/JPMS(Java 9〜、モジュールシステム)/GraalVM Native Image(AOTコンパイル、起動時間とメモリ削減)/Quarkus・Micronaut(クラウドネイティブJavaフレームワーク)。Project Loom(Virtual Threads、Java 21 LTS)は軽量スレッドでJavaの並行プログラミングを革新した近年最重要のトピック。Java Module SystemでEJB時代のJAR Hellを解消。クラウドネイティブ志向でSpring NativeHelidon等のフレームワーク選択肢が拡大中。OSSライセンス・OpenJDKディストリビューション(Eclipse Temurin、Amazon Corretto、Azul Zulu)の選定もエンタープライズの実務論点。

出典・引用について

出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成22年度 春期8/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。

テクノロジ系の他の過去問

1
テクノロジ系
2
テクノロジ系
3
テクノロジ系
4
テクノロジ系
5
テクノロジ系

あなたの弱点を診断して、合格までの最短ルートを

この分野を連続演習し、AIがあなたの弱点を分析。合格ナビなら基本情報の過去問を解きながら学べます。