程序员

编程的艺术门槛

拥有回忆 提交于 2019-12-05 13:41:14
编程是门艺术,这个说法由来已久。最近在朱赟的公众号(嘀嗒嘀嗒)读到一篇文章《设计是门逻辑学,然后才是美学》,文中作者漂洋过海追寻艺术,老师却说:“设计不是艺术!”。如果设计都不是艺术,那么编程还能是艺术么? 艺术 那么艺术到底是什么?我一下懵了,发现从来没有想过这个问题,只好求助于 Google。Wikipedia 上的定义是:「艺术是具有智能思考能力的动物(目前其实只有人类吧),借由各种形式及工具借以表达其情感与意识形态,所产生的形态泛称之为艺术。」 而上面那篇文章中老师的观点是: 设计是实现别人的需要,艺术是自我表达的需要。 和 Wikipedia 的说法相近,核心都在于表达。而目前公认的艺术分类,包括八大艺术种类: 文学 绘画 音乐 舞蹈 雕塑 建筑 戏剧 电影 它们的共性是这些都是人类自古以来的创造,其中最年轻的艺术门类当属「电影」了,其作品承载了作者的情感和意识形态。而所有被公认的艺术门类,显然它们最终作品呈现出的艺术表达形态更容易被普通人直接的感受到,直接作用于人们的视觉、听觉和触觉感官。 关于编程是一门艺术这个概念,到底什么时候钻入程序员的头脑中的呢?也许来自我们在学习编程的路上,很多讲述编程的书籍都冠以艺术之名,比如:《UNIX编程艺术》,这是一本讲述 Unix 专家们在创造 Unix 过程中形成的理念和文化,那么技术文化是艺术么?还有另一本程序员中的圣经

十年风雨,一个普通程序员的成长之路(八)不想做技术总监的项目经理,不是好程序员

左心房为你撑大大i 提交于 2019-12-05 13:32:54
目录 十年风雨,一个普通程序员的成长之路(八)不想做技术总监的项目经理,不是好程序员 01 技术总监写不写代码? 02 面试的坎坷与杯具 03 新的开始 & 旧的结束 十年风雨,一个普通程序员的成长之路(八)不想做技术总监的项目经理,不是好程序员 01 技术总监写不写代码? 曾在IT界掀起腥风血雨的一个问题:技术总监要不要了解技术细节? 归根到底的问题就是:技术总监还要不要写代码了? 在18年12月前后,我给你的回答可能截然不同。 18年12月,我离开了相伴多年的公司,换了一个东家。 “我要写代码",五个大字映在我的胸腔。 就在前段时间,老东家的上司还问我要不要回去。 我想了下,回复如下: 回去的话,不想带项目,不做项目经理,可以做售前、架构把控,写代码也可以;可以找人做项目经理,我前期可以带一程,或者协助。 我觉得XXX(我当前公司)这边的组织架构还可以,有总工、架构师、项目经理,架构师负责规划项目或者核心代码实现,项目经理负责项目进度。 为什么这样说? 请看我上文 十年风雨,一个普通程序员的成长之路(七)膨胀、骄傲,程序员转项目经理的原罪 两年的项目经理做下来,感觉在代码修炼、程序设计上没有任何的长进。 在组建大数据项目组的时候,本以为自己可以投身项目,写一些核心代码,弄一弄Hadoop、hbase、jstorm、kafka、spark、kylin这些我们项目中用到的大数据技术

程序员一般通过什么途径接私活?

雨燕双飞 提交于 2019-12-05 13:11:03
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外包的程序员有很多很多,曾经高傲的我也嫌弃过 。但没办法,为了挣点零花钱,我垂下了高昂的头。记得有位朋友曾说过,当年沈从文为了生计,写了很多称不上他自己喜欢的文字给报刊。 听朋友这么一说,我也不再觉得“接私活”是多么一件值得羞愧的事情了。人首先要活着,才有体力讲情怀啊。好了,言归正传,我来替“烦不烦”同学介绍几个容易上手的操作。 01、朋友介绍 大体上,天底下做生意都只有一条捷径:从熟人下手。 “哥们,听说你有个朋友是做程序员的,我这有台电脑不知道为啥黑屏了,能问问他知道什么原因吗?要是能修好,保准请你吃顿大餐。” “老弟啊,我有一个朋友说最近流行炒鞋,我想你不是程序员嘛,找你最合适了,要不我把他推荐给你,谈成的话给我发个红包就行了。” 我的第一个私活,就是之前在苏州的一个同事介绍的。不过最后黄了。我搞了两周时间(技术框架用的 JEPF),同事说甲方换方案了,没把我气坏。 同事碍于情面

提升程序员的几点意见?

孤者浪人 提交于 2019-12-05 12:08:37
随着互联网时代的飞速发展,越来越多的人投身于软件开发行业,大家都称他们为程序员,或者码农。   这些程序员的水平也是参差不齐的,有些人从比较好的学校毕业,水平却一般般;也有些人从一般搬的学校毕业,但是水平很高,因为他们付出了比其他人更多的努力;也有些人,不管是好学校还是差学校,毕业了都跑去培训班培训了,出来的也是良莠不齐的。   今天这篇文章,我们不从这些客观因素上去分析,就如题,同样是程序员,为什么别人比你更优秀?我结合自己的一些经历和经验,以及从身边优秀的人身上学 到的经验,从主观上去总结几点,与所有人共勉。   1. 不要吝啬投资自己   和朋友一起搓一顿大概人均几十或者百把块钱,基本上我们都很随意,根本不会觉得这很贵或者很浪费。但是每当我们去买书或者去买一些优质的视频教程的时候,很多人会觉得很贵,甚至不太愿意出这个钱。   的确,技术书籍都很贵,动不动就50-100的,我想说的是什么呢?永远不要吝啬给自己投资,我研究生读的是通信专业,在学校自学的Java,我看过网上很多的免费视频教程,免费的教程有两个特点:一是入门的,二是质量不高的。但是要想真的提升自己,这些入门的教程是不够的,网上有些收费的教程确实不错,我读书那会儿也买过好几个项目视频跟着认认真真学 ,收获颇丰。   而且现在也是知识付费时代了,入门资料一大堆,真正能提升自己Level的东西,哪怕花点钱,给自己投资  

面向对象编程基础

感情迁移 提交于 2019-12-05 11:32:25
  把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance)实现类的特化(specialization)和泛化(generalization),通过多态(polymorphism)实现基于对象类型的动态分派。     程序是指令的集合:我们在程序中书写的语句在执行时会变成一条或多条指令然后由CPU去执行。   为了简化程序的设计,我们引入了函数的概念,把相对独立且经常重复使用的代码放置到函数中,在需要使用这些功能的时候只要调用函数即可;如果一个函数的功能过域复杂和臃肿,我们又可以进一步将函数继续切分为子函数还降低系统的复杂性。所谓编程就是程序员按照计算机的工作方式控制计算机完成各种任务。但是,计算机的工作方式与正常人类的思维模式是不同的,如果编程就碧血抛弃人类正常的思维方式去迎合计算机,编程的乐趣就少了很多,“每个人都应该学习编程”这样的豪言壮语就只能说说而已。实际最重要的原因是当我们需要开发一个复杂的系统时,代码的复杂性会让开发和维护工作都变得举步维艰,所以在上世纪60年代末期,“软件危机”、“软件工程”等一系列的概念开始出现。    当然,程序员圈子内的人都知道,现实中并没有解决上面所说的这些问题的“ 银弹 ”

2019年10月全国程序员工资统计,一半以上的职位5个月没招到人。

大城市里の小女人 提交于 2019-12-05 09:13:03
我每个月第一天(也许是第二天,第三天),会爬招聘网站,并在CSDN发布。 趋势 全国程序员平均工资走势图。图上可以见,6月到8月,工资涨的比较快。之后就停止甚至下跌了。当然,6到8月涨幅过快,后面的下跌可以看作是对之前的调整。怎么感觉我是评论股票的。。。大家听过就算了,别当真。 同时,10月份的招聘人数也大幅减少了。我估计,可能是用人单位不愿意刚刚招来个人,就给他放十一假期,这样不核算。所以宁可推迟招人。 招聘职位的年龄 只有15%的职位是新职位,既9月份没出现的职位。当然,在我上次统计和这次统计之间,有些职位可能挂了上去,然后招到了人,又撤了。这个我也没能力统计了。 绝大多数职位都是【历史】职位。其中52%的职位,已经招聘了5个月了,还没有招到人。 以上是本期的新增内容,以下内容和往期一样,没什么新意。不建议老读者观看。 主要城市程序员工资 编程语言 编程语言 平均工资 haskell 21516 rust 19561 lua 17739 matlab 17690 python 17444 go 17405 perl 16065 ruby 15832 kotlin 15414 c/c++ 15393 julia 15167 swift 14722 typescript 14111 objective_c 13685 java 13259 php 12836 javascript

纠结的程序员人生

十年热恋 提交于 2019-12-05 08:52:12
人人都说要做好职业规划,可是我不知道怎么做,而且我的认知也有限,不知道哪个方向好,就算知道了,以我现在的能力也没有选择,就好像大家都知道大厂比如:百度,腾讯,阿里,美团,滴滴等大型互联网公司对于自己的职业发展比较好,但是我知道我去不了,我不知道该做什么了. 大家也都知道外包不好,前些天还报道说软通动力外包程序员猝死了,看着她女儿戴着白色头巾的照片真是勾起了我一些伤心的回忆,it行业真是不容易的工作,估计等以后我被这个行业淘汰了,我也就认了,最差也不过就去外包,混一口饭吃,外包找不下就去 我也知道it是个竞争很激烈的行业,新技术层出不穷,每年大量的毕业生取代老人,有人说基础重要,面试又喜欢问分布式高并发高可用微服务docker容器,k8s,jenkins自动部署等前沿技术,就差什么雾计算边沿计算,,机器学习人工智能这些了,要求真是越来越高. 现在这份工作说是开发,但是大部分工作还是实施,人家开发好一个平台,我们在上面配置来配置去,写公式,二次开发,数据库都不给人看......我知道这对于我职业发展不好,可是我缺钱,这是我面试最高的工作了,也可能和我辞职后没有好好面试有关系吧. 家里人给我装修房子欠了10多万,对于我一个毕业没多久的人来说压力很大,虽然家里人没有催我,但是我自己给了我很大的压力,所以就没有怎么选工作直接找了一个工资给的最高的工作了,想把欠的钱还完.

Java的反射机制

偶尔善良 提交于 2019-12-05 07:38:40
Java 的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。灵活掌握Java反射机制,对大家以后学习框架技术有很大的帮助。 那么什么是Java的反射呢? 大家都知道,要让Java程序能够运行,那么就得让Java类要被Java虚拟机加载。Java类如果不被Java虚拟机加载,是不能正常运行的。现在我们运行的所有的程序都是在编译期的时候就已经知道了你所需要的那个类的已经被加载了。 Java 的反射机制是在编译并不确定是哪个类被加载了,而是在程序运行的时候才加载、探知、自审。使用在编译期并不知道的类。这样的特点就是反射。 那么Java反射有什么作用呢? 假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码能否通过编译呢?这是不能通过编译的。利用Java反射的机制,就可以让第一个程序员在没有得到第二个程序员所写的类的时候,来完成自身代码的编译。 Java 的反射机制它知道类的基本结构,这种对 Java 类结构探知的能力,我们称为 Java 类的“自审” 。大家都用过Jcreator和eclipse。当我们构建出一个对象的时候,去调用该对象的方法和属性的时候。一按点,编译工具就会自动的把该对象能够使用的所有的方法和属性全部都列出来,供用户进行选择。这就是利用了Java反射的原理

程序员常用的英语词汇

笑着哭i 提交于 2019-12-05 06:40:20
程序员开发常用英语词汇 A abstract 抽象的 abstract base class (ABC)抽象基类 abstract class 抽象类 abstraction 抽象、抽象物、抽象性 access 存取、访问 access function 访问函数 access level访问级别 account 账户 action 动作 activate 激活 active 活动的 actual parameter 实参 adapter 适配器 add-in 插件 address 地址 address space 地址空间 ADO(ActiveX Data Object)ActiveX数据对象 advanced 高级的 aggregation 聚合、聚集 algorithm 算法 alias 别名 align 排列、对齐 allocate 分配、配置 allocator分配器、配置器 angle bracket 尖括号 annotation 注解、评注 API (Application Programming Interface) 应用(程序)编程接口 appearance 外观 append 附加 application 应用、应用程序 application framework 应用程序框架 Approximate String Matching 模糊匹配