BLOGS

4D ブログ

warning: file_get_contents(http://www.telize.com/geoip/54.196.31.117) [function.file-get-contents]: failed to open stream: HTTP request failed! in /var/www/www.4d.com/docs/includes/common.inc(1762) : eval()'d code on line 4.
07/01/2016

v13以降,Webエリアは,統合WebKit・システムいずれかのモードが選べるようになりました。統合WebKitモードは,$4dオブジェクト型のサポートなど,より高いレベルでアプリケーションとの親和性が提供されますが,WebKit(オープンソース版)のバージョンが最新ではありません。たとえば,この記事を執筆している時点で,Safariが使用しているのは,AppleWebKit 601.4.2ですが,4Dに統合されているのは,534.53.11です。そのため,統合WebKitモードのWebエリアは,システムモードよりもHTML, CSS, JavaScriptの実装が限定的です。

 

参考: Webエリア比較サンプル

 

一方,システムモードのWebエリアは,概して表現力が優れていますが,技術的な理由により,WebブラウザともWebKitとも違う動作になることがあります。この記事では,Windows版システムWebエリアの制約について説明しています。

 

Read more

29/12/2015

EXECUTE FORMULAは,文字列で渡されたプログラムコード(式)をトークナイズして実行するコマンドです。文字列で表現された式は,シンタックスチェックコンパイルの対象ではないため,プログラムミスの可能性があり,速度面でもデメリットがありますが,上手に使用すれば,アプリケーションの利便性や柔軟性を高めることができます。この記事では,フォーミュラ実行コマンド(旧称: EXECUTE)の一般的な注意事項を説明しています。

 

Read more

25/12/2015

15R2では,4D Serverおよび4D(プレビュー)のMac OS X 64ビット版が利用できるようになりました。OS Xの64ビット版は,先行するWindows版のようにデータベースキャッシュサイズの上限が大幅に増えているだけではなく,全体がCocoa APIで作成された事実上の新作アプリケーションであるという点で特筆すべきリリースです。具体的には,メニュー・ウインドウ・フォームのようなユーザーインタフェースオブジェクトがすべてCocoa APIで描画されており,ユーザーは,テキスト入力・マウスイベント・日本語変換などを含め,よりネイティブな動作を楽しむことができます。フォームオブジェクトの描画をオペレーションシステムに依存する割合が増え,独自の方法で描画することが減ったことにより,自然なアニメーションエフェクトが適用されるようになりました。

 

Read more

25/12/2015

データベースにインデックスが設定されていれば,クエリ・並び替え・統計関数のパフォーマンスを大幅に向上させることができます。一方,インデックスの管理(更新)は,かなりのメモリと処理能力が要求されるため,使用することのメリットとデメリットを注意深く考慮する必要があります。現バージョンでは,インデックスのタイプ(B-Tree/クラスター/複合/キーワード),クエリプランとクエリパスインデックス更新の一時停止と再開データベースエンジン情報などのツールを活用し,情報に基づいた判断をすることができます。さらに,現在開発中の15R4では,インデックス再作成のロジックがさらに強化される予定です。

 

Read more

24/12/2015

 2015年の年内業務および2016年の業務開始日程は下記の通りです。

 

Read more

22/12/2015

4Dでは,フォームイベントに反応して実行されるべきオブジェクトメソッドを記述することにより,インタラクティブなユーザーインタフェースをデザインすることができます。通常,オブジェクトメソッドは瞬時に完了するので,イベント発生の速度に対してコードが追いつかない,ということはないでしょう。オブジェクトメソッドの実行中に新しいイベントが発生した場合のことを心配する必要はないはずです。とはいえ,実際には,クリックイベントを処理中に次のクリックイベントが発生した場合など,同じオブジェクトメソッドが同時に実行されることがあり得ます。これは,Standard Behaviour(仕様ではないが,実装上,予期される動作)です。この記事では,クリックイベントが連続発生した場合の対応について説明しています。

 

Read more

09/12/2015

メソッドをコンパイルするためには,戻り値 ($0) とパラメーター ($n) がしっかり定義されている必要があります。コンパイルパスが『すべて(自分で)定義する』に設定されている場合,パラメーターが定義されていないメソッドは,シンタックスチェックの時点で不合格となってしまいます。実際,4Dのシンタックスチェックは,構文上の間違いを発見するためのツールというよりも,コンパイルの可否を判定するためのツールと考えたほうが良いでしょう。上級者は,パラメーターの間接参照と呼ばれる記述を活用しているかもしれません。その場合,コンパイラーがメソッドのパラメーターを特定できるよう,コンパイラコマンドを使用することが求められます。この記事では,v12以降,より厳格に処理されるようになったパラメーターの間接参照について説明しています。

 

Read more

08/12/2015

データベースに実数型のフィールドが存在する場合,比較されるのは小数第6位までということに留意してください。ランゲージ(演算子)のイプシロン値は,必要に応じて変更することができますが,データベースエンジンのイプシロン値は常に6 (10^-6) であり,それよりも小さな数値の違いはクエリに反映されないからです。この記事では,クエリ処理における実数の精度について説明しています。

 

Read more

03/12/2015

Select RGB ColorOBJECT SET RGB COLORSに代表されるように,4Dでは256階調のRGB値で256^3=16,777,216色のカラーを指定することができます。カラーモニターやスキャナーはRGBカラーをサポートしていますが,同じRGB値がどのデバイスでも同じカラーになるわけではありません。デバイスには,それぞれ固有の色空間(カラースペース)があるからです。この記事では,カラーピッカーのRGB値がアプリケーションのRGB値と一致しない理由を説明しています。

 

Read more

19/11/2015

4D v15製品ラインの初めてのRリリースが公開されました。4D Server 64-bit for OS Xの最終バージョンだけではなく、4D Developerエディションの64ビット版をWindowsとOS Xの両バージョンをテストと評価のために提供しています。

 

Read more