BT

InfoQ ホームページ Code Generation に関するすべてのコンテンツ

  • マイクロサービスによる銀行インフラの構築 - QCon London Q&Aより

    Monzoのマイクロサービスの数は、この数年で100から1,600にまで増加し、さらに増え続けている。マイクロサービスは責務が増えると分割され、密結合すると統合される。エンジニアはコードジェネレーションを使って自身のサービスを生成し、デプロイし、スケールアップし、監視することができる。

  • C# 9 - ソースジェネレータのためのパーシャルメソッド拡張

    C# 9のソースジェネレータ(Source Generator)は、コンパイル時にコードを調査して追加的にソースコードを挿入するようなコンパイラ拡張を可能にする。挿入されたコードは、コンパイルされたものとまったく同じアセンブリに組み込まれる。この機能を活用するためにMicrosoftは、パーシャルメソッドの制限の大部分を撤廃することにしている。

  • C# 9でコンパイル時メタプログラミングを実現するソースジェネレータ

    ソースジェネレータ(Source Generator)は、コンパイラが生成したメタデータを使ってユーザコードを調査し、新たなコードを追加的に生成して、プログラムの他の部分と一緒にコンパイルするという動作を可能にする、C#コンパイラの新機能である。

  • マイクロサービスアーキテクチャの正しい設計 - QCon NYで学んだMichael Bryzak氏の教訓

    先日のQCon New York 2018で、Michael Bryzek氏が、マイクロサービスアーキテクチャを“正しく”設計する方法について論じた。ボイラプレートコードの自動生成を実現するため、最初にすべてのAPIとイベントのスキーマを設計すること、デプロイや依存性管理などの自動化に注力すること、などがおもな内容だ。

  • AtomistがAlpha Programmeの提供を開始

    Atomistは、同社のメタ・メタプログラミング言語であるRugを試してみたい人向けにAlpha Programmeの提供を開始した。同社は、Rugのことを開発ワークフローを自動化する言語と述べている。Rugは、繰り返しまたは定型コードの生成を自動化するために使用され、Atomistによって編成されている。Rugは、マイクロサービスなどの分散システムで作業するときの生産性を向上させることを目指している。

  • PaintCode 3、Swift 3とAndroidのコード生成をサポート

    PaintCodeは、ベクタードローイングからコードを生成できるmacOSで動作するデザインおよび開発ツールだ。最新バージョンのPaintCode 3では、Swift 3、Android、JavaScriptのcanvasをサポートする。

  • 自動運転車のソフトウェア開発にモデルを使用すること

    モデルは自動運転車のような自律システムのソフトウェア開発において重要な役割を果たしている。モデルは振る舞いのシミュレートや検証、システムの文書化、そしてコードを生成するために使用される。Jonathan Sprinkle氏が、自律システムで使用するモデルをどうモデリングするか、モデリングの利点、テストデータを用いてどう自動車を運転するソフトウェアを検証するか、信頼性のあるコードを記述するための技法を説明する。

  • Form.IOに聞く - Webフォームを使ったAPI生成

    <form.io>は,フロントエンドアプリを駆動するバックエンドAPIを,フロントエンド開発者自身がフォームを使って自動生成することのできるオープンソースプロダクトだ。フロントエンドのJavaScriptフレームワークで利用するAPIとユーザインターフェースの両方を生成可能な,完結したソリューションを提供する。InfoQはその製作者に,プラットフォームの詳しい機能や今後の計画について聞いた。

  • レガシソフトウェアをメンテナンスするためのモデルベースのアプローチ

    Phillips HealthcareのソフトウェアアーキテクトであるHans van Wezep氏がBits&Chips Software Engineering Conferenceで,モデルを使用したマイグレーションについて講演した。InfoQでは氏にインタビューして,レガシソフトウェアをメンテナンスする上での問題点,手作業によるリファクタリングでのエラーの問題,コードベースのリファクタおよびマイグレーションにおけるモデルの利用,レガシソフトウェアをメンテナンスする上でのモデル利用のメリットなどについて話を聞いた。

  • 依存性注入とデバッグ機能が T4 に追加された Visual Studio 2012

    Visual Studio 2012 の T4 機能には数多くの改善が加えられている。中でも注目すべきなのはディレクティブプロセッサ展開時の MEF のサポート,デバッグの容易化の2つだ。

  • eclipse Xtextでモバイル用アプリケーション開発をシンプルに

    Daniel Schnellerは、彼のチームがXtextを使いモバイルアプリケーションのナビゲーションパスをモデル化するテキスト型DSLをどのように作成し、どのようにJavaコードを生成したか説明します。ステップ・バイ・ステップの解説を行い、このアプローチの利点について論じます。

  • T4を使った複数ファイルの出力

    T4は、Visual Studioに組み込まれたコード・ジェネレータだ。.NET上に構築される多くのフレームワークの基盤であるにもかかわらず、信じられないぐらい非力なのだ。うまくテンプレートを使いまわすことや、複数ファイルを出力するといった非常に単純なことでさえ、一見したところできそうにないのだ。しかし、Damien Guard氏のような開発者たちは、徐々に改善方法を見つけ出してきている。

  • Javaアプリケーション開発におけるコード生成の役割

    SpringSourceのSpring Roo、Skyway Builder Community Edition 6.3、BluAgeのM2Springといった最近リリースされたコード生成ツールを見ると分かるのは、エンタープライズJavaアプリケーションの開発におけるコード生成の役割に再び関心が集まっているということだ。InfoQはSpring RooおよびSkywayの主要責任者たちとインタビューをおこない、どうすればコード生成がJavaアプリケーション開発に適したものになるかを聞いた。

  • Spring Roo 1.0M1 リリース

    Spring Roo はJavaでSpringアプリケーションを開発するためのround-trip形式のコード生成ツールであり,その最新リリースはTomcat JMS と Selenium をサポートする。SpingSource開発チームは先週,このツールの 1.0 M1 バージョンをリリースした。

  • C# 4.0によるデッドロックの問題の「解決」

    同じソースコードの最適化されたビルドと最適化されていないビルドは、それぞれ異なるデッドロックになる可能性があることを、数年前Eric Lippert氏は述べた。

BT

あなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。

Eメールを変更すると確認のメールが配信されます。

会社名:
役職:
組織規模:
国:
都道府県:
新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。