免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 张子萌
打印 上一主题 下一主题

[其他] 编程命名到底有多难? [复制链接]

论坛徽章:
6
CU大牛徽章
日期:2013-05-20 10:43:41IT运维版块每日发帖之星
日期:2016-07-29 06:20:00IT运维版块每日发帖之星
日期:2016-01-27 06:20:00CU大牛徽章
日期:2013-05-20 10:44:16CU大牛徽章
日期:2013-05-20 10:44:0615-16赛季CBA联赛之广东
日期:2018-03-09 11:17:08
21 [报告]
发表于 2015-06-12 11:41 |只看该作者
1、作为程序员,你认为编程最难的事儿是什么?
  大型项目都是要考虑解耦,代码重用以及扩展性等诸多因素,这也是最难的地方。
2、编程过程中,你是怎么来命名的?命名的原则是什么?
  一般公司会有规范的,英文,camelCase或下划线分隔,有篇论文专门研究这两种命名方式,结论下划线分隔的方式可读性要高20%,具体怎么用自己看着办。
3、在你的工作学习中,有哪些有趣儿的事发生吗?哪些是让你印象深刻的?
  最有趣的是离职员工在代码里写的f类的谩骂语,不过也是最无赖的,都是上边的坑下边填。

论坛徽章:
9
2015年亚洲杯之卡塔尔
日期:2015-05-07 07:05:542015亚冠之鹿岛鹿角
日期:2015-05-29 14:55:522015亚冠之鹿岛鹿角
日期:2015-06-11 09:55:192015亚冠之山东鲁能
日期:2015-06-19 23:53:042015亚冠之大阪钢巴
日期:2015-06-23 21:03:17操作系统版块每日发帖之星
日期:2015-06-23 22:20:00操作系统版块每日发帖之星
日期:2015-06-27 22:20:002015亚冠之布里斯班狮吼
日期:2015-07-04 03:40:012015亚冠之平阳省
日期:2015-07-12 09:32:55
22 [报告]
发表于 2015-06-12 11:54 |只看该作者
1、作为程序员,你认为编程最难的事儿是什么?
   
   难的不是语言和程序本身

   而是算法!

   举个例子!
  1.   void shellsort(int v[],int n){
  2.   int gap,i,j,temp;
  3.   for (gap=n/2; gap>0;gap/=2)
  4.     for (i = gap; i <n; i++)
  5.       for (j=i-gap; j>=0&&v[j]>v[j+gap]; j-=gap) {
  6.         temp=v[j];
  7.         v[j]=v[j+gap];
  8.         v[j+gap]=temp;  
  9.       }
  10. }
复制代码
这已不是简单的程序问题,而是算法问题,这就是希尔算法.只是众多算法之一.

  许多程序卡壳,写不下去的程序员,问题不在他们对所用语言的理解不深

  而是他们面临的实际问题,无法提炼出算法,从而导致无法程序化!

  

2、编程过程中,你是怎么来命名的?命名的原则是什么?

   命名的规则,主要看,这个程序的用途和之后如何维护!

   如果是商业产品.并且以后由客户公司自行维护!

   那在命名,变量,常量,函数名,头文件时,就要做到通俗易懂,如果客户需要,双语注释也是标配!(英语+汉语)

   如果是开源产品,放上Github全球分布式维护!

   那在命名,变量,常量,函数名时,头文件时,使用该社区的通用规则即可!

   比如:FreeBSD 社区,编写,系统文件挂载头文件.
  
   直接命名  ufsmount.h 之类的就可以了

   原码文件  ufs_bmap.c ufs_dirhash.c ufs_extattr.c 这样的风格即可

   
3、在你的工作学习中,有哪些有趣儿的事发生吗?哪些是让你印象深刻的?
  
   这个问题,如果让我放开了讲,还真怕受不住!

   在上面几楼,我提到过,写源码自己用,然后故意混淆代码,但不降低性能,来折磨你想恶搞的人.

   这样的事,常常发生.而且乐在其中!

   时间一长,有了积累,你就会发现,这种娱乐方式,还有提高自己编程能力的作用!

   我自己曾经写过不下10个代码混淆器和功能相反的代码简化器!

   当中有出错,也有高潮!

   最经典的就是,一次误操作,把希尔算法的c语言实现错当作了恶搞代码

   做为输入,由自己编写的代码简化器运行,输出了

   希尔算法的代码原型!
  1. int shellsortSh(int p[],int n)
  2. {
  3. int op=0;
  4. int h,i,j,temp;
  5. for(h=n/2;h>0;h=h/2){
  6. for(i=h;i<n;i++){
  7. temp=p[i];
  8. for(j=i-h;j>=0&&p[j]>temp;j-=h){
  9. p[j+h]=p[j];
  10. op++;
  11. }
  12. p[j+h]=temp;
  13. op++;
  14. }
  15. }
  16. return op;
  17. }
复制代码
当时带给我的快感,到现在还记忆犹存!

论坛徽章:
187
2015亚冠之首尔
日期:2015-07-01 17:29:442015亚冠之阿尔萨德
日期:2015-07-01 17:28:262015亚冠之萨济拖拉机
日期:2015-07-08 11:46:172015亚冠之布里斯班狮吼
日期:2015-07-08 11:43:472015亚冠之平阳省
日期:2015-07-08 11:41:572015亚冠之广州富力
日期:2015-07-08 11:40:322015亚冠之迪拜阿赫利
日期:2015-07-01 17:28:262015亚冠之全北现代
日期:2015-07-08 11:43:472015亚冠之首尔
日期:2015-07-01 17:29:442015亚冠之迪拜阿赫利
日期:2015-07-01 17:28:262015亚冠之鹿岛鹿角
日期:2015-07-08 11:41:572015亚冠之北京国安
日期:2015-07-08 11:41:20
23 [报告]
发表于 2015-06-12 14:35 |只看该作者
支持!            

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
24 [报告]
发表于 2015-06-12 15:22 |只看该作者
友情支持下.

论坛徽章:
71
子鼠
日期:2015-06-10 14:07:09丑牛
日期:2015-06-10 14:07:10寅虎
日期:2015-06-10 14:07:40卯兔
日期:2015-06-10 14:07:44辰龙
日期:2015-06-10 14:07:44巳蛇
日期:2015-06-10 14:07:46午马
日期:2015-06-10 14:07:47未羊
日期:2015-06-10 14:07:48申猴
日期:2015-06-10 14:07:50酉鸡
日期:2015-06-10 14:07:54戌狗
日期:2015-06-10 14:07:55亥猪
日期:2015-06-10 14:07:57
25 [报告]
发表于 2015-06-12 18:02 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
208
巨蟹座
日期:2013-09-02 09:16:36卯兔
日期:2013-09-02 20:53:59酉鸡
日期:2013-09-05 21:21:45戌狗
日期:2013-10-15 20:51:17寅虎
日期:2013-10-18 21:13:16白羊座
日期:2013-10-23 21:15:19午马
日期:2013-10-25 21:22:48技术图书徽章
日期:2013-11-01 09:11:32双鱼座
日期:2013-11-01 20:29:44丑牛
日期:2013-11-01 20:40:00卯兔
日期:2013-11-11 09:21:32酉鸡
日期:2013-12-04 19:56:39
26 [报告]
发表于 2015-06-12 18:34 |只看该作者
hellioncu 发表于 2015-06-12 09:53
老板,该给我加薪了吧

钱多的才是老板啊
老板,给点赏钱吧

论坛徽章:
16
CU十二周年纪念徽章
日期:2013-10-24 15:41:3415-16赛季CBA联赛之广东
日期:2015-12-23 21:21:55青铜圣斗士
日期:2015-12-05 10:35:30黄金圣斗士
日期:2015-11-26 20:42:16神斗士
日期:2015-11-19 12:47:50每日论坛发贴之星
日期:2015-11-18 06:20:00程序设计版块每日发帖之星
日期:2015-11-18 06:20:002015亚冠之城南
日期:2015-11-10 19:10:492015亚冠之萨济拖拉机
日期:2015-10-28 18:47:282015亚冠之柏太阳神
日期:2015-08-30 17:21:492015亚冠之山东鲁能
日期:2015-07-07 18:48:39摩羯座
日期:2014-08-29 23:01:42
27 [报告]
发表于 2015-06-12 21:29 |只看该作者
1、作为程序员,你认为编程最难的事儿是什么?
现实生活中的事件用程序抽象出来解决掉。还有就是函数命名确实很难想。。。主要是应该是是程序设计思路不好
导致函数变量难命名吧。
2、编程过程中,你是怎么来命名的?命名的原则是什么?
以前采用unix 风格的单词加下划线, 现在主要采用驼峰式格式。命名采用有相同意义的单词代替
3、在你的工作学习中,有哪些有趣儿的事发生吗?哪些是让你印象深刻的?
外语水平不好,,,有时候同一单词经常写错。 导致经常编译出错  或者脚本运行不过。。
现在语言这么多。公司又要都精通。。感觉容易搞混 语言间语法 ,,偶尔还要看看语法才能写。。。

论坛徽章:
154
2022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:5720周年集字徽章-年
日期:2022-10-26 16:44:2015-16赛季CBA联赛之深圳
日期:2022-11-02 14:02:4515-16赛季CBA联赛之八一
日期:2022-11-28 12:07:4820周年集字徽章-20	
日期:2023-07-19 08:49:4515-16赛季CBA联赛之八一
日期:2023-11-04 19:23:5115-16赛季CBA联赛之广夏
日期:2023-12-13 18:09:34
28 [报告]
发表于 2015-06-13 03:04 来自手机 |只看该作者
或者毕业一年的学生比较适合培训一下

求职 : Linux运维
论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:15:0815-16赛季CBA联赛之山东
日期:2016-10-31 10:40:10综合交流区版块每日发帖之星
日期:2016-07-06 06:20:00IT运维版块每日发帖之星
日期:2016-02-08 06:20:00数据库技术版块每日发帖之星
日期:2016-01-15 06:20:00IT运维版块每日发帖之星
日期:2016-01-15 06:20:00IT运维版块每日发帖之星
日期:2016-01-10 06:20:00黄金圣斗士
日期:2015-11-24 10:45:10IT运维版块每日发帖之星
日期:2015-09-01 06:20:00IT运维版块每日发帖之星
日期:2015-08-13 06:20:00IT运维版块每日发帖之星
日期:2015-07-30 09:40:012015年亚洲杯之巴勒斯坦
日期:2015-05-05 10:19:03
29 [报告]
发表于 2015-06-13 06:35 |只看该作者
先支持起来在努力思考这些问题。呵呵

论坛徽章:
24
天蝎座
日期:2014-05-13 18:05:59IT运维版块每日发帖之星
日期:2015-11-26 06:20:00操作系统版块每月发帖之星
日期:2015-12-02 14:57:54IT运维版块每月发帖之星
日期:2016-01-07 23:01:56IT运维版块每周发帖之星
日期:2016-01-07 23:04:2615-16赛季CBA联赛之青岛
日期:2016-01-23 07:58:272016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之北控
日期:2016-03-23 14:20:06IT运维版块每日发帖之星
日期:2016-04-01 06:20:0015-16赛季CBA联赛之吉林
日期:2016-06-28 13:51:54IT运维版块每日发帖之星
日期:2016-07-01 06:20:00IT运维版块每日发帖之星
日期:2015-11-23 06:20:00
30 [报告]
发表于 2015-06-13 13:26 |只看该作者
回复 9# jieforest


人的记忆有限,我现在都是写成文档形式,要不真心记不住,太多东西了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP