イントロダクション
プログラムを学習する事で、身につく事が結構あります。例えばしたのようなことです。
- 物事を順序だてて考える、説明する
- 知りたい事を明確に言葉にする
- 物事の問題究明の手順を導く
- 目的の為にロードマップを作れる
以上のようなものがありますが、このように認識する、しないは本人次第になります。早い話が理論的思考が身につくと言うことです。言葉を変えているならば、
物事を順序だてて考えることができるということです。
具体的には、「プログラムを組み立てる」という、行為に上に挙げた事が必要なので、身につくといううわけです。
コードを書く
プログラミングの初めは、真似から入ります。古い人は、このことを「写経」といいます。
でわ、早速、初めてのコードを写経しましょう。
ハローワールド
プログラムに限らず創造は模倣に始まるという様に、はじめに動かす決まった形のプログラムがあります。
俗に言う「ハローワールド」というプログラムです。コンソール(コマンドプロンプトやターミナル)に出力するものですが、今回はJavaFxでやります。
Hello Java Fx
とりあえずは、プログラムの構成イメージ図を作ってみました。
Java Fxのアプリケーションクラスの上にシーンが、クラス・コンテナ(Map)に登録されていて、切り替えが出来るような物を作ります。
※図の作成はDrawExpressを使用しました。
とりあえず、以下のリンクも参考にどうぞ
開発手順〜プロジェクトの作成〜
Eclipseでの開発は、以下の通りです。
- まずプロジェクトを作成します。
- そして、作成したプロジェクトで使用するJDK(JREライブラリ)をJava1.8に修正します。
Lv1.ハローワールド
HelloWorldをやります。とりあえずコードは下のようになります。
package jp.zenryoku.fx;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.stage.Stage;
/**
* JavaFXでのハローワールド〜OpenCVなどの
* 作成したアプリをテストするための、スタンドアロンアプリ。
*
* @author takunoji
* 2019/01/23
*/
public class RootFxMain extends Application {
/** 画面の縦幅 */
private double VIEW_HEIGHT;
/** 画面の横幅 */
private double VIEW_WIDTH;
/**
* 親クラスのメソッドをオーバーライドする。
* 画面を作成したり、シーンを作成したり、色々。。。
*
* @see javafx.application.Application#start(javafx.stage.Stage)
*/
@Override
public void start(Stage primaryStage) throws Exception {
// Stageの設定
primaryStage.setHeight(VIEW_HEIGHT);
primaryStage.setWidth(VIEW_WIDTH);
// ラベルの設定
Label label = new Label();
// ペインの作成
Group root = new Group();
root.getChildren().add(label);
// シーンの作成
Scene scene = new Scene(root, VIEW_WIDTH, VIEW_HEIGHT);
primaryStage.setScene(scene);
primaryStage.show();
}
/**
* メインメソッド
* @param args プログラム引数
*/
public static void main(String[] args) {
// 親クラスのメソッドを呼び出す、これは上のstart()を呼び出す。
launch();
}
}
起動すると、下のような感じで表示されます。
※真っ白な部分がこのJavaFXで作られた画面になります。
初めのプログラムを書くためのスペース(領域)を作成する必要があります。
なので下のメソッドを1つ追加します。
/**
* JavaFX版のハローワールド実装用のメソッドになります。
* @return 画面に出力する文字列
*/
public String myFirstProgram() {
String hyoji = "Hello World";
return hyoji;
}
そして、上の「start」メソッドに下の2行を追加します。
// ハローワールドを出力する
label.setText(myFirstProgram());
label.setFont(new Font("RobotRegular", 24));
実行結果:作成したコードはこちら(GIT)
ちょっとかけ離れているかもですが、一応、OpenCVでのテストを行う準備も含めています。。。
追記
この次からの記事もそうですが
「初めてでも大丈夫」じゃなかったかも?
ちょいと自分の書いた記事を見直してみたところ、途中の過程が抜けているように思いました。そーすると「初めてでは危うい」と思いましたので
次回からは、オラクルのチュートリアルを進める方向で行ってみようと思います。
でわでわ。。。
関連ページ
※ラジオボタンでページのリンクが表示されます。