deha magazine / Webシステム開発

Webシステム開発

EC開発Shopifyオフショア開発 2022/01/22

ベトナム人エンジニアに聞く!Shopify開発最新事情

Shopifyとは自社ECサイトの開発および運営を実現するプラットフォームとして、世界中で広く利用されているサービスです。世界で170を超える国が利用しており、これまで100万以上のECショップ導入実績があります。 従来のECサイト展開方法では、「自社サーバの用意」「パッケージの導入」などの事前準備に多くリソースを割く必要がありました。 その点、Shopifyはサブスクリプションをベースにしているため、従来までのような初期コストをかけずに、迅速に開発できることが大きな特徴となっています。 当記事ではそんな「Shopify(ショッピファイ)」の活用を得意としているベトナムのオフショア開発会社「DEHA」のエンジニアにインタビューし、Shopifyを活用したECサイトの開発に関して生の声をお届けします。 Q. 自己紹介をお願いします DEHAエンジニアのトアンです。私は1991年に生まれました。今年30歳です。ソフトウェア業界における主にWebおよびアプリ開発の分野で7年以上働いています。 私は開発者、チームリーダーなどの役職で働いたことがあります。 フロントエンド言語、バックエンド言語、サーバサイドプログラミング言語などのほとんどのWeb開発言語の利用に関して経験を持っています。 いつでも時間があれば、新たなテクノロジーの学習、読書、音楽、愛玩鳥、観葉植物の育てをします。 Q. 普段の業務を教えて下さい 現在、私はDEHAで働いており、毎日の仕事について顧客及びチームと打ち合わせ、仕事を詳細に計画しています。仕事が長引く場合は、進歩を確実にするために、日報を報告し、チームと相談したり、サポートします。 Q. Shopifyはどのような方法で習得しましたか? 最初、私は基本的にインターネット上で学習し、社内と社外の同僚から情報を交換したり、ShopifyのForumで情報交換して学習しました。 主に自習、自分でインストール、開発、実践しました。プラットフォームの機能をよりよく理解するために、Shopifyの組み込みの管理機能へのアプローチを学習していました。次に、能力を向上させるため、プロジェクトからのより厳しい要件を満たすように、アプリおよびテーマの開発に切り替えました。Magento、Opencart、Joomla、WordpressなどのECサイトの分野で、フレームワークで多くのCMSを取り組んできたおかげで、見方、操作方法、活用方法も論理的で高速になります。 Q. Shopifyの開発スキルを向上する為にやっていることがあれば教えて下さい。 現在、私は新たなテクノロジーを学習・習得しています。各言語の処理能力が異なることがある為、UX向上の為にパフォーマンスが最適な方法を常に学習しています。 Q. Shopifyでの開発経験について教えて下さい この1,2年で何件もShopifyの開発プロジェクトに携わりました。 今となってはShopifyのストア操作、構成方法は私をはじめとするDEHAチームにとっては非常にイージーだと感じます。 現在は、サードパーティのアプリやサービスの交換方法も継続的に学習したり、顧客の要求に対応するアプリケーションを作成し、この分野での品質を向上する努力をしています。 より多くのアプリを作成し、将来、皆が使用できるようにストアで販売するように頑張ります。 Q. Shopifyで開発して良かったことを教えて下さい Shopifyには、サーバーを準備する必要がなく、負荷分散を確保するためにトラフィックの量を気にせず、コーディングスキルも必要ないというメリットがあります。 また、もう1つの長所は、Shopifyコミュニティからのサポートも非常に柔軟で便利です。 Q. Shopifyで開発する際の課題があれば教えて下さい。また、その課題をどうやって解決したか教えて下さい。 もちろん、困難がありましたよ!例えば、サードパーティのサービスであるアプリの使用は、サイトの機能に影響を与え、中断したことがあります。その時、サードパーティと相談が必要です。また、より最適な方法を見つけるために時間を割くことも多くの時間と労力を要します。 Q. Shopifyでの開発において、品質を高める為に工夫していることがあれば教えて下さい。 個人的な意見ですが、お客様の要件を理解する必要があります。顧客に適切な方法及びアプリを提案し、顧客が体験して試すことができるテストストアを構築します。 そこから、お客様のフィードバックに基づいて検討および機能をアップグレードする必要があります。 Q. その他、Shopifyでの開発に関して、伝えたいことがあれば教えて下さい。 Shopifyを使用する場合、Non Plusバージョンではカスタムチェックアウトページを使用できず、サービスも制限されているというかなり残念な点があります。通常、顧客はカスタムチェックアウトページが表示され、Plusバージョンが提供する以外の多くのことを要求しますので 。 適切なバージョンと価格を選択する前に、顧客の要件を明確にする必要があります。さらに、提供されるサードパーティのアプリの選択と評価は非常に重要です。後、システムに大きな影響を与えるため、コミュニティのレビューを学び、試してみる必要があると思います。 まとめ いかがでしたか。本日はDEHAのエンジニア「タイ」のインタビューを通じて、ベトナムオフショア開発におけるShopifyでのEC開発の状況をご紹介していきました。 DEHA社では高品質なECサイトをスピーディーに納品する為に、Shopifyの習得を積極的に取り入れています。 インタビューをご覧の通り、DEHAには多くのShopify構築&運用実績があるからこそのナレッジがあります。 Shopifyを使ったECサイトの開発をご検討の方は是非ご相談下さい。

続きを読む >>

flutterWebシステム開発モバイルアプリ開発

Flutter on the webとは?特徴やメリットを紹介

FlutterはiOS・Androidなど全てに共通した優れたUIを一度に作ることができるフレームワークですが、そんなFlutterはWebアプリでも利用することができます。 それがFlutter on the webです。つまり1つのFlutterのソースコードでiOS・Android・Webアプリを同時に作ることが可能なのです。 本日はそんなFlutter on the webとFlutterについて、その特徴やメリットなどを紹介していきます。 Flutterが気になる方 Flutter on the webについて知りたい方 これらに当てはまる方におすすめの記事となっています。これを読めばFlutter on the webがどんなフレームワークなのか、どんな人に向いているのかなどが丸わかりですよ。 Flutterとは Flutterとは2018年にGoogleが開発したモバイルアプリ用のフレームワークです。UI開発をサポートするデザインパーツが多数あり、少ない作業でUIを構築することができます。 通常、デバイスをまたいで同じ言語で開発を行ってしまうとプラットフォームごとにデザイン・描画などの差が出てしまいますが、Flutterでは1度の開発でマルチデバイスに対応することが可能です。 Flutter on the webとは Flutter on the webは2021年3月にFlutter2として公開されました。Flutter on the webを使えばWebアプリもiOS・Androidなどと同じように作成が可能です。 ここでは、そんな Flutter on the webの特徴や機能を紹介します。 DartからJavaScriptに変換 Flutter on the webではDartという開発言語を使って、JavaScriptに変換したコードをブラウザ上に動かしています。この変換はDartのdartdevc と dart2jsでコンパイルして実行を行います。 これらのコンパイラーはwebdevとともに使われ、正しいものが選択されるようになっています。 具体的には、アプリ開発を行うときはすぐに結果が見れるようにdartdevcが選ばれるようになっていて、展開のためにアプリを構築するときは効率的なコードを作るためにdart2jsが選ばれるのです。 HTML・Canvas・CSSで描画処理 iOS・Androidなどと同じUIになるように、HTML・Canvas・CSSなどを使って描画処理を行っています。 この描画処理は大きく分けて2つのパターンがあります。 HTML・CSSを使った描画方法 Canvasを使った描画方法 HTML・CSSのみで描画できる場合は①が適用され、そうでない場合は②が適用されます。①は<flt-dom-canvas> タグとして描画され、②では<flt-canvas> タグとして描画されます。 JavaScriptのコードにアクセスする […]

続きを読む >>

Webシステム開発 2022/01/14

WEB制作社必見!HTML5でスマホアプリ開発ができるハイブリッドアプリとは?

ハイブリッドアプリとはHTML5やCSS、JavaScriptで開発ができるアプリです。 SwiftやJavaのような知識が不要で、スマホアプリを作成することができるので開発へのハードルがぐっと下がります。 本日はそんなハイブリッドアプリとはどんなものなのか、メリットやデメリットなどについて徹底解説していきます。 ハイブリッドアプリが気になる方 WEB制作に携わっていた方 楽にスマホアプリ開発を行いたい方 これらに当てはまる方におすすめの記事となっています。これを読めばハイブリットアプリについて丸わかりですよ。 ハイブリットアプリとは ハイブリッドアプリとは、「Webアプリ」と「ネイティブアプリ」という異なる2つの良い要素をハイブリッドしたアプリのことを指します。 WebアプリとはHTML5やCSVによって開発されたアプリのこと。ネイティブアプリは固有のデバイスに依存したアプリのことを指します。 ネイティブアプリはデバイスに依存しているという特徴があります。iOSやAndroidのアプリを作成するためには、SwiftやJavaなどでOSごとに開発が必要だったのです。 しかしハイブリットアプリの場合、HTML5やCSS,JavaScriptで1つのアプリを開発すれば、どちらのOSでも利用することができるのです。 メリット コストを抑えることが可能 先ほども言ったように、iOSやAndroidどちらにも対応するアプリを作るためには2つのアプリ開発が必要でした。 そのため、手間や時間、コストがかかってしまいます。 しかし、ハイブリットアプリなら工数を半分にすることが可能です。 さらに開発に使う言語も多くの人が学んだことのあるHTML5やCSS、Javascriptなので、人件費も通常の開発に比べ抑えることができますよ。 メンテナンスがしやすい ネイティブアプリ開発の場合、端末のバージョンアップの際にアプリで修正が必要になった場合、iOSやAndroidなどそれぞれのOSに個別に対応する必要がありました。 iOSやAndroidは毎年のようにメジャーアップデートが行われるため、多くの手間がかかってしまいますよね。 一方、ハイブリットアプリならマルチプラットフォームを採用しているため、複数のOSにアプリをリリースしていたとしても修正作業は1回で済みます。 また、Webを表示する要領でアプリを表示しているため、そもそもOSのバージョンによる影響を受けづらいという特徴もあります。 メンテナンスのしやすさは、顧客満足度に直結します。アプリを利用したユーザーの要望に柔軟に答えることが可能ですよ。 SwiftやJavaのような知識が不要 ネイティブアプリの開発にはSwiftやJavaなどのスキルが必要です。しかしこれらの言語を新しく習得するのは簡単ではありません。 一方、ハイブリットアプリで使われるHTML5やCSS、Javascriptは、Web制作に利用されていて初心者でも比較的習得しやすい言語と言われています。 Web制作経験者には持ってこいだと言えそうです。 デメリット 細かな仕様変更は苦手 ハイブリットアプリの開発には、特定のフレームワークを利用します。 利用するフレームワークに応じてプラグインの種類も限定されてしまいます。その結果、細かい変更には対応しづらいので注意が必要です。 処理速度が遅くなりがち ハイブリットアプリではライブラリを通じてプラットフォーム固有の機能を間接的に呼び出します。 よってネイティブアプリと比べると処理速度が遅くなってしまうのです。そのため、プログラムの書き方を工夫することで、十分な速度を実現していく必要があります。 まとめ いかがでしたか。本日はハイブリットアプリについてその特徴を解説していきました。 Webアプリとネイティブアプリの良いところ取りをして、開発コストの削減やメンテナンスのしやすさを実現できました。 アプリの開発や運用にあたって、メンテナンスやアップデートは必要不可欠です。メンテナンスが簡単にできるハイブリットアプリは、今後ますます注目を浴びていくに違いありません。 そんなハイブリットアプリ開発ですが、ベトナムオフショアならよりコストを抑えた開発が可能です。 Dehaソリューションズなら5年以上の開発実績があり、高スキルのエンジニアによる開発でさまざまなお客様をサポートしています。 「ベトナムオフショアについてもっと知りたい」「エンジニアの質を知りたい」そんな方はぜひお気軽にお問合せください。 お問い合わせはこちらから

続きを読む >>

Webシステム開発 2022/01/12

web3.0とは?web2.0との違い、仕組みとメリット

web3.0とは、ブロックチェーン技術を用いた分散型のウェブサービスのことです。 従来のweb2.0で問題視されていたセキュリティやブライバシーの問題を解決できるとあって、注目されています。 まだweb3.0のはっきりとした定義はありませんが、この記事ではweb3.0がどんな仕組みなのか、どんなメリットなのかを徹底解説していきます。 web3.0について知りたい方 これからのネットがどのように成長するのかを知りたい方 web2.0との違いを知りたい方 これらに当てはまる方におすすめの記事となっています。これを読めばweb3.0がどんなものなのかはもちろん、従来のweb2.0との違いまで丸わかりですよ。 web3.0とは? web3.0とはブロックチェーン技術によってウェブのデータを共有し、ウェブ自体がプラットフォームとなってユーザー参加型のコミュニケーションを実現するウェブサービスのことです。 ブロックチェーン技術とは2008年にビットコインの安全なやり取りを可能にするためにサトシ・ナカモト氏によって開発されたデータの管理方法です。 分散型のネットワークを構成する複数のコンピュータ間で、情報をチェーン状に繋いでいき、一定期間のデータがブロックとして記録される際に1つ前のブロックのデータが保存される仕組みです。 web3.0ではユーザー自身がデータの所有権を持っていて、データの利用をコントロールすることができます。サービスの登録の際、今までは個人情報をそのサービスに共有させる必要がありました。 しかし、web3.0では個人情報は企業が保持しているデータベース上のデータではなく、ブロックチェーン上に保存されているデータを共有することになります。 ブロックチェーンは暗号化されるので、セキュリティレベルがとても高いです。また全ての履歴は保存されていています。これにより、個人情報の流出や改ざんなどを防ぐことができるのです。 web2.0との違い 従来の「読む」だけのようなサービスはweb1.0と呼ばれていました。閲覧できる情報は情報作成者にのみ管理され、閲覧ユーザーが編集することはできませんでした。 そこから情報の受け手が自由にコンテンツを作り上げることができる、つまり流動化したウェブサービスが誕生しました。それをweb2.0と言います。 web2.0では情報そのものよりも利用者へのサービスが重要視されます。利用者が増えれば増えるほどサービスの質が向上するため、ユーザー参加型のサービスと言えます。 具体的なサービスとしては「Wiki(ウィキ)」や「Youtube」「SNS」などがあげられます。 しかし、これらweb2.0には特定企業に個人情報が集中してしまうというプライバシーの問題や、セキュリティの問題がありました。 Google、Amazon、Facebook、Appleなどの企業に世界中の個人情報が集まってしまうのです。 こうした中央集権型のネットワークが引き起こす問題を解決するために登場したのがweb3.0です。ブロックチェーン技術によって個人情報は分散管理され、不正アクセスや情報漏洩、データ改ざんなどのリスクを減らすことができるのです。 web2.0には情報やシステムの管理を行う特定の管理者が存在していましたが、web3.0には特定の管理者はおらず、複数のコンピュータによって正しい情報が等しく共有されるのです。 web3.0のメリット データの紛失がない ブロックチェーン技術はデータ管理を複数のシステムで管理する分散型のシステムです。 万が一、一部のシステムがダウンしてしまっても、常に同期されているのでデータが紛失してしまったり、データがつかなくなることはありません。 またデータの改ざんもしづらい設計になっているので、ハッキングなどにも強いといったメリットがあります。 情報の相互接続性が向上する インターネットに接続されるものが増えるため、多くのデータが集まり、アルゴリズムが分析する情報が増加します。 これにより、ユーザーに適した情報を提供することが可能になるのです。 デバイス、OSから解放される 今まではiosでは利用できるが、Androidでは利用できないなどデバイスやOSに縛られてしまうことがありました。 しかし、web3.0ならデバイスやOSに縛られることなく利用することが可能です。 広告やマーケティングが改善される web3.0では高度なAIを利用し、顧客データに基づいてターゲットを定め質の高い広告を打ち出すことができます。 カスタマーサポートの向上 web3.0では複数のユーザーと同時に対話できる高度なチャットボットを導入することができます。 質の高いカスタマーサポートを受けることが可能ですよ。 まとめ いかがでしたか。本日はweb3.0について、従来のweb2.0の違いとメリットについて紹介していきました。 web3.0はブロックチェーン技術を用いて、web2.0で問題視されていたセキュリティの問題やプライバシーの問題を解決することができました。 web3.0によって、世界中のユーザーがよりインターネットを利用しやすくなるでしょう。 まだweb3.0の具体的な定義は定まっていませんが、今後web3.0によって、大きな変化がもたらされることは間違いありません。

続きを読む >>

EC開発Shopify 2021/12/14

Commerce+ 2021に見る、越境ECの未来

ShopifyのオンラインイベントCommerce+ 2021が11月4日に開催されました。 このCommerce+ 2021では越境ECのこれからがわかる話題が議論されました。本日はそんなCommerce+ 2021の内容を紹介していきます。 Commerce+ 2021の内容が知りたい方 越境ECの未来を知りたい方 ネットショップを運営したい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めば越境ECはもちろん、他のCommerce+ 2021の内容もわかりますよ。 Commerce+ 2021とは Commerce+ 2021とはShopifyを利用する事業者とパートナー向けに行うオンラインイベントです。 6月29日に行われた「Shopify Unite 2021」を受けて、日本に特化したコンテンツを加えて開催されました。Shopifyの最新動向を知ることができたり、コミュニティをつくる機会を提供します。 Commerce+ 2021に見る、越境ECの未来 ネットショップは今や世界中に機会が広がっています。実際にShopify公式でも以下のような情報がシェアされています。 2020年にShopify最大のマーチャントは、国際ドメインや複数通貨といった既存ツールを活用して200億ドルの越境売上をうみだしています。 越境ECの課題となるのは、通貨や言語、ローカルな支払い方法、関税や輸入税などですよね。また、ローンチする場所をどうするのか、どんな商品を販売するか、ターゲットとするべきでもグラフィックをどうするかなど考えるべきことが多くあります。 Shopifyではこれらの課題を解決するべく、Shopify Marketsをローンチしました。 Shopify Markets Shopify Marketsは先ほど紹介した越境ECの障壁を解消するために立ち上がったサービスです。 通貨や言語の変更、支払い方法の変更や関税などと言った越境ECに必要な面倒な作業をShopify Markets1つに集約し、管理することができるようになりました。 デフォルトで越境EC用の機能があり、簡単に海外用のネットショップを構築することが可能です。 ネットショップにおいて言語や通貨を購入者に合わせてローカライズすると、コンバージョンがそれぞれ13%から40%と大幅に増加すると言われています。そのような市場に合わせたローカライズがShopify Marketsでは簡単にできます。 Shopify Marketsでできること Shopify Marketsでできる主なことは以下の通りです。越境ECに必要な機能が集約されているのがShopify Marketsの魅力です。 市場別のショップを一元管理 通貨の変更 言語の変更 関税の自動計算 決済方法の選択 市場別の価格設定 グローバルな在庫のロケーション 市場別の分析 他にもあるCommerce+ 2021で議論されたこと 越境EC以外にもネットショップの未来を予測する様々な議論がなされました。簡単に紹介していきます。 自分のブランド、自分のビジネスを構築する Commerce+ 2021ではお客様に信頼を得て深い関係を築くために、どのような投資が必要かが議論されました。その中で注目されたのがオンラインストア2.0とDawnです。 オンラインストア2.0とDawn […]

続きを読む >>

WEB制作 2021/12/11

React.js とVue.jsを徹底比較!歴史や機能・特徴などを解説

JavaScriptの人気のフレームワーク・ライブラリであるReact.js とVue.js。 初心者がJavaScriptの学習を行う際に、どちらを選択すれば良いか迷う方もいらっしゃるでしょう。 そこで今回は、React.js とVue.jsにはどんな特徴や違いがあるのかなどを徹底解説していきます。 React.js とVue.jsの特徴や違いを知りたい方 JavaScriptを学びたい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めばReact.js とVue.jsの違いがわかりますよ! React.jsとは React.jsは2013年にFacebookによって開発されました。 世界的にみても非常に人気が高く、2021年現在では、最も導入率の高いフロントエンド技術となっています。 UIを構築するために作られたライブラリで、SPA(シングルページアプリケーション)の開発などに用いられます。 実際、ソース管理ツールを提供するGitLabや、NintendoのMy Nintendoプロジェクト、ホテル検索サイトのTrivagoなどで採用されています。 React.jsの機能 Declarative React.jsのDeclarativeとは、UIの部品に対し「このような見た目になる」と宣言するように実装できるということです。 誰が見ても理解できるわかりやすいソースコードで、デバッグのもやすくなります。さらにデータの変更を検知し、自動的に表示を更新することも可能ですよ。 コンポーネント React.jsではアプリケーションで再利用するものをコンポーネント(部品)といいます。 コンポーネント化をすることで、何度も同じコードを書く必要がなくなり見やすく保守も行いやすくなります。 Vue.jsとは Vue.jsは2014年にリリースされた日本国内で人気のJavascriptのフレームワークです。MITライセンスで公開されていて、商用利用も可能。ドキュメントが豊富で、開発者同士のコミュニティも活発です。 他のフレームワークと異なり記述方法に癖が少ないため、React.jsよりも学習コストが低いと言われています。モダンなライブラリと併用することで、洗練されたシングルページアプリケーションの開発も可能です。 Vue.jsの機能 ディレクティブ ディレクティブとはv-で始まる特別な属性のこと。ディレクティブによってHTMLに独自の属性を付与し、DOM操作を行うことができます。 ディレクティブは多くの種類が用意されているので、うまく活用することができれば直接DOM要素を操作するコードを書く必要はなくなります。 コンポーネント Vue.jsでもReact.jsと同じようにコンポーネント指向をとっています。 コンポーネント化により記述を簡潔にすることができ、例えエラーが起きたとしても修正も簡単に行うことが可能です。 React.js とVue.jsの比較 今まで紹介したReact.js とVue.jsの違いをまとめると以下のようになります。 React.js Vue.js 対象 Webとネイティブ Web中心だが今後他のプラットフォームでも利用できるよう開発された 開発者 Facebook Evan You リリース時 2013年3月 2014年2月 目的 単一ページまたはアプリケーションの開発のベースとして使用 高度な単一ページアプリケーションも可能 学習コスト 深い知識が必要 記述方法が短く、情報も多い。ライブラリを活用できる […]

続きを読む >>

システム開発 2021/11/29

マイクロサービスアーキテクチャとは?メリット・デメリットを紹介

マイクロサービスアーキテクチャとはあるアプリケーションをビジネス機能に沿った複数の小さなマイクロサービスに分割して開発を行なっていく手法のことです。 これにより開発の効率化や、変更に柔軟に対応することができるようになります。 実際、AmazonやNetflixなどでも取り入れられているマイクロサービスアーキテクチャ。本日はそんなマイクロサービスアーキテクチャについて徹底解説していきます。 マイクロサービスアーキテクチャが気になる方 開発効率を上げたい方 ラボ型開発に興味がある方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めばマイクロサービスアーキテクチャがどんな開発手法なのか丸わかりですよ。 マイクロサービスアーキテクチャとは? マイクロサービスアーキテクチャとはソフトウェア開発技法の1つで、ThoughtWorks社のマーチン・ファウラーとジェームス・ルイスによって提唱されました。 ビジネス機能に沿った複数の小さなマイクロサービスに分割し、それらを組み合わせて単一のアプリケーションを開発するアプローチのことを指します。 アマゾン CEO ジェフ・ベゾスが大きすぎるチームではメンバー間の意思疎通が困難になり生産性が低下すると「ピザ2枚ルール」を提唱していますが、マイクロサービスアーキテクチャはその考えをもとに作られたと言われています。 「ピザ2枚ルール」とは、チーム編成や会議において、無駄がなく生産性が高い人数の条件は、ピザ2枚を配りきれる程度の人数(8~10名程度)という考えのことです。 このピザ2枚を配りきれる人数によって、効率的で、各々のモチベーションも高く、またお互いをフォローしあえる状況にあるため、チームの団結力が強くなると考えられています。 実際、マイクロサービスアーキテクチャにより、迅速な開発や機能の改善、柔軟な拡張などが可能になります。 マイクロサービスアーキテクチャのメリット メンテナンスやテストがしやすい マイクロサービスアーキテクチャでは共有される部分を減らし、小さなサービスを開発、改善していきます。 メンテナンスやテストもそれぞれで 行うので、管理がしやすくなります。 ひとつのサービスが全体をダウンさせるようなことがない マイクロサービスアーキテクチャでは個々で開発を行うので、それぞれのサービスが独立をしています。そのため各サービスは違うプログラム言語で開発をしていても問題がありません。 だからこそ、単一のコンポーネントの中で障害が発生しても、他のコンポーネントに影響を与えることは少ないのです。 開発が柔軟になる 先ほども言ったように各サービスは違うプログラム言語で開発することができます。さらに、データモデルやデータベーススキーマなどもサービスごとに各個に設計をしていきます。柔軟な開発が可能になりますよ。 ちなみに、各チームで開発したものはREST APIやRPCによって通信して連携を行なっていきます。 マイクロサービスアーキテクチャのデメリット プロジェクト型の開発には向かない マイクロサービスアーキテクチャは変化に柔軟に対応できると言ったメリットがありましたが、こうした開発手法は持続的な開発や継続的にリリースに向いています。 そのため完成までに長い工期を要するプロジェクト型の開発にはあまり向いていません。アジャイル開発などの開発手法でマイクロサービスアーキテクチャが重要な役割を果たすことができると言えるでしょう。 合わせて読みたい>>【注目】アジャイル開発とは?オフショア開発に効果的!? サービス間のインターフェースが重要 お気づきかもしれないですが、マイクロサービスアーキテクチャで開発を行う場合、それぞれのチームで開発したものを連携させるインターフェースが重要になります。 単純にサービスを分割すればするほどインターフェースの数が増えてしまいます。複数回のネットワーク通信が発生することでシステムのパフォーマンスが劣化する可能性も。  また、サービス間を実際に結合して試験するためには、互いに実装がある程度成熟している必要もあるのです。 まとめ いかがでしたか。本日はマイクロサービスアーキテクチャについて、どんな開発技法なのか、どんなメリット・デメリットがあるのかなどを解説していきました。 マイクロサービスアーキテクチャでは小さな単位にサービスを分割することで、仕様変更に柔軟に対応でき、開発効率をあげることができました。 アジャイル型の開発を行なっているチームでは重要な役割を果たすに違いありません。ぜひ今回紹介したマイクロサービスアーキテクチャを自社システムにも取り入れてみてはいかがでしょうか。 dehaでは、5年ほど前から、ベトナムオフショア開発を行っています。 より詳しくマイクロサービスアーキテクチャについて知りたい方、オフショア開発について知りたい方はぜひご気軽にお問い合わせください。 お問い合わせはこちらから

続きを読む >>

pythonWebシステム開発 2021/11/28

pythonとは?できること・メリット・デメリットのご紹介

人気のプログラミング言語pythonは、YouTubeやInstagramなど人気のサービスで利用されています。さらにはAI開発など今注目の技術でも活用されているのです。 本日はそんなpythonについて、特徴やメリット、デメリットなど徹底解説していきます。 pythonが気になる方 バックエンドの開発を行いたい方 AI関連のシステム開発を行いたい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めば今注目の言語pythonについて丸わかりですよ。 pythonとは? 1991年にオランダ人のグイド・ヴァンロッサムによって開発されたオープンソースで運営されているプログラミング言語です。pythonという名前は、BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』にちなんで付けられそうです。 組み込み開発や、Webアプリケーション、デスクトップアプリケーション、人工知能開発、ビッグデータ解析など様々なものに活用されています。 pythonは広く利用されているので、学習コストが低くサイトや本などで気軽に勉強することができます。プログラミング初心者でも学びやすい簡潔な言語仕様で、少ないコードで書けるのも魅力です。 pythonのメリット 初心者でも学びやすい そもそもpythonは、コードを書きやすくするために誕生したプログラミング言語です。誰が書いても同じようなコードになるように工夫されています。また少ないコードで簡潔に記述できるので、読み間違えや書き間違えが起こりづらくなっています。 またpythonは初心者が学ぶ際に役立つ書籍や情報が多く出ています。多くの人が学習している言語だからこそ、学習もしやすいのですね。 ライブラリの数も豊富で、その数は数万種類にも及びます。ライブラリを利用すれば、1からコードを記述する必要がありません。自分の作りたいプログラムを簡単に構築していくことが可能なのです。 WebサービスやAI関連のビジネスで利用されている pythonは今注目のWebサービスやAI関連のビジネスで多く利用されています。 例えば人気の動画サイトYouTubeでもPythonが使用されています。バックエンドのプログラムで利用されていて、動画処理やデータの読み込みなどを担っています。 また、クラウド環境の構築に利用されているオープンソースのソフトウェアOpenStackもPythonで大部分を開発しています。 オンラインストレージサービスDropboxもPythonで開発されています。Pythonでの開発でOSを選ばないポータビリティ性、動作の高速性、などの高い利便性を実現しているのです。 AI関連のシステム、機械学習を用いたソフトウェア分野でも多く利用されているのも大きな特徴です。 Pythonはコードが簡潔にもかかわらず、統計処理や数値計算を得意としています。それが、データ解析の処理によく用いられる理由の1つです。AI分野のライブラリも豊富にあるので、それらを利用して開発することもできますよ。 フレームワークがある フレームワークとはWebアプリケーションのひな型のようなもの。 Webサービス開発においてフレームワークを活用することで、開発スピードの向上や、管理修正がしやすくなるといったメリットがあります。 pythonでは「Django」や「Flask」などといったフレームワークがよく利用されています。 Djangoは一般的なWebアプリを作るのに必要な機能が揃っているフレームワークで、Python特有の豊富な機械学習関連のライブラリを使えるということで人気となっています。 管理画面が組み込まれているため、データベースの閲覧・編集の管理画面を簡単に作ることが可能です。Instagramの開発などでも利用されていますよ。 Flaskは最低限の機能を備えており、必要に応じて機能を拡張するという作りになっており、コードの管理がしやすいのが特徴です。Google App Engineと互換性があるので、開発者へのサポートも充実しています。Uberなどで利用されています。 合わせて読みたい>>2021年版 Web開発フレームワーク 5選(バックエンド編) pythonのデメリット 実行速度が遅い Pythonはインタプリタ型の言語、かつ動的型付き言語であるため実行速度が遅いといったことがデメリットとして挙げられます。そのため基幹システムなどの重要なシステムには向いていません。 インデントが必要 Pythonはインデントが必要なので、記述の際は気をつけましょう。 インデントとは行頭に空白を入れてから、文字を入れて字下げを行うこと。pythonでは同じ数の空白でインデントされたまとまりを一つのブロックと認識するので、インデントが合わないとエラーが起こってしまいます。 まとめ いかがでしたか。本日は今注目のプログラミング言語pythonについて徹底解説していきました。 pythonはYouTubeやInstagramなど人気のサービスで利用されています。さらにAI開発など今注目の技術に活用されているのです。 世界中で多くの人が利用している言語なので、学習コストが低くライブラリも豊富にあります。コードもシンプルなので、初心者が学びやすい言語と言えるでしょう。 dehaは本日紹介したPythonを利用した開発実績が豊富な技術者集団です。 ラボ型開発(「お客様専属の開発チーム」を準委任契約にて提供する開発形態)で外注先というよりは社員らしくプロジェクトに関わることで、高いパフォーマンスを発揮します。 Pythonのスキル・実績を持ったIT人材をお探しの方は、外注と採用の良いとこ取りをした人材調達サービス「チョータツ」をご覧下さい。

続きを読む >>

EC開発Shopify 2021/11/25

Shopifyでできることまとめ【越境EC開発はショッピファイで決まり】

人気のECサイト作成サービスShopifyは自由度が高く、オリジナリティ溢れるネットショップを作成することができるとあって注目を浴びています。 この記事ではそんなShopifyでできることをご紹介していきます。 Shopifyが気になる方 ECサイトを構築したい方 これらに当てはまる方におすすめの記事となっています。これを読めばShopifyがどんなサービスなのか、どう言ったことができるのかなど丸わかりですよ。 Shopifyとは Shopifyとは世界175か国、170万店舗以上で利用されており、グローバルでの流通総額が10兆円を超える世界シェアNo1のECサイト作成サービスです。 1から作成しようと思うと莫大なコストと時間がかかってしまうECサイト構築が、Shopifyでは簡単に行えます。 初期費用も安く、料金も月額制なので、簡単で管理も簡単。決済手数料も国内最安設定となっています。 BASEなど無料のECサイト作成サービスもありますが、そう言ったサービスは決済手数料が高く設定されていることが多く、一定の売り上げがあるショップでは損になってしまうことも。 Shopifyなら国内発行のカードなら決済手数料3.25%〜3.4%となっているので、一定の売り上げがあるショップでも安心して利用することができます。 Shopifyでできること オリジナリティ溢れるECサイト構築 Shopifyではオリジナリティ溢れるECサイトを構築していくことができます。 登録後、サイトの中身を視覚的にカスタマイズしていきます。デザインはテーマと呼ばれるテンプレートが豊富に用意されているので、その中から必要なものを選ぶだけ。 テーマの種類は公式のもので100種類、非公式のものを合わせると1000種類もあります。 さらにアプリで機能の拡張を行うことで、よりショップに個性を出すことができます。アプリの数は6000以上もあるのです。 「よりショップに個性を出したい」「完全オリジナルのデザインにしたい」という方は、Shopify構築を外注してみるのもおすすめですよ。 合わせて読みたい>>【重要】ECサイト外注時のポイント【Shopify(ショッピファイ) を構築するなら】 各種SNSとの連携 Shopifyでは様々なSNSとの連携を行うことができます。 Shopifyで連携可能なSNSは以下の通り。 Instagram Facebook Twitter Pinterest SNSと連携を行うことで、ECサイトへのアクセス数を増やすことができます。新規ユーザーを獲得する上での必要不可欠なステップと言っても過言ではないでしょう。 特にInstagramはネットショップとの相性がよく、潜在層への認知形成から、ファン化まで、幅広いターゲットに対してコンテンツを発信することができます。 ライブ配信機能やストーリーズ機能を利用することでユーザーと直接コミュニケーションをとることができたり、商品の細部まで見せることができるなど、アイディア次第で様々なマーケティングを行うことが可能です。 売れるECサイトの構築 Shopifyでは売れるECサイトも構築可能です。 せっかくECサイトを構築したのに、誰にも見られない、誰にも購入されないでは意味がないですよね。 先ほども言ったように、Shopifyでは連携できるSNSが豊富なのでそれらで集客を行うことが可能です。さらにSEO対策の機能も充実しています。 Shopifyでは細かなSEOの対策が可能です。編集可能なSEOの設定は、ストア全体のタイトル、ディスクリプションなど。 また、ECサイト運営で重要な問題でもあるかご落ちに対しても、Shopifyでは対策が取られています。 そもそもかご落ちというのは、お客さんが商品をショッピングカートに入れたものの決済を行わないままにしてしまい、結果的に買い物が中断されてしまうことを指します。 購入見込みがあるユーザーを逃さないためにも、かご落ち対策は重要なのです。 Shopifyではそんなかご落ちを防止する機能が備わっています。かご落ちをしたお客様に対して再度購入を促すようお知らせメールを送ったり、ECサイト内にポップを設置することができるのです。 越境EC構築 最後に、Shopifyの最大の強みでもある越境ECについてご紹介します。 越境ECとは海外向けにEC運営をすることです。越境ECを行うにあたって、言語の壁や決済、為替変動やセキュリティなど様々なハードルがありますよね。 それらのハードルを全て解決してくれるのがShopifyなのです。 Shopifyでは管理画面から、複数言語での販売の設定を行うだけで、自社ページをその国の言語に翻訳し、各言語専用のURLを作成することが可能です。 さらに、多通貨対応や多様な決済システムも魅力です。決済システムでは、中国で人気のAlipayやアメリカやヨーロッパで主要なPaypalなどにも対応しています。 セキュリティも金融機関のプログラム並に強固と言われています。 合わせて読みたい>>【安心】何故Shopifyはサーバーダウンしないのか?【サーバー障害への心配不要!】 まとめ いかがでしたか。本日は人気のECサイトShopifyでできることについて紹介していきました。 Shopifyでは売れるECサイトや越境ECなどを構築していくことができました。 そんなShopify構築を外注してみるのはいかがでしょうか。 dehaでは、オフショア開発で開発費を抑えてShopify構築を行うことができます。国内開発の相場から3割ほどコストを抑えた提案が可能です。 もし、Shopify構築についてもっと知りたい、エンジニアの質を知りたいという方がいらっしゃいましたら、お気軽にお問いわせください。 お問い合わせはこちら

続きを読む >>

JavaScriptWebシステム開発 2021/11/22

【一目で理解】JavaScriptでできること15選【まとめ】

JavaScriptはフロントエンド、バックエンド、ネイティブアプリなど様々な開発に利用することができ、海外でもメジャーな言語。 この記事ではそんなJavaScriptでできることを15個ご紹介していきます。 JavaScriptがどんな言語なのか知りたい方 プログラミングを学習したい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事です。これを読めばJavaScriptがどんな言語なのか、どう言ったことができるのかなど丸わかりですよ。 モーダル(ポップアップ画像) JavaScriptを使えばモーダル(ポップアップ画像)を表示させることができます。 モーダル(ポップアップ画像)は広告やお知らせなどをホームページなどに表示させることができる機能です。 クリックをしないとページが閉じないので、大事なお知らせをしたり宣伝に使うことができます。 サイトの利便性向上 JavaScriptなら文字色や背景色など装飾を変更させたり、タブを作ったりとサイトの利便性を向上させるアイテムを作ることができます。 他にもカーソル表示では、文字にカーソルを合わせると詳細情報を表示させることができます。 Ajax Ajaxとはページを移動しなくてもデータを取得したり表示させることができる機能です。 Ajaxを利用したページで有名なのが、Google Mapです。地図を自由に動かすことができるので、とても見やすい工夫がされています。 カウントダウンタイマー JavaScriptならカウントダウンタイマーを作成できます。イベントの通知などで利用することができます。 セールやイベントが開始するまで、終了するまでの表示を通しで設定できるので、一々設定し直さなくても良いのが便利です。 サイトのブラッシュアップ UIをブラッシュアップすることができます。 先ほど紹介したタブやカーソル表示など小さなことですが、工夫をすることでユーザーの満足度につながります。 リアルタイムで動くグラフ 1秒ごとにリアルタイムで動くグラフを作成することができます。株価のチャートや売上高などに活用できますよ。 動きのあるサイト JavaScriptではHTMLやCSSではできない動きを作ることができます。 例えば、画像が横にスライドすると切り替わることができるスライダーや、文字の点滅、背景デザインの変更などなど…。 JavaScriptで動きを作ることによって、サイトからの離脱率を下げ、お客様満足度の向上につながりますよ。 ソートや検索機能 JavaScriptのDatatablesのライブラリを使うことで手軽に表のソートや検索機能を利用することができます。 サイトをより見やすくすることにつながりますよ。 文字の爆発 fontBombというライブラリを利用すれば文字を爆発させることができます。 こちらを参考にしてみてくださいね。 お絵かきツール JavaScriptとHTMLのcanvas要素を活用すればお絵かきツールを作成することができます。 ちなみに、HTMLのcanvasはこの後紹介するゲームなどを作るのにも役立ちます。 サーバサイドで使う Node.jsを利用すればJavaScriptをブラウザ以外で動かすことができます。 Node.jsを使うことで、フロントエンドとサーバサイドで使う言語をJavaScriptで統一することができるので、プログラマーの負担を削減することにつながります。  Unityでプログラミングができる  UnityのプログラムはJavaScriptで簡単に作成することができます。そもそも Unityとはユニティ・テクノロジーズが開発しているゲームエンジンのことです。 あの「ポケモンGO」に使用されたことでも有名になりました。 ハイブリットアプリ ハイブリッドアプリとは、「Webアプリ」と「ネイティブアプリ」という異なる2種類のアプリの良い要素をハイブリッドしたアプリのことを指します。 アプリ開発では通常、iPhone用とAndroid用でそれぞれ開発をしなくてはいけません。しかし、ハイブリッドアプリなら1つの開発で両方のosで使うことができるのです。 また、アプリさえデバイスにインストールすれば、WindowsやMac、Android、iPhoneなど様々なデバイスで動作させることも可能です。 合わせて読みたい>>ハイブリッドアプリとは|10分で分かる!概要と作成方法 動くゲームが作れる JavaScriptならなんと動くゲームも作成可能です! 例えばシューティングゲームやRPG、ブロック崩しゲーム、テトリス、タイピングゲームなど。 小さなゲームから作成していけば、良い学習にもなります。 ChromeやFirefoxなどの拡張機能を作れる […]

続きを読む >>