
上のGraph.javaを手本にして、下のShaptest.javaを作ってみた。オレンジで囲んだShapetest.javaとclass Shaptestとmainにあるnew Shapetest()が一致してないと、駄目みたいです。でもShapetestはタイポの指摘があります。Graphには無いんですがね。
c

上のGraph.javaを手本にして、下のShaptest.javaを作ってみた。オレンジで囲んだShapetest.javaとclass Shaptestとmainにあるnew Shapetest()が一致してないと、駄目みたいです。でもShapetestはタイポの指摘があります。Graphには無いんですがね。
c
「Creative Scala」はグラフィックでScalaを学びましょう、という事らしかったのですが、サイトの通りやったつもりでも、sbtでエラーになります。原因理解できずで、中断です。Scalaコップ本でもあまりGraphicsに関しては無いようです。多分ですがjavaの通りだということなのかもしれません。

上はネットから拾ったもので、簡単な図形を描くjavaのスクリプトです。それをScalaのプロジェクトのsrcに貼り付けてみると、javaからScalaへ変換されます。その逆は出来るのかというと、出来ません。

一箇所だけエラーになりましたので、コメントアウトしました。実行結果はどちらも同じです。pygameの方がわかりやすいかも。


IDEの全体では小さすぎますので、下はエディタのみ。

下は実行画面ですが、Windowsと微妙に違いました。本が書かれたときが4年ほど前ですので、Bundle版のScalaも2018年の物を使いました。これはG3、UbuntuからのUpです。

Galleria3、自分での通称G3、ドスパラから中古で買ったもので、Windows10 Homeです。一旦Ubuntuだけになってましたが、Windows10をインストール出来ましたので、マルチブートにしました。Windowsの起動方法とUbuntuの起動方法が違うので、今はUbuntuの起動方法grubになってますので、Windowsだけに戻すときが結構面倒だったかもしれません。アプリを入れて置かなければ、Windowsの再インストールでいいように思いますが。
G2がアプリを入れすぎて、メールの削除に時間がかかりすぎるので、G3は出来るだけ詰め込まないで、サクサク動くようにしておいたほうがいいのかもしれません。

IDEの全体では小さいのでスクリプト部分は下。

「Creative Scara日本語版」では、画像を描くから入門するようですが、結構簡単ではないようです。やり方もいろいろ書いてますが、自分が成功したらしいのはIntelliJ IDEAのScala BUNDLE版でしかも、古めの物2017年版だったか?で成功にこぎつけました。Windows10のIntellij IDEA
です。

コップ本もやり始めたばかりですが、Pythonのpygameの感じとどうなんだろうか?出だしで簡単ではない、そんな感じです。せっかく動きだしたので、もう少し読んでみようか?

一個だけインスタンスを作ってみました。

緑の波アンダーラインはタイポとか?何者?
追記)dispにprintを入れないほうが良さそうです。


printを含む文があると、副作用あり、と言うみたいです。一方greeting2みたいに、値を返すことが関数プログラミングに通じる、と感じました。returnは要らないと、指示されました。文字列を返すので、printlnの引数に出来る。もう一個アドバイスがありますが、strは固定した文字列と言うものでした。

出力の順番で、面食らいました。なんと下から実行されてます。ネタ本を見ると、{ }の組み合わせが違ってました。ネタ本の通りだと下です。でもこれはどう考えれば良いんでしょうか?

上の通りであれば、何となくわかります。通常は{ }の部分はブロックとか言って、連続実行されますよね。例題の意味は、Listの作り方です。ScalaのListはイミュータブル、変更不可と言うことです。

上は最終的な結果ですが、結構長い道のりがありました。もともとG3はドスパラからのWindows10 Homeが入っていた中古です。最近はインストールDVDが付いていないものが普通のようです。UEFIとかでその知識もほぼ皆無です。再インストールしたときに、WindowsのエリアもフォーマットしたようでWindows10が立ち上がらなくなってしまいました。Ubuntuならインストール出来たので、したのが面倒の始まりでした。今考えると。

一度Ubuntuをインストールすると、HDDがLinuxようのフォーマットされますので、Windows10の起動DVDからはインストールできません。パーティションを作って、Windowsのエリアを作っておけばよかったのかもしれません。
LAN上のHDDのNASがあって、それにイメージのバックアップをしてました。今まで成功したことがなかったのですが、たまたまあったUSBからのWindowsのインストールデバイスからNASからのイメージをCドライブに直に移せましたが、認証ができません。Galleria1のイメージを復元したので、使えなくなりました。マイクロソフトでチェックしてるんですね。
今度はWindowsのエリアができたので、認証番号を入れて、インストール。認証番号によってHomeかProが決まるようです。もちろん64ビットです。UEFIですか?それがよく分かっていないこともあるのですが、起動時にAsrockの文字とBIOSの設定に行けない時があります。どおしてもダメなときはCMOSクリアすると良いようですが、これがちょっと面倒です。(苦)

Arrayはミュータブル(変更可能)、Listはイミュータブル(変更不可)。ListをprintlnするとList(1, 2, 3)と表示されるが、Arrayだとprintln(numbers)とするとアドレス見たのが1個表示される。例えば上の例でArray(1,2,3)と表示される方法はあるんだろうか?


Arrayを使うと、3行目のように単純に書ける。この場合は、文字列の配列として作られるようです。Scalaは手続き型でも関数型でも書ける特徴があるようです。関数型を使う人はインデックスを使うのが嫌いというか?そもそもデータを書き換えるのを行わないようです。foreachでは確かにインデックスは有りませんが、この場合はxという関数の引数みたいのが使われてます。
Scala第3版は難しいことを書いてますので、何処まで理解できるか?以前も途中で投げてました。サンプルが本と一致してなくて、前回も悩んでました。ゆっくりと進みたいと思います。
2023年あけましておめでとうございます。