4Dでシンプルな “TimeStamp “クラスを作成する方法
by ゲスト執筆者 Tiran Behrouz, 4D developer (Vancouver, Canada)
4D v17でのORDAの導入は、画期的なものでした。4D v18 R3でのクラスの導入で、私たちは4Dプログラミングのパラダイムシフトを目撃することになるでしょう。ポリモーフィズム、コンポジション、継承といったオブジェクト指向プログラミングの概念を利用して、独自のクラスライブラリを作成することができるようになったのです。このビデオでは、4DとORDAを使って、シンプルなTimeStamp クラスをコーディングする方法を説明します。
直感的なオートコンプリートを実現する新しい宣言構文
4Dのオートコンプリート機能について不思議に思ったことはありませんか?また、なぜ4Dはコード内で使用されているすべての関数を示唆するのでしょうか?オブジェクトは非常に汎用的な型なので、4Dは実行時にしか本当に保存しているものを知りません。しかし、それはコードを書くときにはあまり役に立ちません。
4D では、変数を宣言するときに、オートコンプリートを大幅に強化する新しい構文を提供しています。
4D Write Pro – 数式を使用する際のコントロールを強化
4D Write Proの ユーザーとして、あなたはおそらく、文書の特定の部分を自動的に埋めるために式(またはより最近では数式)を使用したことがあるでしょう。これらの式は、「生の」テキストや画像を返すことができます。テキストの場合、改行が含まれることがあります。4D Write Proのドキュメントの中で処理されるとき、この改行はどのように扱われるのでしょうか?このブログは、その答えを提供します…続きを読む
プロジェクトアプリケーションでのサーバーコード開発
4D v18 R4では、プロジェクトアプリケーションのサーバーコードの開発とデバッグが、これまで以上に簡単になりました。さっそく、その方法について見ていきましょう。
プログラミングでフォームオブジェクトの値にアクセスする
を使う開発者が増えています。 Formコマンドを使用してフォームオブジェクトをリンクしている開発者が増えています。そこで、変数や式に関係なく、フォーム・オブジェクトの値にアクセスできるように、2つの新しいコマンドを追加しました。 OBJECT Get valueと OBJECT SET VALUE.
では、その使い方を見てみましょう
オフスクリーンのウェブエリアを使用する
ヘッドレスサーバーでWebページをロードしたり、メタデータを抽出したり、ページのコンテンツから画像を生成したりする必要がありますか?もし、「はい」と答えたなら、4D v18 R3がそれを可能にするので、ラッキーです!コマンドでオフスクリーンウェブエリアを作成できるようになりました。 WA Run offscreen areaコマンドで作成できます。
POP3によるMIME形式でのメールダウンロード
例えば、法律上または会計上の理由から、すべてのビジネスメールを保存する必要がありますか?これらの文書は、そのままの形で保存する必要があります。つまり、受信したままの状態…オリジナルの未変換のフォーマットで保存する必要があります。4D v18 R3はこのニーズに応え、電子メールを元のMIMEフォーマットで取得できる新しいメソッドを提供します。
ORDA:再起動せずに最新のデータストアを利用できる
4D v18 R3には、開発者のエクスペリエンスに大きな影響を与えるエンハンスメントが含まれています。多くの方から要望のあった機能を、4Dが実現しました!
開発段階(コードの記述とテスト)で4Dスタンドアローンモードで作業する場合、構造が更新されたときに最新のデータストア(ds)を更新するためにデータベースを再起動する必要はありません。
新しい属性や新しいテーブルが必要なとき、毎回データベースを再起動する必要はありません。全て自動です!
コマンドを呼び出すと、最新のデータストアを取得できます。 dsコマンドを呼び出すと、最新のデータストアオブジェクトを取得できます。つまり、このデータストアオブジェクトの複数のバージョンを、実行中のプロセスを停止させることなく、構造を更新したタイミングに応じて、同時に処理することができるのです。
クライアント/サーバーモードで作業している場合、4Dサーバー上で動作しているコードには問題なく機能します。
リモートクライアントでは、構造の更新が必要なクライアントを再起動するだけです。
プロジェクトデータベースメソッドドキュメントの復活
アプリケーションを開発する際、メソッドの詳細(例えば、メソッドの動作の説明、構文、メソッドに渡されるパラメータの定義など)に素早くアクセスできると非常に便利な場合があります。これは、コンパイルされたコンポーネントを使用する場合に、より重要になります。メソッドの中身を見ることができないので、使い方を理解するためにはそのドキュメントに頼るしかないのです。
4D v18 R3では、エクスプローラーのダイアログが強化され、プロジェクトデータベースのドキュメントが利用できるようになりました。
1つの 4Dインスタンス内に複数の Webサーバー
たとえば、Webアプリケーションのコードをいくつかのビジネスユニットに分割したい、管理者用の Webサーバーをユーザー用から分離したい、メインの部分をプリエンプティブに実行できるように、まだプリエンプティブに対応していない古い部分を別のインスタンスで実行したい、というような状況で、複数の Webサーバーの必要性を考えたことがあるかもしれません。
4D v18 R3 では、このようなことが簡単にできるようになります。