見出し画像

【プログラミング勉強記録】Twitter編|ツイッターの仕組みと考察

Twitterの開発言語はなにか。結論から言うと、実際にTwitterはRubyで開発されていましたが途中からScalaという言語に移行した。理由は処理速度の問題。Rubyの出力コードは“puts”。

puts "Hello, world!"

RubyはJavaに比べて実行スピードが若干劣る。なので、大量のアクセスなどがある場合やたくさんのデータを処理しなければいけない場合などはJavaの方が向いていると言えるでしょう。実際にTwitterはRubyで開発されていましたが、途中からScalaという言語に移行しました。

【プログラミング言語】Scala(スカラ)とは


Scala(スカラ、SKAH-lah)はオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。名前の「Scala」は英語の「scalable language」に由来するものである。主にJavaプラットフォーム(Java仮想マシン)上で動作し、既存のJavaのプログラムと容易に連携させることができる。

主に以下のような特徴がある。

・開発生産性を高める簡潔な表記が可能である。
・Javaの豊富なライブラリが使える
・全てがオブジェクトとして扱われるオブジェクト指向言語である。

など

まとめ

Scalaは2022年の現在の時点はTwitterでの開発言語である。

Twitterは気軽に投稿が出来るメリットもあり以外にも見えていないコードの部分を見ているとおそらく処理速度の問題は容易に遅延するためRubyからScalaになったのも理解が出来た。Scalaのロゴは個人的にはひもを棒にぐるぐると巻いてできたリボンの形に似ていることが一番納得出来る結論と至った。そう考えるとひもを使って測定をしたりするものかもしれないと思えた。

おまけ

看板_東西南北の色

Twitterの名前は「ラリー・バード」とのこと。 そのツイッターのロゴマークといえばおなじみの青い鳥ですが、初期の鳥の名前は「ラリー・バード」だそう。ロゴデザインの鳥の理由は『皆さんのまわりにある様々なつながり、興味、アイデアなど』を意味する3つの重なった円から考えられた。 高い空の上から広大な景色を見渡すにしても、他の鳥たちと同じ目的に向かって進むにしても、空高く飛び立っていく青い鳥は自由と希望と無限の可能性を持っている。

広告用紙の手裏剣と光
ポスター
狼鉄鋼(ヴァルフォニウム)

【関連書籍】

『Scalaスケーラブルプログラミング:Martin Odersky』


この記事が気に入ったらサポートをしてみませんか?