記事"グラフィカルインタフェース I: ライブラリストラクチャの準備(チャプター 1)"についてのディスカッション

 

新しい記事 グラフィカルインタフェース I: ライブラリストラクチャの準備(チャプター 1) はパブリッシュされました:

標準ライブラリは、詳細な説明を備えていません、そして、私の意見では、その構造がより 良く設計されていますが、まだ考え通されていません。それに加えて、標準ライブラリは、グラフィカルインタフェースを作成するの必要な場合があるコント ロールの多くが含んでいません。近代化と品質向上についての質問が発生した場合、どちらの実装も一から再構築する必要があると考えざるを得ません過去の記 事では、私はすべての利点を収集しすべての欠点を解消する試みを行いました。

以前、私はコントロールに関する2つの簡単な入門記事を書きました:

これらは、手続きのスタイルで書かれており、MQLを知ることの目的を果たしています。今回は、オブジェクト指向の形で実現されるであろう、かなり大規模なプロジェクトの例をもって、より複雑な構造を示そうと思います。

読者がこれらの記事から得られること

  • このプロジェクトの目的は、エンドユーザーのために、最終的に直感的なインターフェイスを作成することです。これらのユーザインターフェースの開発者には、さらなる開発に使用できる、研究及び使用が容易なコードライブラリが提供されます。
  • オブジェクト指向のメソッドを使用しての大規模プロジェクト実施の最初のステップを踏み始めた開発者、またオブジェクト指向プログラミングを学び始めてた開発者は、始まりから実装にわたった多くの例から特定の研究材料を見つけるでしょう。
  • より多くの経験を積んだ開発者は。自分のアイデアを実現し始めるためのグラフィカルユーザインタフェースのライブラリのもう一つの実装を見つけるでしょう。選択肢があるとは良いことです。
  • 同 じようなライブラリを作成する能力があり所有しているであろう専門家のみなさんは、提案された実装を批判し挑戦することができます。彼らによるこのような プロジェクトのより適切かつ効率的な実施アプローチの提案は、より経験の少ない読者に興味深いものになるでしょう。このような議論は時々記事そのものと同 じくらい興味深いものです。

私はこの記事のシリーズで使用され るナレーションメソッドを「理想的なシーケンスの未遂模倣」と呼びました。多くの場合、実際の生活の大規模なプロジェクトの開発の過程で、シーケンシャル なアクションの順序と思考のラインは、より混沌であり、多くの実験、試行錯誤で構成されています。ここでは、これらすべての複雑性をスキップします。この 規模のプロジェクトに初めてかかわるみなさんには、このライブラリの研究、及びその開発の過程のよりよい理解のためにすべてのアクションを繰り返すことが 推奨されます。このシリーズの記事は、質問の大半にすべての答えがすでに存在しており、必要に応じて、プロジェクトのすべての部分が作成された理想的な順 序で思考の流れを提示する機会を与えます。

図4色操作のためにCColorsクラスを含みます。

作者: Anatoli Kazharski

 
アナトリー、すべてのコントロールを キャンバスに描くつもりですか?
 
Igor Volodin:
アナトリー、すべてのコントロールをCanvasに描画するつもりですか?

このバージョンのライブラリでは(実装された連載記事では)一部だけです。しかし、後で、描画されるすべての要素のクラスを作成し、エンジンに簡単に接続できるようにすることは難しくありません。そのための特別なクラスもすでに用意されている。これらすべてについては、次回の記事で詳しく紹介する。

 

むかしむかし、こんなふうに始まったんだ。)

最初のGUIはどのようなものだったのか:レーダースクリーンからパーソナルコンピューターまで >>>

1962年:最初のGUIプログラム、スケッチパッド

//---

Как выглядели первые графические интерфейсы
Как выглядели первые графические интерфейсы
  • www.lookatme.ru
1962: Sketchpad, первая программа с GUI В середине XX века главной задачей инженеров было во что бы то ни стало сделать компьютеры умнее. Ради этого жертвовали всем, и дружелюбностью к пользователям в том числе. Что, впрочем, не мешало мыслителям того времени рассказывать, как со временем компьютеры будут помогать человеку во всём — на языке...
 

記事は準備できていて、出版を待っているだけですか、それとも進行中ですか?最終的な記事のおおよその日付は?

これは便利なことかもしれない。)

 
Andrey Khatimlianskii:

記事は準備できていて、出版を待っているだけですか、それとも進行中ですか?最終的な記事のおおよその日付は?

便利なことが判明するかもしれないので、テストしてみたいのですが)。

現時点で14本の記事が準備できています。全部で20本になる予定です。

出版プロセスは早くはないでしょう。おおよその期間を言うのは難しい。せいぜい週に1、2本のペースになるだろう。

 
Anatoli Kazharski:

現在、14本の記事が出来上がっている。全部で20本になる予定だ。

出版はすぐにはできません。おおよその期間を示すのは難しい。せいぜい週に1、2本の記事になるだろう。

クソ地獄!このトピックは、「ユーザーパネルのレシピ、パート238」というスローガンを持つことができるだろう:)
 
Vasiliy Sokolov:
なんてこった!このトピックは、「カスタムパネルのレシピ、パート238」というスローガンを持つことができます:)

議論の結果、パートが大きすぎるため、シリーズ全体のパートを章に分けることになりました。)

そして、ここでの「スローガン」は「グラフィカル・インターフェース」です。

 
Anatoli Kazharski:

議論の結果、パートが大きすぎるため、シリーズ全体の一部を章に分けることになった。)

そして、ここでの「キャッチフレーズ」は「Graphic Interfaces」。

なるほど。確かに役に立つ話題ですね。あなたのクラスは、MQのグラフィック・ライブラリの 標準セットに基づいているそうですね?
 
Vasiliy Sokolov:
...あなたのクラスは、MQのグラフィック・ライブラリの標準セットに基づいているそうですね?
はい、第2部と第4部で説明する描画エレメントのクラスがあります。使い方の例もあります。
 
Anatoli Kazharski:
はい、そして第2部と第4部で説明する、エレメントを描くクラスもあります。使い方の例もあるでしょう。
それはいいですね。できれば、グラフィカル・インターフェースの例をもっと写真で紹介してほしい。一般的に、このトピックはとても必要なものだ。我々はもっと前に標準ライブラリの ドキュメント化を始めるべきだった。