Angular-Seedは、最初は事実上の空のプロジェクトですか?


82

Angular.jsを学び、使用することを確信した後、私は具体的なWeb UIアプリケーションを起動して、経験の学習ホイールを起動するつもりでした。(このアプリは、リスト、リマインダー、ポモドーロテクニック指向などを行うための、ある種の個人的な計画になります...)

Angularの作者が見たチュートリアルビデオの1つは、ベストプラクティスに関するものです。そして、ベストプラクティスの1つは、angular-seedプロジェクトから始めることです。

それが私がやろうとしていたことですが、少しグーグルした後、良い出発点であると主張する少なくとも2つの他のプロジェクトがすでにあります。

  • angular-enterprise-seed
  • angular-sprout

私は初心者ですが、長期的に投資するのが好きです。他のものを使用することを心配する必要がありangular-seedますか?この質問をするのは時期尚早だと思いますが、他に2つのプロジェクトがある場合は、いくつかの理由があるかもしれません。


1
「ベストプラクティス」の話は、特定のテンプレートではなく、一般的な出発点としてテンプレートを使用することに関するものだったと思います。はい、angular-sproutいくつかの利点がありますが、私の意見でangular-seedは、学習目的に問題なく使用できます。
raina77ow 2013年

template質問から単語を削除するように編集しました。いいえ、確かに、著者は、フレーム上にアプリケーションを構築するために、Angular-seedを開始点として使用することを主張しました(そのため、htmlテンプレートの意味ではなくテンプレートという単語を使用しました)。それを指摘してくれてありがとう。
ステファンローランド2013年

angular-seed正常に動作するはずです。プロジェクトをどのように構成するかは、個人的な好みの問題です。使用するツールを提案するつもりなら、それはヨーマンでしょう。それは、角度のプロジェクトを足場のための素晴らしいですし、もっと...
ジョナサン・パルンボ

1
チュートリアルビデオのリンクが壊れている可能性があります。
JJ Zabkar 2013

1
@JJZabkarは訂正しました、残念ながら私は今夜あなたのコメントを見ただけです。
ステファンローランド2013年

回答:


60

多くの人がさまざまなシードプロジェクトを使用していますが、Angularアプリ(または任意のJavaScript Webアプリ)の最も簡単で一貫性のある出発点はYeomanであることがわかりました。

このアプリは、アプリケーションのカーネルを構築するジェネレーターを指定できる足場ツールであり、必要なライブラリー(bower経由)と動作するgruntビルドファイル(ほとんどのジェネレーターにはビルドタスク、サーバーが付属しています)を備えています。ライブ編集のタスク、およびテストタスク)

このようなアプリは必然的に意見が分かれますが、それが生成する足場は依然として非常に一般的です。

例:

mkdir my-app
cd my-app
npm install generator-angular
npm install generator-karma
yo angular

8
上記の3行目はそうあるべきだと思いますnpm install generator-angular
ライアンウォール

そして4行目:npm install generator-karma
Mattl 2013年

npm ERR!404'angular-generator 'はnpmレジストリにありません。
mortsahl 2014年

grunt serveブラウザで表示するには
jacktrades 2014年

1
また、yo "npm install --global yo"をインストールする必要がありました
モーク

26

それらはすべて異なるメリットを持っているので、それはあなたが何をしようとしているのかによって異なります。私はangular-enterprise-seedを作成し、その相対的なメリットについて話すことができます。

  1. サーバーに依存しません。 AngularJSの中心的な信条であり、AngularJSを魅力的にする多くのことの1つは、クライアントMVCパラダイムに従うことであるため、これは重要です。これは、すべてのサーバーテクノロジーから完全に切り離されていることを意味します。既存のシードの多くは、AngularJSをangular-sprout(NodeJS)やgrilled-feta(Google App Engine / Java)などのサーバーテクノロジーに結び付けています。前述のプロジェクトの場合、NodeJSやJava環境がまだシステムに存在しない場合は、シードが表示されるのを確認するために、いくつかのフープを実行する必要があります。これは、PHPおよびPython開発者を遠ざける可能性があり、その結果、プロジェクトのコミュニティが制限されます。

  2. 数秒で稼働します。サーバーに依存しないため、任意のコンテナーで実行できます(さらに言えばファイルシステムをチェックしてください)。推奨される方法は、ルートディレクトリから「python-m SimpleHTTPServer」を実行することです。これはMacとLinuxでネイティブに提供されるため、追加の手順はありません。

  3. ライブプレビュー。 ライブバージョンは常にgithubでホストされているため、プロジェクトのステータスを確認するのは安価です。サーバーに依存しないため、これは、cronジョブからマスターをgh-pagesブランチにコピーすることによって自動的に行われます。

  4. リッチなスタイリング。 これには、Twitter Bootstrapとカスタム/ビルド可能なLESSが含まれ、Angular-UI、Angular-NG、フォント、およびその他の無数のツールが豊富なスタイリングと応答性機能を提供します。

  5. ウィジェット。Angular-SeedやAngular-Sproutと同様に、Angular-Enterprise-Seedは、「ベストプラクティス」のレイアウト、ルーティングなどを例示します。ただし、棚から取り出してすぐに再利用できる多数のビルド済みコンポーネントも提供します。これは、いくつかのテクノロジーの統合が必要になる可能性があるため、実行するのが少し難しいです。たとえば、グリッドの例を作成するために、angular-ui、angular-ng、angular-js、およびjqueryのスタイルを組み合わせました。モーダル、ページ付け、アラート、グリッドなどのコンポーネントの例があります。

Angular-seedは、ピースがどのように機能するかを学びたい場合の学術的な演習としては最適ですが、より実質的なジャンプオフポイントへの憧れを残します。

私は角芽を使ったことがないので、そのメリットについて話すことができません。たぶん、angular-sproutとangular-enterprise-seedをマージする余地はありますか?


2
サーバーカップリングが必要な場合は、github.com / robertjchristian / service-nucleusを確認してください。これは、angular-enterprise-seedとnetflix-karyonを統合し、追加機能を追加します。箱から出して展開して戦争する準備ができています。(Javaベースで、Jersey経由のRESTが含まれます)。
ロバートクリスチャン

1
これはベースとして本当に良さそうです。バウアーを統合して、angular-ui-mapなどを簡単に追加できるようにすることを検討しましたか?
Baldy 2013

1
@ Baldy-はい、バウアーをプロジェクトに参加させたいと思います。ボランティアですか?:)
ロバートクリスチャン

残念ながら、私は他の何かに移動しました:)
Baldy 2014年

1
あなたは「常にgithubでホストされている新しいバージョン」と私を納得させました...そして提供されたリンク:robertjchristian.github.io/angular-enterprise-seed/#は空のページを返します。
cerd 2014年

18

これは古い質問だと思いますが、かなりの数の見解があるようです。そのため、最近ヨーマンとアンギュラーシードの両方に代わる非常に人気のあるもの、ng-boilerplateを推奨するのは理にかなっています。ng-boilerplateは、大規模な本番Webアプリ用にゼロから設計されているという点でangular-seedとは異なります。したがって、私の意見では、angular-seedよりも優れたソリューションです。

アプリのキックスタートのYeomanとng-boilerplateの方法の違いを説明するために、ngbpの作成者であるJosh D.Millerを引用します。

ヨーマンは最高です。しかし、AngularJSのジェネレーターで私が抱えている問題は、機能ではなくレイヤーごとにパッケージ化することです。すべてのコントローラーを「controllers」フォルダーに、すべてのサービスを「services」フォルダーなどに保存し、すべてのテストを完全に別の場所に保存すると、コンポーネントを再利用するのが非常に困難になる可能性があります。

これは、ヨーマン角度ジェネレーター問題フォーラムでのJoshによるかなり良い議論でもあり、ng-boilerplateとyeomanのセットアップに関してさらに詳しく説明しています。


10

明確にするために、ヨーマンはジェネレーターではありません。ヨーマンはジェネレーターを作るためのフォーマット/システムです。AngularJSアプリケーションの生成に使用できるYeomanで作成されたジェネレーターがいくつかあります。人々はしばしばそれらのいずれかを「the」Yeomanジェネレーターと誤って参照します。しかし、たくさんあります。まだ混乱していますか?発電機製造システムはヨーマンだけではありません。ブランチは別のものです。

あなたの質問に答えるために、ここで1はAngularJSとWebアプリケーションを作り始めるために使用できる多くのAngularJS発生器の非常に包括的な横並びの比較です。現在、これらのものの200以上の異なる側面が含まれています。それらの1つはファイル編成スタイルです。そのため、重要な場合は、機能ごとにファイルを整理しているファイルを簡単に確認できます。それは私にとってです。

これらのいくつかはまだ追加する必要があります。このスレッドで言及されている2つは私にとって新しいものです。しかし、この比較により、オプションとそれらの比較方法についての良いアイデアが得られるはずです。それも編集可能ですので、これらのいずれかの専門家である場合は、あなたが知っていることを自由に共有してください。

神は、人々が単に既存のものを改善するのを助けるのではなく、なぜこれらのものをどんどん作り続けるのかを知っているだけです。何か推測があれば、その謎を解いてもらいたいと思います。

編集:ドキュメントにアクセスするには、質問票に記入して何かについての知識を共有するか、専門家にそうするように働きかけてください。

アンケートを行うには、ここにアクセスしてくださいhttp//www.dancancro.com/technology-questionnaires/


9

私もヨーマンを使うのが好きです。良い足場を得るためにこれらを試してください:

npm install -g generator-angular  # install generator
yo angular                        # scaffold out a AngularJS project
bower install angular-ui          # install a dependency for your project from Bower
grunt test                        # test your app
grunt server                      # preview your app
grunt                             # build the application for deployment

このジェネレーターは現在かなり古いので、もうお勧めするかどうかはわかりません。
dmackerman 2016年

はい。ただし、yeoman.io / generatorsで別のものを見つけてください。角度/角度2を検索
HankCa 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.