刚学习编写代码时的愚蠢瞬间:初学者的代码经验分享

news2024/11/25 16:04:17

刚学习编写代码时的愚蠢瞬间:初学者的代码经验分享

  • 刚学习编写代码时的愚蠢瞬间:初学者的代码经验分享
    • 摘要
    • 引言
    • 糟糕的变量命名
      • 🤷‍♂️ 问题
      • 😅 解决方案
    • 异常处理的忽略
      • 🙈 问题
      • 😎 解决方案
    • 魔法数值的滥用
      • 🧙‍♂️ 问题
      • 🪄 解决方案
    • 忘记注释
      • 📝 问题
      • 🖊 解决方案
    • 代码的冗余
      • 🔄 问题
      • 🤖 解决方案
    • 正文
    • 总结
    • 参考资料

在这里插入图片描述
在这里插入图片描述

博主 默语带您 Go to New World.
个人主页—— 默语 的博客👦🏻
《java 面试题大全》
🍩惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕🍭
《MYSQL从入门到精通》数据库是开发者必会基础之一~
🪁 吾期望此文有资助于尔,即使粗浅难及深广,亦备添少许微薄之助。苟未尽善尽美,敬请批评指正,以资改进。!💻⌨

刚学习编写代码时的愚蠢瞬间:初学者的代码经验分享

摘要

🔍 在这篇技术博客中,我,您的亲切博主😊,将与您分享初学编写代码时的一些奇怪瞬间和愚蠢代码的经验。回顾自己的编程之路,我们将一起探索编写初学者代码时可能出现的问题,以及如何避免它们。本文将提供代码案例来演示这些问题,并帮助您建立更好的编程习惯。一起来回忆一下我们的编程旅程吧!

引言

初学者编写代码时,总会经历一些让人啼笑皆非的时刻。无论是奇怪的变量名、异常处理的忽略还是不成熟的逻辑,这些都是我们成长为更好的开发者所必经之路。在这篇博客中,我们将深入探讨初学者常见的愚蠢代码错误,并通过实际代码示例来展示它们。

糟糕的变量命名

🤷‍♂️ 问题

初学者常常使用晦涩难懂的变量名,让代码难以理解。比如:

int a = 5;  // 这个 'a' 是什么意思?
String b = "hello";  // 'b' 表示什么?

😅 解决方案

使用描述性的变量名,让代码更易读:

int age = 5;
String greeting = "hello";

异常处理的忽略

🙈 问题

初学者有时会忽略异常处理,导致程序崩溃:

try {
    // 一些可能引发异常的代码
} catch (Exception e) {
    // 什么都不做
}

😎 解决方案

正确处理异常,至少记录错误信息:

try {
    // 一些可能引发异常的代码
} catch (Exception e) {
    e.printStackTrace();
}

魔法数值的滥用

🧙‍♂️ 问题

硬编码魔法数值使代码难以维护:

if (x == 42) {
    // 42 是什么意思?
}

🪄 解决方案

使用常量或有意义的变量来表示数值:

static final int MEANING_OF_LIFE = 42;

if (x == MEANING_OF_LIFE) {
    // 更易理解
}

忘记注释

📝 问题

没有注释的代码难以理解和维护。

🖊 解决方案

添加注释,解释代码的目的和逻辑:

// 计算平均值
double average = (num1 + num2) / 2;

代码的冗余

🔄 问题

初学者常常写冗余的代码,导致重复劳动。

int result1 = a * b;
int result2 = a * c;

🤖 解决方案

重用代码,使用函数或循环来减少冗余:

int result1 = multiply(a, b);
int result2 = multiply(a, c);

int multiply(int x, int y) {
    return x * y;
}

正文

在正文部分,我们将深入研究上述问题,并提供更多的示例代码和详细解释。无论您是初学者还是有经验的开发者,都可以从这些经验教训中受益。

总结

初学者在编写代码时常犯一些愚蠢的错误,但这是学习过程的一部分。通过深入研究和改进这些错误,我们可以提高自己的编程技能,编写更干净、可维护的代码。记住,每个人都曾经是初学者,重要的是不断进步和学习。

参考资料

在编写本文时,我参考了以下资源:

  1. Java官方文档
  2. Stack Overflow
  3. Codecademy Java课程

这些资源可以帮助您更深入地了解Java编程和相关主题。继续学习,不断提升您的编程技能! 😄

🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥

如对本文内容有任何疑问、建议或意见,请联系作者,作者将尽力回复并改进📓;(联系微信:Solitudemind )

点击下方名片,加入IT技术核心学习团队。一起探索科技的未来,共同成长。

在这里插入图片描述

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

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

相关文章

沈阳市浑南区、沈阳国际软件园领导一行莅临中睿天下总部考察指导

近日,沈阳市浑南区委常委、常务副区长傅涵,沈阳国际软件园总经理张永鹏一行会见了中睿天下高级合伙人兼市场负责人周学龙。沈阳高新区管委会经发局局长王博,沈阳高新区管委会投资促进局姜振杰,沈阳国际软件园驻京办主任王军超&…

基础数据标准落标白皮书

1.定义 数据是由特定的环境产生的,这些环境因素包括生产者、时间、系统等,这就造成了同一个语义的数据,会有多种不同的定义方法,这给后期进行数据汇集和整合带来障碍,因此,数据处理的前奏就是数据标准化&a…

公司文件加密防泄密软件有哪些?企业防泄密软件都有哪些功能?

在当今的信息化时代,数据已经成为了企业的重要资产。其中,公司内部的文件、文档、数据库等数据安全至关重要。然而,随着网络攻击手段的不断升级,企业数据泄露事件屡见不鲜,给企业带来了巨大的经济损失和声誉损害。因此…

Rust 围炉札记

文章目录 一、安装 一、安装 Rust in Visual Studio Code Rust 官网 windows系统下Rust环境搭建以及vscode调试环境配置 123

香橙派OrangePi的风扇怎么接

跟树莓派类似,看主板上GPIO口的阵脚定义 树莓派的引脚定义官网:Raspberry Pi Documentation - Raspberry Pi hardware 树莓派的4口和6口可以接一个5V小风扇,4口接正极,6口接负极即可,由于接口相近,可以用于…

爬楼梯Java(斐波那契数列)

题目:有n阶楼梯,一次只能爬一层或者两层,请问有多少种方法? 这类题目其实都可以用斐波那契数列来解决,比如: 一阶楼梯只有一种方法 二阶楼梯有(11,2)两种方法 三阶楼梯有(111,12,21)三种方法 四阶楼梯有(1111,121,112,22,211)五种方式 五阶楼梯有(11111,1112,122,1211,1…

云原生之使用Docker部署RSS阅读器Huntly

云原生之使用Docker部署RSS阅读器Huntly 一、Huntly介绍1.1 Huntly简介1.2 Huntly功能2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Huntly镜像五、部署Huntly5.1 创建挂载目录5.2 创建Hun…

技术干货 | JMeter实现参数化的4种方式

参数化释义 什么是参数化?从字面上去理解的话,就是事先准备好数据(广义上来说,可以是具体的数据值,也可以是数据生成规则),而非在脚本中写死,脚本执行时从准备好的数据中取值。 参数…

新手必看:Android studio 侧边栏实现,带源码

文章目录 前言效果图正文toolbar 用于定义应用程序的导航栏app_bardrawer_layout 用于创建侧边栏导航nav_header_draw app:menu"menu/activity_main_drawer" 前言 本篇内容主要是自己实现侧边栏后的一些总结,部分理论来着网络和ai助手,如有错…

低代码代理商选对合作对象,和靠谱的低代码携手共进

随着低代码发展不断升温,市场上涌现出许多优秀的低代码开发平台,如阿里、腾讯、微软等企业相继推出了自己的低代码产品。 据IDC新近发布的《2022下半年中国低代码与零代码软件市场跟踪报告》显示,预计2023年中国低代码与零代码软件市场规模将…

10.6 开关型稳压电路

线性稳压电路具有结构简单、调节方便、输出电压稳定性强、纹波电压小等优点。但是,由于调整管始终工作在放大的状态,自身功耗较大;故效率较低,甚至仅为 30 % ∼ 40 % 30\%\sim40\% 30%∼40%。而且,为了解决调整管散热…

新的阶乘(筛素数)--2023百度之星初赛第三场

解析&#xff1a; 因为一个素数 x&#xff0c;他的所有倍数中都有因子为 x&#xff0c;所以先筛出所有素数&#xff0c;然后对于某个素数&#xff0c;累加他后面所有倍数的因子 #include<bits/stdc.h> using namespace std; typedef long long ll; const int N1e75; int…

Vue中props报错或问题解决

一、[Vue warn]: The data property "inputUserData" is already declared as a prop. Use prop default value instead. 意思&#xff1a;"inputUserData"这个值已经声明成了一个prop数据&#xff0c;挂载的时候将默认使用prop中的"inputUserData&q…

自学WEB后端02-基于Express框架完成一个交互留言板!

提示&#xff1a; 浏览器V8是JavaScript的前端运行环境 Node.js 是JavaScript 的后端运行环境 Node.js 中无法调用 DOM 和 BOM等浏览器内置 API 这个作业案例包含2部分内容&#xff0c; 第一部分是前端 前端完成界面内容CSS框架 第二部分是后端 完成用户留言存储&#xf…

解密智能化评估在培训考试系统中的应用

智能化评估在培训考试系统中的应用旨在提供更全面和准确的评估方式&#xff0c;以帮助培训机构或个人评估学员的学习成果。该系统结合了现代技术和评估理论&#xff0c;能够自动化地进行评估、反馈和分析&#xff0c;提供个性化的学习支持和指导。 智能化评估系统通过采集学员…

【RK3588】Firefly 瑞芯微板子入门知识、和环境篇

公司买了块瑞芯微的移动开发板&#xff0c;准备将公司的主营业务的AI模型&#xff0c;从服务器主机&#xff0c;移动到开发板上面。所以&#xff0c;就选择了瑞芯微的RK3588的板子。 从目前市面上出现的板子来看&#xff0c;主要的还是以瑞芯微的板子为主&#xff0c;比如鸣辰…

Matlab写入nc文件遇到‘Start+count exceeds dimension bound (NC_EEDGE)‘问题的解决办法

最近在使用matlab写入nc文件&#xff0c;具体的处理视频可参见B站视频&#xff08;1.matlab处理nc文件--文件读取和写入_哔哩哔哩_bilibili&#xff09;但是遇到了以下的问题&#xff1a; Error using netcdflib The NetCDF library encountered an error during execution of…

2002-2020年341个地级市农业保险保费收入数据

2002-2020年341个地级市农业保险收入数据 1、时间&#xff1a;2002-2020年 2、范围&#xff1a;341个地级市 3、指标&#xff1a;农业保险收入 4、来源&#xff1a;整理自wind、保险年鉴 5、指标解释&#xff1a; 农业保险保费收入是指保险公司从农户或农业生产经营者那里…

伺服丝杠系统常用运算功能块

这篇博客主要介绍伺服、丝杠系统常用的运算功能块,其它相关运算可以查看下面文章链接: 信捷PLC脉冲频率、位移、转速相关计算(C语言编程应用)_RXXW_Dor的博客-CSDN博客里工业控制张力控制无处不在,也衍生出很多张力控制专用控制器,磁粉制动器等,本篇博客主要讨论PLC的张力…

【LeetCode热题100】--206.反转链表

206.反转链表 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; }* }*/ clas…