OutSystemsエンジニアの猛勉強ブログ

初心者OutSystemsエンジニアのブログです(ぺこり)。

最難関ディレクトリ(番地)の選択について前編

OutSystemsトレーニング(基礎コース1.4)を始めます。

 

1.4

f:id:neomatsudaira:20160209113602p:plain

↑これが開始画面です。

 

そして、これが↓4分後の画面です。

f:id:neomatsudaira:20160209113714p:plain

HAHAHA!!

いきなりまるで分からんわ。
って、冗談を言いたいところなんですが、もうOutSystemsを始めて2週間も経つのでなんとなく分かります。

 

基礎コース1.4のトレーニング内容は

 1.4 多対多リレーションシップの管理と
  詳細ページを使って多対多の関係を管理します。

です。

要するに何のことなのかというと、 注文伝票アプリであらかじめ登録しておいた商品を注文できるようにソフトを改良する、ということです。

 

とりあえず、HTMLを作成。

f:id:neomatsudaira:20160209130329p:plain

 

なんか説明が

f:id:neomatsudaira:20160209130511p:plain

鬼みたいに難しいのに、理解できます。
英単語の意味は理解できないけど、ドラッグアンドドロップしてデータベースを設計していることだけは理解できる。

 

なんでそれをするのかとかは全然分からなくて、多分作り終わったあとに理解するのだと思う。
つまり、何をしているのかは分からないけどアプリだけは作れるようになれるから何個もアプリを作ることで、その型(作り方)を覚えてしまえばいいと思っています。

 

しいて言えば、ここ

f:id:neomatsudaira:20160209130820p:plain

なぜ、Currentなのかが全く分からない。
当然説明もないです。Currentだったりその1個上のListだったりするのですが、どういうときにCurrentを選択して、どういうときにListを指定するのかの区別が付かないのです。

 

CurrentとListの説明がこれまで一度もなされていないためであり、OutSystemsで一番難しいのはこのディレクトリ(番地)の指定なのですが、番地の一つひとつの意味がまるで説明されていないため、難しいのは当然であり、アプリは作れるけど、なぜ作れたのかは分からないという状態に陥る最大の理由がこれだと思っています。

 

分からないため、とりあえずマネをするしかないです。
多分、OutSystems Platformで一番挫折者が多いのはここです。
意味を理解しないまま作らなければならないからです。

 

とりあえず、黙々と作っているの図

f:id:neomatsudaira:20160209131205p:plain

 

ここがマジで意味不明

f:id:neomatsudaira:20160209131513p:plain

もう少し分かりやすくすれば挫折者は半減するだろうし、使いやすくなると思う。

ここまでディレクトリ(番地)の説明が全然なかったので、どれを選択すればいいのか?が初心者エンジニアにはまるで分からない。
番地の意味を理解しないで作っているためこの番地選択だけはOutSystemsを使ってて違和感が半端ないです。

 

そこ以外は

f:id:neomatsudaira:20160209131902p:plain

わりと高度なのにサクサク進みます。
習うより慣れろで行けます。だけど、番地選択だけは番地の意味を覚えなければ模倣する以外何もすることができません。

 

あそこだけ理解が進まないのです。
それ以外はあまりにも高速でプログラミングしているため知性がゾクゾクします。
コーティングしているというよりもアプリを設計しているといった感覚です。

 

この感覚はドリルなどの練習問題をたくさんWebに公開させることで類似したアプリを反復的に何度も作ることで、OutSystemsを使いこなせる自信を醸成させることができると思いますが現状、そのような問題集がありません。

 

機能の拡張のトレーニングがすべてであるため、反復的に似たようなコードを書くというトレーニングが足りていません。だから、同じトレーニングを何度反復する必要があるのです。
そんなこと考えながら作っています。

 

ここ

f:id:neomatsudaira:20160209132328p:plain

ここだけ未だに意味不明です。
番地(ディレクトリ)の説明がないため、各番地の意味を理解しないで作らなければならない。ミスが一番出やすいのもここです。

 

“ユーザーが選択したProduct”

と言われても、そればディレクトリ(番地)のどこに格納されているのかが全然分からないから腹ただしい気持ちになります。どういうときにどの番地を選択すればいいのか?また、各番地、インプットパラメーターやIdやCurrentやListの意味と、どんなときにそれらを指定しなければいけないのかをきちんと説明しないと初心者は何をやっているのか分からないままアプリを開発するはめになります。

たぶんね、ここだけ説明入れればOutSystems Platformは圧倒的に使いやすくなる。
このディレクトリの選択以外はほぼすべてドラッグアンドドロップでアプリを開発できてしまえるから。

 

グラフィカルにドラッグアンドドロップするだけなので全然難しくない。だけど、データを紐付けるのに最低限のコードを記述する必要があり、そのプログラムの説明が無料のトレーニング動画には一つも入っていない。

 

だからディレクトリ(番地)の指定は激難しくなる。
非常にもったいないです。

 

ここの意味とか

f:id:neomatsudaira:20160209133332p:plain

“Product.Id = OrderItemForm.Record.OrderItem.ProductId”

 

これの左側も分かんないけど、右側が特に全く全然理解できない。
Record内のOrderItem内のProductIdは外部キーであり、外部キーとProduct.Idが一致すると何が意味されるのかがトレーニングしてても分からず、とりあえず模倣することになる。

 

Formは分かっても、その下の Recordの意味がまったく分からない。
ついでに、その下のディレクトリは全部分からない(笑)。
よって、何しているのかがコード書いているのに全部分からないのであった。