优秀的程序员需要擅长数学吗?

2023-05-16

天有很多年轻人或经验不足的程序员在 论坛发帖、在 Stack Exchange 网站问:「为了成为优秀的程序员,我需要擅长数学吗?」,在我还年轻的时候,我也问自己同样的问题。最近,我醉醺醺地、也是出于无聊,竟然 Google 了同样问题,差不多有 10 多年没有思考过这个问题了。在我浏览相关话题时,出现的答案模式被归结为以下三个主要类别:

  • 需要

  • 不需要

  • 看情况

貌似「需要」和「不需要」经常带有个人主观偏见,反而显得有点儿草率的反应综合征。因此我把精力更多地放在「看情况」的选项上,以确保「需要」被证 明为一种更加普通的观点。我决定就这个问题写点儿东西,考虑到这一点,我的醉醺醺的念头开始兴奋起来,这将促使我不会再忽视它。为了成为一名优秀的程序 员,一个人是否需要擅长数学的问题,可以从哲学和技术两个方面解答。我打算坚持哲学层面。意识到它为什么对我重要,是因为一个更年轻的我,为了找到基于不 成熟和懒惰而萌生的「不需要」选项,将要投入更多的时间。

首先,我们必须尝试建立擅长数学的资格。一个人可以在既定数学原理或建模方程上,明白全局概念以适应情况,而另外一个人或许在数学的分析部分,比如 长于计算、以及操作表达式和方程。在我看来,这两种情况下,二者的平均数学能力都不错。然而,在上面提到的两个特征上有着高度竞争力的一个人,可能成为被 视作「擅长」数学的最佳候选人(记得把凤毛麟角的约翰·冯·诺伊曼归入精通数学的类别)。就我目前在大学数学课上观察到的,那些真正擅长数学的人们不属于 大多数。这使得答案更加复杂,「看情况」选项的有效性得到了增强。

在「Hello World」和 C++ 的名字到处乱放、而不明白其所以然时,成为一名程序员的阶段通常从掌握基础的教程开始,例子通常包含了数学。设想一下,打算编程的某个人,将很可能自然而然地深究问题,开始怀疑数学在编程中能否发挥切实作用。

坐下来为了编程而编程,除了学习既定编程语言的语法和机制,不会掺杂太多目的。最终,编程是要解决问题,并在数字王国里创新。通过为计算机编程,你 想解决或创新什么?如果你想编写网页或自动化任务的脚本,数学不会起到较大作用。然而,如果你对图形编程、开发业务和科学方面的应用有兴趣,那么数学在开 发周期里将发挥很大作用。

一旦你在特定领域有了客观目标,问题就更多地变成了学习与该领域相关的数学。有了必需的数学,以及数学思维的强大基础,就可以产出伟大的软件。因此 它真正取决于你想用编程完成什么任务。不管怎样,上面的说法不是要否定学习数学。在学习编程中,我已经注意到了一个地方,问自己是否应该学习新东西,是极 端错误的。因为软件开发根植于新技术的持续学习。

一个人为了成为优秀的程序员是否需要擅长数学,对于这个问题,我们现在考虑它的一个选项「需要」。对于不擅长的人而言,我建议他们看看数字计算机的 历史、以及那些推动机器革命的幕后人。数字计算和编程根植于数学。学习数学有助于提高问题解决的技巧和分析思维。是的,如果你想解决需要数学的、各种领域 的复杂问题,那么擅长数学对于优秀程序员而言,是不可或缺的。我尽量从不设限,当困难出现时,就勇往直前吧。


来源:51CTO

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

优秀的程序员需要擅长数学吗? 的相关文章

  • ros:出现:error: ros/ros.h: No such file or directory

    出现这个问题是因为在cmakelist txt中没有声明对roscpp的依赖 在find package中添加roscpp 重新执行就ok了 转载于 https www cnblogs com fuhang p 9934092 html
  • IOS-如何优雅地拦截按钮事件(判断是否需要登录)

    关于这个标题 xff0c 起因是这样的 最近一次做项目需求时 xff0c 遇到这样一个需求 xff0c 就是本来我们App是必须注册或者第三方登录才可以使用 xff0c 现在希望不登录也可以浏览App里面的内容 xff0c 只是在需要的时候
  • postman安装使用教程---图文讲解

    一 安装postman 1 xff0c 安装包安装 官网下载地址 https www getpostman com 选择好对应的版本下载 下载完后直接安装 2 xff0c 插件包安装 可以在谷歌的应用商店里面找到 或者在网上下载 准备了一个
  • ArUco----一个微型现实增强库的介绍及视觉应用(一)

    ArUco 一个微型现实增强库的介绍及视觉应用 xff08 一 xff09 ArUco 一个微型现实增强库的介绍及视觉应用 xff08 一 xff09 一 ArUco简介 ArUco是一个开源的微型的现实增强库 xff0c 目前好像已经集成
  • matlab 图像基本矩阵,MATLAB基本的使用方法归纳(图像,矩阵及函数)

    读取图像 xff1a 用imread函数读取图像文件 xff0c 文件格式可以是TIFF JPEG GIF BMP PNG等 比如 gt gt f 61 imread 39 chestxray jpg 39 读进来的图像数据被保存在变量f中
  • VR直播云服务解决方案

    VR直播 通过VR xff08 虚拟现实 xff09 技术 xff0c 用户通过佩戴相关硬件设备 xff0c 通过平台提供的APP进行直播观看 主播需采用360 全景的拍摄设备 xff0c 捕捉多角度画面 xff0c 进行多画面传输后 xf
  • VirtualBox快照(Snapshot)功能使用及注意事项

    这几天在使用QT编写一个ARM的图形化应用程序 xff0c 需要在PC端使用linux下的QtCreator 搭建环境神马的还是挺麻烦的一个过程 依照我的风格 xff0c 这么麻烦的东西一定不要重复做第二遍 剧透下 xff0c 最后还是很悲
  • docker学习笔记11:Dockerfile 指令 CMD介绍

    我们知道 xff0c 通过docker run 创建并启动一个容器时 xff0c 命令的最后可以指定容器启动后在容器内立即要执行的指令 xff0c 如 xff1a docker run i t ubunu bin bash 表示容器启动时立
  • 麦克纳姆轮运动学分析

    麦克纳姆轮运动学分析 是最常见的安装方式 麦轮底盘的正逆运动学模型 以O 长方形的安装方式为例 xff0c 四个轮子的着地点形成一个矩形 正运动学模型 xff08 forward kinematic model xff09 将得到一系列公式
  • 传小米秘密自研操作系统mios 将应用于小米4(

    http tieba baidu com f kw 61 E5 8D 97 E4 BA AC E8 85 8B E8 87 AD E5 8C BB E9 99 A2 E3 80 90 E5 92 A8 E8 AF A2QQ EF BC 9A
  • OV2SLAM 安装运行

    OV2SLAM 安装运行 1 安装依赖项1 1 安装 OpenGV1 2 安装OV2SLAM 2 运行 OV2SLAM2 1 运行EUROC数据集2 2 运行KITTI数据集 参考资料 OV2SLAM 1 是2021年新开源出来的单目 43
  • IMU助力无人机自主精准着陆

    一盒用户急需的药品由无人机配送到小区中 xff0c 一键下单10分钟热气腾腾的外卖随着无人机送到家门口 这不是科幻作品中才有的景象 xff0c 而是已经实现的场景 但在实际应用中 xff0c 无人机配送还存在着预估位移不准确 着陆偏差过大等
  • Maven自动FTP远程部署

    参照官网文档 xff1a https maven apache org plugins maven deploy plugin examples deploy ftp html 1 在pom xml中加入 xff1a lt project
  • 面试感悟----一名3年工作经验的程序员应该具备的技能

    原文地址http www cnblogs com xrq730 p 5260294 html xff0c 转载请注明出处 xff0c 谢谢 xff01 前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结 xff0c 因此有了这
  • c语言菜单经典实例

    include lt conio h gt include lt dos h gt include lt graphics h gt include lt stdio h gt include lt stdlib h gt 定义一些常数 d
  • Docker(二):微服务教程

    Docker 是一个容器工具 xff0c 提供虚拟环境 很多人认为 xff0c 它改变了我们对软件的认识 站在 Docker 的角度 xff0c 软件就是容器的组合 xff1a 业务逻辑容器 数据库容器 储存容器 队列容器 xff0c Do
  • 让进程在后台可靠运行的几种方法

    Linux 技巧 xff1a 让进程在后台可靠运行的几种方法 想让进程在断开连接后依然保持运行 xff1f 如果该进程已经开始运行了该如何补救 xff1f 如果有大量这类需求如何简化操作 xff1f 我们经常会碰到这样的问题 xff0c 用
  • 小米路由器mini拆解,附上独家对MT7620A见解

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 小米路由mini采用单核MT7620A处理器 xff0c 搭配128MB DDR3 xff0c 内置智能家居控制中心 xff0c 和标准版一样提供2x2双频天线 xff0c

随机推荐

  • 采购收货的异常

    仓库发OA过来 xff0c 说有一票采购订单收货的时候提示红灯错误 xff0c 截图如下 xff1a 双击错误消息 xff0c 提示该消息是出自于M7429 百度 xff0c 没有相关资料 问群里 xff0c 也没人懂 于是通过 H 来查看
  • 【ES6基础】解构赋值(destructuring assignment)

    我们经常可以在其他编程语言 如GO语言 中看到多返回值这种特性 xff0c 因为在很多实际场景中 xff0c 函数的返回值中 xff0c 函数的返回值并不只有一个单一的值 ES6之前 xff0c 并没有可以直接使用语法来实现多返回值的特性
  • 视觉导航小车开源项目(1)—小车底盘

    小车底盘 1 更新日志1 1 硬件方面1 2 软件方面 2 底盘硬件结构2 1 底盘机械组装2 2 底盘硬件框图2 3 底盘电气系统 3 差速底盘软件结构3 1 控制板介绍3 2 代码结构3 3 差速底盘运动学模型 参考资料 注 xff1a
  • 一些webpack配置优化手段

    loader 设置include或者exclude 一般第三方包都是打包好的 xff0c 无需再打包 xff0c 特别是babel loader eslint loader span class hljs attr test span sp
  • 基于iframe的移动端嵌套

    需求描述 上上周接到了新的项目 xff0c 移动端需要做一个底部有五个导航 xff0c 点击不同的导航页面主体显示不同的页面 xff0c 其中两个页面是自己做 xff0c 而另外三个页面是引用另外三个网址 xff0c 其中两个网址为内部项目
  • Vue实战篇(PC端商城项目)

    这是一个基于vue全家桶 43 node js 43 express 43 mysql实现的商城网站 项目github地址 xff1a vueMall 查看demo 地址 如果觉得对您有帮助 xff0c 您可以在左下角给我个喜欢支持一下 x
  • https安全证书过期失效的原因以及解决方法

    一 网站https安全证书过期原因分析 xff1a 1 当前电脑系统时间错误 xff0c 所有的http安全证书都有颁发日期和截止日期 xff0c 电脑系统时间在证书有效时间区间之外有可能导致浏览器提示网站https安全证书已过期或还未生效
  • 安装OPENWRT后打不开管理页面的解决方法

    路由器刷入了OPENWRT 结果发现刷入的固件没有带Luci 以下是本人手动安装Luci的方法 开始安装Luci所需的依赖包 opkg install http 192 168 1 2 uhttpd 27 brcm47xx ipk opkg
  • Postgresql查看表结构和字段注释

    Postgresql查看表结构和字段注释 一 xff1a 查看表结构 xff08 字段 xff09 信息 xff1a Select table name column name data type character maximum len
  • 技术淘宝

    精度前端学习 前端开发100天 xff08 置顶 xff09 http alloyteam github io CodeGuide https github com AlloyTeam CodeGuide cmd控制台的小技巧 xff1a
  • Migration: Find Duplicate Objects in Application Desinger Projects

    The sql will identify duplicate objects in different application designer projects to eliminate duplicate work by develo
  • SQL server loginname alias mapping problem.

    exec sp changedbowner 39 Aambriore mra 39 EXEC sp change users login 39 Auto Fix 39 39 lts 39 null Exec sp change users
  • [ASP.NET MVC 小牛之路]08 - Area 使用

    ASP NET MVC允许使用 Area xff08 区域 xff09 来组织Web应用程序 xff0c 每个Area代表应用程序的不同功能模块 这对于大的工程非常有用 xff0c Area 使每个功能模块都有各自的文件夹 xff0c 文件
  • OpennVINS运行、评估笔记

    1 安装运行 1 1 下载 amp 编译 span class token builtin class name cd span catkin ws src span class token function git span clone
  • 关于apm飞控烧bootloader

    最近一直由于学校大创申请的的四轴 xff0c 一直在做这玩意 xff0c 哎 xff0c 无奈这货实在不像想象的那样简单 xff0c 自己写了N久飞控 xff0c 也没把飞机飞起来 xff0c 只能先用开源的apm飞控练练手呗 xff0c
  • c语言实现subs指令,周立功LPC系统移植学习之c启动代码修改一

    一 系统移植用c启动代码 Copyright c Guangzou ZLG MCU Development Co LTD graduate school http www zlgmcu com File Info
  • Google开源项目phpdoc-zh【PHP中文手册】

    为什么80 的码农都做不了架构师 xff1f gt gt gt 现在不用愁找不到好的PHP中文手册 xff0c 没乱码 xff0c 更新速度快 xff0c 翻译准确 xff01 项目地址 xff1a http code google com
  • 计算机与我的生活英语作文,描写一天的生活英语作文(通用7篇)

    描写一天的生活英语作文 通用7篇 在平凡的学习 工作 生活中 xff0c 大家都不可避免地要接触到作文吧 xff0c 作文要求篇章结构完整 xff0c 一定要避免无结尾作文的出现 相信很多朋友都对写作文感到非常苦恼吧 xff0c 下面是小编
  • reStructuredText语法简单说明

    reStructuredText 是扩展名为 rst的纯文本文件 xff0c 含义为 34 重新构建的文本 34 34 xff0c 也被简称为 xff1a RST或reST 官方网址 xff1a http docutils sourcefo
  • 优秀的程序员需要擅长数学吗?

    天有很多年轻人或经验不足的程序员 在 论坛发帖 在 Stack Exchange 网站问 xff1a 为了成为优秀的程序员 xff0c 我需要擅长数学吗 xff1f xff0c 在我还年轻的时候 xff0c 我也问自己同样的问题 最近 xf