您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > 小程序

用一个小时编写一个小程序

时间:2023-04-06 13:35:20  来源:CSDN  作者:

【CSDN 编者按】要想快速编写程序,必须要认真考虑技能、工具选择、摊销和回报。

原文链接:https://buttondown.emAIl/hillelwayne/archive/how-much-can-you-code/

作者 | HILLEL WAYNE 译者 | 弯月

责编 | 王子彧

出品 | CSDN(ID:CSDNnews)

首先,我们来探讨一下哪些任务适合自动化。

如上图所示,如果你花费一天多的时间实现了每个月只能节省 5 分钟的任务,那么纯属浪费时间。

当然,自动化除了节省时间之外,还有其他意义。例如, 花一天时间自动化每个月只能节省5分钟的任务并不划算,但如果你十分厌恶这项任务,那么仍然是值得的。

这个问题会引出另一个问题:为什么你需要花费一天时间?

为什么不能是一个小时?

如果你能快速写出完整的程序,那么编写程序就能成为解决更广泛的问题、且节省时间的解决方案。一个小时是“快”的一个很好的衡量标准。一个小时就是一顿午饭的时间。

谈及快速编写程序,我认为我们必须考虑到下面这些因素。

技能

快速编程是与软件工程截然不同的一项技能。软件工程原则并不适用于快速编程。当然,良好的组织和清晰的意图仍然很重要,但是很多 SE 理论都是围绕如何作为团队的一部分持续开发现有代码库。例如,我很少为自己的脚本编写测试。设置测试需要时间,使用固定装置设置集成测试需要更多时间。

同时,快速反馈非常重要,甚至比常规编程更重要。我通过一种方式来快速设置和执行脚本。

代码是否方便理解也无关紧要。这些程序都很小,如果你无法理解代码,完全可以重写。如果需要扩展,也可以“适当地”重写。

对于脚本中应该使用多少第三方依赖项,我有点纠结。有时,第三方库确实很有帮助,但是你需要花时间学习和了解,而且许多第三方库的文档都很糟糕。我认为,能够弥补语言本身缺陷的依赖是好的,但是你为了逃避学习而选用某些库就不太正确。我用 click 制作了一个 Python/ target=_blank class=infotextkey>Python 工具,很快就后悔了。

工具的选择

关系到工具选择的因素有下面几个。如果我们想尽可能快速地写出一个完整的程序,就应该选择简洁而富有表现力的语言。简洁的语言更容易调整,因为你需要修改的字符更少。样板代码则是负面因素。

动态语言具有一定的优势。运行时错误比静态错误更好。如果程序在执行第 20 行代码时出现类型错误,那么运行时故障仍会执行第 1~19 行,这就可以为你提供这些代码能否正常工作的信息。

一个同样重要的因素:选择适合的领域。这取决于需要自动化的任务。有些语言有很好的内置函数,有些语言恰好有很好的库。有时,最好的工具不是编程语言。最近,我遇到了一个任务:抓取谷歌地图上 100 个街道地址的 url,我采用了 Power Automate。PA 是一款有点糟糕的工具,但它有良好的浏览器自动化技术,非常适合这项任务。此外,它在 windows 11 中是免费提供的。所以,最终我们只用了半个小时就完成了任务。

此外,我还用正则表达式、shell(特别是 PowerShell)以及电子表格解决了很多问题。

其他注意事项:一个好的 CLI 库是必须的。拥有一个良好的 GUI 框架固然很好,但不那么重要。你需要保证能够运行单个文件,并且能够使用调试器。如果条件允许,还可以考虑使用非常友好的 Copilot。

摊销

摊销指的是,算法有一些昂贵的操作和许多开销低廉的操作,因此整体运行时间低于你的预期。例如,向数组追加元素的开销是 O(1),即使有时你需要花费O(n) 来调整数组的大小,整体开销依然是 O(1),因为这种情况很少发生。

对于此处讨论的问题来说,摊销指的是,为编写脚本投入的时间可以加快将来编写脚本的速度。这对于提高技能非常重要,因此我们应该详细讨论一下。首先,熟练之后能减少查找信息的时间。

通过搜索引擎查找信息需要花费很多时间。在软件工程中,这点时间开销并不重要,因为我们的大部分时间都花在阅读上,但是现在你需要快速编写程序。将信息移动到本地缓存(文本文件、注释)很好,如果你已经掌握了这些信息,那就更好了。

此外,编写脚本会生成可供你复制粘贴的代码片段。我制作第一款应用时花了很多时间,但后面的应用编写速度明显加快,因为我可以复制粘贴已有的代码。至少,在不同的脚本中查找某些代码的速度比上网搜索更快。

编写脚本会让你接触到语言中极具表现力的黑魔法,例如宏和元编程。你知道将哪些代码放入团队维护的代码库中是很糟糕的?但是,这些黑魔法非常适合快速编写脚本,一旦你学会了如何使用这些黑魔法就会事半功倍。

因此,真正掌握一门语言有很大的好处,同时了解许多不同的工具也有好处。



Tags:小程序   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Java扫码点餐小程序源码 智慧点餐系统源码 点餐小程序 外卖订餐
移动端:APP+小程序+公众号后端:JAVA数据库:MySQL源码类型:WinForm 就不多做多余的介绍了,当前可以实现外卖点餐,在店扫码点餐。餐桌管理可按照桌位号点餐,财务管理和账单管理,有一台...【详细内容】
2022-04-01  Search: 小程序  点击:(551)  评论:(0)  加入收藏
微信 小程序 POST请求中文乱码的解决方法
最近在处理小程序,用到了中文传到后台的情况,前端的代码:wx.request({url: '.........',data: {.......},header: {'Content-Type': 'application/x-ww...【详细内容】
2019-07-15  Search: 小程序  点击:(2771)  评论:(0)  加入收藏
▌简易百科推荐
京东小程序数据中心架构设计与最佳实践
一、京东小程序是什么京东小程序平台能够提供开放、安全的产品,成为品牌开发者链接京东内部核心产品的桥梁,致力于服务每一个信任我们的外部开发者,为不同开发能力的品牌商家提...【详细内容】
2024-03-27  dbaplus社群    Tags:小程序   点击:(10)  评论:(0)  加入收藏
我们一起解锁小程序开发新姿势
如今,鸿蒙开发日益受到广大开发者的关注,而小程序开发也早已成为互联网领域的热门话题。那么,我们不禁要问:是否有可能将这两者融为一体,将小程序开发的便捷与高效带入鸿蒙生态中...【详细内容】
2024-03-20  前端充电宝  微信公众号  Tags:小程序   点击:(13)  评论:(0)  加入收藏
一段微信小程序前端与后端连接的代码,带注解
微信小程序的前端和后端连接通常涉及到使用微信小程序提供的网络请求API与后端服务器进行通信。以下是一个简单的示例,展示如何使用微信小程序的前端代码向后端发送请求并处...【详细内容】
2024-01-24    简易百科  Tags:代码   点击:(55)  评论:(0)  加入收藏
小程序必须要安装部署SSL证书吗?
自2017年9月21日,微信发布一则《关于公众平台接口不再支持HTTP方式调用的公告》。明确表示,为保证数据传输安全,提高业务安全性,公众平台不再支持HTTP方式调用。应避免影响正常...【详细内容】
2024-01-02  云诏    Tags:小程序   点击:(70)  评论:(0)  加入收藏
一文了解什么是微信小程序
如果您无需下载和管理即可获得像原生 iOS 或 Android APP 一样流畅的体验会怎样?腾讯通过微信小程序实现了这一替代方案。一、什么是微信小程序?它们与原生应用程序和 H5 迷你...【详细内容】
2023-12-26  小文智能    Tags:微信小程序   点击:(90)  评论:(0)  加入收藏
小程序开发需要多少钱?小程序开发的真实成本:报价案例、费用价格表与开发周期解析
分享一个上海客户的微信小程序定制开发的需求,销售课程与相关商品。项目分为后台管理系统和小程序前端,功能不是太复杂,周期大概1个月,费用3万。大家可能比较关心几个地方,比如一...【详细内容】
2023-12-11  久码小程序开发  今日头条  Tags:小程序   点击:(113)  评论:(0)  加入收藏
小程序技术分享:安全机制与运行机制
小程序凭借其高曝光率、开发成本低、运行更流畅等优势和特点,一经推出就被广泛使用,面对小程序的火爆,自然而然地,就有很多开发者转战小程序领域,本文主要带大家了解下小程序运行...【详细内容】
2023-12-07  前端实习生Findan    Tags:小程序   点击:(138)  评论:(0)  加入收藏
微信小程序的编译原理
2021年来,随着科技的进步,人们的生活水平也在不断提高。现在,微信小程序已经成为了现代人生活中不可或缺的一部分,它可以帮助我们更方便地查找信息,购物,预订机票和酒店,进行社交等...【详细内容】
2023-12-06  前端实习生Findan    Tags:小程序   点击:(126)  评论:(0)  加入收藏
模板小程序和订制开发小程序的区别?
相比外卖APP,外卖小程序是不用下载到手机的,所以对于用户来说更方便一点。简单方便的程序用户才更愿意使用。现在不少商家越来越重视外卖小程序开发,想通过外卖小程序冲进这片...【详细内容】
2023-11-24  重庆洺宸传媒    Tags:小程序   点击:(232)  评论:(0)  加入收藏
一分钟学会用宝塔面板搭建小程序
宝塔面板搭建小程序怎样用?想要使用宝塔面板搭建小程序?这里是实用教程,帮助您快速上手。在本教程中,我们将扼要了解宝塔面板的基础知识,并一步步演示怎么搭建一个小程序。第一步...【详细内容】
2023-11-15    网络  Tags:小程序   点击:(191)  评论:(0)  加入收藏
站内最新
站内热门
站内头条