KotlinがAndroidアプリの開発言語として公式に採用される 73
ストーリー by hylom
一気にメジャーに 部門より
一気にメジャーに 部門より
チェコJetBrainsが開発を主導するオープンソースのプログラミング言語「Kotlin」が、Androidアプリ開発の「第一級言語」になることが発表された(TechCrunch、JetBrainsのブログ)。
Kotlinは2011年に発表され、2012年にオープンソース化されたプログラミング言語。静的型やJavaとの互換性が特徴で、Java仮想マシン(JVM)上で動作する(OSDN Magazine)。
まず、Android Studio 3.0ではデフォルトでKotlinが利用できるようになるという。いっぽうでJavaを完全に置き換えるわけではなく、今後もJavaやC++でのアプリ開発はサポートされるとのこと。
JavaやC++を置き換えるものではない (スコア:1)
とのことなので、今後どう転ぶかは何とも言えなさそうです。
Kotlinを押したい人たちは今が熱い時ですから、この機会にぐぐぐぐっと押し出した方がいいでしょう。
Re: (スコア:0)
でもKotlinよりJavaのほうが優れているところなんて一つとしてないのに、(C++ならともかく)Javaを使う理由なんて無いんだよな。
Re: (スコア:0)
でもKotlinよりJavaのほうが優れているところなんて一つとしてないのに、(C++ならともかく)Javaを使う理由なんて無いんだよな。
ネット検索したときにナレッジが圧倒的に多いってのは優位点にならないんだろうか。
ことりんご って (スコア:1)
Kotlin GO の事だったんだ(゚∀゚)!
# その何でもGOつける流れに乗ってみました(なにかちがいます
安定度は? (スコア:0)
Objective-CよりもSwiftといいつつ、まだまだ安定しないSwift。
Kotlinがこれからって、JavaやC++よりも安定するんでしょうか?
これからはKotlinだろ?といいつつビジネスではなおもJavaやC++を使っていくんじゃないかと。
Re:安定度は? (スコア:2)
Swiftはアップル出だから安泰ではなかろうか。
#アップルは開発機材であるMacを売りたいがために、
#iPhoneの開発環境縛りをしてるのであった。
安定っていうのがよくわからないけれど、
昔の言語だから、最近の流行に合わせようと互換性を保てない
書式変更が出てきたりだけど、
最近の言語だからこそ最初から完成形に近いから。
安定してるんじゃないだろうか。
Re:安定度は? (スコア:1)
Swiftのこれまでの破壊的変更の多さを言ってんでしょ。
ABI安定は3でやるといって間に合わず、4で間に合わずまた延期したし。
Re:安定度は? (スコア:1)
もうXamarin + C#でいいじゃんと思うんだが・・・
Re:安定度は? (スコア:1)
.net standardにしたからか自分だけかは知らんが、一級言語には及ばない気がする。
すばらしいんだけどね。
Re:安定度は? (スコア:1)
.NET のランタイムをサービス/共有化できるようになったら、ほんとにJava使うメリットなくなると思う。
Re: (スコア:0)
禿道
Re:安定度は? (スコア:1)
言語設計チームの方針、センス、能力によるのでは。
C#みたいに新要素どんどん入れつつ破壊的変更を極力抑えてる言語もあるわけで。
#Anders Hejlsberg is GOD
Re:安定度は? (スコア:1)
おっと、PHPへの悪口はそこまでだ。
#PHPからPHPへの移植作業だけで殺す気か。
Re: (スコア:0)
Null許容参照型 [infoq.com]とか、ひどい破壊的変更が提案されてるけどね
Re:安定度は? (スコア:2)
まぁでも、そこって、もしC#を最初から設計し直せるならそうしたかったナンバーワンじゃないですか。
今からでも遅すぎることはないと思う。
Re: (スコア:0)
アンダースさん、作り直すならNull非許容型を入れたいと言ってたような。。
Re:安定度は? (スコア:2)
はい、正確にはそうです。
今回の提案はNull非許容をデフォルトの挙動にして、Null許容型を新設すると言うものなので、よりドラスティックなものです。
しかしまぁ行き着くところは同じく「Null許容と非許容の両方の型があり、用途に合わせて使い分けられている状態」なので、上コメでは敢えて一緒くたに言いました。
Re: (スコア:0)
swiftは2014年発表(開発は2010年から)
kotlinは2011年発表、2012年オープンソース化、バージョン1.0が2016年
Re: (スコア:0)
発表年が安定度につながるんですか?
それはないと思います。
Re: (スコア:0)
じゃあ、安定しないんじゃないの。
Re: (スコア:0)
>じゃぁ
じゃぁって・・・
少なくとも使われる頻度とメンテナンス頻度でしょう。
発表してまったく使われずメンテナンスもされない言語はいっぱいありますよね。
Re: (スコア:0)
一応グーグルのおかげで実行環境やコンパイラの品質は改善するだろう。
各種クラスの仕様や文法はグーグルが積極的に改善するのでしばらく荒れる。
Re: (スコア:0)
Googleが手をだしたら劣化するだろ。GoとかDartとか見てりゃGoogleに言語設計のセンスが無いのはわかる
Re: (スコア:0)
https://ja.wikipedia.org/wiki/Kotlin [wikipedia.org]
設計したの、GoogleじゃなくてJetBrainsみたいね。
Re: (スコア:0)
既に安定してるが
てか今更Javaはないだろ
Re: (スコア:0)
仮想マシン上というガッカリ感
Re: (スコア:0)
> 仮想マシン上というガッカリ感
仮想マシンをかましているからこそ、Androidはメジャーバージョンが上がっても安定して互換性を確保できているわけですが
iOSなんてぼろくそで泣きそうですよ
※ これに対する素人Apple信者の反論は一切無視します
マシンパワーが十分にあるなら仮想化のレイヤーを一枚挟んでおくととても有効ということは
PCやサーバーなどでも証明済みですからね
Re: (スコア:0)
仮想マシンは互換性確保のために有利ではあるけど、必須ではないんじゃない?
今だとLLVMとか他の選択肢もあるでしょ。
別に仮想マシンなくてもWindowsみたいに互換性確保してる例もあるわけで。
というか、メジャーバージョン云々より機種間での互換性の方が……。
作ったアプリでXperiaでだけ発生するバグが出て、意味不明過ぎて投げ出さざるを得なかった事が。
Re:安定度は? (スコア:2)
型とかも,javaだからといって手を抜かないとか。
ま,それでも起きるときは起きるんだけどね。
浅く広く多機種多言語を扱ってるからか,
ヘッポコのくせにそういう部分のカンは鋭くなった気がするけど。
Re: (スコア:0)
> 作ったアプリでXperiaでだけ発生するバグが出て、意味不明過ぎて投げ出さざるを得なかった事が。
そういうのは具体的に書かないとあなたがタコなのを放り出してるだけとしか見られませんよ
Re: (スコア:0)
アプリ名バレたくないので。
僕がタコなのは否定しないけど、Xperiaでのみ発生したのは事実だからなぁ……。
まあ、嘘だと思うならどうぞご勝手に。
Re:安定度は? (スコア:2)
というと真っ先に思いつくのはサウンド系??
Axon7なんかもOpen ESでアクセスしたときのサウンドドライバー挙動が結構イミフ。
Re: (スコア:0)
例外もあるけどatomでもarmでも開発者側は余り気にせず動くというメリットもありますし。
JVM嫌う人はGCが嫌いなんでしょうかね。
もう (スコア:0)
Xamarinでよくない?
Re: (スコア:0)
そうなって欲しくないからKotlinを持ってきたんでしょ
Re: (スコア:0)
中途半端にそんなもん持ってこられても、むしろ「本命でいいじゃん」が加速するだけな気がする
むしろJavaの使い勝手を底上げすること考えたほうがいいんじゃないだろうか、あれはあれでしがらみが多いから難しいけど
# そうだJavaを拡張した言語を独自定義して・・・もしかして:J#
Re: (スコア:0)
だから
Javaが改良したのがKotlinなんですが……
Re: (スコア:0)
コミュニティの本命がXamarin(C#)だったとしても権利を持っているのがマイクロソフトである以上グーグルの本命にはならない。Xamarinでは法廷闘争の相手がオラクルからマイクロソフトに変わるだけだからな。
Kotlinをグーグルがコントロール可能というのはグーグルがKotlinを持ってきた理由として無視出来んだろう。
Re:もう (スコア:1)
https://www.infoq.com/jp/articles/java-dotnet-patents [infoq.com]
Re: (スコア:0)
C#を採用していればgoogleはあるいはandroidはもっと幸せになっていたってことか
Re: (スコア:0)
まぁC#を採用していれば悪徳企業Oracleがギャーギャー言い出すこともなかったろうし、それはそうだろうな。
そうだね。 (スコア:0)
少なくとも旧Sunが生みGoogle育てるという言語音痴にしか触って貰えなくってパフォーマンスやらABIやらAPIやらが滅茶苦茶…という事態にはならずに済んだね。
Re: (スコア:0)
ていうかOpenJDKはGPLなのに誰も改変出来ないって、これもうわかんねぇな。
Re: (スコア:0)
C#はISOに標準化されてるので、APIがどうとかでMSと法廷闘争する事は無いと思うんだけどなぁ。
というか、そんなもんで訴えるなら、多分Mono作った時点で訴えてると思う。
Re: (スコア:0)
C#はISOに標準化されてるので
これって結局C#をグーグルのコントロール下に置けないってことだよ
Re: (スコア:0)
標準化されてるのはC#の仕様のみで、実装はGoogleが勝手にやればいいんだから、コントロール下にはある程度おけるんじゃない?
勝手にC#拡張しても良いだろうし。
……でも、そこまでしたらさすがにMSから文句出るかも知れないな。どうなんだろう。
Re:もう (スコア:1)
>勝手にC#拡張しても良いだろうし。
>……でも、そこまでしたらさすがにMSから文句出るかも知れないな。どうなんだろう。
昔、MSがSunに対して行ったことを逆にされるというわけですね。
何かが巡ってる感じです。
あとはキャラ作って啓蒙(安直 (スコア:0)
名前はことりんで
#scalaとかjrubyとか忘れてませんよ?
Re: (スコア:0)
キャラは小鳥
日本限定か!
結局Javaなんていらなかったんや (スコア:0)
手抜きしてよそ様の会社の言語をパクってタダで開発者コミュニティを確保しようとするから、
しょーもない裁判なんぞ起こされた上に公式Javaとも違うよくわからん中途半端な実装になって、
Androidの技術的負債扱いされることになってるんだろ。
ここらで一新して、言語だけでなくVMとライブラリも独自実装してだな。