java中函数又叫方法,2者是一样的,下面来聊一聊,一个函数中写多少行代码比较合适?
从可读性和可维护性上讲,代码越精练越好
一个函数中写多少行代码比较合适,其实没有强制规定,合理即可,不可一概而论(有人说一个函数不要超过15行,有人说一个函数不要超过50行,有人说一个函数不要超过200行,我觉得其实都可以,没有谁对谁错的问题,只有是否合理恰当)
一个函数中的行数不要写的太多,行数太多会增加复杂程度和增加阅读难度和增加维护难度。
个人认为一个函数中的代码最好不要超过30行,当然啦,26行,37行其实也是可以的,我说的30行只是一个大概范围的行数,代码行数不是绝对的,大家要懂得弹性、灵活的变通,不要那么死板和墨守成规。

一个函数不要超过30行,30行左右也是可以的,比如你的一个函数写了28行和35、36行都是可以的,总之一个函数不要写的太长,如果你的一个函数写了50多、60多行,甚至70多、80多行,此时你就要考虑将此函数拆解成多个函数,因为拆解后会比较清晰明了,比较好阅读和比较好维护。

有些企业,一个函数不超过15行代码。网上看到某些文章说,微软的要求是,一个函数里不要超过15行代码!

编写程序代码时候,给大家建议几个编程小原则

1.写代码,写函数名,写变量名等等的时候,要见名知意,名字不怕太长,就怕名字晦涩难懂。
2.建议大家写的代码要做到通俗易懂,让自己和别人在阅读你的代码的时候行云流水(当然啦,这不是一蹴而就的事情,需要大家慢慢的磨练)。
3.代码的注释风格、命名风格、书写风格、命名规范等等一定要统一口径,不要搞个性化(比如:故意给变量或者路径取个中文名或$美元符号,你这不是没事找事嘛!),谁搞个性化,代码越容易出错(编程领域别搞个性化)
4.一个函数中不要写太多嵌套循环,一般上限就写2层循环,如果你写3层甚至4层循环,代码会很难阅读,也很难维护,如果一个函数中,嵌套循环很多的话(超过2层循环),那就把该函数拆解一下吧。

5.总之,一个函数做一件事,所以函数要保持精简、精练、简练、简洁、通俗易懂、雅俗共赏,但是不要矫枉过正,吹毛求疵!

6.一个函数中的代码行数越多时,该函数的复杂程度就会上升,函数中的代码行数越少时,该函数的复杂程度就会下降。

我曾经听过一个小故事,话说有个小伙伴在维护以前别人留下来的代码的时候,打开那个函数一看,他瞬间醉了,那函数中居然有1000行以上的代码,瞬间有种生不如死,生无可恋的感觉,恨不得马上辞职走人。
这就解释了为什么长函数在分解/拆解之后,可维护性会大幅度提高。
最后希望大家在程序编程方面都保持一颗强烈的好奇心,这样你才会进步!
另外给大家提几个小建议:
1.熟练使用IDE(开发工具)
2.熟练掌握数据库(oracle、mysql)
3.对操作系统有一定的了解
4.熟悉网络协议TCP/IP
5.对程序编程有一颗强烈的好奇心
6.熟悉软件开发的流程
7.适当的了解一些网络和硬件的知识

以下是网上的一些网友的观点:

网友A:一个函数的最优行数限定在50-80行之间,这样对于开发者以后的维护来说,简洁的代码更容易进行修改和维护。一个类的行数应该是没有限定的。

网友B:函数中的代码行数,这个没有限定,但是一般的开发建议,一个函数不要超过50行,太多行数可读性很差。但是一个类里面放多少个函数,多少行没关系,因为现在的开发工具如eclipse,可以快速定位到某个函数体。在一些大型的应用里面,一个类膨胀到几千行是正常的。所以个人建议是,将单独的方法保持在50行以内。整个类,该多少行就多少行。

除了聊函数中的代码行数外,我们顺便聊一聊类中写多少行代码比较合适?
理论上类中有多少行代码其实都可以。
理论上类中有多少个函数,有多少个变量其实都可以。
理论是理论,现实没有理论那么完美,有时候不得不折中。
规定是死的,人是活的,规定也是人定的,能定也能破,也能改,要根据实际情况灵活变通!
加载类是需要花时间的,所以我个人建议,一个类中的行数别写太多,当然啦,有些类里面的东西确实比较多,写了几千行也是很正常的,一般情况下,我建议,我们自己写的类,尤其是经常使用的类,行数不要太多,除非你确实需要写很多。

最后小建议:编写程序,写类,写变量,写函数最好做到:

1.注释清楚

2.间隔整齐

3.可读性高

4.可维护性好

5.可扩展性好

一个函数中写多少行代码比较合适呢?相关推荐

  1. 宁愿“大小周”、每天只写 200 行代码、月薪 8k-17k 人群再涨!揭晓中国开发者真实现状...

    作者 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 程序员,一个圈外人羡慕.圈内人喊苦的"神奇"职业--高薪.福利好是旁人羡慕的理由,高压.加班多却也是他们最常见的写照 ...

  2. 让你少写 1000 行代码的正则全攻略来了!

    说起正则表达式,相信大家都不陌生.在很多程序员的认知中,这东西并不难,在工作中用的也不多,每次用的时候去 Google 搜一搜,然后复制过来改一改,问题就解决了,看起来效率特别高,好像完全没必要专门花 ...

  3. 程序员每天到底可以写几行代码?

    对于特定的人,在大致时间段里他所能写的.确定质量的代码基本上应该是个确定值. 这点似乎显而易见,但事实上大多时候却总是被忽视. 如果项目负责人总是认可上面的基本点,那么任何项目的日程就应该以此为前提, ...

  4. 宁愿“大小周”、每天只写 200 行代码、月薪 8k-17k 人群再涨 | 揭晓中国开发者真实现状

    作者 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 程序员,一个圈外人羡慕.圈内人喊苦的"神奇"职业--高薪.福利好是旁人羡慕的理由,高压.加班多却也是他们最常见的写照 ...

  5. Google大神每天写多少行代码?真相让你吃惊!

    「 读者福利!2 TB 各类技术资源免费赠送 」 Quora上有个有趣的问题:Google工程师们每天写多少行代码? Google 的 AdMob 全栈工程师 Raymond Farias 在 Quo ...

  6. 一天写多少行代码才算是好程序员?

    点击查看全文 当今时代很多吃瓜群众对程序员的印象都是 而程序员的真实情况却是这样:每天大部分时间都在改代码,写代码,看代码才是我们真实的工作日常,到底每天要写多少行才是好程序员呢? 为了探讨这个问题首 ...

  7. 月薪 36000,算法工程师日均写 7 行代码被开除

    程序员一天能写多少行代码?前不久,CSDN发布的<2021-2022中国开发者调查报告>显示,大部分程序员平均每天会写200行左右的代码. 那代码的数量能衡量一个程序员的水平吗?在此前的一 ...

  8. 【Android 逆向】函数拦截原理 ( 通过修改 GOT 全局偏移表拦截函数 | 通过在实际被调用的函数中添加跳转代码实现函数拦截 )

    文章目录 一.通过修改 GOT 全局偏移表拦截函数 二.通过在实际被调用的函数中添加跳转代码实现函数拦截 一.通过修改 GOT 全局偏移表拦截函数 使用 GOT 全局偏移表 拦截函数 , 只需要将 G ...

  9. python在另一个函数中使用其他函数的变量_在另一个函数中访问函数的变量,如function() . var in python...

    我在寻找一种正确的方法来访问另一个函数中的函数变量时遇到了一些问题 . 我正在制作远程操作类工具,因此我需要处理接收的命令[如'exit'或'nircmdc.exe'或'telnet'等] . 下面的 ...

  10. 如何引用传递参数从一个函数中得到多个返回值

    2019独角兽企业重金招聘Python工程师标准>>> 通过"引用"传递参数的方法从一个函数中得到多个返回值.就像三元运算符一样,大部分受过正式编程训练的程序员都 ...

最新文章

  1. java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Integer
  2. 作业三——原型化系统——外卖app
  3. display none 隐藏后怎么显示_Web 隐藏技术:几中隐藏 Web 中的元素方法及优缺点
  4. IE的hasLayout
  5. unity串口 连接多个串口崩溃_3分钟全面了解串口服务器原理技术
  6. 计算仰角_41页最新全站仪测量方法及计算+图文解说,助你轻松掌握测量
  7. ioc控制反转_深入理解依赖注入(DI)和控制反转(IOC)
  8. Ext.Net 最新版(2011-06-24)License 问题
  9. easyui下拉多选框的创建、获取值、赋值
  10. Matlab晶闸管单相全桥电路仿真
  11. 解决应用程序错误,内存不能为“read”或“written”
  12. kms激活win10
  13. 计算机一级windows7操作,高校计算机一级考试指导书(Windows7+Office2010)
  14. 如何在Android状态栏中隐藏图标
  15. Netgear R6220刷潘多拉盒子后的WIFI配置,20HZ频宽下载速度达9M
  16. 前端教程:用 Canvas 编织璀璨星空图
  17. 武汉疫情之后,中国即将发生的10大变化!!
  18. 天天向商升级为稿定设计之后,初衷会变吗?未来的发展将会如何?
  19. 手机软件测试自学乐器,自学乐器不难!——从用好这6款APP开始吧
  20. X1 Carbon wifi 8260 无线网卡驱动安装 backports

热门文章

  1. 不容错过!Greenplum的又一本好书
  2. 思科模拟器简单校园网设计,期末作业难度
  3. 第二篇:基于小米手机的,第三方recovery教学
  4. linux下blast设计引物,下面是我设计的引物的BLAST结果,请大虾帮我解释一下。谢谢...
  5. Smart 3D 切块合并 使用S3C索引 excel表格法
  6. 【读书笔记《Bootstrap 实战》】4.企业网站
  7. 第三次PR培训(添加常用效果和转场)
  8. Activity MQ生产/消费和订阅/发布的区别
  9. 使用QT5 PrintSupport打印和预览标签
  10. Dubbo视频教程(Dubbo项目实战)