InfoQ ホームページ 言語 に関するすべてのコンテンツ
-
Dekorate: JavaプロジェクトのためのKubernetesとOpenShiftのマニフェストの生成
Dekorateは、以前はAnnotation Processors for Kubernetesの略であったap4kプロジェクトで、JavaベースのプロジェクトでKubernetesとOpenShiftのマニフェストを簡単に生成できるように設計されている。現在ではアノテーションを使用せずに Kubernetes マニフェストを飾ることをサポートしているため、ap4k という名前ではプロジェクトを正確に説明できなくなったため、プロジェクトはリブランディングされた。
-
Java-to-WebコンパイラCheerpJ 2.0によって使われるWebAssemblyはJavaアプリケーションをブラウザへ移植する
LeaningTechは最近、CheerpJの2番目の主なイテレーションをリリースした。CheerpJ 2.0は、JavaアプリケーションをHTML、WebAssembly、JavaScriptの混合に変換し、開発者がJavaアプリケーション(アプレットを含む)をブラウザで実行したり、JavaライブラリをWebアプリケーションに統合したりできるだろう。CheerpJ 2.0では、WebAssemblyを使用して実行速度を向上させている。
-
C# 9 - ソースジェネレータのためのパーシャルメソッド拡張
C# 9のソースジェネレータ(Source Generator)は、コンパイル時にコードを調査して追加的にソースコードを挿入するようなコンパイラ拡張を可能にする。挿入されたコードは、コンパイルされたものとまったく同じアセンブリに組み込まれる。この機能を活用するためにMicrosoftは、パーシャルメソッドの制限の大部分を撤廃することにしている。
-
C# 9でコンパイル時メタプログラミングを実現するソースジェネレータ
ソースジェネレータ(Source Generator)は、コンパイラが生成したメタデータを使ってユーザコードを調査し、新たなコードを追加的に生成して、プログラムの他の部分と一緒にコンパイルするという動作を可能にする、C#コンパイラの新機能である。
-
C# 9ではスクリプティングをファーストクラスサポートへ
"スクリプティング"言語を定義する特徴のひとつは、ボイラープレートを必要としないことだ。ファイルの最初の行から、通常は関数の中にある宣言やステートメントを記述することができる。更新されたトップレベルステートメントの提案では、この機能がC# 9に計画されている。
-
Concurnas - 並列およびGPUコンピューティングのための新しいJVM言語
Concurnasは、並行分散システムの構築を目的として設計された、オープンソースのJVMプログラミング言語だ。オブジェクト指向、関数型、リアクティブなプログラム構造を特徴とし、静的に型付けされている。GPUコンピューティングのネイティブサポートとベクトル化機能を供えたConcurnasは、マシンラーニングアプリケーションやハイパフォーマンスな並行アプリケーションの開発を可能にする。
-
Hegel,新しいJavaScript型チェ��カ
JavaScriptに新たな型チェッカが誕生した。HegelはJavaScriptで高度な静的型チェックを実現しようという試みだ。強い型推測と完全な型システムを提供するという。現在はまだアルファ版だが、専用のオンライン・プレイグラウンドで動作を確かめることができる。
-
Swift 5.3が公式サポートプラットフォームを拡張、Windowsと新たなLinuxディストリビューションを対象に
Swift 5.3は、先日のrelease/5.3ブランチ作成により、開発の最終ステージに入った。間もなくリリースされるSwiftの大きな目標のひとつは、新たなLinuxディストリビューションとWindowsを含む、公式プラットフォームサポートの拡張だ。
-
Java 8にバックポートされたTLSの改善
Application Layer Protocol NegotiationがJava 8で利用可能になったことで、ソフトウェア所有者はJavaの新しいバージョンがなくてもHTTP/2経由で通信できるようになった。
-
Javaの起動時間を改善するプロジェクトLeyden
Javaアプリケーションをネイティブ実行プログラムとしてコンパイルし、起動時間とメモリを削減するために、プロジェクトLeydenを提案した。
-
CSS ContainmentがWeb標準に
CSS Working Groupは先頃、新たなWeb標準としてCSS Containment Module Level 1を公開した。このCSSモジュールでは、サブツリーがいくつかの形式でページの他部分から独立している要素を示すために使用する、containプロパティについて述べている。この独立性は、ページのレンダリング時にサブツリーをスキップすることで、ユーザエージェントがWebページをより速くレンダリングするために使用される。
-
スクリプト言語としてのGo
ハイパフォーマンスなネットワークシステムや並列システムを開発するプログラム言語として、Goの採用が拡大していることから、開発者たちはこれをスクリプト言語として使用することに熱意を持ち始めている。ただし現在のGoは、そのままではbashやpythonの代用としては使えないため、これには多少の努力が必要だ。
-
-
DuolingoはいかにしてAndroidアプリを100パーセントKotlinに移行したか
Duolingoは2年間にわたって、Javaで記述されたAndroidアプリの100パーセントKotlinへのマイグレーション作業を続けてきた。このマイグレーションによるおもなメリットは、開発者の生産性と幸福度の向上に加えて、Duolingoアプリがnullポインタ例外(NPE)からほぼ解放されることにある。DuolingoのAndroidおよびWeb開発リーダであるArt Chaidarun氏に、同社の経験について詳しく聞いた。