SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2021】セッションレポート(AD)

開発速度と品質を両立する! Salesforceで始めるノーコード×コーディング開発【デブサミ2021】

【19-A-2】開発現場のNew Normal!ノーコードを活かした効率的なSalesforce開発の始め方

  • X ポスト
  • このエントリーをはてなブックマークに追加

快適で効率的な開発のために、適材適所のコーディング開発を支える

 ノーコード開発が便利とはいえ、コーディング開発がなくなるわけではない。ノーコード開発で済む場面も多いが、きめ細やかな要件に対応していこうとすると、やはりコーディングが不可欠となる。SalesforceではSalesforce DXと呼ばれる取り組みの中でモダンな開発ツールを提供しており、開発者は快適かつ効率的に開発を進めていくことができる。

 Salesforceのアプリケーションをテクノロジー的に見ると、Webコンポーネントベースのシングルページアプリケーションとなっている。このアプリケーションはLightningフレームワーク上で稼働しており、画面表示をGUIで調整できるだけではなく、高いセキュリティや効率的なデータアクセスも実現している。

 Salesforceでコーディング開発を効率化するために知っておきたいのがLightning Web Components(LWC)とVS Code向け拡張の2つだ。

 まずはLWC。これはLightningフレームワークを活用しながら、Webコンポーネントを開発するためのプログラミングモデルだ。開発者が独自に作成したWebコンポーネントをアプリケーションビルダーからアプリケーションに組み入れる時のことを考えてみよう。

Lightning Web Components(LWC)
Lightning Web Components(LWC)

 例として、田中氏は先ほどファイルからデータを読み込んだアプリケーションに新しいWebコンポーネントを追加してみせた。「開催地」(住所データがある項目)で地図のコンポーネントを使い、開催地の場所を地図で表示するように変更した。何気なくやっているように見えるが、一般的なアプリケーションなら同一ページにあるコンポーネントが干渉しないか確認する必要がある。時には自分が開発したコンポーネント以外のコンポーネントのソースコードを確認したりすることもあるだろう。ところがSalesforceではそのような心配は一切不要。Salesforceのフレームワークはコンポーネント同士が干渉しないように制御しているためだ。そのため開発者は自分が担当するコンポーネントだけ確認すればよく、ビジネスロジックに集中できるようになっている。

 続いてVS Code向け拡張。Salesforceでは開発者がエディタを自由に選ぶことができる。もし普段からVS Codeを使っているなら、Salesforce向けの拡張「Salesforce Extension Pack」を追加しておこう。田中氏は「VS CodeでSalesforceを開発するならマストアイテム」と推す。

 追加でもう1つ。現時点ではオープンベータとして提供されているローカル開発だ。従来のSalesforce開発では、ローカル環境で開発しても、開発環境にアップロードしないと動作確認ができなかった。しかし、アップロード、テスト、修正を繰り返すのは効率的とは言えなかった。このローカル開発はローカルサーバー(ローカルホスト)上でLWCをビルド、テスト、実行できるため、開発の高速化につなげることができる。

ローカル開発
ローカル開発

 なおSalesforceというとGUIのイメージがあるかもしれないが、コマンドラインもある。それが、Salesforce CLI。一連の作業をスクリプトで実行したい時に他ツールと組み合わせると便利だ。例えばテスト実行を自動化したり、データやメタデータを移動させたりできる。

 またSalesforceのようにノーコードとコーディングを組み合わせて開発を行うアプリケーションでは、従来のコーディングを中心としたアプリケーション開発に比べるとバージョン管理が難しい。そこで全てのソースコードとメタデータの変更を「パッケージ」という形でモジュール化すると、バージョン管理がしやすくなる。VCSと同期したアプリケーションリリースを可能とし、CI/CDと連携することができるため、DevOpsの実現につながる。このパッケージは、サンドボックスにおいても利用可能だ。

 最後に田中氏はあらためてこれからの開発体制において大切な考え方について述べた。ノーコード開発とコーディング開発の両方が選べる時、コーディングに慣れた開発者だと些細な機能でもコーディングで作ってしまいがちだ。しかしそこはぐっと抑え、ノーコードという選択肢があるのであればノーコードで開発を選ぶことを田中氏は推奨する。

 アプリケーションはいずれ誰か別の人が引き継いで保守するかもしれない。ビジネスで使うユーザーのために品質の担保や安全性も忘れてはならない。田中氏は「Salesforceでの開発はノーコードファーストで。ノーコードで実現できないものだけをコーディングで補完していくというのが、Salesforce開発における成功の鍵となります」と話す。またノーコード開発とコーディング開発を適材適所で進めるなら、開発に携わった人たちの評価も適切に行えるように人事評価を見直す必要があると指摘した。開発のスタイルも考え方も、ニューノーマルへと向かっている。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
【デブサミ2021】セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/13701 2021/03/30 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング