《代码大全2》读书笔记 Week4】的更多相关文章

<程序员思维修炼>读书笔记——week4 PB16061441 陈昶金 这周读的是Andy Hunt的著作<程序员思维修炼>,这本书对于我这种刚刚入门的新手很友好,大多是讲一些遇到问题是的解决思维与平时编程时的思路问题,对我很有帮助. 令我感触很深的是文中关于新手和专家的讨论:新手:很在乎自己是否能成功,不知道自己是对是错,不是特别想要学习,只是实现一个立竿见影的目标,不知道如何应付错误,错误出现不知所措.新手需要指令清单,有规则,有顺序.但规则只能让我启程,不会让我走的更远.很显…
前言:这是一本介绍如何用脑的书,并从思维的角度(以程序员为例),介绍如何从新手成为专家.作者带领着读者(我)共同经历一次有关认知科学.神经学.学习和行为理论的旅程,探索人类大脑令人 惊奇的工作的机制,并研究如何克服这一系统局限来提高自己的学习和思考技能. 我认为,这本书,不仅适合程序员了解行业,认识破解领域问题的思路和方法,也适合很多想要打破思维局限,提高学习能力的人来读.我从中受益良多,也希望更多的人阅读这本书有所收获. 感受很深的地方: 关于新手与专家 使工作看起来很轻松,从另一个角度,其实…
ClassLoader具备层次关系,且不止一种.不同的类装载器分布创建的同一个类的字节码数据属于完全不同的对象,没有任何关联 通过Class.forName(String className),能够动态加载一个类 Java程序不是一个可执行文件,而是由许多独立的类文件组成的,每一个文件对应一个Java类.此外,这些类文件并非全部都装入内存,而是根据程序需要逐渐载入. ClassLoader是JVM实现的一部分,ClassLoader包括bootstrap classloader(启动类加载器),…
1.计算机语言的发展史: 机器语言:机器语言是指一台计算机全部的指令集合. 汇编语言:为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母.符号串来替代一个特定的指令的二进制串. 高级语言:BASIC(True basic.Qbasic.Virtual Basic).C.C++.PASCAL.FORTRAN.智能化语言(LISP.Prolog.CLIPS.OpenCyc.Fazzy).动态语言(Python.PHP.Ruby.Lua)等等.- 高级语言源程序可以用解释.…
想不到我工作中经常GOOGLE搜寻技术问题的stack overflow网站的创办人竟然是<高效能程序员的修炼>一书的作者!看了一遍全书,果然名不虚传. 本书更多的从人文角度而非技术角度去阐释了作为一个程序员,应该具备的基本素质,所以在看这本书的过程中,感觉非常轻松并且内容也很通俗易懂,又很贴近工作和生活中的实际,书中通过一个程序员的职业生涯的角度去说明了作为一名合格的程序员,需要具备的基本素质,同时也分享了作者工作中大量的经验和忠告.可能每个人读同一本书,对于不同的章节.内容会产生不同的感想…
读书笔记 Week 4 <我是一只IT小小鸟> 首先不得不说,这周的个人编程任务占据了我绝大多数的精力.,虽然在接触到题目的第一时间就有了大致的思路,但当我真正上手开始编程的时候,却几乎每写一行代码,就被卡住了,消耗了大量的时间在百度/谷歌/CSDN去寻找相关语句的用法. 在这样的压力下,团队项目可以说是完全停滞了,同样的,也没有太大的精力去读一些量较大的大部头.恰逢老师在群里推荐了<我是一直IT小小鸟>这本书,便下载去读.不得不说,这样一本较为轻松的书籍,很适合在写程序写到头昏脑…
几乎整个互联网行业都缺CTO,特别是一些草根背景的创业者,这个问题更加显著.从我自己的感受,身边各种朋友委托我找CTO的需求,嗯,算下来超过两位数了,光最近一个月就有3个,而且这三家都是刚拿了A轮的.其他那些公司CTO大部分空缺了一两年,或者其他高管临时暂代过渡.实话说,我觉得每个公司都不错的,但通常也只能遗憾的说,真没有能推荐的. 几乎整个互联网行业都缺CTO,特别是一些草根背景的创业者,这个问题更加显著.从我自己的感受,身边各种朋友委托我找CTO的需求,嗯,算下来超过两位数了,光最近一个月就…
在Jeff看来,团队里最重要的事情,是人与人之间地协作和沟通!所有的问题,其实都是人的问题.“不管什么问题,那总是人的问题”-温伯格.即,让你和团队陷入困境的最快的方法,就是认为技术是决定性的因素,而且你相信你能轻易解决其它方面的问题.事实上,正是你所认为的“其它方面的问题”,最可能让你和团队止步不前. 这一章里,Jeff主要列举以下几个要点: 1. 领导须以身作则 团队,首先要有的就是纪律,也就是由大家共同讨论协商并决定的标准.每个团队都需要一个领导,带领大家去遵守并有效执行这些标准.以身作则…
因为时间有限,只对书中后半部分几个篇章进行了阅读.        一.另一条路       作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面软件,而是走了另一条路,也就是写在服务器上运行的软件.而事实证明,他们是正确的,他们不但取得了巨大成功,甚至可能引领了下一个潮流.       其实说到潮流,大多数人都在追随着潮流,当然这不是件什么坏事.但是我们不能总是在现有的潮流中迷失自己.也就是说,眼光要放长远一点.你永远不知道下一个潮流是什么…
<代码大全2>第8章:防御式编程 防御式编程的主要思想是子程序应该不因为非法的输入值被破坏,就好比开车时的防御式驾驶:你无法预估其他司机将会做什么,但你要采取措施保证当他人做出危险动作时自己不受伤害.防御式编程的核心其实是承认程序始终存在问题,需要不断地被完善. 保护应用程序不受外部错误输入破坏的主要思路有三种:检查所有来源于外部的程序的值,检查子程序所有输入参数的值.决定如何处理错误的输入数据.然而防御式编码的最佳方式是一开始就不要在源码中引入错误,使用迭代式设计.写代码前先写测试用例等等,…
在最近的一周,我维护的业务系统出现了很多坏毛病,一周七天crash掉了4次,每次都需要都是因为一点很小的问题,触发了蝴蝶效应,导致整个系统全盘崩溃,于是产生除了叙述本篇的想法,当然这并不是为了掩盖我在Coding上的一些细节处理和职责疏忽,只是为了从根本的细节上去分析这些问题. (一.)为什么会产生BUG首先我们需要尝试理解一下什么Bug? 关于bug的解释 bug 是指任何计算机程序或硬件系统中的错误,故障或缺陷.错误会产生意外结果或导致系统意外运行简单来说:bug就是程序出了问题,产生了意外…
作为忠实与较资深的Android汪, 最近抽出了一些时间研究了一下Google的亲儿子Flutter, 尚属皮毛, 只能算是个简单的记录吧. Google自2017年第一次提出Flutter, 到2018年Beta, 再加之RN的各种风波与问题, 使得Flutter的热度不断上升, 国内不少公司都公布Flutter在其产品中的应用, 如美团, 闲鱼等. 前言 Flutter作为跨平台框架, 常常被人拿出来与React Native, 以及Xamarin进行对比, 除了大家都是跨平台框架之外且能达…
1)类,对象,方法 类 类名: 1) 类名的第一个字母必须是大写 2) 不能有下划线 3) 多个英文单词,用驼峰标识 类的声明和实现 类的声明 @interface 类名 : NSObject { @public 成员变量: } 方法声明; @end 类的实现 @implementation 类名 方法实现; @end 举例说明: //Horse类的声明 @interface Horse : NSObject { @public //使成员变量可以让外部访问 //定义成员变量color,weig…
前言 不要因为迷茫,而停止了脚下前进的路.给大家推荐一份Java程序员必看的书单,豆瓣评分都挺不错的,每一本都值得去读,都值得去收藏,加油呀 本文已经收录到github https://github.com/whx123/JavaHome 专题一:Java 基础篇书单 专题二:代码优化篇书单 专题三:计算机网络篇书单 专题四:操作系统 && 计算机底层书单 专题五:数据结构与算法篇书单 专题六:缓存篇书单 专题七:数据库书单 专题八:微服务 && 分布式篇书单 专题九:消息…
http://agiledon.github.io/blog/2013/04/17/thoughtworks-developer-reading-radar/#rd?sukey=f64bfa68330f696aa05077dbb740f367870988360956e818b4f7074c49ab47258dc687689cc483391f771e27e2bca446 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难…
原文地址:ThoughtWorks(中国)程序员读书雷达 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效.一位优秀的程序员,或许就是一名好的阅读者.好的阅读者,总是知道如何选择好的书籍.书海浩繁,良莠不齐.阅读技术好书,如与智者交谈,“与君一席话胜读十年书”:遭遇技术烂书,如被拐卖,“少小离家老大回…
ThoughtWorks(中国)程序员读书雷达 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效.一位优秀的程序员,或许就是一名好的阅读者.好的阅读者,总是知道如何选择好的书籍.书海浩繁,良莠不齐.阅读技术好书,如与智者交谈,“与君一席话胜读十年书”:遭遇技术烂书,如被拐卖,“少小离家老大回,乡音无改…
在学校论坛看到这道题目,全忘了的感觉. 如果你是高中的,那我觉得你完全没问题.但是,在这个博客园的圈子,觉得全部人都是程(ban)序(zhuan)员(gong)相关的人员,解决这个问题有点难度,毕竟,想法已经偏了. 有句话说得好,如果你拿着一个锤子,那你看什么都像一个钉子. 因此程序员必要的时候必须转换下思路啊.程序员思维是:已知条件,求值:而不是已知 条件 和 值,求证:这求值过程不存在bug. 如果有人叫你这么证明你的程序的求值过程正确,你会不会抡起你的键(zhuan)盘(tou)就拍过去了…
工程师该怎样才能突破自己的能力瓶颈?写 blog! 工程师该怎样精进自己在职涯上所需要的能力?写 blog! 工程师该怎样才能保持学习与成长的动能?写 blog! 工程师该怎样才能证明自己的潜力与特质?写 blog! 工程师该怎样才能发挥与养成影响力?写 blog! 本文打算老生常谈,从几个很实务的方面来整理,写 blog 对你有什么好处.如果你不需要这样的好处,或是有更好的方法获得这些好处,Just do it!如果愿意分享让我可以跟着你一起学习,我将感激不尽. 前言 开始本文之前,我想先引用…
推荐几本书<高级java程序员值得拥有的10本书>,     首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - 导航条 - 首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - iOS - Python - Android - Web前端     高级Java程序员值得拥有的10本书 2015/05/05 | 分类: 书籍 | 1 条评论 | 标签: JAVA 分享到:22 译文出处: 码农网   原文出处:dzone Jav…
算法和数据结构(鉴于二者的关联,以下统称算法),对于程序员的重要性一直是个具有争议性的话题.有一些程序员内心对算法有着天然的排斥,面试当中一旦考察算法知识,会被不少程序员吐槽,但有部分公司又一直在坚持这种做法.我且以一个iOS程序员的视角,谈下自己粗浅的看法. 不懂算法并不妨碍成为一名iOS程序员,大家关心的是:掌握算法知识和成为一名优秀程序员之间的关系.在我看来,二者是非充分但必要的联系.至少适度的掌握算法知识是成为一名优秀程序员的必要前提,当然也包括iOS程序员.其重要性简单来说可以归为以下…
程序员大牛,StackOverflow.com创始人之一--Jeff Atwood 英文博客:http://blog.codinghorror.com <高效能程序员的修炼>,人民邮电出版社,2013英文原版:Effective Programming: More Than Writing Code 购买链接 >>> 互动出版网:http://product.china-pub.com/3768291亚马逊:http://www.amazon.cn/dp/B00DXZFZPO…
信念.思考.行动-谈谈程序员返回家乡的创业问题 昨天晚上在微博上看了篇 <为什么现在很多年轻人愿意来北上广深打拼,即使过得异常艰苦,远离亲人,仍然义无反顾?>,有些话想说. 感觉很多人的担心是回到一个落后的环境后的种种不适应,比如说,工作机会少,比如说,工资低,比如说,不靠能力靠关系,比如说,受不了爱攀比的文化. 极其巨大的反差阻挡了程序员的脚步. 程序员返回家乡,那就是农村包围城市.在二十世纪,农村包围城市最成功的就是我党.我们先看一个问题:太祖.恩来.国焘.明明四个人,当年都是我党的巨头,…
Java帝国的崛起 前言: 分享技术之前先请允许我分享一下黄永玉老先生说过的话:“明确的爱,直接的厌恶,真诚的喜欢.站在太阳下的坦荡,大声无愧地称赞自己.” <编程常识知多少> <走进编程的殿堂> <高级语言大锅烩> 前面写的三篇博客如果有朋友认真的看了,现在对编程和编程语言应该有了一些了解,下面我针对之前介绍过的编程语言来讲一个故事<Java帝国的崛起> C语言 C国的统治 Long long ago(1972年),在古老的东方有一个国家叫C国(C语言),…
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们.主要有:电子书搜索.实用工具.在线视频学习网站.非视频学习网站.软件下载.面试/求职必备网站. 一.PDF搜索网站推荐对于大部分程序员来说,电子书的需求量还是很大的,介绍几个不错的免费搜电子书的网站吧. 1.鸠摩搜书 这个网址可以用来搜索一些pdf的书,有了这个网址,就不用百度全网搜索pdf的书了.虽然可能没有像百度全网搜索那么全,但大…
首先,这本书值得再看一遍——这次的阅读,有很多东西都是知其“形”,不知其“神”的,这导致了我对其中某些建议持怀疑态度,接受了的建议也有待商榷. 总之,先记录本书的一些信息: Practices of an Agile Developer 高效程序员的45个习惯·敏捷开发修炼之道 美·Venkat Subramaniam和美·Andy Hunt著:钱安川.郑柯译. 人民邮电出版社,图灵程序设计丛书:2010年第一版. 于2017年12月1日读完第一遍. 1. “敏捷式的单元测试正是采取了相同.相似…
这不是一本新书,这是一本很值得中国程序员看的老书,所以我不是来做卖新书广告的:) 但它的确是一本好书,这本书在Amazon上3个business categories排第一.作者Jason Fried和David Heinemeier Hansson 是全世界效率最高的软件公司之一Basecamp的创始人!他们的员工分散在世界各地远程办公,是通过远程方式协同工作的典范.这两个作者合著的第一本书<重来>(Rework)高居<纽约时报>畅销书榜前列,书中推崇的管理理念在国内商业领域也产…
很早以前就听过李刚老师的疯狂java系列很不错,所以最近找一本拿来拜读,再此做下读书笔记,促进更好的消化. 使用Java数组之前必须先对数组对象进行初始化.当数组的所有元素都被分配了合适的内存空间,并指定了初始值时,数组初始化完成.程序以后将不能重新改变数组对象在内存中的位置和大小. 从用法角度来看,数组元素相当于普通变量,程序既可把数组元素的值赋给普通变量,也可把普通变量的值赋给数组元素. 1.1数组初始化 1.1.1 Java数组是静态的 Java语言是典型的静态语言,因此Java的数组是静…
程序员的思维修炼:摘抄:考虑到社会中各个相关团体的复杂交互影响和社会的持续变化,在我看来当前最重要的两项技能就是: ▪沟通能力: ▪学习和思考能力.软件行业正在逐步提高沟通能力.特别是敏捷方法(见注解栏),强调了团队成员之间.最终客户和开发团队之间的沟通交流. 程序员需要不断地学习——不仅仅是学习新技术,还包括应用的问题域.用户社区的奇思妙想.同事的古怪习惯.行业的八卦新闻和项目演进的重要特征,我们必须学习学习再学习,持续不断地学习,然后把学习成果应用到解决日常遇到的一切新旧问题上. 专家精通者…