質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
IDE

IDE、統合開発環境((Integrated Development Environment)とは、テキストエディタ以上の機能を提供して、ソフトウェア開発を効率をあげるコンピュータプログラムを指す。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

解決済

6回答

668閲覧

無料でDB利用のハイブリッドアプリを作る方法を教えてください。

WeilSpinor

総合スコア170

IDE

IDE、統合開発環境((Integrated Development Environment)とは、テキストエディタ以上の機能を提供して、ソフトウェア開発を効率をあげるコンピュータプログラムを指す。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

1グッド

2クリップ

投稿2019/02/27 07:57

編集2019/02/27 08:06

プログラミング初心者です。JavaScriptの実践演習として、JavaScript一本でスマホ用アプリを作りたいと思い立ち、ハイブリッドアプリの開発環境を整えることに奮闘しています。
Monacaが王道のようなので、それを使おうとしたのですが、Monacaでのアプリ開発でデータベースを利用する(SQLite)場合、有料プランに入らなければならないそうで、無料でやりたかったので、やめました。
無料でJavaScript(node.js)のみでデータベースを利用する方法はあるでしょうか?
ご回答よろしくお願いします。

【試したこと】
・JavaScriptで作れるハイブリッドアプリの開発方法、環境整備について調べた
・Monacaに登録してみた
・データベースの基本について、インターネットや書籍で調べた
・JavaScriptのみで扱えるデータベース管理システム(SQLite、WebSQLなど)について調べた

【備考】
スマホアプリ開発の王道であるAndroidのJavaやiOSのSwiftを採用しない理由は以下の通りです。
・あくまでJavaScriptの実践演習にしたいから。
・「プログラム言語入門者は、同時に複数の言語に手を出すのはよくない。まずは一つの言語に絞って、それでプログラミングの基本を覚えるべきだ」
といったことが本に書いてあったから。(谷尻かおり/これからはじめるプログラミング基礎の基礎(改定3版)/第2章 4.1 p.57-58)
・以下のサイトに、JavaScriptは、Webコンテンツだけでなく、ハイブリッドアプリという形でネイティブアプリに顕色ないスマホアプリを開発できたりと、とても汎用性の高い言語だとあったから。
https://www.sejuku.net/blog/8273

要求としては、以下の通りです。
・必要に応じてSQLを覚えるつもりはある
・そんなに大変じゃないことを積み重ねて自信をつけたい
・アプリを仕上げる上で不必要に面倒な要素の数をなるべく少なくして、なるべくハードルを下げたい
・現時点ではサンプルプログラムくらいの規模のプログラミング方法しかしらないので、実際に実用的なアプリを開発する上で、それに付随するデータベースだとかAPIとかいった仕組みをどうやって組み合わせているのか、環境整備、といったアプリ作成の流れを実感として知りたい

naikoru👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dice142

2019/02/27 09:08

「・そんなに大変じゃないことを積み重ねて自信をつけたい」「・アプリを仕上げる上で不必要に面倒な要素の数をなるべく少なくして、なるべくハードルを下げたい」と仰っているのになぜいきなりハイブリットアプリにこだわるのでしょう? 段階を踏んでまずはブラウザで閲覧できる動的な何かを作成した方が要求通りかと思うのですが。
guest

回答6

0

ちょっと厳しいこと言いますが、

時間も環境もひっくるめて全て「投資」です。

なので、数千円程度の投資を惜しんでいる人にまともなアプリが作れるとは思えません。
書籍、幾らしました?現在ある程度勉強を進められてきたようですが、どれくらいの時間と労力をかけました?
ここにきて「無料でやりたい」というのはなぜでしょうか。必要と分かっているからの投資ではないのでしょうか。
私にはその感覚が分かりません。

「どうしても」というのでしたら
自宅に公開用のサーバーを立ててやってみると良いでしょう。
レンタルサーバーを借りたりmonacaのようなサービスを利用するのとどちらがコストがおさえられるでしょうね。

アプリケーションを作りたいのでしたら、なるべくアプリケーションを作ることだけに集中できる環境を作ることも「必要な投資」なのではないでしょうか。

投稿2019/02/27 08:13

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

over

2019/02/27 08:57

「無料でJavaScript(node.js)のみでデータベースを利用する方法はあるでしょうか?」に対して、この回答・・・ サービスが廃れないことを祈るばかりです。
maisumakun

2019/02/27 09:03

無料の物に限らず、サービスがいつの間にか終了してしまったりもしますし(使っていたPaaSの終了に巻き込まれて移設に追われたこともありました)、結局は自力をつけないと渡っていけない世界だとは思います。
m.ts10806

2019/02/27 09:10

overさん 直接の回答になっていないのは承知で低評価は覚悟の上、この内容にしています。 「なぜそこだけ無料にこだわるのか」を追求した結果と思ってください。
WeilSpinor

2019/02/27 09:11

ご回答ありがとうございます。 無料でやろうとしている理由は、 まだ開発やプログラミングについてよく知りませんが、 こういうサービスの定期有料プランを利用する人というのは、 「中級者以上で、本格的なレベルに入った人が使うもの」 「資金のあるIT会社が開発経費として使うもの」 と思っていたからです。 そこまで本格的にコンピューターを使わない一般人がわざわざプロ仕様のコンピューターを買うのが宝のもちぐされなように、 何事も、 「ヨチヨチ歩きの初心者は、そんなに大げさな環境整備をせずに、なるべくお金をかけずに出来る小規模なところから始めるもの」 というのが常識があって、 それで月額で数千円、というのは少し高すぎる、 という感覚があったのだと思います。 しかし、 初心者であっても、それがアプリ開発における常識的な必要経費、 ということなら、受け容れるつもりであります。
m.ts10806

2019/02/27 09:13

では、まず、ローカルで自分の端末のみで動くものができてから考えられては?
m.ts10806

2019/02/27 09:16

意外と初期投資をどこにおくかって馬鹿に出来ないですよ。楽するという意味ではなくて、本来の目的に対してのウェイトという意味で。 初期投資部分を的確における人はそのぶん伸びも違います。そこだけは間違えないように気を付けてください
退会済みユーザー

退会済みユーザー

2019/02/27 22:47

(管理をしないために手間賃(サービス料金)を支払ってる部分があるんだけどな)
m.ts10806

2019/02/28 09:43

私もそうです。
guest

0

無料でJavaScript(node.js)のみでデータベースを利用する方法はあるでしょうか?

学習が目的であれば、自分のPCに無料のデータベースをインストールするのがおすすめです。

・「プログラム言語入門者は、同時に複数の言語に手を出すのはよくない。まずは一つの言語に絞って、それでプログラミングの基本を覚えるべきだ」

これは、アプリ開発でも同じことが言えます。

「アプリ開発入門者は、同時に複数のプラットフォームに手を出すのはよくない。まずは一つのプラットフォームに絞って、それでアプリ開発の基本を覚えるべきだ」

  • JavaScript をやりたい
  • SQL を覚えたい
  • スマホアプリを作りたい(iOS もやりたいし、Android もやりたい)

とやりたいことがたくさんありすぎて、どれから手をつけて良いのか分からない状態になりそうです。

プログラミング初心者が、いきなり Monaca でハイブリッドアプリを開発するというのはかなりハードルが高いですし、もう少し目標を絞った方が良いと思います。

投稿2019/02/27 12:25

nskydiving

総合スコア6500

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WeilSpinor

2019/02/27 16:41 編集

ご回答ありがとうございます。 目標は、ゆくゆくはフリーランスで簡単な仕事をしたり、バイトできたりすることですが、 とりあえず今の目標は、 スマホアプリを作ることです。 そもそも実用的なスマホアプリを作る、という実践演習の段階では、 UIのデザインと開発のため言語を覚える、 データベースの搭載のためSQLを覚える、 など色々な知識が必要なのは避けられないと思うので、スマホアプリ開発を通して、 「プログラム言語もSQLも作りながらその都度覚える」 という一々分けないスタイルでやるつもりです。 単元に絞ってばかりやると教科書を読んで例題をとくみたいな方式になってしまい、何に使うか分からないと理解が薄いし、能動的学習の理論からしても、記憶に残りづらいからです。 MONACAでハイブリッドアプリ開発をやろうとしたのは、せっかくやったJavaScriptを使わないのはもったいないと思ったのと、 質問文のリンク先のサイトで、「とても使いやすいIDEで、プログラミング初心者のスマホアプリ開発に最適」と言っており、自分の目的を全て満たしてくれるものだと判断したからです。
WeilSpinor

2019/02/27 17:29

では、 いまはデータベースの利用は諦めて(csvなどで代用) 言語とプラットフォームを JavaScriptとMonaca に限定して、当面はこれだけでスマホアプリ等をたくさん作り、 「アプリ開発の基本を覚える」 というのは、どうでしょうか? 慣れたら、JavaやSQL、Android Studioなどに手を出していく、といった具合で…
nskydiving

2019/02/27 21:59

> 目標は、ゆくゆくはフリーランスで簡単な仕事をしたり、バイトできたりすることですが、 フリーランスの仕事に繋げるなら、ほとんど案件のない Monaca より、案件の多い Swift や Java の方が良いかもしれません。 そこを気にしないなら別に構いませんが。 > では、 > いまはデータベースの利用は諦めて(csvなどで代用) > 言語とプラットフォームを > JavaScriptとMonaca > に限定して、当面はこれだけでスマホアプリ等をたくさん作り、 > 「アプリ開発の基本を覚える」 > というのは、どうでしょうか? 実践を通して学ぶという姿勢は良いと思いますし、一度ご自分で決められたやり方でやってみてください。
WeilSpinor

2019/03/07 11:01

ご回答ありがとうございます。返信が遅くなり申し訳ありません。 とりあえず、Javaの環境も整えてみました。 Monacaで限界を感じたら、AndroidやJavaに移ろうかと思います。
guest

0

ベストアンサー

たとえばこの辺だと、数千円で名刺ケースサイズの小さなlinuxマシンを手に入れることができます。
Raspberry Pi 3 Model B+ スターターセット BASIC

次にこの辺を参考にお家サーバを立てて存分にDBの運用を体験してみてはどうでしょう。
SQLite の導入~ ラズベリーパイ研究室

どんな無茶苦茶をやっても文句を言われない状況で失敗経験を重ねることができる環境は非常に有効です。

マニュアル本のたぐいも少しは買っておきたいところでしょうから、マシン含めて全部で1万円ぐらいかかるでしょう。それぐらいの初期投資はしないとしんどいと思います。

monacaは以前私もちょっと試してみました。無料でいろいろできるのはありがたいですが、よくわからない制約もあり、そういったことを調べるのが面倒で止めてしまいました。結局、初級者が勉強するにあたり、低性能でいいから好きに使える実機を手元に置いておく以上の楽な方法は無いというのが実感です。やっぱりMySQLでないときついとか、pythonでWAF使ったほうがいいかも、となったときにも比較的簡単に対応できるでしょうし。

投稿2019/02/27 08:56

KojiDoi

総合スコア13671

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WeilSpinor

2019/03/07 11:07

ご回答ありがとうございます。返信が遅くなり申し訳ありません。 そういえば、 知り合いが家に小さくてかわいいLinuxのコンピューターをおいて、 consoleアプリケーションとPythonを使って、Twitterのbotを作って遊んでいるのをみたことがあります。 Linuxマシンのハードディスクに作成したDBを保存し、それを使う、という感じでしょうか。 楽しそうなので、そのうち試してみようと思います。
guest

0

mBaaS(バックエンド関係をまるっと任せられるサービス)としてMonacaは有名ですが、他にもいろいろあります。

例えばGoogleが提供するFirebaseでは無料でJavaScriptのライブラリを用いてJavaScriptで簡単にDBを使うことができます。
Firebase 料金表

しかしFirebaseではMonacaと違い、モバイルアプリにデプロイする方法はありません。そこで、Apache Cordovaを用いればHTML, CSS, JavaScriptで作成したウェブサイトをハイブリッドアプリすることが可能です。

上記以外にも無料でハイブリッドアプリをつくる方法はあります。

Monacaの代替を探すのではなく、まずMonacaの機能を細分化してそれらに変わるサービスを探すのが早道かもしれません、

ただし、複数の技術を用いればその分学習することが多くなるので、大変です。上記の人の回答通り出費を惜しまない気持ちも必要だと思います。

余談ですが、スマホでうごくアプリっぽくしたいだけならPWAなんて選択肢もあると思います。
PWAとは(Progressive Web Appsとは) | SEO用語集:意味/解説/SEO効果など [SEO HACKS]

投稿2019/02/27 08:39

redshoga

総合スコア196

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

無料利用したいならクレジットカード登録必須だが無料枠のあるサービス(aws,ibm,herokuなど)を見繕えばいいだけかと思いますが?

(よくある事故を起こしてくれそうですが(笑))

投稿2019/02/27 23:39

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

「JavaScriptでモバイルアプリを作る」ということが目的なのであれば、ハイブリッドアプリではなく、React Nativeネイティブアプリを作ってしまう、という選択肢もあります。

とはいえ、これもこれで癖が強い環境であることも間違いありません。

投稿2019/02/27 09:16

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問