前の記事で
、FLProgプロジェクトを作成するための
前提条件とプロジェクトの
現在の状態について説明しました 。
次に、プロジェクトの専用
サイトについて説明し
ます。この
サイトは、プログラムのユーザーが集まる場所です。
このサイトの主な目的は、ユーザーがプログラムの最新バージョンをダウンロードし、革新と変更について学習できるようにすることです。
サイトに登録せずにプログラムをダウンロードできますが、登録ユーザーの場合、サイトの機能は大幅に拡張されています。 登録は非常に簡単で、確認メールのみが必要です。 他のデータは必要ありません。
プログラムダウンロードページのプログラムダウンロードページでは 、インストーラーとインストール不要のポータブルバージョンの2つのバージョンが常に利用できます。 可能であれば、以前のバージョンからの更新を可能にする、はるかに小さいサイズの更新ファイルも投稿します。 また、ダウンロードページでは、このバージョンの技術革新とバグ修正のリストを確認し、
以前のバージョンのアーカイブにアクセスでき
ます 。
サイトの2番目のタスクは、ユーザーから開発者へのフィードバックです。 このために、
バグトラッカーがサイトに作成されています。 未登録のユーザーは、検出されたエラーとそのステータスのリストを表示できます。 そして、登録されたエラーをリストに追加します。 私はバグの次のバージョンをリリースしようとします-トラッカーはきれいで、ほとんど常に成功します。
ユーザーから作成者へのフィードバックの目的は、
新しい機能のページです。 このページの構成は少し異なります。 未登録ユーザーは、新しいプログラム機能の要望を表示することもできます。登録ユーザーは、独自のウィッシュリストを追加して、既存のウィッシュリストに投票できます。 したがって、実装を必要とする最も一般的な関数のリストが作成されます。
私の観点からサイトで最も興味深い場所は
フォーラムです。 ここでは、プログラムのユーザーがソフトウェアの操作について質問したり、アドバイスを求めたり、問題について話し合ったりできます。 フォーラムは非常に集中しており、私からの時間はますます少なくなっています。 初心者や初心者を助けるグルや昔の人がすでに登場しています。 彼らにとても感謝しています。なぜなら、それが私の負担を減らすからです。 ここでは、サイトの他のページと同様に、未登録ユーザーはメッセージを表示できますが、登録ユーザーはすべての機能を使用できます。 評価とレベルは維持されません。 要点はわかりません。 一般的に、フォーラムは非常に真面目で反応の良い人々を集めました。 これまでのところ、仕事の年の間に、他のフォーラムが通常うんざりするあらゆる種類の広告、フーリガン主義の試みはありませんでした。 もちろん、節度と禁止の可能性を残しましたが、これまでのところ、これを使用する必要はありませんでした。 サイトユーザーの利便性のために、ファイルホスティングが作成され、メッセージに挿入された画像とファイルが保存されます。 ディスク容量は無限ではないので、1か月以上の保存期間を持つサイトで使用されていないファイルを定期的に削除します。
プログラムの初心者ユーザーをトレーニングするために、ドキュメントページがあります。
プログラムの
説明、サイトの説明 、
ビデオチュートリアル、プログラムの使用例、およびプログラムで
使用されている機器のリストを確認できます。 ビデオレッスンでは、プログラムのほとんどの機能について説明します。 もちろん、最初の入門レッスンは長すぎて、それぞれ1時間以上でしたが、論理的な完全性を失うことなく、それらを断片に分割することはできませんでした。
実験として、サイトに
出版物セクションが作成されました。 ハブルのイデオロギーは基礎としてとられます。 登録ユーザーは、自分の記事を書いたり、他のユーザーが書いた出版物にコメントしたりできます。 このセクションでは、残念ながら、これまでのところ私は単独で注目されています。 現在、プログラムのユーザーの開発に関する記事、プロジェクトで使用されているほとんどの機器の説明があります。 時間の経過とともに、サイトのユーザーがこの機会を利用して、ライティングの才能を実感できることを願っています。
さて、ここでサイトエンジンについて少し説明します。
私はWebプログラマーではなく、WordPressやJoomlaのような既製のCMSを勉強するのに時間を費やしたくなかったので、自分の知っている言語でエンジンを書くことにしました。 このサイトは、Seasideパッケージを使用してSmallTalkでゼロから作成されています。 これで、エンジンの2番目のバージョンが機能します。 1つ目は1週間でまとめられ、主に新しいプロジェクトについて通知することを目的としています。 しかし、すでにその中には、ユーザーの個人アカウント、バグトラッカー、および新機能のセクションがありました。 さて、フォーラムの最初のプロトタイプ。 しかし、彼には問題もありました。 まず、エンジンの記述を高速化するために、Seasideに組み込まれているダイナミックリンクメカニズムを使用しました。 検索エンジンでサイトのインデックスを作成する予定がない場合は、それを使用すると非常に便利です。 検索エンジンはそのようなサイトを1つのメインページと見なし、他のすべてのページはインデックスに登録されません。 すべてのリンクの寿命は最大2時間なので、理解できます。 これは、ダイナミックリンクの2番目の問題でした。 ユーザーがページを開いているときに、2時間そのページで何もしなかった場合、その後のページでのアクションで、メインページにリダイレクトされます。 さて、最も不愉快なことは、内部ページへのリンクを保持する意味がないことです。また、2時間でメインページに移動します。
その結果、6か月間の苦痛の後、再びエンジンを書き換えることが決定されました。 新しいエンジンの作成には2か月の作業が必要でした。 まあ、それは言い訳になります、結局のところ、これは私の2番目のサイトにすぎません。 私はデザインにあまり馴染みがないので、メインページを作成するためにプロのデザイナーが雇われました。 可能であれば、残りのページはメインページの下に表示されました。 JavaScriptを習得しなければならない一部の機能については、メッセージ用に既製のBB-Codeエディターを使用しましたが、パーサーを自分で作成する必要がありました。 正直なところ、まだ完全に機能していません。誰かが何らかのオリジナルのメッセージを書いたときに、時々エラーが発生します。
このサイトは、Intel AtomをCPUとし、4ギガバイトのメモリを搭載したホームサーバーでスピンします。 1日あたり最大8,000回の訪問のピークに簡単に耐えました。 これは確かに優れたパフォーマンスではありませんが、1日あたり平均1,500〜2,000人の訪問者があれば十分です。 一般に、優れた機能を備えた小さなサイトを作成するためのSmallTalk-Seaside-Glorp-PostgreSQLバンドルが好きでした。 この言語はロシアではあまり普及しておらず、ある種のエキゾチックであることが非常に残念です。
次回の記事では、FLProgプロジェクトの開発に関する近い計画と遠い計画について説明します。