网站改版与建设前端设计与任务处理器解决方案详解。深圳网站建设公司发现对很多前端工程师来说,Sass 是接触到的第一个编译系统,或者说是任务处理器。在这之前,我们的工作方式通常是修改 CSS 文件然后刷新浏览器。Sass 打开了自动化处理的大门。有些人可能会认为我们只是在工作流中多增加了一条指令,但对于那些第一次发现 Sass 的人来说,这个小小的任务是非常值得一试的。
网站建设公司资深框架工程师提醒Compass 让我们不仅发现 CSS3 的混入可以节省很多查询 CSS3 样式生成器(http://css3generator.com/)的时间,还认识到了项目中配置文件的作用。有了 Compass,我们可以创建一个 config.rb 文件,用来描述重要文件夹的路径、指定开发环境与线上环境的设置,并绑定重要的调试工具。这个配置文件可以保留并分享给团队的其他人,让新人更容易上手。随着 Sass 社区的发展,越来越多的 Compass 插件涌现出来,从先进的颜色函数到栅格系统、布局比例工具、媒体查询管理,等等。这些工具都作为 gem 组件发布,可以直接导入任何一个使用 Compass 的项目中。
Compass 还可以让模块开发者使用 Ruby 的功能,比如访问本地文件、执行 Ruby 函数、编译 Ruby 模板和把数据传递回 Sass 文件。这允许用户在模块中进行复杂的数学运算,而这是单独使用 Sass 所无法实现的。Compass 还具备这样的功能:用不同文件夹中的 PNG 图片生成雪碧图,或获取图片文件的宽度和高度。如今只用一条 compass compile 指令,开发人员就可以把所有的 Sass 文件编译到目标 CSS 所在的目录,并且图片和字体都分别指向各自的路径。Sass 文件可以使用流行的框架来编译,如 Susy grids、Modular Scale、Breakpoint 和 Color Schemer。Compass 在创建若干个自定义的雪碧图,批量获取图片的尺寸,并在 CSS 中设置它们的高度和宽度时,就会完成上述的工作。
Compass 不仅是我们对编译系统的第一次接触,也是很多人不愿使用最近很火的新型 Node.js 任务处理器的首要原因。简单了解 Grunt 和 Gulp 这类工具之后,很多人(包括我)的第一反应都是:“噢,这跟 Compass 差不多,只是更复杂些而已。”对于一个完全使用 Compass 来构建编译流程的开发人员来说,配置 Grunt 来编译 Sass 像是一个完全不必要的步骤。然而,一旦配置好 Gulp 或 Grunt 来编译 Sass,我们就开始关注其他可做的事情,并且很快意识到我们的编译流程与之前相比还是有所不同的。
网站改版与建设前端设计与任务处理器解决方案之在任务处理器中完成一切
使用基于 Node.js 的任务处理器,在我的工作流中有一点多米诺骨牌效应。作为一名 Grunt 用户,我拥有 13 000 多个可用模块,而且这些模块为我的工作流提供了各种各样的功能,而不单单是 Sass 和 CSS。下面是我使用任务处理器实现的一些功能:
· 安装需要的 Ruby 库和 Bower 安装包
· 清理临时文件夹
· 创建软连接
· 编译 Sass
· 合并 JavaScript
· 加载第三方 JavaScript 库
· 把 SVG 文件编译成图标字体
· 对图片进行处理,减少文件体积,裁剪成各种尺寸
· 同步文件到远程服务器
· 创建 Git 标签
· 运行可视化的回归测试
· 生成代码的样式文档
· 自动生成浏览器厂商的前缀
· 编译组件库
· 优化我的 Sass、CSS、JavaScript、JSON,等等
· 基于 JSON 模式来验证数据
· 启动 Node 和 PHP 服务器
· 监听文件改动来刷新浏览器
任务处理器使前端架构师能够创建网站的蓝图。四个核心都被打包成自动化流程,通过自动化技术,我们不仅规范了流程,同时还对它进行了优化。代码检查工具能够帮助我们规范和提高代码标准。测试组件在本地或者持续集成工具(比如 Jenkins 或 TravisCI)中运行。只需点一下鼠标,就可以持续编译出新的代码并发布到线上。此外,文档还可以自动读取代码中的注释、模板文件和描述大纲。
网站改版与建设前端设计与任务处理器解决方案之更深的探索
刚接触前端架构时,我还没听说过 Grunt,那时对创建 Compass 模块非常感兴趣。我从编写可以支持新项目的小型 gem 包开始,思考怎样利用 gem 包把一个基础样式同时发布到多个网站上。虽然这两个例子都是有效的,但它们反映出,如果我对 Ruby 了解不多,那么能做的事情将会非常有限。再者,学习了一些基本的 Ruby 教程之后,我意识到除了 Ruby on Rails 应用相关的知识,市面上并没有太多学习 Ruby 编程的资源,更不用说使用 Ruby 编写 Compass 模块的了。对于 Grunt 而言,我的优势之一是已经掌握了编写模块所使用的语言:JavaScript。在使用一些模块几个月之后,我发现它们已经能够满足我 95% 的需求。虽然我现在还不是 Node.js 开发者,但在某些场景下还是可以给一个模块添加特性或者修复 bug,然后把它发布出去。有一次,我想在流程中使用 Grunt-PhantomCSS 模块,但是发现必须重写项目的大部分代码来适配它。因此,我复制了这个项目,做了一些必要的改动并提交到 GitHub 上,这样其他人就可以在他们的项目中使用它了。我成为了一名模块编写者,而不仅仅是模块使用者。好了,
深圳网站建设公司本文关于“网站改版与建设前端设计与任务处理器解决方案详解”知识就分享到这里,如果贵公司有网站需要改版或者重建,请拨打我们网站联系方式,有专业客服免费为您提供完善的建站改版方案。谢谢关注,博纳网络编辑整理。