deha magazine / オフショア開発

オフショア開発

アジャイル開発オフショア開発 2023/01/21

アジャイルソフトウェア開発宣言とは

アジャイルソフトウェア開発宣言とはアジャイル開発という概念がはじめて定義された論文のこと。 アジャイル開発を行う上でこの論文は非常に重要ですが、一歩読み間違えてしまうとアジャイル開発の強みをうまく生かすことができなかったり、逆に手間になってしまうことも。 そこでこの記事ではアジャイルソフトウェア開発宣言に関してどんな内容なのか、どう読み解けばいいのかなど徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばアジャイル開発の特徴はもちろん、アジャイル開発宣言の正しい読み解き方まで丸わかりですよ。

続きを読む >>

オフショア開発 2023/01/14

V-Tech(ブイテック)とは?2023年のトレンドワードになるか?

V-Tech(ブイテック)とはベトナム(Vietnam)とテクノロジー(Technology)を組み合わせた言葉です。 確かにベトナムではVNG、VNLIFE、Sky Mavisなどのスタートアップ企業が活躍をしています。では具体的にV-Tech(ブイテック)とはどんな特徴があるのでしょうか。 この記事ではV-Tech(ブイテック)に関して、どんなものなのか、なぜ今注目されているのか徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばV-Tech(ブイテック)はどんなものなのか丸わかりですよ。 V-Tech(ブイテック)とは? V-Tech(ブイテック)はベトナム(Vietnam)とテクノロジー(Technology)を組み合わせた言葉です。 ベトナム発の技術や人材を活用して革新的なシステムやサービスを行うことや、そう言ったサービスを提供するシステム開発会社やスタートアップ企業が今注目されているのです。 V-Tech(ブイテック)が注目されるワケ なぜ今V-Tech(ブイテック)が注目されているのでしょう。その理由の一つにベトナムを拠点にソフトウェア開発を手掛ける企業が相次いで、新規株式公開(IPO)を果たしたことが挙げられます。 Sun Asterisk(4053)やハイブリッドテクノロジーズ(4260)は日本の東証マザーズに上場しており、日本の投資家からも期待を集めています。 さらに日系企業が続々とベトナムにシステム開発拠点を設立していることも見逃せません。例えばキャノンは、ベトナム国内に3 つの拠点があり(2021年時点)、製品の輸入や販売体制をベトナムにて構築しながら、既存の事業領域でもシェアを拡大しています。 また、ベトナムではテック系のスタートアップ企業も続々と誕生しています。特にVNG、VNLIFE、Sky Mavisの3社は未上場にも関わらず、評価額が10億ドル以上のいわゆるユニコーン企業です。 日本と比べるとその勢いは言うまでもなく、こうした実績からV-Tech(ブイテック)が注目を集めているのです。 注目のスタートアップ企業 ここからは、先ほど紹介したVNG、VNLIFE、Sky Mavisの3社についてもう少し詳しくみていきます。 VNG VNGはメッセンジャー・無料通話アプリ「Zalo」や、決済サービス「Zalo Pay」、ゲームや音楽配信を提供する会社です。さらにコンシュマー向けのサービスだけでなく、EC事業者向けのプラットフォームやクラウドサービスなども展開しています。 特にメッセンジャー・無料通話アプリ「Zalo」は、日本のLINEに匹敵すると言われていてベトナムの最も有名なネット企業の一つです。 VNLIFE VNLIFEは、AIを活用して、銀行業務、デジタル決済、オンライン旅行、新しい小売の4つのコア領域で動作する多様なエコシステムを開発しています。 さらに電子決済サービスのVNPAYを傘下に持ち、グループ全体ではエンジニアを中心に既に4000人を超える社員を抱え、シンガポールやカンボジアなどにも多国間展開しています。 Sky Mavi Sky MaviはブロックチェーンゲームAxie Infinityを開発した会社です。2018年の設立以降わずか3年でユニコーン企業にまで成長していて、最も勢いのあるベトナム企業と言えるでしょう。 Axie InfinityはAxie(アクシー)というモンスターを使ってバトルするゲームです。 プレーして稼ぐゲームとしてブロックチェーンゲーム(NFTゲーム)を注目の的にしたブロックチェーンゲーム(NFTゲーム)の代表とも言っても過言ではないでしょう。 ゲームをプレイすることで、SLPやAXSというような仮想通貨を入手することができ、それを日本円に変えることでマネタイズが可能になります。 V-Tech(ブイテック)は2023年のトレンドワードになるか? V-Tech(ブイテック)は言うまでもなく、2023年のトレンドワードとなり得ます。その背景に、日本のテクノロジーは特にIT分野において、人材の確保が難しくなっていくことがあげられます。 経済産業省によると日本では、2030年にはなんと最大で79万人のIT人材が不足すると言われています。実際、日本国内で募集をかけても即戦力となる人材はなかなか確保できませんし、確保できたとしても人件費が高くつく場合が多いです。 こうした人材不足はテクノロジーの後退を引き起こしかねません。 一方、V-Tech(ブイテック)の勢いがあるベトナムでは、国策としてIT教育を行っていて、2030年にはITエンジニアを含めた150万人のIT人材輩出を目指しています。 日本教育に触れた人材も多くいて、現在日本に技能実習生として来ている外国人のうち、約45%はベトナムから来ています。勤勉な性格も日本と似ているところがあり、日本人と相性が良いと言われています。 そのため、ベトナム人エンジニアが開発を行うオフショア開発は、V-Tech(ブイテック)と合わせてますます身近なものになっていくに違いありません。 まとめ いかがでしたか。本日2023年トレンドワードとなりうるV-Tech(ブイテック)について、詳しくみていきました。 VNG、VNLIFE、Sky Mavisなどの企業を見てわかるように、ベトナムのテクノロジーは今勢いがあります。 合わせてベトナムオフショアにもますます注目していきたいところです。 Dehaソリューションズでは、ベトナムオフショアの5年以上に及ぶ開発実績があります。 コストを抑えて開発を行いたい方、社内のIT人材が不足している方など、ぜひお気軽にお問い合わせください。

続きを読む >>

DX 2023/01/07

2023年に注目されそうなITトレンドとは?

ガートナージャバンによると2023年に注目されそうなITトレンドは最適化 (Optimize)、拡張 (Scale)、開拓 (Pioneer)。 この記事ではデジタル免疫システムやAI拡張型テストなど、2023年に注目されそうなITトレンドを徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めば2023年にどんなITトレンドが来るのか情報を先取りすることができますよ。 中心テーマは最適化 (Optimize)、拡張 (Scale)、開拓 (Pioneer) ガートナージャバンが2022年11月に「2023年の戦略的テクノロジのトップ・トレンド」を発表しました。これは2023年に企業や組織にとって混乱が続く時代にどう強化し、変化に対応していくのかを解説したものになります。 ガートナージャバンによると、中心テーマは最適化 (Optimize)、拡張 (Scale)、開拓 (Pioneer) の3つ。 組織はテクノロジーを活用して信頼を最適化し、コスト削減を目指す必要があります。 さらにソリューションの垂直統合。迅速化、ワイヤレステクノロジーを拡張していくことで成長し、新しい市場や自動化に対して開拓していくことでデジタル・トランスフォーメーションを目指していくことができるのです。 しかしこれだけでは十分とは言えません。これから企業は持続可能性という大きなテーマが求められます。これからのテクノロジーでは未来の世代を念頭に置いて、環境へのインパクトなどを考慮していく必要があります。 最適化 (Optimize) デジタル免疫システム デジタル免疫システムとはソフトウェアの設計、開発、自動化、オペレーション、アナリティクスなどのタスクを組み合わせて、優れたUXを生み出すことを指します。 これによりシステム障害を削減することができるのはもちろん、アプリケーションやサービスを保護することができるようになるのです。 デジタル免疫システムの構築には、以下の前提条件が必要です。 オブザーバビリティ (可観測性) ソフトウェアやシステムを観測の対象として可視化することで、エンジニアがより迅速に問題の原因を特定できるようにすることを指します。 アプリケーションにオブザーバビリティ (可観測性)を直接組み込めば、アプリケーションの稼働時間を短縮することも可能です。 AI拡張型テスト AIの技術を使って、人手を介さずにソフトウェアテストをします。テストケースを自動実行するのではなく、テストの計画や作成、分析なども自動化。これらを連携させていきます。 カオス・エンジニアリング サービスに対し意図的に障害を起こすカオス実験を行うことで、バグや障害ポイントを見極めます。本番前環境でカオスエンジニアリングを使用し、教訓を通常の開発に応用するのが理想的です。 自動修復 ソフトウェアシステムが自信をモニタリングして、運用スタッフを介することなく自動的に問題を修復する仕組みを構築します。 サイト・リライアビリティ・エンジニアリング (SRE) 信頼性を高めるために、エンジニアが信頼性向上のために行う設計やアプローチ、またはこれらを行うチームのことを指します。 これまでIT運用チームが手作業で行っていた作業をSREチームが引き受け、ソフトウェアと自動化を活用して本番システムを管理し、問題解決を行います。 ソフトウェア・サプライチェーン・セキュリティ ソフトウェアの作成およびデプロイに関与するコンポーネント、アクティビティ、プラクティスのセキュリティを保護する活動のことを指します。 組織にはセキュリティ・アクティビティを実行し、セキュリティ対策の証拠をユーザーに提供する責任があります。 オブザーバビリティの応用 先ほども紹介したオブザーバビリティをビジネスの中で最適化し、応用することで、オペレーションを最適化し、組織の意思決定を加速化することができます。 AI TRiSM 「信頼(Trust)」「 リスク(Risk)」「セキュリティ管理 (Security Management)」の頭文字であるAI TRiSMは、簡単にいうとAIの信頼性や透明性、公平性を担保するためのツール群、セキュリティやプライバシーのことを指します。 AIの開発が加速する今、プライバシー侵害やセキュリティ・インシデントを経験したことのある組織の割合はなんと41%にも及ぶそうです。 そんな中、これからの企業はAI TRiSMの観点を持ち、他部門と協力しながらAI活動を進めていく必要があるのです。 拡張 (Scale) インダストリ・クラウド・プラットフォーム インダストリ・クラウド・プラットフォームは、従来のクラウド・サービスと、業界ごとに調整された機能を組み合わせることで、これまで困難だった課題に対処することを指します。 具体的にはSaaS、サービスとしてのプラットフォーム (PaaS)、サービスとしてのインフラストラクチャ (IaaS) を組み合わせます。 インダストリ・クラウドによって、これまでよりも時間を短縮することが期待できます。 プラットフォーム・エンジニアリング 開発者がシステムをより簡単に、より素早く、より効率的に開発・運用するために、プラットフォームを開発することを指します。 複雑なインフラストラクチャを自動化することで、開発スピードを上げる効果が期待できます。 ワイヤレスの高付加価値化 ワイヤレスはWi-Fiサービス、5Gサービス、低消費電力のLPWAなどさまざまなテクノロジーがあります。ガートナーによると2025年までに、企業の60%が5つ以上のワイヤレス・テクノロジを同時に使用するようになるとのこと。 これによってワイヤレスネットワークはこれまでの段階を超えて、付加価値を提供していくのではと予測されます。 開拓 (Pioneer) スーパーアプリ スーパーアプリとは一つのアプリの中にさまざまな機能を統合して、日常生活のあらゆる場面で活用できる総合的なアプリのことを指します。 例えばLINEはチャットツールや電話以外にもゲームや漫画、決済サービスやショッピングの機能があります。 […]

続きを読む >>

オフショア開発 2022/12/31

ローコード開発プラットフォームOutSystemsとは

ローコード開発プラットフォームOutSystemsはプログラミング知識不要で、スピーディーにシームレスに開発することができるプラットフォームです。 AIや機械学習、IoTなどの最新機能も魅力のOutSystems。 本日はそんなOutSystemsに関して、どんな特徴があるのかや強みなど徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばOutSystemsの特徴はもちろん、どのような開発事例があるのかまでわかりますよ。 ローコード開発プラットフォームOutSystemsとは OutSystemsはWebアプリやチャットボット、リアクティブWebアプリなど様々なデバイスに向けたアプリを作成することができるローコードプラットフォームです。 2001年にポルトガルで創業したOutSystems社は、2017年に日本法人を設立。2022年現在、87カ国、22業種で数千社の採用実績がある世界でも有数のローコード開発プラットフォームとなりました。 OutSystemsは追加設定なしで400以上のシステムと連携することができ、コーディング不要で一元管理することができます。 アーキテクチャはAIが搭載されているので、反発的なタスクを取り除くことができます。これによって複雑な修正変更を簡単に行うことが可能になります。 そもそもローコード開発とは ローコードプラットフォームとは、プログラミング言語によるコーディングに代わり、ビジュアルモデリングにより構築を行う環境のことを指します。 アメリカのフォレスターリサーチ社が2014年に誰でも開発が行えるプラットフォームを称して利用したことから世の中に広まりました。 ローコード開発が注目されるわけ 今ローコード開発が注目されている背景に、DX化の促進があります。DX化とはデジタルトランスフォーメーションのことで、デジタル技術をうまく活用し人々の生活に変革を起こすことを指します。 2018年に経済産業省が「デジタルガバナンス・コード2.0 (旧 DX推進ガイドライン) 」を定義し、企業におけるデジタル技術の活用を積極的に促進し始めたことがきっかけでDX化の動きが広まっています。 このように各企業が生産性と事業競争力向上のためにDX化を進める今、アプリケーション開発の内製化も本格化し始めています。 とはいえ企業のIT部門のリリースは会社全体のものであり、それぞれのリクエストにすぐに応えていくことは難しい側面もあります。そこでユーザー自身で自分たち開発したいという需要が高まっていったのです。 ローコード開発のメリット 簡単に開発ができる・業務部門でも開発OK 一般的なシステム開発に比べると簡単に開発が行えるのがローコード開発の最大のメリットと言えます。 IT部門に直接開発を依頼しなくてよくなるので、作りたいと思った開発を業務部門で対応できるのも魅力です。 また外注をせずに自社開発ができるので、ノウハウの蓄積がしやすかったり情報の漏洩がしづらいなどと言ったメリットも考えられます。 バグが起こりづらい コーディングするべき箇所が減るので、バグが起こりづらくメンテナンスも行いやすくなります。 開発後のミスマッチが少ない ローコードプラットフォームは画像を多用したビュジュアル的な設計も可能です。このように設計をわかりやすくすることによって、開発後のミスマッチを事前に防ぐことができるのです。 ローコード開発のデメリット こだわりすぎると難しい ローコード開発は開発ツールが用意する機能を組み合わせて実装することが基本です。 もちろんコーディングによる調整はできますが、こだわりすぎるデザインや、企業固有の業務ロジックがある場合、ローコード開発は不向きと言えるでしょう。 ローコード開発の選び方 こうしたメリット・デメリットを踏まえて、企業はローコード開発をどのように選んでいくべきでしょうか。 ここからはローコード開発を選定する時のポイントを4つ紹介します。 機能はどのようなものがあるのか まず自社でどのようなシステムにしたいのかをしっかりと洗い出し、必要な機能が実装されているプラットフォームを選定するようにしましょう。 ローコード開発には全くコードを書かない「ノーコード」のエリアとある程度自分でコードを書く必要のある「ローコード」に分かれます。自社に必要な機能が「ノーコード」になっていれば、それだけ開発の負担は削減されます。 セキュリティ面 セキュリティ対策がしっかりとされているプラットフォームを選択することはシステム開発に不可欠です。 サポートの充実度合い プラットフォームの機能はもちろんのこと、サポート体制が整っていれば導入後の不具合などを確認することができるようになります。 外部連携機能 既存システムとの連携がしやすければさまざまなカスタマイズが可能になります。さらに新機能が追加しやすいかどうかも合わせて確認するようにしましょう。 OutSystemsの強み シームレスなUX /UI OutSystemsはシームレスなUX /UIを構築することができます。用意されているUX /UIテンプレートをカスタマイズしたり、既存のレイアウトをインポートすることで、ユーザーの理想の画面を構築していくことが可能です。 UI構築のスキルがなくてもシームレスに構築できるのも嬉しいポイントですね。 リアルタイムでデータの活用が可能 全てのチャネルでシステムやプロセス、データの連携が可能です。リアルタイムでデータや機能を把握しておくことができるので、顧客のニーズも把握しやすいのです。 カスタマーサービスが充実 OutSystemsはユーザーの質問をAIのチャットボットで対応してもらうことが可能です。さらにユーザーの使用パターンに合わせて動作するIoTデバイスなどアプリケーションの作成も可能。 充実のカスタマーサービスで導入後も安心感がありますね。 […]

続きを読む >>

DEHA 2022/12/26

2023年の私たちはこう進む!1年間を振り返って、2022年はどんな一年でしたのか?

Xin Chao!こんにちは! 今年もあと数日で終わりますね。 このタイミングで今年の振り返りと来年の目標設定を行ってみようと思います。 是非ご一読くださいませ。

続きを読む >>

オフショア開発 2022/12/19

ベトナムで圧倒的人気!JavaでのWeb開発に便利なSpring Bootとは?

JavaのフレームワークSpring Bootはテックスタックのランキングで1位を獲得するほど、ベトナム人エンジニアに人気があります。 今まで大変だった環境設定や機能の使いわけを簡単にするフレームワークで、注目度も高くなっています。 この記事ではそんなベトナムで人気のSpring Bootについて、どんな特徴があるのか、メリットは何なのかなど徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばSpring Bootの特徴がまるわかりですよ。 Spring Bootとは Spring BootはJavaのフレームワークのSpring Frameworkのうちの1つで、アプリケーション開発を効率化したり、Spring Frameworkの環境設定を簡単に行うことができるようになります。 Spring Bootは、ベトナム人エンジニアの利用するテックスタックのランキングのうち、Java部門で1位となるくらい人気のフレームワークです。ランキングによると半数近くの人が利用しているのは驚くべき結果ですね。 1 Spring Boot 45.92% 2 Spring 43.37% 3 Hibernate 14.03% 4 Struts 11.17% 5 Vaadin 3.87% 出典:Vietnam IT Market Report – Tech Hiring 2022 Spring Frameworkは複数のフレームワークで構成されています。そのためさまざまな開発に活用することができますが、特にWebアプリケーションの開発を効率化する機能が豊富にあります。 Spring Frameworkとは Spring Frameworkは2004年にリリースされたオープンソースのフレームワークです。汎用性が高く、さまざまな開発に利用されています。 このSpring Frameworkは言わばフレームワークの集合体で、機能に応じた多数のフレームワークがあります。そのため機能の使い分けや環境設定が難しい面があります。 そんなSpring Frameworkを説明する上でDI(依存性注入)やAOP(アスペクト指向プログラミング)は欠かせません。それぞれ解説します。 Spring Frameworkの特徴①DI(依存性注入) DI(依存性注入)とはオブジェクトが成立するための情報を外部設定に分離することで、コンポーネントの集合としてアプリケーションを組み立てるデザインパターンのことです。 Spring FrameworkにはDIを実装した「DIコンテナ」がSpringCoreとして実装されています。 Spring […]

続きを読む >>

オフショア開発 2022/12/13

【2022年版】ベトナム人エンジニアの技術への興味関心について

ベトナム人エンジニアは最新技術への興味関心が高いと言われています。 この記事では「Vietnam IT Market Report – Tech Hiring 2022」を参考にベトナム人エンジニアが興味関心を抱いている言語、サービス、技術が何なのかを解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばベトナム人エンジニアがどんなことに興味を持っているのか、どんなことに関心があるのかが丸わかりですよ。 ベトナム人エンジニアのテックスタック ベトナム人エンジニアが持っているスキルやテクノロジーはどんなものがあるのでしょうか。 JavaScript 1 React 32.20% 2 Node.js 32.17% 3 Angular 27.08% 4 Vue 16.26% 5 Typescript 10.82% 出典:Vietnam IT Market Report – Tech Hiring 2022 ※以下すべて同じ フロントエンド、バックエンド、ネイティブアプリなどさまざまな開発ができるJavaScriptは同レポートで、ベトナム人に最も人気の言語だと言われています。 その中でも3割以上のシェアなのがReactとNode.js。 Reactは、Facebookが提供するライブラリで、UI開発に強く、コミュニティが大きいことで有名。Reactのコンセプトは、Declarative(宣言的)、Component-Based(コンポーネント志向)、Learn Once, Write Anywhere(一度の学習でどこでも使える)の3つ。 Declarative(宣言的)とは、UIのパーツごとに、「内部の状態がこうなったら、高表示する」と明示的に宣言していくことを指しています。 これにより、論理的・明示的にコードが書かれるため、可読性の高いコードを書けます。 Component-Based(コンポーネント志向)とは、プログラムをいくつかの部品(コンポーネント)に分け、それらの部品を組み合わせることで全体を作るという考え方です。これにより、コードの再利用がしやすくなります。 Learn Once, Write Anywhere(一度の学習でどこでも使える)は、Reactで学習したことを他の場所でも活用することができるという意味です。 一方、Node.jsはJavaScript実行環境の1つで、サーバーサイドでJavaScriptを動かすことができます。 ApacheやNginxといったウェブサーバーなしに動作することができ、大量の同時アクセスを捌くことができるため、素早いレスポンスを返すシステムを作りたい場合に重宝されます。 合わせて読みたい>>2022年版 JavaScriptのフレームワーク5選!開発者向けにご紹介 Java 1 Spring […]

続きを読む >>

Webシステム開発オフショア開発 2022/12/10

Java Webアプリケーション開発におすすめのフレームワークとは

JavaでWebアプリケーション開発を行う際、フレームワークを活用することで、作業効率のアップやセキュリティ対策が可能になります。 この記事ではそんなJavaのWebアプリケーション開発に役立つフレームワークを4つご紹介していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばJavaのフレームワークでWebアプリケーション開発を効率よく行う方法がわかりますよ。 フレームワークとは フレームワークとは特定のプログラミング言語も用いて作られた半完成品のソフトウェアです。 大規模なWebサイトやアプリケーションの開発には、膨大な量のプログラムを書く必要があります。しかしフレームワークでは雛形や機能が携わっているため、これに開発者が機能を追加すれば、開発を効率化することができるのです。 フレームワークを利用するメリット 統一性や品質が保たれる フレームワークには、大抵の場合コーディング規約、つまり書き方のルールが準備されています。 開発者がそれぞれの好みや書き方で開発すると、後々の引継ぎやメンテナンスが非常に困難になりますが、フレームワークならルールに従いコーディングを行うので、誰が開発しても同じコードに収まり、統一性や品質が保たれます。 そのため、プロダクト開発後も、保守運用の局面でスムーズな対応が可能となります。 セキュアプログラミングが可能 Webアプリケーションには開発者が想定していないようなセキュリティ上の脅威が多くあります。例えば、罠が仕掛けられたWebサイトを閲覧してしまったユーザーに対して、意図しない掲示板への買い込みや商品購入をさせる「リクエスト強要」など。 しかしフレームワークには、こういった脅威を回避するためのセキュアプログラミングの機能を備えているものもあるので、うまく活用してセキュリティ対策を行うことが可能なのです。 Java Webアプリケーション開発におすすめのフレームワークとは JSF(JavaServer Faces) JSF(JavaServer Faces)はJava EEに搭載されたJava言語におけるフレームワークの一種です。 Javaを用いた企業向けのWebアプリケーション開発用のプラットフォームであるJava EEに搭載されているので、元々Java EEを利用している人は利用へのハードルが高くありません。 WebアプリケーションのUI(ユーザーインターフェース)作成のために設計されているため、コンポーネントベースで開発が可能です。扱いが簡単なので、開発へのハードルが大幅に改善されるでしょう。 Spring Framework Spring FrameworkはAOPとDIで構築されているフレームワークです。 AOPとは「Aspect Orientation Programming」の頭文字のことで、システム内で行われる処理を抽出して集約を行うプログラミング手法のこと。プログラムをシンプルにまとめることができるため、コードを見やすく修正も容易に行うことができるようになるという特徴があります。 DIとは「Dependency Injection」の頭文字で、オブジェクトの成立に必要なコードを分離し、プログラムの実行時に注入することができます。 普通一つのクラスが完成していて、もう一つのクラスが完成していない場合は、単体をテストすることができません。しかし、このDIによって、クラスの依存関係が解消するため、完成しているクラスをテストすることができるようになるのです。 これによりシステム開発効率や改修スピードを上げることが可能になるのです。 Play Framework Play FrameworkはJavaとScalaで作られたフレームワークです。有名なWEBフレームワークである、Rubyの「Ruby on Rails」やPythonの「Django」などからも影響を受けているので似た部分が多く、それらを扱ったことがある方にはおすすめのフレームワークと言えます。 Play FrameWorkは、軽量で動作も速く、コンパイルも自動でされるため自分でコンパイルする必要はありません。 Apache Struts(アパッチ・ストラッツ) Apache Struts(アパッチ・ストラッツ)とはMVCベースのオープンソースのフレームワークです。ソフトウェアの挙動の多くをXMLベースの設定ファイルに記述することができるため、Javaプログラムのコーディングの時間や負担を削減することができます。 2000年代に広く普及し、当時複雑化していたJ2EEベースのWebアプリケーション開発を容易にしたため大きな注目を浴びました。しかし、その後技術的な欠点などが指摘されるようになったため、2007年にStruts 2がリリース。 それまでの仕組みから一新し、WebWork 2をベースとしたものに置き換えられています。そのためStruts 1とStruts 2には互換性がありません。 まとめ […]

続きを読む >>

オフショア開発 2022/12/06

今更聞けないJavaの特徴とは?メリット・デメリットも解説

プログラミング言語のJavaは、一度は聞いたことがあるのではないでしょうか。 しかしどんな言語か、どんなものに利用されているのかわからない方も多いことでしょう。 そこでこの記事では今更聞けないJavaに関して、どんな言語なのか、どんな特徴があるのかなど徹底解説していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばJavaの特徴はもちろん、メリット・デメリットなども丸わかりですよ。 Javaとは? JavaとはC言語をベースに開発されたプログラミング言語で、Googleが開発に用いる三大言語(Java、C++、Python)の1つとしても知られています。 OSや機器に依存せず、さまざまなコンピュータ上で動作することが可能。多くのプログラミング言語はWindows向け、Linux向けなどOSごとに利用されますが、Javaはその制限なく開発が行えるのです。 Javaの特徴とは? オブジェクト指向 オブジェクト指向とはもの同士を関係させて、組み立ていくプログラミングの考え方のことを指します。このオブジェクト指向によって、Javaには効率よく開発を行えるという特徴があります。 Java仮想マシン Java仮想マシンとはJavaのために擬似的に作り出されたマシンのことです。このJava仮想マシンがあるコンピュータならどんなコンピュータ上でも利用することができ、OSに囚われることなく、どんな環境でも動作することが可能なのです。 Javaの活用例 Javaはありとあらゆるものに使用されています。COBOLが主流だった金融機関の基幹システムも、多くがJavaに移行されています。ここではそんなJavaの活用例をご紹介します。 Androidアプリ Androidアプリの多くがJavaを利用しています。Javaは汎用性があるため、実装経験者が活用しやすいためだと考えられます。 デスクトップアプリ デスクトップアプリはインストールが必要なアプリのことを指しますが、これらもJavaで多くのものが構築されています。 組み込み系システム そもそもJavaは家電に組み込むプログラム言語として誕生しました。そのため組み込み系システムは得意分野と言えるでしょう。 ゲーム Javaはゲームの開発も可能です。有名なもので言うと「Minecraft」などがあげられます。その他、対戦型やRPGなどさまざまなジャンルのゲームも開発可能です。 業務系システム/ECサイト 企業の業務系システムやECサイトなどシステム停止などがあってはならない分野においてもJavaが活用されています。 処理スピードが速いこと、安定していることなどがその理由としてあげられます。 Webサービス Javaはサーバーで動作するアプリケーション開発に向いているため、WebサービスにはJavaで作成したWebアプリを動作させているものが多くあります。 大規模システムとなるWebサービスも、Javaなら処理スピードが速いため向いていると言えるでしょう。 Webサイト Webサイトはサーバー側でプログラムの実行がされますが、サーバープログラムでJavaが多く活用されているのです。 Javaのメリット 処理スピードが速い Javaはコンパイル言語であるため、処理スピードが速いという特徴があります。実行前に機械語に翻訳をするため、実行処理が速くなるのです。 安定している Javaはすでに世界中で広く利用されている言語のため、バグが起こっても修正されやすく安定しています。 またセキュリティに考慮した設計のため、他のプログラミング言語に比べると安定性が高く、銀行などの大規模システムにも活用されています。 ライブラリが豊富 Javaは無料で公開されているライブラリが豊富なため、「これがしたい」と思いついたことは複雑な処理が必要だったとしても、ライブラリを参考にすることができます。 ライブラリを活用すればさらに効率よく開発していくことも可能なのです。 Javaのデメリット 環境構築が大変 Javaはインストールするツールが多かったり、利用しているOSによってインストールするものが異なるなど環境構築でつまずく人が多くいます。 また、Java仮想マシンが実装されていないパソコンではJavaを動かすことはできません。 環境構築の際には一つ一つ整理をしたり、ツールを活用するなどしていくことをおすすめします。 学習コストが発生する Javaは高性能な分、コーディングに関するルールや難しい記述が多く、難易度が高い言語の1つです。C++やC#などは構文の構造が似ているため、そういった言語を既に取得している方は向いています。 まとめ いかがでしたか。本日は世界中で多くの人が利用しているJavaに関して、その特徴やメリット・デメリットなどを解説していきました。 Javaは処理スピードも速く、安定していて、さまざまな開発に使える言語だということがわかりましたね。 その一方で、初心者が扱うには難しい言語とも言えます。 そこでJavaで開発を行う際は、開発会社に委託をするのをおすすめします。 DEHAソリューションズでは5年以上にわたり、ベトナムオフショアでの開発実績があります。日本語を習得し、数多くの日本企業との開発実務経験を積んだ優秀なエンジニアと円滑に開発をすすめることが可能です。 Javaでの開発を行いたい方、社内のDX化を進めたい方など、気になった方はぜひお気軽にお問い合わせください。

続きを読む >>

オフショア開発 2022/11/25

Hubspotと他サービスをAPI連携して業務効率化しよう

インバウンドマーケティングのプラットフォームであるHubSpotはAPIで他サービスと連携を行うことが可能です。 API連携を行うことで業務効率化が可能。 この記事はそんなHubSpotのAPI連携に関して、そのメリットや連携方法を紹介していきます。 これらに当てはまる方におすすめの記事となっています。これを読めばHubspotと他サービスのAPI連携に関して、その方法や特徴などが丸わかりですよ。 Hubspotとは Hubspotとは2005年にアメリカで開発されたインバウンドマーケティングのプラットフォームです。世界120か国以上の12万社以上の企業で利用されています。 インバウンドマーケティングはこれまでのアウトバウンド型とは異なり、企業は最終的な購入の段階を「待ちの姿勢」で臨むという特徴があります。SEO対策をしてブログやSNSでコンテンツを配信、適切なサポートによって顧客獲得をしていく手法です。 Hubspotは無料のCRMで、マーケティングやセールスカスタマーサービスを支援する3つの製品で構成されています。低コストでツールを使い始めることができ、マーケティング施策の内容や規模に応じて機能拡張することも可能です。 HubspotとAPI連携 HubspotはAPI連携を行うことが可能です。HubspotとAPI連携を連携させることで、会計システムやWeb会議システム、グループウェアなどさまざまなサービスと連携していくことが可能です。 Hubspotの公式発表によると平均7個のアプリをデータ連携して活用しているとのこと。さらに10個以上のアプリを連携しているユーザーは全体の4分の1にも及ぶそうです。 それだけAPIが身近なものになっているのですね。 そもそもAPI連携とは AP Iとは「Application Programming Interface」のことで、2つのアプリケーションやソフトウェア同士の情報のやり取りの際に、プログラミング上で窓口になる場所のことを指します。 ソフトウェアの一部をWEB上に公開し、それを外部の人が利用することで、自分のソフトウェアに他のソフトウェアの機能を埋め込むことが可能になります。 API自体はWEB上に公開されているので、誰でも無料で利用することが可能。 外部のソフトウェアの機能を利用するといっても、内部のコードまでは公開していません。つまり外部からは機能の使い方がわからないため、使い方やルールもあわせて公開されているのが一般的です。 HubSpotとAPIの連携方法 HubSpotとAPIの連携方法に関して4つの方法を紹介します。 HubSpot App Marketplaceを使用する HubSpot App MarketplaceはHubSpotの公式審査を通過した連携アプリのことです。 ユーザーにとって質の高いアプリが選ばれているので初心者の方でも安心して利用することが可能です。 その数は1,000件以上!連携したいサービスがしっかり見つかります。 もちろん、すべてのサービスが対応しているわけではないので、HubSpot App Marketplace上にない場合は、他の方法を検討しましょう。 自動化ツールを利用する HubSpot App Marketplaceにほしいサービスがない場合はBizteX ConnectやZapierなどの自動化ツールを利用しましょう。 どちらもプログラミング不要で、さまざまなサービスとの連携ができます。 ZapierではGoogle スプレッドシートや、コンタクト作成ツールの「Gravity Forms」との連携が有名。その他にも1,000以上のアプリとの連携が可能です。 どちらのサービスも無料で利用ができますが、機能に制限があるため容量を増加したい場合などは有料版の導入を検討しましょう。 自分でコード入力する APIを呼び出すコードはJavaScript、HTML5、CSS、PHP、Python、Node.jsなど。 1からコードを作成するのは大変であり、膨大なリソースがかかってしまいます。 連携したいサービスがHubSpot App Marketplaceや自動化ツールを使った連携に対応しているのであれば、それらを活用するのをおすすめします。 API連携を外部委託する API連携の支援をしている会社に委託するという方法もあります。 作業を委託することで業務負担をかけずに効率よく作業が可能です。 HubSpotのAPI連携のメリット 業務効率化 API連携により、データ入力といった業務を短縮化することができます。 1からプログラミングをする必要はなく、専門知識も不要。工数を大幅に減らすことができるのです。 […]

続きを読む >>