タグ

Javaに関するykikuchiのブックマーク (6)

  • PythonでもRubyでもない「最初に学ぶプログラミング言語」の“王者”はこれだ

    関連キーワード JavaScript | C# | Java | アプリケーション開発 | プログラミング どのプログラミング言語から学び始めるのが正解なのか――。これは悩ましい問題だ。「重要なのは1つのプログラミング言語を選び、それを使い続けることだ」。Microsoftでテクニカルフェローを務めるアンダース・ヘイルスバーグ氏は、同社の開発者向け年次カンファレンス「Microsoft Build 2022」でこう述べた。その理由は、「1つのプログラミング言語を習得すれば、他のプログラミング言語を習得するのは比較的簡単だからだ」という。「最初が一番難しい」とヘイルスバーグ氏は語る。 最初に学ぶべきなのは“あのプログラミング言語” プログラミング関係の職業に就きたい初心者が学ぶべきプログラミング言語とは何なのか。具体例を挙げると、それは Java JavaScript C# だ。これらは企業

    PythonでもRubyでもない「最初に学ぶプログラミング言語」の“王者”はこれだ
  • オブジェクト指向プログラミングは1兆ドル規模の大失敗なのか? - YAMDAS現更新履歴

    えーっと、長すぎて、ワタシも全部は読み通せていません。 文章の趣旨はインパクトが強いタイトルの通りで、オブジェクト指向プログラミングは1兆ドル規模の災厄であり、もうオブジェクト指向プログラミング(OOP)の先に進むべき時だよ、ということである。 著者は OOP 批判がセンシティブな話題であること、多くの読者を敵に回すであろうことを認めた上で、OOP はその発明者であるアラン・ケイが思い描いたように実装されればよかったと考えている。で、返す刀で現実の Java や C# の OOP へのアプローチを批判する。 OOP が素の手続き型プログラミングよりも優れているという客観的、公平なエビデンスは存在しないと著者は断言している。 ところどころで「Java は MS-DOS 以来コンピューティング分野に生まれたもっとも悲惨な存在だ」というアラン・ケイの言葉や、「C++ はおぞましい言語だ。だからプ

    オブジェクト指向プログラミングは1兆ドル規模の大失敗なのか? - YAMDAS現更新履歴
  • 世界のプログラミング言語(39) グラフデータベースをCypherでデータを視覚化してデータを再発見しよう

    今回紹介する言語は、グラフデータベースのNeo4jで使う問い合わせ言語のCypherです。Cypherは一般的なデータベースを操作するSQLと同等の機能をグラフデータベースで扱えるように設計されたものです。グラフデータベースは見た目も面白く、データ管理だけでなく視覚化の点でも役立ちます。 Cypherで3と5の公倍数を表示したところ Cypherとは 以前、連載では一般的なデータベース(RDBMS)で使えるSQLについて紹介しました。SQLはデータベースの問い合わせ言語であり、簡単なコマンドによりデータの挿入、変更、削除、検索を行います。 同じように、Cypherを使うことでグラフデータベースを操作できます。CypherはもともとNeo4jのために設計されましたが、2015年にオープンソースのプロジェクトとしても公開されています。 グラフデータベースNeo4jとは なお、Neo4jという

    世界のプログラミング言語(39) グラフデータベースをCypherでデータを視覚化してデータを再発見しよう
  • イマドキのJava徹底入門(9) Java 15で正式導入予定のテキスト・ブロックを試そう

    テキスト・ブロックとは テキスト・ブロックは、改行やクォーテーションなどを含んだ文字列を簡単に定義できる新しい文法である。JavaのStringクラスを使って文字列を宣言する場合、通常であれば、改行や引用符は次のようにエスケープ文字を使用して記述する必要がある。また、文字列を複数行に分けて記述したい場合には連結演算子(+)を使わなければならない。次のような具合だ。 String str = "Hello, Mynavi readers,\n" + "This is an article \n" + "that introduces new features of the \"modern\" Java platform.\n"; この記述法は非常によく使うにもかかわらず、コードを読みづらくする上に記述量も増えるという問題を抱えていた。テキスト・ブロックを使用した場合、上のコードは次のように

    イマドキのJava徹底入門(9) Java 15で正式導入予定のテキスト・ブロックを試そう
  • イマドキのJava徹底入門(8) varによるローカル変数の型推論を使ってみる(その2)

    varが使えないケースの例 前々回は、varによるローカル変数の型推論について、基的な使い方を解説した。その中で繰り返し説明したように、varによる型推論が有効なのは、代入しようとしている値の型がコンパイル時点で明確に決まる場合だけに限定される。既に配列の初期化でvarが使えない例を1つ示したが、そのほかにもvarを使えないさまざまなパターンがある。 例えば、次のように右辺が無い場合は変数が明確な型で初期化されないので型推論は使えない。 jshell> var name; | エラー: | ローカル変数nameの型を推論できません | (初期化子なしで変数に'var'を使用することはできません) | var name; | ^-------^ nullで初期化する場合にも、明確な型が推論できないと見なされて、varは使えないようになっている。 hell> var name = null;

    イマドキのJava徹底入門(8) varによるローカル変数の型推論を使ってみる(その2)
  • hakobera's blog

    三行まとめ WebRTC の getDisplayMedia API を利用した P2P で画面共有するサービスを作りました。 全て Managed Service (AWS & Firebase) 上で動作しており、ほぼノーメンテナンスでそれなりスケールします。 無料。ただし、音声無し、TURNサーバー無し、SLA 無しで、繋がらないこともそれなりにあると思うので、クリティカルな用途に使用することは非推奨 getdisplay.media 使い方 どういう風に使うのか、また遅延はどれくらいなのかを以下の動画をご覧ください。 配信側は WiFi で、視聴側の iPhoneLTE 回線で繋がっています。 Fully managed and serverless Screen Sharing Service: getdisplay.media 配信は GitHub 認証が必須ですが、視聴

    hakobera's blog
  • 1