[编程新手系列] 程序员必备工具箱

翻译 Summer ⋅ 于 2周前 ⋅ 最后回复由 Linz 1周前 ⋅ 1698 阅读 ⋅ 原文地址
这是一篇社区协同翻译的文章,已完成翻译,更多信息请点击 协同翻译介绍

作为一名初级开发人员,我们经常会遇到许多不同的技术,对我们来说都是新鲜和陌生的,伴随着总有人说这将是下一个热点,我们必须学习。 类似的话我已经听了好多年了,并且已经找到了一些模式,可以适当的抽象出你的工具箱应该包含那些类型的技术。

首先,我相信全栈的心态,每一个开发者都应该可以完成任何工作。这并不是说专家或者全职专业技术人员没有发展空间,我认为最好的开发人员是与其他技术混合在一起的人,并把其中的模式带回自己的“母语”,保持学习技巧,保持开放的心态。总而言之,我认为开发者应该对所有的事情都懂一点,下面是我是职业生涯的基础。对于每一个优秀的开发者来说,哪些应该在必备工具箱?

Tinywind 翻译于 2周前

一个Web框架

这可能是 Ruby on RailsNode.jsPHPPhoenixPerfect, 等等,其实这无关紧要。 要点是web框架应该做什么--根据给定的HTTP请求从数据库创建,读取,更新和删除(CRUD)数据,并提供响应。同时也可能启动后台任务或者将数据添加到后台队列/流中等待稍后处理。 

丁海军 翻译于 2周前

任务调度执行/计划

如上所述,任务执行者是对一些需要在未来的某个时间点需要执行的任务十分有益的, 例如 Cron、sidekiqVerk,甚至是桌面任务调度程序。这里需要了解的是,一些任务是根据时间点或者是根据请求而生成的,但是可以在以后再去完成,举个例子,处理文件的上传,这里的响应是:‘‘我们得到了你的文件,谢谢!’’,但是后台的任务可能是实际处理文件的操作也可能是当完成文件上传后发送email。

科大大 翻译于 2周前

队列软件

比如 RabbitMQ 或者 Amazon SQS 或者 Azure Queue Storage/Message Bus.
意思是一些软件在后台被命名为“生产者”,他们将数据放在队列中,以供“消费者”消费。这允许您根据服务器上的负载启动或停止更多的消费者。

rufo 翻译于 2周前

查看其他 1 个版本

Stream Software

与队列类似,流数据一边被加入到队列里面然后同时被消费者组消费(客户端),流数据处理工具(服务端)让数据流经过工具内部时像河水一样流过,消费者组可以不断的消费数据(实际上是一个从服务器端拉取流数据的过程),比如kafka(php的rdkafka),Amazon Kinesis等, 队列和流之间的区别也很重要,但现在不是讨论这个问题的时候。

我是谁 翻译于 2周前

查看其他 1 个版本

前端框架

像 EmberJSAngularReact+ReduxVue.js, 甚至是 jQuery! 了解前端框架的想法是学习浏览器差别,语言解析/编译,Web调试/检查,响应式设计,数据的解序列化和UI /自动化测试等有趣的课程。

移动运用APP框架

虽然不是必需的,但我认为学习至少一个移动平台(如iOS,Android或Windows 10 Phone)会很有用。它也可能包括 CordovaReact Native, 甚至是 Unity. 移动编程教授了许多关于技术约束编程方面的知识,并且权衡了很多用户体验,比如小屏幕尺寸,电池寿命和隐私等。IDE的支持也为工作提供了一个愉快的环境。

OneStep 翻译于 2周前

脚本语言

有些时候你需要一些快速和肮脏的一些脚本。这可能是AppleScript,Bash,Powershell,Python或Ruby。只是为了一个一个自动化任务,或者与Cron或类似的一次又一次地运行。每个好的开发者都应该知道什么时候,哪里可以写点快速而又好玩的东西,而且知道如何去做是非常棒的。

关系型数据库

这些可以是 MySQLPostgreSQLMS SQL Server 或者任何类似的东西. 这里的想法是了解关系数据库如何工作以及如何存储和搜索记录。如果您了解了存储过程与代码过程的好处,以及在存储和检索时可以进行哪种优化,那将是一件好事。

OneStep 翻译于 2周前

非关系数据库

有越来越多的非关系数据库,并且每个都被优化来完成特定的任务,例如 用于搜索的 ElasticSearch 或者用于基于时间的数据的 Druid. 这也可能包括更通用的NoSQL数据库,如 MongoDB 和 DynamoDB. 您应该尝试了解NoSQL数据库和SQL数据库(非关系vs关系)

有了这些,你可以创建任何你想要的东西,或者为你贡献几乎所有的软件业务。当然,一周之内你不必全部学习,这将需要几年的时间。你也不需要热衷于所有工具,你可以选择 - 这是你的事业。可能还有其他一些值得一提的技术,我已经忘记了,所以轻轻地冷静地提及它们给我!祝你好运 :)

OneStep 翻译于 2周前
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

本帖已被设为精华帖!
回复数量: 8
  • Yvan
    2周前

    沙发!:grinning:

  • Summer MOD A Life-long learner.
    2周前

    @OneStep 直接贴 Google 翻译?

  • OneStep
    2周前

    @Summer :disappointed_relieved: 有少量修改

  • Summer MOD A Life-long learner.
    2周前

    @OneStep 你自己能看懂不:

    移动编程教授了许多关于技术约束的编程方面的知识,并且权衡了很多用户体验的权衡,比如小屏幕尺寸,电池寿命和隐私。IDE支持也为工作提供了一个愉快的环境。 像 Kafka, Amazon Kinesis 等. 队列和流之间的差异也很重要,但是现在不是来解决这个问题的时候。 .

  • Summer MOD A Life-long learner.
    2周前

    @OneStep 太随意了哈

  • github20140910
    2周前

    @Summer 哈哈哈,要不加个翻译评分,也起个过滤作用

  • dinghua
    2周前

    @Summer 可能需要一个 :arrow_down: 按钮

  • Linz
    2周前

    有些翻译得不太好

暂无评论~~
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter