做一个好的程序员难吗?只需要这10个习惯

       

         在这个世界上,有数以百万计的人对软件开发充满热情,他们有很多名字,如软件工程师、程序员、编码员、开发人员。一段时间后,这些人可能会成为一名优秀的编码员,并且他们将非常熟悉如何使用计算机语言完成工作。但是,如果你想成为一名优秀的程序员,你还需要注意几点,如果你能让以下十项成为你的习惯,那么你就真的可以算是一名优秀的程序员了。

1.学无止境

        即使你有10多年的程序员经验,你仍然要努力学习,因为你在计算机领域,充满了创造力,每天都有很多很多新事物出现. 你需要跟上时代的步伐。

        您需要了解新的编程语言,以及了解正在开发的编程语言和一些编程框架。您还需要阅读行业新闻并参与热门社区的在线讨论,以便您了解和欣赏软件开发的整体趋势。在国内有CSDN、掘金、InfoQ、OSCHINA等一些著名的社区。在国外,建议大家经常去http://digg.com看看各种BLOG的聚合。

2.掌握多种语言

        编程语言总是有它们最适合的领域。当您面临需要解决的问题时,您需要找到最适合解决这些问题的语言。比如,如果你需要性能,C/C++可能是首选,如果你需要跨平台,Java可能是首选,如果你想在Web上写开发程序,PHP、ASP、Ajax、JSP可能是您的选择,如果您想处理一些文本并与其他应用程序交互,Perl、Python 可能是最好的。

        所以花一些时间探索你熟悉的其他编程语言来拓宽你的视野,因为你武装得更好,思考更全面,这对你自己和你的项目都有好处。

3. 对不同的操作系统或技术保持理性

        程序员心中总有自己无与伦比的技术和操作系统,有人喜欢 Ubuntu,有人喜欢 Debian,有人喜欢 Windows,还有 FreeBSD、MacOSX 或 Solaris 等。只有一些最优秀的程序员了解不同操作系统的优缺点,这样他们才能真正客观公正地进行系统选择,而不会让他们的情绪占上风。语言也是如此,太多的程序员总是喜欢纠缠于语言的比较,比如 Java 和 Perl。

        哪个新晋程序员没有为类似的话题争论过?比如VC++和Delphi等。争论这些事,只能说明一个人的肤浅和脆弱。一个好的程序不会固守这些原则,而是能够理性地分析和面对它们,从而做出正确的客观选择。

4. 不要将自己局限在单一的开发环境中

        同样,如上所述,每个程序员都有自己喜欢的工具和技术,有些喜欢旧的,有些喜欢新的,比如 gedit 或 Emacs。有些人喜欢使用 VC++ 之类的 GUI 调试器,而我更喜欢 GDB 命令行调制器。等等等等。

        关于程序员使用什么工具有很多争论吗?到处都是。你使用什么工具并不重要,只要你能更好更快地实现你的目标。但是优秀的程序员应该知道一件事——那就是他们应该尝试其他工作环境。没有比较,你永远不知道谁好谁不好,你永远不知道你不知道什么。

5. 别告诉我你不知道源代码版本控制

        如果您的团队正在开发没有版本控制系统的源代码,那么我告诉您,您的软件开发仍处于石器时代。CVS 是一个看起来平淡无奇的版本控制工具,但它是使用最广泛的版本控制系统,Subversion 是开始占领 CVS 领域的 CVS 的更新版本,而 Git 是另一种版本控制工具。还有 Visual SourceSafe 等。

        根据您团队的规模和地理位置,您可能会使用效率最高或最低的工具来管理您的源代码。但是一个好的程序员总是会使用源代码版本控制工具来管理他或她的代码。如果你想让我推荐一个,我推荐开源的 git。

6. 成为一名优秀的团队合作者

        除非你喜欢独奏,除非你是独狼。但我想让你知道,今天,可能没有经过验证的软件可以单独完成,你可能是团队中最大的恶霸,但这并不意味着你是一个优秀的团队合作者。你的能力只有融入团队才能发挥作用。

        你与团队成员的沟通有礼貌吗?您是否定期与他们沟通,每个人都喜欢和您一起讨论问题吗?想想一支足球队,你是那支球队的好成员吗?当其他人看到你在场上奔跑时,当其他人看到你的传球、接球和扣篮时,你的团队成员会被你的行为所鼓舞吗?

7. 把你的工作变成文档

        这个条目当然包括在你的代码中写注释,但这还不够,你还需要做更多。注释良好的代码是文档的基础,可让您和您的团队轻松理解您的意图和想法。

        写下文档不仅仅是一种团队离线交流的方式,以免忘记我们的想法,也是一种传递知识的方式。把你知道的一切都写下来是个好习惯。因为,我相信你不希望人们总是在你最忙的时候打断你问问题,或者在你度假时接到公司的电话问你问题。

        而如果你自己老是守口如瓶,那么结果很可能就是你会在很长一段时间内让自己深陷其中,而你更不能做更多的事情,包括向上提升。你可能会认为“教徒会饿死师父”,但我告诉你,你的保守会让你失去更多更好的东西,请相信我,我在这里不是耸人听闻。

8.注意备份和安全

        也许您认为这是“废话”,并且您已经了解备份的重要性。但我在这里要指出的是,失去东西是我们生活的一部分,你总是会失去东西,你永远无法避免它。比如:你的笔记本电脑被偷了,你的硬盘坏了,你的电脑中了病毒,你的系统被黑了,甚至整栋楼都被烧毁了等等。

        所以,做好一件非常非常重要的事备份工作。硬盘不可信,定期刻录CD或磁带可能是个好办法,而互联网也不可信,所以要提防病毒和黑客,不仅在软件方面使用安全策略,你需要一个完善的管理系统。此外,尽量将数据保存在尽可能多的不同位置,并制定定期(每天、每周、每月)备份策略。

9.设计要足够灵活

        也许你的需求只会要求你实现一个死的东西,但是,作为一个好的程序,你应该一直在想这个死的东西是否可以有灵活的一面,比如让一些参数可配置,将一些通用的东西形成你的函数库为了以后重用,是否提供插件方面的功能?您的模块必须像积木一样组装吗?如果有修改,您的设计可以立即应对吗?当然,灵活的设计可能并不意味着重新发明轮子,而是尽可能使用标准化的东西。

        所谓灵活设计,就是让我们去考虑更多超出需求的东西,在需求中考虑到这一类的所有问题,而不是仅仅处理需求中陈述的那个特定的东西。例如,如果要求的屏幕分辨率为 800×600,您的设计能否灵活适应其他分辨率?

        编程总是需要我们应对不同的环境,以及未来的趋势。我们需要以动态的视角思考事物,而不是开辟一条道路。也许有一天,你今天写的程序会被移植到另一个环境中,然后你才能真正理解什么是柔性设计。

10. 不要捡起石头砸断自己的脚

        程序员总是有一个试图快速完成工作的坏习惯。但情况往往与你想要的相反。越想做快越容易出错,越想做快越容易漏题,最终程序改过来改过去,把葫芦按在瓢虫上,最终花费更多的时间和精力。对速度的渴望没有实现。

        一个好的程序员的习惯是在前面花更多的时间做更多的研究,尝试不同的解决方案,如果时间允许,一个好的习惯是每 4 个小时的编程,你需要一个小时的休息,然后再有 4 个小时的休息、编码。当然,这因人而异,但它的目的是让你时不时回首,让你思考三个这样的问题:

1、这样做对吗?

2、 考虑到所有情况,这样做是否正确?

3、有更好的方法吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/820127.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EasyRecovery激活秘钥2024最好用的电脑数据恢复软件下载

EasyRecovery数据恢复软件是一款专业且功能强大的数据恢复工具,它旨在帮助用户从各种存储设备中恢复由于各种原因(如误删除、格式化、病毒攻击、系统崩溃等)导致丢失的数据。这款软件支持多种存储介质,包括但不限于硬盘驱动器、U盘…

0.5W 3KVDC 隔离 单输出 DC/DC 电源模块 ——TPR-W5 系列

TPR-W5系列是一款需要隔离和电压转换的产品,工业级环境温度,温度范围从–40℃到105℃,用于PCB安装的国际标准结构。此系列产品小巧,效率高,低输出纹波及提供3000V以上的直流电压隔离,用于需要隔离的场合&am…

【Spring系列】- Spring事务底层原理

实验准备 配置文件 首先在配置文件中配置jdbcTemplate和事务管理器,并且需要开启事务的注解EnableTransactionManagement以及Configuration注解 ComponentScan("com.lyd") EnableTransactionManagement Configuration public class ApplicationConfig …

[入门]测试原则-ApiHug准备-测试篇-002

🤗 ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱,有温度,有质量,有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace 写在前面…

低敏猫粮怎么选?看这一篇就够了!

亲爱的朋友们,你们是否曾经为了家中敏感肠胃的小猫咪而犯愁,不知道如何选择适合的猫粮呢?今天,就让我们一起聊聊低敏猫粮与普通猫粮的那些不同之处吧!🐱 1️⃣ **成分差异**:首先,从…

Go 自定义14位时间类型 yyyyMMddHHmmss

目录 功能 代码 功能 数据库或者接口时间类型,经常会使用14位的时间格式。每次都转换有点麻烦。可以自定义一个时间类型。 自定义类型需要实现json接口中的MarshalJSON与UnmarshalJSON两个函数,这样在做json编码解码时就会自动转为14位的时间格式了。…

第四届大数据工程与教育国际会议(BDEE 2024)即将召开!

第四届大数据工程与教育国际会议(BDEE 2024)将于2024年8月9-11日在泰国清迈举行。数据驱动教育变革,智慧点亮未来课堂!BDEE 2024是专注于大数据工程与教育领域的重要学术会议,全球大数据与教育精英齐聚,在数…

使用 Docker 部署 SurveyKing 调查问卷系统

1)SurveyKing 介绍 SurveyKing 是一款功能强大、操作简便的开源问卷系统。它不仅满足了用户对问卷调查的基本需求,还提供了丰富的逻辑设置和灵活的问题设置,使得问卷制作更加智能化和个性化。此外,SurveyKing 还具有快速部署和安全…

构建鸿蒙ACE静态库

搭建开发环境 根据说明文档下载鸿蒙全部代码,一般采取第四种方式获取最新代码(请保证代码为最新) 源码获取Windows下载编译环境 MinGW GCC 7.3.0版本 请添加环境变量IDE 可以使用两种 CLion和Qt,CLion不带有环境需要安装MinGW才可以开发,Qt自带MinGW环境&#xff0…

认识一下RAG

1.RAG技术背景与挑战 2.RAG的核心概念 3.RAG的工作流程与架构 4.RAG的优化方法 RAG的提出 •Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks是一篇重要的论文(2020年5月) •REALM: Retrieval-Augmented Language Model Pre-Training (2020)就将BERT预训练模…

家居网购项目(三)

文章目录 1.后台管理—添加家居1.需求分析2.程序框架图3.修改FurnDao添加方法add 4.修改FurnDaoImpl添加方法add 5.单元测试FurnDaoTest.java 6.修改FurnService添加方法add 7.修改FurnServiceImpl添加方法add 8.单元测试FurnServiceTest.java 9.修改furn_add.jsp10.修改FurnSe…

【面试经典 150 | 数学】阶乘后的零

文章目录 写在前面Tag题目来源题目解读解题思路方法一:数学优化计算 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结…

人工智能——机器学习概述

1. 人工智能 1.1. 概念 人工智能(Artificial Intelligence,AI),是新一轮科技革命和产业变革的重要驱动力量, [26]是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 人工智能是智能学科重要的组…

【Ansible自动化运维】Ansible入门基础信息【安装配置、常用命令与模块】

介绍安装配置注意事项yum安装验证安装配置host配置主机清单配置主控端被控端 常用模块命令组成command模块shell模块copy模块script模块 日志信息最后 介绍 Ansible 是一个开源 IT 自动化引擎,可自动执行供应、配置管理、应用程序部署、编排和许多其他 IT 流程。它可…

YesPMP平台 | 活动有礼,现金奖励点击领取!

YesPMP众包平台在线发福利啦,活动火热开启,现金奖励等你来领,最高可领千元,赶快参与将奖励收入囊中,一起来了解活动细节吧! 一、活动内容: 活动一:【项目征集令】活动,…

前端大文件上传 -- 上传文件到S3或本地服务器

特别提醒 大文件上传的文件切片逻辑, 包括如何将分片文件上传到本地服务器, 请查看之前的文章: 前端大文件上传 - 总结(Vue3 hook Web Worker实现,通过多个Worker线程大大提高Hash计算的速度), 本篇仅实现如何将大文件分块上传到S3. 后面写…

关于Wordpress的操作问题1:如何点击菜单跳转新窗口

1.如果打开,外观-菜单-菜单结构内,没有打开新窗口属性,如图: 2.在页面的最上部,点开【显示选项】,没有这一步,不会出现新跳转窗口属性 3.回到菜单结构部分,就出现了

2024年工程师职称水平能力测试考试难吗?

大家现在都知道,现在湖北中级和高级职称评审,都必须要先报名一个水平能力测试考试,水测考过了之后才能参加评审,那么很多人都不知道水测到底难不难?能不能考过?水测主要是考什么呢? 职称水平能力…

Rust 语言 GUI 用户界面框架汇总(持续更新)

拜登:“一切非 Rust 项目均为非法”😎 什么是 GUI 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。 现在的应用开发,是既要功…

【python】flask操作数据库工具SQLAlchemy,详细用法和应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…