Flutterは現在世界的にトレンドの開発言語です。 FlutterはGoogle社が開発したフレームワーク。iOS・Android・Web全てに共通した優れたUIを一度に作ることが可能です。デザインの自由度も高く、簡単にUIを開発することができます。 当記事ではそんな「Flutter」の活用を得意としているベトナムのオフショア開発会社「DEHA」のエンジニアにインタビューし、Flutterを活用した開発に関して生の声をお届けします。 Q.自己紹介をお願いします DEHAエンジニアのグエン・ティエン・ドゥンです。27歳。3年以上のモバイルプログラミングの経験があります。Android、iOSのアプリの開発が得意です。開発言語はReact Native、Flutter、NodeJSを書いています。趣味はサッカーとゲームです。 Q. 普段の業務を教えて下さい チームとスクラム定例会を行います。日常のタスクを計画し、作業時間を調整します。他のチームメンバーの技術的な問題を解決することをサポートします。 Q. Flutterのスキルはどのような方法で学習しましたか? 私はFlutterとDartを2年間くらい経験しました。ReactNativeを使った経験があるので、Flutterの学習に切り替えるのは問題ないです。学習形式:widget、navigation、animationなどに関するFlutterのcookbook、ドキュメントを自己読み取ります。BLOC、provider、riverpod、GetXなどの一般的な状態管理及びMVVMのような基本的なアーキテクチャを独学します。そこから、実際のプロジェクトに適用できるDEHAのプロジェクトベースを構築します。 Q. Flutterの開発スキルを向上する為にやっていることがあれば教えて下さい。 Flutterの勉強と作業中に、FlutterのYoutubeチャンネルをフォローしています。 Flutterが推奨する優れたWidgetまたはPackageを更新するための「Package of the week」セクションがあります。 その上で、pub.dev(Flutterライブラリを含むWebサイト)で多くのいいねを使用してライブラリを更新します。…
JavaScriptではさまざまなフレームワークが用意されていて、効率的な開発をすることができます。 その中でもvue.jsは日本で特に人気があり、学習コストが低いと言われています。 この記事ではそんなvue.jsについて、将来性や開発概要などを中心に紹介していきます。 vue.jsが気になる方JavaScriptを勉強中の方JavaScriptのフレームワークを知りたい方 これらに当てはまる方におすすめの記事となっています。これを読めばvue.jsがどんなフレームワークなのか、将来性はどうなのかなどがまるわかりですよ。 vue.jsとは? vue.jsは2014年にリリースされた日本国内で人気のJavascriptのフレームワークです。 他のフレームワークと異なり記述方法に癖が少ないため、React.jsよりも学習コストが低いと言われています。また他のライブラリとの組み合わせを自由に選ぶことができるといったメリットもあります。 そんなvue.jsには以下のような機能があります。 ディレクティブコンポーネント ディレクティブとはv-で始まる特別な属性のこと。ディレクティブによってHTMLに独自の属性を付与し、DOM操作を行うことができます。 コンポーネントとはアプリケーションで再利用することを指します。コンポーネント化をすることで、何度も同じコードを書く必要がなくなり見やすく保守も行いやすくなるのです。 他にもできることは多くあります。詳しくはこちらの記事で解説しているので、ぜひ合わせてチェックしてみてください。 合わせて読みたい>>解説!Veu.jsでできること、向いていないこと【WEBアプリ開発】 Javascriptのフレームワークとは Javascriptのフレームワークは「開発を素早く行い、生産性をあげる」ということを目的に誕生しました。AngularやReact、jQueryなども有名ですね。 そもそもJavascriptはフロントエンド開発にて主に使われていて、HTML、CSSで作られたページに動きをつけることができます。 実はそんなJavascriptのフレームワークは公式のものはなく、個人や企業が独自に開発を行っています。だからこそ、世界中に多くのJavascriptのフレームワークが存在するのです。 その中でも、学習コストが低く、扱いやすいvue.jsは特に人気が高くなっています。 vue.jsの将来性…
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向上の為にパフォーマンスが最適な方法を常に学習しています。…
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度の開発でマルチデバイスに対応することが可能です。…
ハイブリッドアプリとは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回で済みます。…
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です。ブロックチェーン技術によって個人情報は分散管理され、不正アクセスや情報漏洩、データ改ざんなどのリスクを減らすことができるのです。…
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億ドルの越境売上をうみだしています。…
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の部品に対し「このような見た目になる」と宣言するように実装できるということです。 誰が見ても理解できるわかりやすいソースコードで、デバッグのもやすくなります。さらにデータの変更を検知し、自動的に表示を更新することも可能ですよ。 コンポーネント…
マイクロサービスアーキテクチャとはあるアプリケーションをビジネス機能に沿った複数の小さなマイクロサービスに分割して開発を行なっていく手法のことです。 これにより開発の効率化や、変更に柔軟に対応することができるようになります。 実際、AmazonやNetflixなどでも取り入れられているマイクロサービスアーキテクチャ。本日はそんなマイクロサービスアーキテクチャについて徹底解説していきます。 マイクロサービスアーキテクチャが気になる方開発効率を上げたい方ラボ型開発に興味がある方社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めばマイクロサービスアーキテクチャがどんな開発手法なのか丸わかりですよ。 マイクロサービスアーキテクチャとは? マイクロサービスアーキテクチャとはソフトウェア開発技法の1つで、ThoughtWorks社のマーチン・ファウラーとジェームス・ルイスによって提唱されました。 ビジネス機能に沿った複数の小さなマイクロサービスに分割し、それらを組み合わせて単一のアプリケーションを開発するアプローチのことを指します。 アマゾン CEO ジェフ・ベゾスが大きすぎるチームではメンバー間の意思疎通が困難になり生産性が低下すると「ピザ2枚ルール」を提唱していますが、マイクロサービスアーキテクチャはその考えをもとに作られたと言われています。 「ピザ2枚ルール」とは、チーム編成や会議において、無駄がなく生産性が高い人数の条件は、ピザ2枚を配りきれる程度の人数(8~10名程度)という考えのことです。 このピザ2枚を配りきれる人数によって、効率的で、各々のモチベーションも高く、またお互いをフォローしあえる状況にあるため、チームの団結力が強くなると考えられています。 実際、マイクロサービスアーキテクチャにより、迅速な開発や機能の改善、柔軟な拡張などが可能になります。 マイクロサービスアーキテクチャのメリット メンテナンスやテストがしやすい マイクロサービスアーキテクチャでは共有される部分を減らし、小さなサービスを開発、改善していきます。 メンテナンスやテストもそれぞれで 行うので、管理がしやすくなります。 ひとつのサービスが全体をダウンさせるようなことがない マイクロサービスアーキテクチャでは個々で開発を行うので、それぞれのサービスが独立をしています。そのため各サービスは違うプログラム言語で開発をしていても問題がありません。 だからこそ、単一のコンポーネントの中で障害が発生しても、他のコンポーネントに影響を与えることは少ないのです。 開発が柔軟になる…
人気のプログラミング言語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関連のシステム、機械学習を用いたソフトウェア分野でも多く利用されているのも大きな特徴です。…