Web开发利器推荐(一)

简介: 看到一个很棒的系列,介绍了很多对web开发很有帮助的利器,解决了很多开发中遇到的繁琐事,翻译来分享一下:

Prepros

image.png

这是很赞的预处理程序。 Prepros能编译很多种语言 (LESS, Sass, SCSS, Stylus, Jade, Slim, Coffeescript, LiveScript, Haml, Markdown),实时压缩和连接JS,优化图片,当CSS或HTML变化时自动刷新浏览器,多设备测试。

所以你不用购买LiverloadGhostlab,Prepros是开源、免费的。 类似的功能只能通过Grunt实现,但Prepros让事情变得简单。

付费版本提供了 1-Click FTP/SFTP 部署、远程设备的检查和调试、其他有用的解决方案。


Brackets

image.png

Adobe团队用NodeJS为web程序员开发的开源编辑器。 它的界面有点像 Sublime Text,它有实时自动加载工具、插件系统、HTML/CSS/JS自动补全。 Brackets允许在HTML文档里编辑CSS,按下CMD/CTRL + E后,找到相应选择器。 里面还很多像CSS过渡编辑器这样的智能工具。


VerbalExpressions

谁不爱写正则表达式? 如果用VerbalExpressions写JavaScript进行URL检查的正则表达式可能会像这样:

// Create an example of how to test for         correctly formed URLs

var tester = VerEx()

       .startOfLine()

       .then( "http" )

       .maybe( "s" )

       .then( "://" )

       .maybe( "www." )

       .anythingBut( " " )

       .endOfLine();

// Create an example URL

var testMe = "https://www.google.com";

// Use RegExp object's native test() function

if( tester.test( testMe ) ) alert( "We have a correct URL "); // This output will fire

else alert( "The URL is incorrect" );

VerbalExpressions也能操作 Ruby, C#, Python, Java, Groovy, PHP, Haskell, C++, Objective-C的正则。


HTML.js

这个是 fork 自 Voyeur.js 的库,压缩后才2KB,语法良好,用于遍历和操作DOM。


查找元素

HTML.div.h1; // body>div>h1, return H1 elent

HTML.div.h1.innerHTML = "Ilya Pestov";

HTML.div.ul.li; // return array of li elements

HTML.find("#example"); // return one node

HTML.find(".example"); // return array of nodes

HTML.find("#example").h1.em;

回调函数

HTML.tag...use( callback(element) ) Root HTMLElement

HTML.div.ul.li.use(); // return div element

HTML.div.ul.li.use(function(li, i) {

       // loop in list

       li.innerHTML = "List item #" + i;

});

HTML.div.ul.use(function(ul) {

       ul.style.background = "blue";

       ul.li; //..

});

创建元素

HTML.create.tag...mult( factor ) Array

HTML.create.div; //return div element

HTML.create.div.h1; //return H1 with div parent

HTML.create.div.h1.em;

HTML.create.ul.li.mult(10).use(function(li, i) { // create 10 li elements

    li.innerHTML = "Created list items!"; //

});

//HTML.tag...eq( begin , end ) HTMLElement|Array

HTML.create.ul.li.mult(10).eq(7).innerHTML = "The 8th item.";

HTML.ul.li.eq(2, 6).use(function(li, i) {

    li.create.em.innerText = "Hello World";

});

HTML.js还提供了操作DOM的好方法: .each(), remove(), ify(), ._other(), _fn()等。详情请看文档。


LiveScript

LiveScript是一种编译为JavaScript的语言。 它能直接映射到JavaScript,能避免重复的样板。

take = (n, [x, ...xs]:list) -->

 | n <= 0     => []

 | empty list => []

 | otherwise  => [x] ++ take n - 1, xs

take 2, [12345] #=> [1, 2]

take-three = take 3

take-three [3to8] #=> [3, 4, 5]

# Function composition, 'reverse' from prelude.ls

last-three = reverse >> take-three >> reverse

last-three [1to8] #


写成JS

var take, takeThree, lastThree, slice$ = [].slice;

take = curry$(function(n, list){

 var x, xs;

 x = list[0], xs = slice$.call(list, 1);

 switch (false) {

 case !(n <= 0):

   return [];

 case !empty(list):

   return [];

 default:

   return [x].concat(take(n - 1, xs));

 }

});

take(2, [1, 2, 3, 4, 5]);

takeThree = take(3);

takeThree([3, 4, 5, 6, 7, 8]);

lastThree = function(){

 returnreverse(takeThree(reverse.apply(this, arguments)));

};

lastThree([1, 2, 3, 4, 5, 6, 7, 8]);

functioncurry$(f, bound){

 var context,

 _curry = function(args) {

   return f.length > 1 ? function(){

     var params = args ? args.concat() : [];

     context = bound ? context || this : this;

     return params.push.apply(params, arguments) <

         f.length && arguments.length ?

       _curry.call(context, params) : f.apply(context, params);

   } : f;

 };

 return_curry();

}

git-html5.js

Git在JavaScript下的应用。 类似Brackets的插件,我很肯定这是geek们的好帮手。


众筹: Ghost - 一个博客平台

据我所知这是第一次众筹合作的CMS。 作者John O'Nolan的项目在Kickstarter获得了400000美金,是他所需金额的785%。 Ghost 是开源项目,设计美观,可以理解的和自适应的管理界面。


Infogr.am

Infographics 不仅能够管理大量的信息,也更生动地把数据显示在时间和空间上,还能统计趋势。 Infogram 是非常简单的创建图表的工具。 它能把图表,地图,照片,视频和数据导入XLS,XLSX或CSV。 据我所知,这是唯一交互式的图表生成器。 这还是个社交网络。 能与朋友分享信息和嵌入到您的网站。

相关文章
|
3月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
172 3
|
29天前
|
前端开发 安全 JavaScript
2025年,Web3开发学习路线全指南
本文提供了一条针对Dapp应用开发的学习路线,涵盖了Web3领域的重要技术栈,如区块链基础、以太坊技术、Solidity编程、智能合约开发及安全、web3.js和ethers.js库的使用、Truffle框架等。文章首先分析了国内区块链企业的技术需求,随后详细介绍了每个技术点的学习资源和方法,旨在帮助初学者系统地掌握Dapp开发所需的知识和技能。
2025年,Web3开发学习路线全指南
|
2月前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
200 45
|
2月前
|
存储 前端开发 JavaScript
如何在项目中高效地进行 Web 组件化开发
高效地进行 Web 组件化开发需要从多个方面入手,通过明确目标、合理规划、规范开发、加强测试等一系列措施,实现组件的高效管理和利用,从而提高项目的整体开发效率和质量,为用户提供更好的体验。
35 7
|
2月前
|
开发框架 搜索推荐 数据可视化
Django框架适合开发哪种类型的Web应用程序?
Django 框架凭借其强大的功能、稳定性和可扩展性,几乎可以适应各种类型的 Web 应用程序开发需求。无论是简单的网站还是复杂的企业级系统,Django 都能提供可靠的支持,帮助开发者快速构建高质量的应用。同时,其活跃的社区和丰富的资源也为开发者在项目实施过程中提供了有力的保障。
|
2月前
|
开发框架 JavaScript 前端开发
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势。通过明确的类型定义,TypeScript 能够在编码阶段发现潜在错误,提高代码质量;支持组件的清晰定义与复用,增强代码的可维护性;与 React、Vue 等框架结合,提供更佳的开发体验;适用于大型项目,优化代码结构和性能。随着 Web 技术的发展,TypeScript 的应用前景广阔,将继续引领 Web 开发的新趋势。
43 2
|
2月前
|
前端开发 API 开发者
Python Web开发者必看!AJAX、Fetch API实战技巧,让前后端交互如丝般顺滑!
在Web开发中,前后端的高效交互是提升用户体验的关键。本文通过一个基于Flask框架的博客系统实战案例,详细介绍了如何使用AJAX和Fetch API实现不刷新页面查看评论的功能。从后端路由设置到前端请求处理,全面展示了这两种技术的应用技巧,帮助Python Web开发者提升项目质量和开发效率。
58 1
|
2月前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
2月前
|
安全 数据库 开发者
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第26天】本文详细介绍了如何在Django框架下进行全栈开发,包括环境安装与配置、创建项目和应用、定义模型类、运行数据库迁移、创建视图和URL映射、编写模板以及启动开发服务器等步骤,并通过示例代码展示了具体实现过程。
73 2
|
3月前
|
设计模式 测试技术 持续交付
开发复杂Web应用程序
【10月更文挑战第3天】开发复杂Web应用程序
47 2