角度种子是事实上的空项目吗?

Ste*_*and 83 angularjs

在确信学习和使用Angular.js之后,我将启动一个具体的Web UI应用程序,以启动经验学习轮.(该应用程序将是一种个人计划,列表,提醒,番茄钟技术导向,等等...)

我看到的Angular的作者之一的教程视频是关于最佳实践的.最好的做法之一是从angular-seed项目开始.

这就是我要做的事情,但是在谷歌搜索之后,已经有至少两个其他项目声称是一个很好的起点:

  • angular-enterprise-seed
  • angular-sprout

我是初学者,但我喜欢长期投资.我应该担心使用别的东西angular-seed吗?我觉得现在问自己这个问题还为时过早,但如果还有其他两个项目,也许还有一些很好的理由.

ben*_*rtz 60

我发现尽管许多人使用各种种子项目,但角度应用程序(或任何javascript web应用程序)的最简单和最一致的起点是Yeoman.

这个应用程序是一个脚手架工具,允许您指定生成器,它将构建您的应用程序的内核,完成您想要的任何库(通过bower)和一个工作的grunt构建文件(大多数生成器有库存与构建任务,服务器实时编辑和测试任务的任务)

虽然像这样的应用程序必然是固执己见的,但它产生的脚手架仍然非常通用.

例:

mkdir my-app
cd my-app
npm install generator-angular
npm install generator-karma
yo angular
Run Code Online (Sandbox Code Playgroud)

  • 我相信上面的第3行应该是`npm install generator-angular`. (8认同)

Rob*_*ian 26

它们都有不同的优点,因此取决于您的目标.我写了有角度的企业种子,可以说出它的相对优点.

  1. 它与服务器无关. 这很重要,因为AngularJS的核心原则,也是使其具有吸引力的众多因素之一,它遵循Client MVC范例.这意味着它完全与任何和所有服务器技术分离.许多现有种子将AngularJS与服务器技术联系起来,例如angular-sprout(NodeJS)或Grilled-feta(Google App Engine/Java).对于上述项目,如果NodeJS和/或Java环境尚未在您的系统上,那么您将不得不经历几个环节才能看到种子出现.这可能会疏远PHP和Python开发人员,从而限制了项目的社区.

  2. 在几秒钟内启动并运行.因为它与服务器无关,所以它可以在任何容器中运行(就此而言就是文件系统).建议的方法是从根目录运行"python -m SimpleHTTPServer" - 这在Mac和Linux上是原生的,因此没有其他步骤.

  3. 实时预览. 检查项目状态很便宜,因为实时版本总是托管在github上.因为它与服务器无关,所以这是通过将master从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样式.有模态,分页,警报,网格等组件示例.

如果你想学习这些作品是如何起作用的话,角形种子作为一种学术练习是很好的,但它会让你渴望一个更大的跳跃点.

我没有使用角芽,所以我不能说它的优点.也许有一些空间来合并角芽和角企业种子?

  • 如果您确实需要服务器耦合,请查看https://github.com/robertjchristian/service-nucleus,它将angular-enterprise-seed与netflix-karyon集成,并添加其他功能.开箱即用,部署和战争.(基于Java,包括通过泽西岛的REST). (2认同)

Mor*_*red 18

我认识到这是一个较老的问题,但它似乎有相当多的观点,因此有必要推荐最近成为Yeoman和angular-seed:ng-boilerplate的非常受欢迎的替代品.ng-boilerplate与angular-seed的不同之处在于它是为大型生产网络应用程序而设计的,因此在我看来,它比angular-seed更好.

为了解释应用程序启动的Yeoman和ng-boilerplate方法之间的差异,我将引用ngbp的创建者Josh D. Miller:

Yeoman太棒了.但是我对AngularJS的生成器的问题在于它们是按层而不是按功能进行打包.如果我们将所有控制器存储在"controllers"文件夹中,将所有服务存储在"services"文件夹等中,并将所有测试存储在其他地方,那么重用我们的组件可能非常具有挑战性.

这也是 Josh在Yeoman角度发生器问题论坛上的相当不错的讨论,关于ng-boilerplate与yeoman的设置更加深入.


Dan*_*cro 11

需要明确的是,Yeoman不是发电机.Yeoman是制作发电机的格式/系统.使用Yeoman制作的几个生成器可用于生成AngularJS应用程序.人们经常错误地将他们中的一个或另一个称为"Yeoman"发电机.但是有很多.困惑了吗?Yeoman不是唯一的发电机制造系统.早午餐是另一个.

要回答您的问题,这里是一个非常全面的并排比较许多AngularJS生成器,可以用来开始使用AngularJS创建Web应用程序.目前,它包含这些东西的200多个不同方面.其中之一是文件组织风格.因此,如果这对您来说很重要,您可以轻松查看哪些文件按功能组织.这对我来说.

还有一些还有待补充.这个帖子中提到的两个对我来说都是新的.但是,这种比较应该让您对选项及其比较方式有所了解.它也是可编辑的,所以如果你们中的任何一个都是这些东西的专家,请随意分享你所知道的.

上帝只知道为什么人们会继续制造越来越多这些东西,而不仅仅是帮助改善现有的东西.如果你有任何猜测,我很乐意解开这个谜团.

编辑:为了获得对文档的访问,我要求您填写调查问卷以分享您对某事物的知识,或者游说专家这样做.

到这里做问卷调查:http: //www.dancancro.com/technology-questionnaires/


dma*_*man 9

我也喜欢使用Yeoman.尝试这些来获得一个好的脚手架:

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
Run Code Online (Sandbox Code Playgroud)