web-dev-qa-db-ja.com

Android初心者がScalaを使用する際に遭遇する可能性が高いのはどのような問題ですか?

私は、主にPythonでコーディングされた1つの本番システムを作成および保守している愛好家のプログラマーです。このシステムはAndroidに移植する必要があります。 Javaはまったくわかりません。しかし、AndroidのSL4Aは、Python少し二級市民になりますGoogleクラウドメッセージングなどのAPIについて。ただし、私にとっては、Javaは、その冗長な構文と厳密な型指定に威圧的に見えます。Scalaの構文はより魅力的であり、妥協の可能性があるようです。

この質問Stack Overflowのこれ からScala Android)での開発は実行可能です。しかし、「初心者」として、Javaの代わりにScalaを使用することで、どのような問題が発生する可能性があるかを知りたいです。ネットで見つけることができる情報(質問を含む)上記のこのサイトから)は遅くとも2012年初頭からのものであり、それ以来状況は変わったと思います。

5
ShankarG

Pythonのようなスクリプト言語に慣れている場合、ScalaはJavaに比べて少し快適に感じますが、Android開発で使用することにはいくつかの重大な欠点があります。

  • あまり一般的ではないため、StackOverflowなどのサイトでサポートを受けるのは困難です。より多くのユーザーにリーチするには、コードをJavaに翻訳する必要がある場合があります。
  • 特にEclipseとJavaにまだ慣れていない場合は、設定するのは簡単ではありません。
  • Android API自体はScala用に設計されていないため、そもそもJavaを使用するのと同じくらい扱いにくいと感じるかもしれません(厳密な型指定、必要な型注釈、Scalaパラダイムとの非互換性) 。
  • あなたが言うように、それについて議論している記事のほとんどは時代遅れであり、ScalaでAndroidを使用することはそれを試した開発者に支持されなくなったことを示しているかもしれません。
  • それはあなたのアプリケーションのサイズを、おそらくそれほど大きくは増加させませんが、それでも要因です

あなたは初心者なので、Javaを学び、Androidの概念のコツをつかむためにいくつかの簡単なアプリケーションを作成するという最初の負担を乗り越える方がはるかに良い考えです。完全なサポートを受けることができるので、一般的に開発のイライラが少なくなります。また、Javaを既に知っている場合は、多くのScalaの概念が理解しやすくなることにも注意してください。

それでも、AndroidでScalaを使い始めたい場合は、次のリソースが役立ちます。

最後に、ちょっと逸話かもしれませんが、私はAndroidアプリを約3年間開発してきましたが、最近Scalaを自分で始めようとしました。言語のように。残念ながら、Eclipse、パッケージ、ビルドスクリプトとの戦いに非常に時間がかかったため、午後を丸ごと過ごした後、私はあきらめました。マイレージは異なる場合がありますが、フラストラトンを避けるために、最初にJavaから始めることを強くお勧めします。

4
Overv