OutSystemsでのDB操作
OutsystemsではEntityを定義すると、OutSystemsが物理DBに直接変更を加え
OutsystemsのEntity定義と同期する物理テーブルを作成、変更します。
そのため、開発者がDBを操作しなくても簡単にテーブルやカラムの追加を行うことができます。
通常であれば、
DDLを書いてDBに変更を加え→アプリケーションのDB操作処理を修正(Entityに対応するDAOの修正など)
とするところを、ServiceStudio上でEntityに項目を追加するだけでよい。
よくDBの変更時に、アプリとDBの同期が取れずにエラーとなることがあるが
OutSystemsが整合性を保ってくれるので、システム稼働中でも安心してカラムの追加ができます。
DBの定義が固まりきらないまま開発に着手しても
必要に応じて簡単にDBを変更できるので、アジャイルのような進め方では
大きく生産性が上がると思います。
今回、私がやっている開発もまさにそうでした。
OutsystemsがDBを直接変更することのデメリットとしては
・物理テーブル名を自分で操作できないので、外部システムからの参照が困難。
・Entityの項目を変更、削除した場合に、物理DBにはもとのカラムが残ってしまう。
直接DBを参照したときに不要なカラムがあってわかりにくい。
といったことが生じています。
実際に、開発、運用するにあたっては、DBを直で参照する必要もあるので
その点は少し不便も感じています。
が、ビューを作るなどの回避策もあるので大きな問題にはなっていません。
アプリとDBが自動で同期されるのは、とても良いと思います。
OutSystems 外部システムとのAPI連携
OutSystemsを使った開発を始めて3ヶ月ほど経ちました。
通常から考えると短期間でシステムは大分形になってきており、
ツールの制約による問題はほとんどなく
非常に生産性が高いツールだと実感しています。
今回のシステムでは複数の外部システム連携があるのですが
OutsystemsのAPI連携機能が威力を発揮して、短時間で連携処理を実装できています。
RESTのAPIを実装する場合、
JSONをコピペするだけで、そのJSONの構造に対応するStructureを
自動で作成してくれる。
Structureを右クリックして「Add Strucuture from JSON」を選択。
JSONを張り付けて「Add Structure」を押せば、JSONに対応したStructureができる。
後はそのStructureに値をセットし、APIコール処理の引数にStructureを渡せばREST APIコール処理が実装できてしまう。
Integrations>RESTを右クリックして「Consume REST API」を選択すると、ウィザード形式で外部APIをコールする処理が作成される。
ServiceStudio上で、作成したAPIの接続確認もできる。
本当に簡単です。
OutSystemsを始めました。
2月からソースコードを書かずにシステム開発できるプラットフォーム
「OutSystems」でシステム開発をしている。
ポルトガルに本社がある海外製のツールで、国内ではまだあまり知られていないが
海外では有名なツールで、Gartnerとかでも高評価を受けているらしい。
http://www.outsystems.jp/product/product-devops-dev.html
OutSystemsは、「モデル駆動型開発」手法を活用することで、ソースコードを一切書くことなく、Webアプリケーションの完全な自動生成を実現しています。プロセス、インターフェース、ロジック、データの4種類の基本モデルを定義することで、.NET及びJavaのコードが自動生成されるだけでなく、動作するアプリケーションのデプロイまでも、自動で行われます。
とあるように、この1ヵ月間ソースを書かずにアプリを開発できている。
ロジックもフローチャートのようなツールで書くことができる。
ソース自動生成や超高速開発には以前から興味があり
国産のいくつかのツールを触ったことはあるのだが
OutSystemsは本当によくできていると思う。完成度が非常に高い。
1ヵ月で動くシステムができつつあり、要件もほぼ実現できている。
ツールの制約でできないことが、今のところほとんどない。
AWSのSQSや、REST API、FTPといった外部システムとの連携部品も結構あり
そのあたりを手で実装するよりは、かなり効率よく作れている。
開発ツールなのに細かい演出が入っていて、そういうところが海外製っぽくてよくできてるなと思う。
Entityをドラッグ&ドロップすると、Entityに対応する画面を作れる。
このとき星がピカピカっとでる演出が面白い。
こんな画面が自動で作成される。
theme generator というブランドイメージに合わせて
サイトデザイン(Cssを自動生成)してくれるツールもある。
http://labs.outsystems.net/londontheme/Customize.aspx
「ResophNotes」 − 軽くてクラウド共有できるメモ帳
EvMemoという常駐型の簡易エディターをここ10年くらいずっと愛用していました。
とても軽くてホットキーを押せばすぐに立ち上がり、Escで閉じるメモ帳で
作業中や打合せ中にメモを取るのにとても便利。
ただ、メモはPCのローカルにしか保存されないので、他の端末と共有できないのが難点で、移動中のメモはクラウドサービスのSimpleNoteを使ったりしていました。
EvMemoの内容をクラウドに保存して、複数端末で共有できたらいいのになとずっと思っていたのですが
先日、まさにその通りのツールを見つけました。
ResophNotes - Quick Notes on Windows
PCでメモした内容がSimpleNoteと同期されるので、会社PC、自宅PC、スマホでちょっとメモしたことを共有できる。
会社PCで、クリーニングを取りに行くとメモしたり
移動中にスマホで、仕事の資料を送るとメモしたり
ぱっと書けて、どこでも見られるので便利です。
EvMemoは随分前に開発が終了していたのに、これに代わるツールを見つけられずにずっと使っていましたが
ついに乗り換えることになりました。