??xml version="1.0" encoding="utf-8" standalone="yes"?>
我从来都不认为单U的理想p够运营一间公司,一间公司要生存下去Q就必须得盈利。所以从q个角度来看Q老板们肯定是惌获得更多的利润而节U更多的成本。所以我不存在太强烈的被q害妄想Q认本家L在榨取我们的剩余价|L在戕x们。我也不认ؓ大老板们或者掌权者需要对我们有多好多好?br />
公司的股东和掌握实权的h惌赚钱我觉得这是无可厚非的?br />
真正让我疑惑的,?strong>老板和大佬们除了赚钱和利用公司实C人理想之?/strong>Q他们到底还在想些什么呢Q?br />
坦白_我感觉现在的环境环境相当的糟p。当Ӟ“p糕”q个评是跟我过ȝ工作环境相比较而获得的。而且在过ȝ一D|间里Q我依然为同一间公司服务?br />
现在的工作环境怎么个糟p呢Q?br />
最q我搬去了一个新的办公环境?strong>新办公地点的交通没有以前便?/strong>了,附近的配套设施也更加E~?#8212;—例如我以前从来不怎么需要担心去午餐和晚去哪里?/strong>。但我现在陷入到不愉快的忧虑中,因ؓ我以后每天上班我都要为每天中午要吃什么,d里才能找到吃而头痛。而且即扑ֈ吃的Q也不一定代表万事大吉。送外卖可能晚点,好不Ҏ到达了可能少了点东西Q食堂据说性h比极其低下;如果我要提高一下餐饮质量我q得徒步L较远的地方,费旉……
不得不说Q作Z个土生土长的q州人,我真的很在乎吃这件事。吃得不好,直接影响我的工作心情?br />
食和行已l变差,情况q能更糟p点吗?{案是,能?br />工作环境和设施直U下降一个等U。如果食和行q可以将,只是鬼{肉人钢铁一般的皮肤下的一个小伤口的话Q那办公环境的变坏就直像是在国U约“U了一个蘑?#8221;?br />我的工位大小严重~水Q宽度甚至不够我完全舒展我的双臂。摆放两?4寸的昄器(虽然公司从未l我配备q种规格的装备)完全没有什么自q间了。我不再像以前那栯在工位上扑ּ白纸随意写写ȝQ跟同事说我的构思和xQ也不再像以前一LE篏了可以比较舒服地在工位上打个盹。狭H的桌面q我把办公用品堆放得更加紧凑,q度密集的同事们把我重重包围Q导致我到办公室坐下的第一旉惛_的居然是什么时候能够下班!
׃办公室是新装修的Q有人甚至疯传过里面的甲醛含量尚未达标。即使摆放了更多l色植物Q也依然无法改善因ؓ工位~水Q基设施落后而导致的低落心情。已l听见不止一位同事在抱怨如厕体验不如以前舒适?br />
很多人都新办公环境?#8220;用户体验”达成了一个精炼的公式Q我们就?strong>在网吧里当客?/strong>嘛?br />
作ؓ一个程序员Q却被强制{职ؓ“|吧里的客服”Q我觉得很不爽也很疑惑。我甚至不知道如果微软的Cutler遇上q样的事会不会冲上去D打他们的CEOQ当然如果他们敢q么q的话)?br />
我知道作Z个初出校园,l验不丰富的E序员新手,在大多数情况下能l公司带来的价值是不大的。甚x我灌输过“公司请你们进来其实一开始是在亏钱培ȝ”之类的观c某E度上我认ؓ他的观点可以理解Q但心里LU莫名的愤怒。即使一个h创造的价值是如此的微,但能不能代表他的创造就可以被忽视?
我不知道大老板们是不是不重视程序员所创造的价?/strong>q是q脆认ؓ公司M一大批Ҏ没在创造h值的E序?/strong>Q新手)。如果他们认同程序员所创造的价|q希望他们能l公司创造更多h值的话,那ؓ什么给予他们比起以前明昑ַ了那么多的待遇?
有位富有l验的同事曾l跟我分享过他的一些观点,他认为:E序员的薪水q不是公司当q的业W和收入所军_的,而是C会上同一层次的程序员所能接受的q_薪水军_的。那样似乎就可以认ؓQ公司赚不赚p那群写代码写到颈椎病、黑眼圈、掉头发甚至爆心脏的E序员没有Q何关pR只有市Z存在一位张三他愿意?0%的薪水去完成100%的工作,那老板们就能心安理得地push李四?00%的薪水去完成120%的工作甚x多。如果李四不满而离职,老板们似乎也认ؓ毫无损失。因x案很单,你不q大把hqԌ只要把张三招q来可以了?br />
q么看来Q似乎都把老板们描d十分单粗暴和不近人情。而且邪恶的Ş象之下还带着挥之不去的愚蠢。但是想׃层,老板们似乎绝对不可能愚蠢甚至有可能是_明得吓人的?br />
Z么呢Q?br />
现在资讯如此发达Q博客和软文满天飞。减薪、加班和削减利D的代码质量下降,人才失最后带来的效率低下和项目破产,直接增加公司的运营成本,q么单的道理和现象,那些拿了帝名校phD学位的老板们怎么可能不知道呢Q那既然他们知道Qؓ什么还要反光而行之呢Q?br />
现在的状늜hg是Q?strong>我们的大老板明知道降低我们的工作和生z质量会D公司q营成本的增加,但是他们却无动于街?/strong>而且对待E序员好一些ƈ不是什么心病狂、ឮ天良的事,也有很多国内和国外的公司在这一斚w做得非常好。在此就不列N些福利心病狂的公司了。因Z旦D出具体的例子Q就一定会有h跛_来发动圣战,说某某一直宣扬自׃h工高Q福利好的公司其实是无恶不作的绿茶婊Q国内很多公司连饭都吃不饱就不应该谈资情怀云云?br />
?strong>q又明显地催生出一个新的疑?/strong>Q我觉得我所在的公司最qŞ势一片大好啊Q至在股h和大老板每个季度的胦报里都体现出公司蒸蒸日上的势_那ؓ什么公司赚那么多钱却不U一个好一点的临时办公地点Q可能有些h会回{说Q因为社会上同一层次的程序员的^均需求下限就是可以到达这么低Q所以公司这么干也无可厚非。那我就更疑惑了Q既然如?Q那Z么某些公司在其一个老员工挂掉了之后q给ta的配偶发一半的工资呢?Nq就是传说中的犯贱吗Q?br />
Z么号U是同一cd的公司,老板们的行ؓ的差异却是如此之大?I竟他们在想什么呢……
或者粗鄙地g壎ͼ对你的员工好一点你会死吗!
]]>
W者在制作一个QQ游戏的辅助工hQ就曄因ؓ一旉找不Cq图片相对于H口左上角的坐标而苦恹{?br />Q因个找茬辅助工hZ屏幕截图Q像素点之间逐一直接比对的)
如何知道上图两个U点分别相对于窗口左上角的坐标值呢Q?br />扩展Q又如何知道两幅找茬囄的宽度和高度呢?
|上不乏好的查找ҎQ但是ؓ了获取几lD另外写E序Q笔者认Z够灵zR?/span>
E序员还是应该懒一点~
解决Ҏ如下Q?br />q用photoshop的标功能即可完成Q务:
W者用的是photoshopCS4Q估计其他版本也有这个功能?br />
W一步:
利用QQ自带的截囑֊能(TXq回自作聪明了,QQ截图居然可以针对某个特定H口或者某个特定控件截图,从而省却了全屏截图q后裁切H口的步骤)Q截取游戏窗口的PPQ如?img border="0" alt="" src="http://www.shnenglu.com/images/cppblog_com/arthaslee/2011-07-24-2.jpg" />Q?br />
W二步,在photoshopCS4中打开q张囄Q放大之Q然后在工具栏中选择标尺工具Q如图:
标尺工具
接着在图片左上角的位|开始,沿着L方向拖曳标尺工具Q就像^时在windowsd中画直线一P然后我们会看C条很l的直线被拖出;
W者往下垂直拖曻Iq除了能够确定左上角坐标之外Q还可以量出图片的高度?img border="0" alt="" src="http://www.shnenglu.com/images/cppblog_com/arthaslee/2011-07-24-5.jpg" />
U色框框里面的灰色线条(两头有十字图案的Q就是拖曛_来的直线标尺?br />蓝色框框有几l|熟悉windowsH口~程的童鞋们应该都可以笑而不语了Q笔者不才,q是斗胆解说一下:
xQ相对于囄左上角的像素横坐?/strong>Q也是我们要找的图片或者控件相对于H口左上角的坐标|
yQ相对于囄左上角的像素U坐?/strong>Q同上)
wQwidthQ线D两端端点之间的水^宽度Q单位是像素Q在q里是负数是因ؓW者的l点在v点的水^方向左边Q因此是负数?br />hQheightQ线D两端端点之间的垂直宽度Q单位是像素Q?br />
注意Q这里得到的数值是一个小敎ͼ其实说白了也是精度问题?br />qx在做windowsH口~程?span style="color: #ff0000">q程中,控g的坐?/strong>L整数Q例如上囄x = 9.44Q要?q是?0Q那p看我们在一开始选点的时候是否够贴近真倹{?br />q里目测一下(噗!O(∩_∩)O哈哈~Q,昄是比真实囑փE微偏左了,因此?0Q其他值都按照q个Ҏ处理?br />
用这U方法,可以出两幅囄的左上角坐标和图片的宽、高。获得g后,q用到程序中Q误差不会超q?个像素,到时在测试过E中微调一下就OK了?br />W者很q运Q第一ơ取整的时候就C了,O(∩_∩)O哈哈~
针对QQ游戏大家来找茬,发放一下小屏幕版本的关键数据吧Q?br />x1 = 10
y1 = 185
x2 = 403
y2 = 185
nWidth = 380
nHeight = 285
最后恶心一下:各位准备YY各种游戏辅助工具的亲们开发愉快,噗哈哈哈哈哈Q?br />
谁说只有工能用PS捏?׃E序员也可以适当投机取y一下嘛~哈哈
]]>
]]>
对于堆和栈中的数据内Ҏ_
栈:~译器需知道数据内容的生存周期、但是可以快速管理和分配栈内存;
堆:~译器无需知道数据内容的生存周期,保证灉|性、但是分配和回收内存不如把数据放在栈中来得快Q?/span>
Q2Q对象在其生命周期结束后l历什么步骤而后被释放?销毁机制具体是怎样的?底层通过什么实玎ͼ
当程序执行到一个块or作用域(scopeQ的l尾Q会自动清理其维护的栈中的内存数据?/span>
于是Q如果保存在栈中的唯一reference挂掉了,意味着再没有办法可以操作其原先引用的对象了?/span>
但是保存在堆中的对象在这时候还没有被清理掉?/span>
对于在堆中,没有被引用的对象。垃圑֛收器会直接把他们占据的内存空间释放掉?/span>
真的如书中所_q种机制滴水不漏吗?会不会有陷阱Q?/span>
会不会有一些不l意的操作导致引用计数永q不为零Q然而用户却늄不知呢?
内存泄漏真的可以在真正意义上得到避免吗?
Q3Q垃圑֛收机制究竟能q什么,不能q什么?I竟本质是什么?
垃圾回收机制原来只会?/span>new出来的堆内存起作用!Q!
万一不是new出来的,那还是得人工回收……
1、You might not get garbage collectedQ?/p>
?#8230;…q样的垃圑֛收机制啊……
q真是懒?#8230;…
M是Q垃圑֛收机制只会回收对象在堆中的内存,但究竟这个对象的操作曄q了什么,有没?#8220;历史遗留问题”Q?/span>java是一概不的……
q个垃圾回收机制q是回到回忆中去?#8230;…Q我没吐槽最l惻I真的没有Q)
ClassName objQ?/span>//局部对象,攑֜栈中Q?/span>C++可以q样Q?/span>java不行Q?/span>
C++的好处:作用域结束,局部对象的destructor自动被调用,释放栈中内存Q?/span>
New出来的对象:
//C++的坏处:不执?/span>delete的话Q对象占用的内存会一直赖在堆中。就让内存漏一会儿吧?/span>
//java的好处:不用昑ּ执行Q只要作用域l束Q?/span>reference被清除,垃圾回收器就会自动回收堆中的内存Q?/span>
而且Q?/span>java兄还不让你在栈中创徏局部对象呢……
Q3/1Q?u>那究?/u>new操作发生的时候,java语言为用户干了什么?new的操作也会对引用计数产生作用——例如初始化和创建吗Q?/span>垃圾回收器如何工作呢Q?/span>
相对于堆而言Q在栈中释放和分配内存还是效率较高。这可能也是一些程序的数据攑֜栈中Q一些放在堆中的原因之一吧?
引用计数cM是一个对象中的成员;有东西引用对象,增?/span>1Q当有引用在栈中被释放或者设?/span>NULLQ就减少1Q发现引用计Cؓ0Q就证明q个对象已经没h要了……
~点Q?/span>
垃圾回收器要扫描整个对象列表Q查扑ּ用计Cؓ0的对象;
如果有两个对象碰巧相互引用了彼此Q那q两个对象的引用计数q不ؓӞ即没h要也不会被清除掉Q?/span>
最悲催的是Q?/span>
JVM都不是通过q种机制实现垃圾回收?#8230;…
JVM是这么干?#8230;…
逆向思维Q不找死的,找活的!从一个引用出发,遍历其对?/span>-树(自己作的Q。透过每一个在栈中或者在静态区中保存的引用Q以之ؓ根节点,遍历׃出发可以到达的对象节炏V?/span>
好处Q?/span>
不用遍历所有堆中的对象?/span>
解决两个对象互相引用而导致引用计数恒不ؓ0的问题;
l过上述处理Q没被找到的对象会被清理掉,但是会留下内存碎片,费I间。所?#8230;…
妙!
把程序停止下来,把活动的对象copy到新的堆内存Q连l存放,q样pZ那些原先成ؓ片的空间?/span>
然而,一?/span>copy?/span>copy去需要有额外的堆内存来保?/span>copy的数据,实际?/span>copy发生的时候需要双倍于?/span>copy内容的堆内存同时可用?/span>
其次Q?/span>copy也需要时I开销……
于是……
JVM把sweep-and-mark?/span>stop-and-copyl合hQ?/span>thinking in java有详qͼ
大对象占用一?/span>blockQ每?/span>block有一?/span>generation count作ؓ其可用与否的标记?/span>
一些小对象攑֜一?/span>block里;
Ҏ引用来遍历其对象-树的操作开始执行:
一般来_大对象是不会?/span>copy的;
对象会被复制和重新理Q释攑ֆ存碎片;
JVM在碎片多的时候进?/span>stop-and-copy来整理碎片,腑ևI间Q在堆内存够和片不多的情况下Q则只执?/span>sweep-and-mark?/span>
在这L垃圾回收机制下,只要?/span>new出来的东西,真的都能回收了。某E度上还真是滴水不漏?#8230;…
昄是抄IBM大型机的外存理嘛!数据集放?/span>block中,被删除的数据集的block标记Z可用Q新建的数据集放在后面的block中。当存储I间不够了,整理那些已经存在又可用的数据集,存放在一片连l空间中Q把片重新整理为可用内存,真是……
抄吧抄吧Q不是罪……