Shopify Functionsが一度に最大25の関数を実行可能に
Shopifyの開発者や技術者向けに重要なアップデート情報が飛び込んできました。Shopify Functionsは、これまでFunction APIごとに実行可能だった関数が5つから25つに増加しました。これにより、複雑なロジックや無関係なロジックを小さな専用関数に分割して処理することが可能になり、全てをまとめて処理する必要がなくなりました。
技術的課題の定義と現状分析
従来、Shopify FunctionsではFunction APIごとに5つの関数しか実行できませんでした。そのため、複雑なロジックや無関係なロジックを処理する際には、全てを一つの関数にまとめて処理する必要がありました。しかし、これには複数の問題が存在しました。一つは、関数が複雑になることでコードの可読性と保守性が低下する問題。また、無関係なロジックが混在することで、バグの発生リスクが高まる問題がありました。
具体的な技術的ソリューションの提案
この問題を解決するために、Shopify FunctionsはFunction APIごとに実行可能な関数の数を5つから25つに増やしました。これにより、複雑なロジックや無関係なロジックを小さな専用関数に分割して処理することが可能になりました。具体的な利用シーンとしては、以下のようなものが考えられます。
実装手順とコード例
まず、新たに25個の関数を作成するには、以下のようなステップを踏みます。
// Function APIの作成
const functionApi = shopify.functions.createFunctionApi({
name: 'myFunctionApi',
version: '1.0'
});
// 25個の関数の作成
for (let i = 0; i < 25; i++) {
functionApi.createFunction({
name: `myFunction${i}`,
runtime: 'nodejs14.x',
handler: 'index.handler'
});
}
パフォーマンス・コスト分析
この変更により、関数の数が増えることで処理の並列化が可能になり、パフォーマンスが向上します。さらに、関数が複雑になることを避けることで、コードの保守性が向上し、開発コストの削減にもつながります。
実装時の注意点・ベストプラクティス
ただし、関数の数が増えることで管理が複雑になる可能性もあります。そのため、関数の責務を明確にすること、関数間の依存関係を最小限にすることが重要です。さらに、関数のテストを十分に行い、バグの発生を防ぐことも必要です。
参考記事: Shopify Functions can execute up to 25 functions in a single batch
AUTHOR
Share:
開発者向け:新たなGraphQL APIでドラフトオーダーの配送オプションを制御
Storefront APIのカートオブジェクトが、適用不可能なディスカウントコードに対する警告を表示するようになりました