【转载】程序设计中的感悟

Java程序设计课程学习总结与心得 立即下载
        1. 学习应该从基础打起,不要一开始就尝试最高深的技术。

  2. 每看一本书,不要说这章我以前学习过了,也掌握的很好,因此我可以跳过这一章看更重要的了。

  3. 对于作业,遇到不会的尽量不要立刻向别人请教。如果实在解决不了的问题,可以先完成你会的,然后把一些特别的难点提炼出来,向高手请教。不要指望书本和行家能帮你解决一切问题,因为并不是所有问题都能由别人教给你。

  4. 向别人请教问题应该把问题说明白。对于错误提示信息应该原样提供出来,不要按自己理解的信息提供。因为既然你自己做不了,说明你理解一般都有问题。

  5. 问问题最好能带代码。

  6. 不要说“编译通过,可是运行时...",因为编译错误和运行错误可能根本没有关系。一般来说,编译是语法问题,而运行是逻辑问题。

  7. 书看千遍不如做程序一遍,应该尽量尝试去写程序。

  8. 做程序千个不如做好程序一个。应该尽量完善你现在做的程序,而不要不断开新的计划,而每个计划都虎头蛇尾。

  9. 要想到你不是一个人写程序,而是和大家一起写程序。

  10. 高深的技巧虽然显示了高深的本领,但是对于合作往往是有害的,应该尽量写出简单易读的代码。

  11. 编制程序应该尽量做到自注释,即代码本身一读就懂,好象自己在说明自己的逻辑一样。

  12. 复杂的代码如果实在做不到自注释,应该给出适量的注释。

  13. 注释在修改代码的时候应该相应修改,不能用陈旧的注释去误导别人。

  14. 代码应该尽量可重用,相同功能的代码应该由相同的函数完成,重要函数应该给出调试信息,以便调试时及早发现问题。

  15. 应该尽量写小函数,每个函数尽量不要超过40行或者更少。这样不用滚动屏幕也许就可以读完整个函数。

 16. 对于switch语句,尽量不要有过多的分支,如果分支太多,可以考虑用跳转表。

  17. 尽量少使用一些有争议的语句,如goto和三目运算符,既然有争议,它肯定有一定的缺点。

  18. 对于goto,许多工程师技术高到可以合理使用,而不至于导致问题。但是你的程序并不一定给你同水平的人看和修改,他们可不能保证合理的读和修改这些相关代码。

  19. 代码编写时应该有一定的格式,其基本要求是对理解代码有一定帮助。

  20. 如果数据是多个模块共有的,应该提供一个封装的类来管理它,并提供一个合适的接口给各个模块。这样,如果数据内容有重大修改,则只要接口不变,基本上可以保证程序不要很复杂的修改。

  21. 应该尽量考虑到数据的并发控制。

  22. 数据的并发控制应该封装在接口内,而不要暴露给其他模块,这样可以减少因为并发原因导致的程序死锁。

  23. 数据本身结构不可以太复杂。应该尽量把不相关的数据分割成为两组数据。

  24. 对于数据量比较大的情况,应该考虑数据库。

  25. 数据库接口应该采用标准ODBC或者ADO接口,尽量不要根据实际数据库DBMS提供的接口来处理,因为你可能在实际使用中更换DBMS。

  26. 小的数据可以考虑文件,文件路径应该必须设计成相对路径。

  27. 在一个函数中,应该尽量打开文件后使用完后立刻关闭,这样其他程序可能使用文件。

  28. 不要尝试把文件全部读到内存中,应该分次处理大文件。

  29. 编写程序应该提供相关的测试程序,以提供测试手段。

  30. 应该考虑代码、函数的使用情况,不要超越函数可以使用的范围使用之。

小龙虾 OpenClaw 权限全攻略:轻松激活 elevated (最新版 OpenClaw 自动化任务降智、无权限、无法执行sudo等系统命令、提升 elevated 权限的解决方案) 升级小龙虾 OpenClaw 后权限不足?elevated 报错?📛 本文教你如何正确配置 OpenClaw 权限💻,让自动化任务顺利执行 🚀 阅读详情

相关推荐

STM32CubeMX——循迹传感器TCRT5000的使用

前言 人生如逆旅,我亦是行人。 ————苏轼《临江仙·送钱穆父》 一、介绍 TCRT5000描述:(带有晶体管输出的反射光学传感器) TCRT5000是一种反射式光学传感器,它包括一个红外发射器和一个3.5mm引线封装的光电晶体管,可阻挡可见光。还具有1mA 典型被测输出电流,2.5mm峰值工作距离,可应用传感与仪表,工业等行业。 TCRT5000具有紧凑的结构,其中发射光源和探测器布置在同一方向,通过使用来自物体的反射红外光束来感知物体的存在。工作波长为950毫米,探测器由光电晶体管组成

W_Oilpicture的博客 1万+

程序设计中的感悟

  1. 学习应该从基础打起,不要一开始就尝试最高深的技术。  2. 每看一本书,不要说这章我以前学习过了,也掌握的很好,因此我可以跳过这一章看更重要的了。  3. 对于作业,遇到不会的尽量不要立刻向别人请教。如果实在解决不了的问题,可以先完成你会的,然后把一些特别的难点提炼出来,向高手请教。不要指望书本和行家能帮你解决一切问题,因为并不是所有问题都能由别人教给你。  4. 向别人请教问题应该把问

ξσ Dicky's Blog σξ 2463

Diffusion Model进阶解析:从SDE到概率流ODE的连续化生成建模

本文深入解析了Diffusion Model的连续化生成建模,从离散DDPM和SGM模型引入,阐述了采用随机微分方程(SDE)统一视角的必要性与优势。文章详细拆解了SDE的构成,揭示了其如何统一描述扩散过程,并重点介绍了逆向SDE与确定性的概率流ODE,后者为高效、确定的图像生成提供了理论基础。最后,文章对比了朗之万动力学、数值SDE求解器和数值ODE求解器(如DPM-Solver)等主流采样方法的实战应用与选择策略。

weixin_29099217的博客 437

对程序设计的一些感悟

从2002年接触C语言开始,不知不觉程序设计已经伴随我14年了,这期间或多或少的使用了C,C++,C#,Java,PHP,JavaScript, bash, VBA这些常见的开发语言,可悲的是才疏学浅,只是略懂而已。1 程序设计的本质没变程序=数据结构+算法,这是对程序最本质的、最切中要害的、最简洁的阐述。 一直以来,我有一个习惯,就是在理解一个抽象概念的时候,一定要找到这个概念的一个具体实现。数

smstong的成长轨迹 3027

Mac用户必看:Parallels Desktop 18.1.1最新破解版安装与优化全攻略(附资源)

本文为Mac用户提供Parallels Desktop 18.1.1的详细安装与优化指南,涵盖虚拟化技术选型、专业级配置流程及性能调优技巧。重点解析Parallels Desktop在图形加速、系统资源调度方面的核心优势,并分享生产力增强技巧与典型应用场景实战方案,帮助用户最大化利用这一高效虚拟化工具。

weixin_29240343的博客 829

用Arduino+ESP32复现TDOA定位:低成本实现厘米级精度的完整教程

本文提供了一套利用Arduino和ESP32平台,结合NRF24L01+模块与GPS/PPS时间同步方案,低成本复现高精度TDOA(到达时间差)定位系统的完整教程。教程详细阐述了从硬件选型、天线阵列设计、时间同步实现到核心算法与多径抑制的实战步骤,旨在帮助开发者和硬件爱好者以可控成本实现厘米级精度的定位演示系统。

weixin_29084111的博客 162

程序设计心得体会

程序设计心得体会 一:前言 经过一学期的学习,我们对程序设计有了或多或少的认识。而我们这学期所接触的c语言和c++都不仅为计算机专业人员所使用和喜爱,也成为许多计算机应用人员喜爱和使用的语言。实践证明,它是一种很好的程序设计语言。 二:学习困难 1:上课也能听懂,书上的例题也能看明白,可是到自己动手做编程时,却不知道如何下手。所谓的看懂听明白,只是很肤浅的语法知识,而我们编写的程序或软件是要根据要...

a765528534的博客 2万+

诠视MR眼镜Unity开发设置_Unity2020.3.38

请按照如下设置Android SDK 和 Gradle。打包前先将Unity切换到Android模式。Preferences 设置。

m0_71932574的博客 603

程序设计学习感悟

学习程序设计也半个学期了,课本大约学习了三分之二,还有一些知识没涉及到。虽然只有短短半学期的学习,只是学习到了一些皮毛,也使我意识到了写程序不单单意味这能够使代码能够跑出来,这更是一门艺术。一开始写类的时候真的很难,没有任何思路,只能模仿课本上的代码。因为这样造成了我们大部分人的代码都是雷同的,老师还吵了我们一顿,在这里真的是冤屈啊!随着学习的不断深入,我也逐渐形成了自己的“模板”,代码也慢慢有了...

qq_43628925的博客 663

2021-08-20

通过QQ号获取绑定的手机号 导语 偶有奇想,我们可以通过手机号来搜索获取其对应的QQ号,那么,反过来呢? 一.缩小范围 由于手机号属于隐私数据,腾讯QQ并没有直接给出通过QQ号查找对应手机号的接口。 国内的手机号有十一位数字,从数学的角度上来说,包含了1011种可能。如果遍历这1011个数据,通过QQ中手机号查找QQ号的接口来寻找,未免太过费时费力,根据网上查到的资料,同一个QQ号,在十分钟内只能进行30次查询(未验证)。因此,直接遍历的方法不现实。 在这10^13个数据中,包含着大量的可去除的无用数据。我

m0_56063822的博客 4737

利用autojs制作抢购支付宝消费劵的手机脚本

前期准备工作 1.打开支付宝,点击中间的抢消费券的广告 2.点击左上角,将抢购页面添加到首页 3.查看支付宝首页是否出现消费劵 . autojs代码 "auto"; functiontaskstart(){ sleep(1000); launchApp('支付宝'); toast("正在打开支付宝应用"); sleep(1000); varxf=textContains("消费").findOne().bounds(); ...

洛阳泰山的博客 1万+

如何学编程,我的一些学习感悟

    入坑已经有一年之久,今天来谈谈自己的学习心得也希望能帮到更多的人,如果有讲的不好或者不准确的地方还请各位大神指正,本文仅仅针对于想要入行的朋友说的。 废话不说现在进入正题,对于如何学习有以下三点要说    第一 了解语言      很简单,学习一门语言或者技术之前先了解它是做什么的,每一个语言都有自己的优势与劣势,都有自己最擅长的领域,就和每一个人一样都有自己的优点,每一个人都不能说自己所...

云烟飘渺00博客 4136

华为OD机试双机位C卷:挑选宝石 (C/C++/Python/JAVA/JS/GO)

华为OD机试双机位C卷 挑选宝石,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。华为OD机试-挑选宝石,华为OD机考-挑选宝石。

qq_45776114的博客 1503

程序设计中的一些感悟

1)学习应该从基础打起,不要一开始就尝试最高深的技术。 2)每看一本书,不要说这章我以前学习过了,也掌握的很好,因此我可以跳过这一章看更重要的了。 3)对于作业,遇到不会的尽量不要立刻向别人请教。如果实在解决不了的问题,可以先完成你会的,然后把一些特别的难点提炼出来,向高手请教。 3)不要指望书本和行家能帮你解决一切问题,因为并不是所有问题都能由别人教给你。 4)向...

weixin_30877493的博客 82

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

《Java程序设计》第三周学习总结

20175322 《Java程序设计》第三周学习总结 教材学习内容总结 面向对象语言特性: 封装性 继承性 多态性 类 类声明 类体(变量的声明+方法的定义) 成员变量(变量的声明) 成员变量类型 成员变量有效范围 方法的定义 方法头 方法体 this 包 import语句 教材学习中的问题和解决过程 问题1:建立源文件时未在末尾加.java,建立出一个目录 问题1解决方案:...

weixin_30877181的博客 88

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

20165103 2017-2018-2 《Java程序设计》第7周学习总结

20165103 2017-2018-2 《Java程序设计》第7周学习总结 教材学习内容总结 xampp的安装 连接数据库 SQL语句 条件和排序查询 更新、添加与删除操作 代码托管 (statistics.sh脚本的运行结果截图) 上周考试错题总结 其他(感悟、思考等,可选) 在学习java的过程中发现,自己在运用的过程中其实并不熟...

131

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

对于《C程序设计语言》的一点理解

  想必学C语言的人大都看过这一经典书籍。对于我来说,处于不同学习层次,阅读这本书的感觉是不一样的,每次阅读都会有一番新的感悟。第一次阅读时先读的英文版,读的很困难,主要是记录不会的单词;第二遍就顺利多了,但是对于其中的内容缺乏较深入的了解;第三遍就直接买了机械工业出版社出版的中文版,尝试读了一遍,但是对于后面几章特别是指针部分几乎读不下去;然后就开始做上面的练习,主要是做了前6章的练习,这其中费...

weixin_34146986的博客 139

程序设计中的一些感悟(收藏) (转)

程序设计中的一些感悟(收藏) (转)[@more@](罗恩发表于2002-10-29 8:16:01) 1)学习应该从基础打起,不要一开始就尝试最高深的技术。2)每看一本书,不要说这章我以前学习过了,也掌握的很好,因此我可以跳...

csd3176的博客 74

20165103 2017-2018-2 《Java程序设计》第6周学习总结

20165103 2017-2018-2 《Java程序设计》第6周学习总结 教材学习内容总结 关于String类及其方法的使用 正则表达式的相关内容 字符串分析器StringTokenizer类的使用 Scanner类的方法调用 StringBuffer类的特点及方法 Date类和Calendar类的特点及方法 日期和数字格式化 Class类、Console类、Pattern类、Ma...

171

修改代码中的一点感悟

以下内容为摘抄,有修改: http://yishan.cc/blogs/xin/archive/2009/03/22/1043.aspx 公司楼下有两棵果树,春天长芽,抽条,夏天开花,秋天结果。 公司的同事去采摘,发现果树A 的果实比果树B 的果实多很多,并且好吃。 于是同事们都在果树A上采摘,并在果树A下面合影留念。 果树B 很委屈,它在秋风中摇晃树叶,说 – 可是我的树叶量是它的...

weixin_30797199的博客 93

《Java程序设计》第七周学习总结

20175315 《Java程序设计》第七周学习总结 教材学习内容总结 String类 常量对象:常量池中的数据在程序运行期间再也不允许改变。 String对象:用户无法输出String对象的引用。 字符串的并置运算:参与并置运算的String对象,只要有一个是变量,那么java就会在动态区存放所得到的新的String对象的实体和引用。 String类的常用方法 ...

180

20155218 2006-2007-2 《Java程序设计》第一周学习总结

20155218 2006-2007-2 《Java程序设计》第1周学习总结 教材学习内容总结 浏览教材每章提出一个问题 组建如何与容器互动 PATH与classpath的对比 java的类型、变量、运算符、流程控制 对象与参考的关系 封装的含义 如何重新定义方法 继承、接口、多态的使用原则 throw何throws的使用时机 如何对收集的对象进行排序 串流与输入/输出的关系 多流程与...

94
上一篇: 【原创】Java-结构方法
下一篇: 每个初学者都应该搞懂的问题
start_java
博客等级 码龄22年 5粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值