MPS 2020.1 ヘルプ

MPS スクリーンキャスト

このページでは、JetBrains TV の MPS チャンネル(英語)で公開された MPS 関連のスクリーンキャストをリストおよび分類しています。

カスタマーストーリー

誰がどのように MPS を使用します。MPS の MPS の使用方法を紹介しています。

  • なぜ JetBrains MPS(英語) - MPS についての概要ビデオ。誰が気にするべきか、なぜか。

  • 音声メニュー IDE(英語) - MPS ができることのより徹底的な例。音声メニュー定義言語は、MPS の可能性を説明するためのサンプルドメインとして使用されています。

  • mbeddr.com プロジェクトが MPS を使用する理由 (英語) - mbeddr.com は、言語拡張と組込みソフトウェア開発のための正式な方法の利点を探ります。MPS で C プログラミング言語を実装しました。それは意味のある方法でそれを拡張することを可能にします。たとえば、ステートマシン、物理ユニット、または製品ラインの多様性をサポートしています。このスクリーンキャストでは、なぜこのプロジェクトに MPS を選んだのかを簡単に説明します。

  • オーストリア、インスブルックの MPS(パート 1(英語) およびパート 2(英語))- modellwerkstatt.org(英語) の Modelwerkstatt アプリケーションは、MPS を使用してエンタープライズアプリケーションを構築するための強力な DSL を開発します。開発プロセス全体は MPS で実現されています。この 2 部構成のスクリーンキャストを見て、MPS がこの特定の分野のテーブルに何をもたらしているのかを知ることができます。

ファーストステップ

MPS の仕組みに関する最初のインサイトを提供する 2 つのビデオ。

MPS の概要

MPS で言語がどのように定義されているかを一目で確認するには、この一連の短い紹介ビデオを参照してください。シリーズ全体を見た後は、言語を定義するために必要な手順がわかり、全体像をよく理解できます。

MPS の基本

MPS を使用して DSL を構築する際の基本原則を説明するビデオ

  • MPS の基本 - あなたの最初の言語を作るこ(英語)と - この入門スクリーンキャストは、MPS 初心者が最初の DSL を作成するときに直面する可能性がある一般的な問題を克服できます。DSL を作成する 3 つの基本的なステップ、つまり言語構造、エディター、ジェネレーターを定義します。MPS に不慣れで、DSL 定義プロセスの基本にあなたのつま先を浸したいなら、この短いデモを参照してください。

  • MPS の基本 - 定数の言語を拡張する (英語) - MPS 新入生を対象とする一連の入門スクリーンキャストのこの 2 番目は、前のエピソード(英語)で作成された定数用の単純な言語に基づいており、その不具合のいくつかを磨き、式と変数型で DSL を強化します。また、言語のインポートと単純な制約の定義についても触れます。

  • MPS の基本 - 参照の種類と範囲 (英語) - MPS 入門シリーズのスクリーンキャストの 3 回目のエピソードでは、参照、単純型システム規則、スコープ制約を使って実験用定数言語を拡張します。

  • MPS の基本 - インテンションと AST の操作 (英語) - MPS 基本シリーズの 4 回目のエピソードでは、インテンションと、ドメイン固有言語の AST を操作する方法について説明します。あなたの DSL になめらかで楽しいユーザーエクスペリエンスを提供したいなら、このスクリーンキャストはあなたのためです。

  • MPS の基本 - TextGen を使ってテキストを生成する (英語) - MPS 初心者シリーズの 5 番目のエピソードでは、TextGen の側面に慣れてきます。MPS ベースの DSL を取得し、それから Ruby コードを生成します。

  • MPS の基本 - ルールの確認と迅速な修正 (英語) - 静的コード分析は、開発者がコード内のバグや問題を迅速に発見して解消できます。疑わしいコード部分を強調し、コードを修正するための自動リファクタリングを提供することによって、現代の IDE は開発時間を安全にし、ソフトウェアの欠陥の数を減らす。MPS は、この機能をドメイン固有言語のフィールドに拡張します。

相互運用性

MPS は真空中では生きていません。スタンドアロンで使用することも、他の開発環境に統合することもできます。詳細についてはこれらのスクリーンキャストをチェックしてください。

  • IntelliJ IDEA 用の DSL をパッケージする方法 (英語) - このスクリーンキャストを見て、自分の言語を他の人と共有し、MPSIntelliJ IDEA の両方の内部で使用できるようにする方法を学びましょう。サンプル言語用のビルドスクリプトを作成して、その言語をコンパイル、ビルド、パッケージ化し、適切な IntelliJ プラグイン zip ファイルを作成します。

  • IntelliJ IDEA で MPS を有効にする方法 (英語) - IntelliJ IDEA に MPS のコア機能を追加する方法、およびサードパーティの言語をインポートする方法については、このスクリーンキャストを参照してください。IntelliJ IDEA 内で MPS プラグインを有効にし、プラグインを設定し、最初のデモを作成して実行するさまざまなオプションについて説明します。コードに含まれている言語を使用するために、別の言語プラグインをインポートします。

言語定義の高度な側面

これらのスクリーンキャストは、MPS 言語定義の分野に深く入り込んでいます。

チュートリアル

図形チュートリアルビデオ(英語)図形チュートリアルの Shapes 言語を実演します。

これらのビデオは紹介計算機言語のチュートリアルを伴います。

  • 入門電卓言語チュートリアル (英語) - このスクリーンキャストは MPS を学ぶための代替方法を提供します。オンライン紹介の MPS チュートリアルで説明されている手順に従って、スクリーンキャストは、計算機定義言語の構築プロセスを案内し、構造、エディター、ジェネレーターなどの MPS の基本概念の使用方法を説明します。オンラインチュートリアルを少し乾燥していて従うのが難しいと思うなら、このスクリーンキャストはそれを乗り越えるのを手助けするかもしれません。

  • 入門電卓言語チュートリアル - 制約と型システム (英語) - これは、制約と型システムを扱う電卓言語チュートリアルの第 2 部です。このスクリーンキャストは、MPS を学習する別の方法を提供します。オンライン入門 MPS チュートリアルで説明されている手順に従って、スクリーンキャストは、第 1 部(英語)で構築した計算言語の範囲制約と単純な型システム規則を作成するプロセスをガイドします。

MPS ビデオの紹介

  1. JetBrains MPS の概要、パート 1: プロジェクト (英語) - このエピソードでは、MPS プロジェクトのセットアップ、およびモジュールとモデルの編成(それらの依存関係を含む)について説明します。

  2. JetBrains MPS の概要、パート 2: 構造 (英語) - このエピソードでは、モデル、メタモデル、抽象構文木についての簡単な理論的背景を説明し、その知識を MPS 構造の側面に適用します。

  3. JetBrains MPS の紹介、パート 3: 制約 (英語) - このエピソードでは、MPS における言語定義の制約の側面、主にプロパティ、リンクの制限方法、有効範囲の定義方法について詳しく説明します。

  4. JetBrains MPS の紹介、パート 4: 振る舞い (英語) - このエピソードでは、概念やノードに機能を追加する上で役立つヒントをいくつか追加します。

  5. JetBrains MPS の紹介、パート 5: エディター (英語) - コードを確認してください - 画面に AST を投影するエディターを定義します。

  6. JetBrains MPS の紹介、パート 6: アクション (英語) - エディターを磨く - 変換と置換を定義することにより、編集エクスペリエンスをスムーズにします。

  7. JetBrains MPS の紹介、パート 7: インテンション (英語) - 開発者が状況依存のヒントやリファクタリングを支援します。

  8. JetBrains MPS の紹介、パート 8: 生成プログラム (英語) - モデルの変換 - モデルからモデルへの変換の定義。

  9. JetBrains MPS の紹介、パート 9: テキスト元 (英語) - ここに書いたものがあります。モデルをテキストに変換します。

  10. JetBrains MPS の紹介、パート 10: データフロー (英語) - フローに従ってください -MPS がコード構造の課題を自動的に検出できるように、データフロー定義を定義します。

  11. JetBrains MPS の紹介、パート 11: 型システム (英語) - それらは私のタイプです - タイプと型システムルールを定義して、式を早期に検証します。

これらを単一の YouTube プレイリスト(英語)として見ることもできます。

関連ページ:

図形 - MPS 入門チュートリアル

MPS に不慣れですぐにそれを試してみたいなら、これはあなたのための正しいチュートリアルです。2 時間以内に、新しい言語とその言語を使用する機能コードを入手できます。このチュートリアルでは、最初から始め、安全で便利な道を歩むことで、新しい言語のコア要素を設計します。すぐにフィニッシュラインに到達する...

MPS 電卓言語チュートリアル

このチュートリアル導入、テンプレートの実装、導入このチュートリアルでは、MPS での言語デザインのさまざまな分野について説明します。単純なスタンドアロン言語の抽象的な構造を定義し、そのためのエディターを設計し、タイプを制限し、スコープを作成し、最後に Java コードを生成するジェネレーターを準備し...

MPS ユーザーズガイド

言語デザイナーのための MPS ユーザーガイド :MPS へようこそこのユーザーガイドは MPS の完全なリファレンスドキュメントであり、MPS が提供する多くの概念と使用パターンを案内し、システムの特定の側面に関する詳細を知る必要があるときはいつでも手に入れることができます。ここに私達の新しい人た...

よくある質問 (FAQ)

DSL、LOP、プログラミング、DSL とは何ですか? 「本物の」プログラミング言語とどう違うのですか。DSL の利点は何ですか?なぜ気にする必要がありますか?、DSL と通常のコードはどのように連携していますか?、言語指向プログラミングとは、なぜ言語を拡張したいのですか?ライブラリは十分ではないで...