メディア表現 VI 12.ノーコード開発I
目次
本日の内容
python人気ないので、
- 【第12回】ノーコード開発I
をやっていきましょう。
前回のおさらい
Git, GitHubについてやってみました。 初期設定が多少めんどくさかったですが、一度設定すれば便利に使えます。
ノーコード開発が早く終わるようであれば、14回目に追加でやってみようと思います。
ターミナルの操作の表記がわかりづらかったので、資料修正してあります。
ノーコード開発
ノーコードという言葉も何回か使ってきました。 5回目にAirTableを使ってみました。
ノーコード・ローコードとは?
コーディングによるプログラミング開発を行わないで、ホームページを作成したり、Webアプリケーションを開発したりと、従来ではエンジニアが担当していた部分を、非エンジニアでも開発できるよう作られた開発プラットフォームです。
コードを書かずなくて良いため、皆さんのようにコーディングが得意でない人にはうってつけです。
ノーコードで開発ができれば、社会人になった時にひょっとしたら非常に便利になるかもしれません。
ノーコードのデメリット
コーディングによるプログラミングに対して、できることが開発プラットフォームによって限定される、という点が挙げられます。 プラットフォームを選ぶときには、何ができて何ができないかを調査する必要があります。
ノーコードでも設計は必要
コーディングしないから簡単と謳われるノーコードツールですが、
やりたいことを形にする(設計)
はどうしても必要です。
- やりたいことを書き出す
- どういうインターフェイスにするか考える
- どういうデータベースを作成するか考える
- 実装する
これらをできる思考力を高めましょう。
日本語対応のノーコードツール
日本語対応のノーコードツールも多数リリースされています。 日本語対応のノーコードツール5選!!プロダクト開発から業務改善まで対応!!
ちょっと覗いてみましょう。
Bubbleで作ろう!SNSアプリ
今回利用するノーコードツール Bubble
今回は、現在最強、一番汎用性が高いと言われているノーコードツールです。 英語ベースですが、こちらを採用したいと思います。
作るアプリ
twitterのようなアプリを開発してみようと思います。
ここを参考にしています。 -ノーコード ラボ twitter clone
必要な機能
twitterのようなアプリを作るのにどんな機能が必要でしょうか?
- UIデザイン
- ログイン機能
- Tweet表示
- 投稿処理
- ユーザプロフィール画面
とりあえずこの辺が必要ですね
ウォーターフォール開発とアジャイル開発
従来、しっかりとした設計をして、仕様書を策定し、それから実際にコードに落とし込むとう開発方法をとっていました。これはウォーターフォール開発と呼ばれ、変更が起きづらいシステムの開発に適していますが、変更が起こるたびに作り直しとなり、時間がかかることが問題でした。工程としては以下のようになります。
要件定義 > 設計 > 製造 > テスト > リリース
最近では素早い仕様変更が求められるようになり、アジャイル開発、とりあえず作ってみて、おかしなところがあればどんどん変更しようが普及しています。
皆さんがXDで作業してきたのはプロトタイピングで、実際に画面遷移などを確認しながら仕様を決めよう、というものでしたが、アジャイルでは実際に動くものを作っちゃえ、という発想になります。
プロトタイピングを一歩進めたのがアジャイル開発とも言えます。
大規模な開発にはウォーターフォールが必須ですが、比較的小規模な場合にはアジャイルが向いています。
綿密な仕様を決めずに開発し、ユーザのフィードバックを得ながらさらに開発を進めていきます。
今回はアジャイル開発手法をとっていきましょう。
ノーコードはアジャイルに向いています。
セキュリティについて
実際にリリースするアプリではセキュリティ対策は必須となりますが、今回はそんなに気にしません。
Bubbleへの登録・ログイン
- .bubbleにアクセス
- 右上のGet startedをクリック
- Googleアカウントか、メールアドレスにて登録します。自分はGoogleアカウントにしました。
- Sign Inします
- アンケートがいくつかあります
- 「Hi there, what’s your goal today?」Build
- 「Which of the following describes your experience? Select all that apply.」1番下にチェック
- 「Which of the following describes your background? Select all that apply.」1番下にチェック
- 「Where did you hear about Bubble?」Friends or colleagues
新規アプリを作る
初期設定
- 「Create a new app」で、TwitterTestとでもしておきましょう。
- 他の人と異なる名前でないと登録できないため、数字や記号を後ろにつけましょう。
- 「Create app」をクリック
- 有料の案内が出るので左下の「Start with basic features」
- 少し時間かかります
- Stepが5つありますね。
- Step1 そのまま
- Step2 Japanese(ja_jp)
- Step3 そのまま
- Step4 そのまま
- Step5 そのまま、Get started building
- ComponentLibraryにバルーンがついてるので、Get Started
- 「Step1:Set your page to column layout」 Set to column
- 「Nice! Page layout has been updated」Next
- 「Step 2: Drag and drop components」Got it
デザイン ヘッダーとTweet部分
- Headerの一番上をドラッグアンドドロップ
- Headerをダブルクリックして、AppearanceタブのBackgroundをDDDDDDに
- 右上のPreviewを押すと、現在の状況が見えます
- 左のGroupをHeaderの下にドラッグ&ドロップします。
- GroupBをダブルクリックでContents Groupに。LayoutタブのContainer LayoutをColumn, Make this element fixed-width のチェックを外す。StyleをRemoveStyleしてからBackgroundをFlatColor,BBBBBBに。中に要素を入れづらいので、Min.Hiehgtを1000pxに。
データベースの作成
- Tweetのデータベースを作成しましょう。
- 左のDataタブをクリック
- NewTypeのところに「Tweet」でCreate
- Create a new fieldを押してFieldName:Message, FieldType:textでCreate
- デザインしやすいようにデータを挿入しておきましょう。
- 上のAppDatamをクリック。All Tweetsが青くなっているのを確認して、NewEntry
- Messageに「初めてのBubbleデータベース」、Slugは空欄で、Create
- All Tweetsにデータが入ってるのを確認しましょう。
- もう一つ「2回目のメッセージ」を入力しておきましょう。
- もう一つ、4,50文字のメッセージを入力しておきましょう。
データベースの反映
- データベースの中身をデザインに反映させましょう。
- Designタブをクリック
- Contents Groupの中にRepeating Groupをドラッグ&ドロップ
- AppearanceタブでType of ContentsでTweet。Data sourceでDo a search forにしてtypeをTweet。Close
- LayoutタブでCell’s Container layoutをColumn, Make this element fixed-width のチェックを外す。Sort byをcreated Date, DescendingをYes
- これでTweetテーブルと連携されました。
- RepeatingGroupの一番上にGroupをドラッグ&ドロップして名前をGroupTweetに。LayoutタブのContainer LayoutをColumn, Make this element fixed-width のチェックを外す。StyleをRemoveStyleしてからBackgroundをFlatColor,FFFFFFに。Min-heightを100pxに。LayoutタブでMarginを全て10に
- GroupTweetのAppearanceタブで、Type of contentをTweetに。
- Data source は「CurrentCell’s Tweet」
- GroupTweetにTextをドラッグ&ドロップ
- Appearanceタブの…edit…meをクリックしてInsert Dynamic Data, parent group’s Tweet, ‘s Messageと順にクリックしましょう。
- Previewを見ると、これでデータが反映されたことがわかります。
- LayoutタブでMake this element fixed-width のチェックを外す。Min Heightを0にしましょう。RepeatingGroup TweetもMin Heightを0にしておきましょう。
Tweetする画面を作ろう
- Loginの左にButtonを追加。…edit me…「+」にして、widthを60にしておこう
- Popupをドラッグ&ドロップ
- Popupの中にMulti Input, Buttonをドラッグし、適当に配置して、Buttonの名前をTweetにしておきましょう。
- Popupは、範囲外をクリックすると消えてしまいます。その時は、Page:indexの右のindex(ここ、Element Treeと言います)の三角からPopupAを選択しましょう。
- +ボタンをクリック。Start/Edit Workflowをクリック。
- Click here to add actionでElement Action, Show, Element:PopupA
- Previewで確認してみましょう。+で表示であればOK
- Element TreeからPopupAを選択。TweetボタンをクリックしてStart/Edit Workflowをクリック。
- Click here to add actionでData(Things), Create New Thing…
- Type: Tweet, Set Another Field, Message =MultiInput A’s value
- クリアするために次のClick here to add actionでSearchからreset relevant inputs
- Popupを閉じるために次のClick here to add actionでElement Action, Hide Element: PopupA
- Tweetが現在4つまでしか表示されないので、Repeating Group TweetのSet fixed number of rowsを10くらいにしておきましょう。(チェック外してもいいですけど)
今日のまとめ
やばくないっすか? コード一行も書いてません。
もちろん、margin, padding等基礎は知っておいた方が良いし、デザインのところ少し頭使うかもしれません(今日はそんなにデザインしてない…)
でも、処理のところはボタン配置して、クリックしてるだけです。
来週引き続き、機能していないLogin, SignUp(ユーザ管理)あたりからやっていこうと思います。