18

重要:承認された回答は報奨金後に承認されましたが、必ずしもそれが最良の回答であると感じたからではありません。


新しいプロジェクトを始めるとき、私は何度も何度もやり直しています。サブフォルダーを含むフォルダーを作成し、css リセット ファイル、famfamfam アイコン、jquery などの標準アイテムをコピーします。

これにより、理想的な開始テンプレートが何であるかを考えさせられました。私が尋ねている理由は、私がもう一度やり直して、テンプレートに何を含めるべきか疑問に思っているためです。そうすれば、将来戻って、開始するすべての新しいサイトでこれを最初からやり直す必要がなくなります.

私が現在持っているものは次のとおりです。

プロジェクト テンプレート フォルダ
  • index.html -- XHTML 1.0 の厳密な Doctype。メタ タグ。参照される CSS/js ファイル。
  • css/
    • default.css -- 空。ユーザー スタイル用に予約されています。
    • 960 / -- 960 CSS レイアウト用のグリッド システム。
      • 960.css
      • リセット.css
      • テキスト.css
  • js/
    • default.js -- 空。ユーザースクリプト用に予約されています。
    • jQuery / -- 軽量 Javascript フレームワーク
      • jquery-1.3.1.min.js
  • 画像/
    • famfamfam / -- 優れた png アイコンのコレクション
      • アイコン/
        • 受け入れる.png
        • add.png
        • ...等
4

11 に答える 11

8

私は同様の構造と命名規則を持っていますが、CSS については、より拡張性の高いBluePrintを使用しています。また、最近プロトタイプから切り替えた jQuery を好みます。さらに、jQuery のカスタム関数を含む拡張機能である common.js ファイルがあります。

スキーマ定義を含む .sql ファイルを含む /db/ フォルダー。一般的な中間層ライブラリの /lib/ フォルダー。

/src/ フォルダーも作成します。このフォルダーには、Photoshop テンプレート、readme、todo リストなどの生ファイルが含まれることがあります。

于 2009-02-04T09:40:28.613 に答える
3

私の Web 開発フレームワークは git リポジトリにあります。汎用 PHP クラスなどの一般的なコードは、マスター ブランチで開発されます。特定の Web サイトのすべての作業はブランチで行われ、その後、将来の作業に役立つ変更が master にマージされます。

私はすべての Web サイトのリビジョンを完全に管理しているため、このアプローチはうまく機能します。また、ブランチで作業中にバグを修正したり、新しい機能を実装したりした場合でも、マージを行うことができ、すべてにメリットがあります。

私のテンプレートは次のようになります。

/
|-.htaccess            //mod_rewrite skeleton
|-admin/               //custom admin frontend to the CMS
|-classes/             //common PHP classes
|-dwoo/                //template system
|-config/              //configuration files (database, etc)
|-controllers/         //PHP scripts that handle particular URLs
|-javascript/
      |-tinyMCE/
      |-jquery/
|-modules              //these are modules for our custom CMS
      |-news/
      |-mailing_list/
      |-others
|-private/             //this contains files that won't be uploaded (.fla, .psd, etc)
      |-.htaccess      //just in case it gets uploaded, deny all
|-templates/           //template source files for dwoo
于 2009-02-12T11:21:14.987 に答える
1

私はしばらくの間次のセットアップを使用していて、素晴らしい結果が得られました。

  • / site:これは私の実際の作業用Webサイトが存在する場所です。テンプレートが作成されたら、このディレクトリにCMSまたはプラットフォームをインストールします。
    • .htaccess (とにかく自分で有効にしている基本的な調整)
    • robots.txt (後で/ adminのようなアイテムを禁止することを忘れないでください)
  • / source:カンプ、メモ、ドキュメント、仕様などが含まれます。

  • / templates:ここから始めましょう!最終的にCMSまたは/siteのフレームワークに移植する必要があるすべての静的テンプレートを作成します。

    • /行動
      • global.js (サイト固有のコード。必要に応じて複数のファイルに分割される場合があります)
    • / media:画像、ダウンロード可能なファイルなど。必要に応じて整理

    • / style:私はモジュラーCSS開発を好むので、通常、Webサイトの固有のセクションごとに多くのスタイルシートが作成されます。これはBlenderで大いにクリーンアップされます-私はこのツールを強くお勧めします!

      • Behavior.css (JS対応のブラウザーを必要とするスタイリング)
      • print.css (これは最終的にブレンドされるので、@ media printを使用してください)
      • reset.css Eric Meyer's
      • screen.css (@media画面用、ハンドヘルド)
    • / vendor:すべてのサードパーティコード(jQuery、shadowboxなど)

    • Blendfile.yaml (Blenderの場合;上記を参照)

    • template.html (基本的な開始テンプレート。一意のテンプレートごとにコピーして名前を変更できます)
于 2009-02-12T19:39:14.917 に答える
1

造りは良いと思います。他のいくつかのフォルダーの追加は、完了している作業の種類によって異なります。

フリーランスなどの場合は、PSD フォルダーの追加、クライアントのコメントを追加するとよいでしょう。

于 2009-02-04T18:46:50.913 に答える
1

非常に MS に偏った見解ですが、現在の私の SOP は次のようなものです。

  • ドキュメンテーション/
    • アーキテクチャ/ (コード ドキュメントと呼ばれるもの)
    • 通信/ (重要なクライアント ドキュメント)
    • 仕様/
    • 白い紙/
  • グラフィック/
    • *.psd
  • ソース/

    • com.mycompany.projectname.solutionA/
    • com.mycompany.projectname.solutionB/
    • com.mycompany.projectname.solutionC/
    • com.mycompany.projectname.solutionX/ (ここではビジネス的な意味でのプロジェクト)

      • ビジネスの論理/
        • *.cs (または何でも)
      • (さらなるプロジェクト - ビジュアル スタジオの意味で)
      • サイト/

        • handlers/ (最近、実際の .html を使用することはめったにありません)
        • モジュール/
        • 資力/

          • img/ (png、jpeg、gif 何でも)

            • 肌/
              • アイコン/
              • 背景/
          • js/ (公開時に圧縮)

            • library/ (標準コード)
            • common/ (アプリ固有のコード)
            • *.js (アプリ固有のコード、できれば nil)
          • css/
            • skinX/ (「デフォルト」しかない場合でも)
              • 拡張子.css
            • base.css
          • transforms/ (構成またはビルド プロセスによって常に非公開)
            • *.xslt
      • 単体テスト/
        • モック/
        • testmain.cs (または何でも)
  • 第三者/
    • 依存関係
于 2009-02-11T11:42:04.183 に答える
1

職場では、Code Igniter を Web アプリケーションの PHP フレームワークとして使用しており、まさにそれを行う新しいプロジェクト テンプレートを作成しました: シンプルなディレクトリ構造、Blueprint CSS、jQuery、Code Igniter アプリケーション フォルダで、よく使用されるライブラリ (認証、頻繁に使用されるデータベース用のいくつかの特殊モデル...)。

ここでの主なモットーは次のとおりです。コンポーネントを追加するよりも削除する方が常に簡単です。したがって、テンプレートを埋めてください。

(そして、空き時間に新しいプロジェクトを開始するときは、そのテンプレートが恋しいです...)

于 2009-02-12T12:34:40.693 に答える
1

デフォルトの開始点として OP が好きです。標準テンプレートは単純さを重視し、必要な場合にのみ複雑さを追加できるようにする必要があります。

1つの追加:

/robots.txt

于 2009-02-13T04:59:25.757 に答える
1

あなたがここに持っているものは素晴らしいと思います.... あなたがリストしたものはもちろん、あなたのアプリのパブリックフロントエンドに関するものです。これに対する私の唯一の追加は、可能であればすべてのバックエンド コードとソースをパブリック Web スペースから遠ざけることです。パブリック スペースにあるものが少ないほど、アプリはより安全になります。

したがって、ツリー全体を取得して、次の場所に配置することをお勧めします。

httpdocs/(all you had in your project template folder)

次に、すべてのバックエンド コード (例: php ライブラリ、sql ファイルなど) を隣接するサブディレクトリに配置します。

httpdocs/(all you had in your project template folder)
phplibs/
sql/

また、フロント エンドのものであっても、フロント エンド ライブラリに付属している可能性のあるサンプル ファイルをコピーしないようにしてください。サンプル自体にセキュリティ上の問題があり、人々が XSS を実行したり、サイトを危険にさらしたりする可能性があるためです。

于 2009-02-12T14:45:37.023 に答える
1

このようなスケルトン テンプレート フォルダーを作成するというアイデアは間違いなく気に入っていますが、いくつかの異なるテクノロジを使用する場合は、構造に細心の注意を払う必要があります。私の VB.net フォルダー構造は、PHP とはまったく異なる設定になっています。当たり前のように聞こえますが、私は人々が両方に同じようにアプローチするのを見てきました.

于 2009-02-12T01:56:41.070 に答える