﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-码农往事-随笔分类-生活随笔</title><link>http://www.blogjava.net/rockblue1988/category/54744.html</link><description>我的代码为什么这么丑?一定是因为我长的不好看</description><language>zh-cn</language><lastBuildDate>Mon, 25 Jan 2016 18:44:15 GMT</lastBuildDate><pubDate>Mon, 25 Jan 2016 18:44:15 GMT</pubDate><ttl>60</ttl><item><title>一道小题的陷阱</title><link>http://www.blogjava.net/rockblue1988/archive/2016/01/25/429203.html</link><dc:creator>Jimi</dc:creator><author>Jimi</author><pubDate>Mon, 25 Jan 2016 09:16:00 GMT</pubDate><guid>http://www.blogjava.net/rockblue1988/archive/2016/01/25/429203.html</guid><wfw:comment>http://www.blogjava.net/rockblue1988/comments/429203.html</wfw:comment><comments>http://www.blogjava.net/rockblue1988/archive/2016/01/25/429203.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rockblue1988/comments/commentRss/429203.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rockblue1988/services/trackbacks/429203.html</trackback:ping><description><![CDATA[说有一个屋里有多个桌子，有多个人？ 如果3个人一桌，多2个人。 如果5个人一桌，多4个人。 如果7个人一桌，多6个人。 如果9个人一桌，多8个人。 如果11个人一桌，正好。 请问这屋里多少人?<br />
最近比较闲，逛论坛看到随手做了．<br />
最小答案是<br />
代码如下:<br />
<div style="font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all; background-color: #eeeeee;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->&nbsp; &nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;main(String[]&nbsp;args)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;Integer.MAX_VALUE;&nbsp;i++)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;long&nbsp;value&nbsp;=&nbsp;i&nbsp;*&nbsp;11;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(value&nbsp;%&nbsp;3&nbsp;==&nbsp;2&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;5&nbsp;==&nbsp;4&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;7&nbsp;==&nbsp;6&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;9&nbsp;==&nbsp;8)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("i:"&nbsp;+&nbsp;i&nbsp;+&nbsp;",value:"&nbsp;+&nbsp;value);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</div>
计算出来的结果是：i:229,value:2519<br />
转念一想，结果可能不止一个，于是换个写法：<br />
<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->&nbsp; &nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;main(String[]&nbsp;args)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;count&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;long&nbsp;value;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;long&nbsp;valueMax&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;long&nbsp;iMax&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;long&nbsp;pram&nbsp;=&nbsp;11;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;Integer.MAX_VALUE;&nbsp;i++)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;=&nbsp;i&nbsp;*&nbsp;pram;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(value&nbsp;%&nbsp;3&nbsp;==&nbsp;2&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;5&nbsp;==&nbsp;4&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;7&nbsp;==&nbsp;6&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;9&nbsp;==&nbsp;8)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(iMax&nbsp;&lt;&nbsp;i)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iMax&nbsp;=&nbsp;i;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(valueMax&nbsp;&lt;&nbsp;value)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;valueMax&nbsp;=&nbsp;value;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("count:"&nbsp;+&nbsp;count);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("iMax:"&nbsp;+&nbsp;iMax);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("valueMax:"&nbsp;+&nbsp;valueMax);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</div>
当i在Integer.MAX_VALUE范围内的计算结果：<br />
<div>count:6817408</div>
<div>iMax:2147483434</div>
<div>valueMax:23622317774</div>
这边遇到了一个问题，当代码中的pram声明为int类型时计算的结果会与声明为long类型发生极大偏差，貌似是因为Java乘法对于int类型越界处理的问题，具体原因待查．<br />
如果你用如下代码执行：<br />
<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->&nbsp;<span style="color: #0000FF; ">int</span>&nbsp;count&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">for</span>&nbsp;(<span style="color: #0000FF; ">int</span>&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;Integer.MAX_VALUE;&nbsp;i++)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">long</span>&nbsp;value&nbsp;=&nbsp;i&nbsp;*&nbsp;11;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;(value&nbsp;%&nbsp;3&nbsp;==&nbsp;2&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;5&nbsp;==&nbsp;4&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;7&nbsp;==&nbsp;6&nbsp;&amp;&amp;&nbsp;value&nbsp;%&nbsp;9&nbsp;==&nbsp;8)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("i:"&nbsp;+&nbsp;i&nbsp;+&nbsp;",value:"&nbsp;+&nbsp;value);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("count:"&nbsp;+&nbsp;count);</div>
最后数行看到的结果是这样：<br />
<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->i:2147475704,value:2147396264<br />
i:2147476019,value:2147399729<br />
i:2147476334,value:2147403194<br />
i:2147476649,value:2147406659<br />
i:2147476964,value:2147410124<br />
i:2147477279,value:2147413589<br />
i:2147477594,value:2147417054<br />
i:2147477909,value:2147420519<br />
i:2147478224,value:2147423984<br />
i:2147478539,value:2147427449<br />
i:2147478854,value:2147430914<br />
i:2147479169,value:2147434379<br />
i:2147479484,value:2147437844<br />
i:2147479799,value:2147441309<br />
i:2147480114,value:2147444774<br />
i:2147480429,value:2147448239<br />
i:2147480744,value:2147451704<br />
i:2147481059,value:2147455169<br />
i:2147481374,value:2147458634<br />
i:2147481689,value:2147462099<br />
i:2147482004,value:2147465564<br />
i:2147482319,value:2147469029<br />
i:2147482634,value:2147472494<br />
i:2147482949,value:2147475959<br />
i:2147483264,value:2147479424<br />
i:2147483579,value:2147482889<br />
count:3718586</div>
问题产生的原因应该是Java对于int的乘法结果大于上限的情况，自动截取了前10位．<br />
-----------------------------------------------------------------------------------------------------------------之前的理解不正确．<br /><br />根据Java的基础类型的变窄转换（Narrowing&nbsp;primitive&nbsp;conversion）规则，对于运算结果超出int范围的，将超出部分全部丢弃，只保留低３２位的．<img src ="http://www.blogjava.net/rockblue1988/aggbug/429203.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rockblue1988/" target="_blank">Jimi</a> 2016-01-25 17:16 <a href="http://www.blogjava.net/rockblue1988/archive/2016/01/25/429203.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我所了解的游戏开发相关</title><link>http://www.blogjava.net/rockblue1988/archive/2015/03/10/423328.html</link><dc:creator>Jimi</dc:creator><author>Jimi</author><pubDate>Mon, 09 Mar 2015 18:05:00 GMT</pubDate><guid>http://www.blogjava.net/rockblue1988/archive/2015/03/10/423328.html</guid><wfw:comment>http://www.blogjava.net/rockblue1988/comments/423328.html</wfw:comment><comments>http://www.blogjava.net/rockblue1988/archive/2015/03/10/423328.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/rockblue1988/comments/commentRss/423328.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rockblue1988/services/trackbacks/423328.html</trackback:ping><description><![CDATA[<span style="font-size: 12pt;">有位朋友问起，我就顺便总结一下好了。个人知识有限，有谬误欢迎指正。</span><br /><span style="font-size: 12pt;">本人一直从事的服务端相关的工作，对前端只能说是耳闻目染。</span><br /><span style="font-size: 12pt;">参与的项目主要是页游和手游。</span><br /><br /><span style="font-size: 12pt;"><em><strong>从程序开发角度讲起，程序一般常分为前端程序和后端程序。</strong></em></span><br /><br /><span style="font-size: 12pt;"><strong>一.前端</strong></span><br /><span style="font-size: 12pt;">前端就是指玩家所使用的客户端，主要包括处理UI事件和向服务端发送请求。</span><br /><span style="font-size: 12pt;">页游主流的技术有ActionScript及新兴的Unity框架，由html5和JavaScript做的小游戏也不少。</span><br /><span style="font-size: 12pt;">手游上现在比较火的框架就是cocos2d-x和Unity 3D，cocos2d-x 是开源的，Unity 对开发者收费。</span><br /><span style="font-size: 12pt;">两者都支持多平台，就是说一次开发，ios、android等平台都可以生成相应代码。</span><br /><span style="font-size: 12pt;">我自己只稍微玩过一点cocos2d-x，主要用的语言是C++，也可以跟Lua混合使用。</span><br /><span style="font-size: 12pt;">Unity平台则支持C#、Boo、JavaScript、Lua，我没玩过，不发表评论。</span><br /><span style="font-size: 12pt;">2者现在都很火，行情都还不错。</span><br /><span style="font-size: 12pt;">最近比较大的新闻，就是Unreal Engine虚幻引擎宣布开发者免费，感兴趣的可以自行google下。</span><br /><br /><span style="font-size: 12pt;"><strong>二.后端</strong></span><br /><span style="font-size: 12pt;">通常所说的后端，常指的客户端发送请求的接收和处理者。语言的选择就很多了，Java、C++、Python、PHP等等。</span><br /><span style="font-size: 12pt;">端游等对实时性能要求比较高的场合，一般会选择C++，与之相应的开发成本更高。相对来讲，手游页游选其它语言的就很多了。</span><br /><span style="font-size: 12pt;">一般根据对实时性的要求，来选择合适的通信方式，长连接或短连接，以及合适的通讯协议如http、protobuf、amf3，及自定义协议等。</span><br /><span style="font-size: 12pt;">大多数时间，你主要的工作在定义协议、写游戏逻辑然后与客户端联调。</span><br /><span style="font-size: 12pt;">另外，服务端一个重要的工作就是负责数据的存储，mysql数据库是一个很常见的选择，还有这几年兴起的各种Nosql数据库，其中尤其是redis（有人说它不是数据库），用的越来越多。</span><br /><span style="font-size: 12pt;">最后，对于日志的处理，也是至关重要的。常用到的框架有log4j以及logback。简单粗暴点的，你可以另外开线程，直接丢入数据库，精细点的可以先写log文件，然后用脚本解析，转发到日志服务器然后再存入数据库。</span><br /><span style="font-size: 12pt;">如果是放mysql数据库，记得把二进制日志关掉，不然没跑几天硬盘就爆了。</span><br /><span style="font-size: 12pt;">工作内容上，除了上述事务，经常需要你做的事情还有：</span><br /><span style="font-size: 12pt;">其一，各种游戏平台的SDK对接，页游如腾讯、360、37wan，手游如苹果官方、谷歌官方以及各种大小平台；</span><br /><span style="font-size: 12pt;">其二，制作游戏测试工具，GM命令等；</span><br /><span style="font-size: 12pt;">其三，开发供运维人员使用的WEB版本的游戏管理平台。</span><br /><span style="font-size: 12pt;">小规模的公司，你可能啥都要做，人力配置稍微宽松的公司，这些工作往往会区分开来。</span><br /><span style="font-size: 12pt;">架构上来说，大型游戏的服务端，会分成登录服、逻辑服、数据存储服、日志服、GM管理服甚至更复杂。</span><br /><span style="font-size: 12pt;">一般服务器承载量不高的情况下，单进程的登录-逻辑-数据的架构也很常见。</span><br /><br /><em><strong><span style="font-size: 12pt;">从团队结构角度讲，常见的职位分配：<br /></span><br /></strong></em><span style="font-size: 12pt;">1.策划类：主策划、关卡策划、数值策划、剧本策划</span><br /><span style="font-size: 12pt;">2.美术类：主美、UI、3D建模、动作、特效、场景、原画</span><br /><span style="font-size: 12pt;">3.程序类：后端、前端</span><br /><span style="font-size: 12pt;">4.其它：商务、运营、维护、QA</span><br /><span style="font-size: 12pt;">一个大规模团队里往往美术是最多的，现在是看脸的时代，囧RZ！好的美术都是用钱砸的。</span><br /><span style="font-size: 12pt;">小团队来说，自然就是需要各种身兼数职的牛人。</span><br /><span style="font-size: 12pt;">策划？一个就够了，</span><br /><span style="font-size: 12pt;">前端？策划也能兼，</span><br /><span style="font-size: 12pt;">后端？一个就够了</span><br /><span style="font-size: 12pt;">运维？后端也能干</span><br /><span style="font-size: 12pt;">美术？不好搞就外包吧</span><br /><span style="font-size: 12pt;">这个世界上永远不缺少一个人搞定以上所有事情的大牛。</span><br /><br /><span style="font-size: 12pt;">答博友问：我们当时的团队是，策划兼前端，共3前端，后期只剩俩了，后端，前期俩，后期只剩我一个，还有一位特效，美术外包。</span><br /><span style="font-size: 12pt;">答毕。</span><br /><br /><span style="font-size: 12pt;">该休息了<br /><br /></span><span style="font-family: georgia, verdana, Arial, helvetica, sans-seriff; font-size: 13px; line-height: 20.7999992370605px; color: #ff0000;">在此申明，转载&#8212;&#8212;请注明出处。</span><br style="color: #4b4b4b; font-family: georgia, verdana, Arial, helvetica, sans-seriff; font-size: 13px; line-height: 20.7999992370605px;" /><span style="color: #4b4b4b; font-family: georgia, verdana, Arial, helvetica, sans-seriff; font-size: 13px; line-height: 20.7999992370605px; background-color: #ffffff;">来自：</span>http://www.blogjava.net/rockblue1988/archive/2015/03/10/423328.html<span style="color: #4b4b4b; font-family: georgia, verdana, Arial, helvetica, sans-seriff; font-size: 13px; line-height: 20.7999992370605px; background-color: #ffffff;"><br /></span><span style="font-size: 12pt;"><br /> </span><img src ="http://www.blogjava.net/rockblue1988/aggbug/423328.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rockblue1988/" target="_blank">Jimi</a> 2015-03-10 02:05 <a href="http://www.blogjava.net/rockblue1988/archive/2015/03/10/423328.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>回顾2014</title><link>http://www.blogjava.net/rockblue1988/archive/2015/03/07/423271.html</link><dc:creator>Jimi</dc:creator><author>Jimi</author><pubDate>Fri, 06 Mar 2015 19:09:00 GMT</pubDate><guid>http://www.blogjava.net/rockblue1988/archive/2015/03/07/423271.html</guid><wfw:comment>http://www.blogjava.net/rockblue1988/comments/423271.html</wfw:comment><comments>http://www.blogjava.net/rockblue1988/archive/2015/03/07/423271.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/rockblue1988/comments/commentRss/423271.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rockblue1988/services/trackbacks/423271.html</trackback:ping><description><![CDATA[现在总结，是有那么点晚了呢。<br />只是想把那些容易不经意间忘却的，大的小的、圆的扁的、重要的不重要的，都稍稍记录下来。<br /><br />这是结完婚后的第一个年头，酸甜苦辣，冷暖自知（这句我咋就能联想到鸭子呢？）。<br /><br />一.工作<br />2月份，13年开始做的页游创业项目彻底黄了，还没过年呢，尾牙都不给吃，团队就&#8220;被&#8221;滚蛋了。<br />过完年回来，花了三个礼拜找工作。<br />3月2号，最终选择到一家手游公司上班，提前转正。<br />由于种种原因，决定换工作，拿了三份Offer，其中有我职业生涯中拿到过的最高的，还是比较欣慰的，这种被人认可的感觉良好，虽然最终没选择它。<br />11月27号到了当前公司上班，目前为止，工作和交流都很funny，是个令人愉快的选择。<br /><br />二.生活<br />在魔都这地方，换租了一套有独立厨房的居室，租的房子啥都没，买了各种东西，才有那么点家的样子。<br />每天上班下班，做饭洗碗，生活也有点像个样子。<br />这一年是到影院观影次数最多的一年，这也是恋爱时候曾经憧憬的。<br />给自己买了个nokia x2的手机，可是不到一个月就碎屏了，渣渣伤不起。<br />小舅子来到，带他走向了码农的不归路。<br /><br />三.技能<br />1.厨艺<br />研究尝试了很多没做过的菜式：<br />酸菜大肠、猪肚炖蛤蜊、炖王八、蒜泥扇贝、酱汁鲍鱼、清蒸多宝鱼、清蒸鲈鱼、肉末蒸蛋、土豆炖牛腩、<br />啤酒炖羊肉、香卤牛筋、清蒸猪舌头、酸菜鱼头、土豆色拉、西式牛排、香煎鳕鱼，还做了第一份自制双皮奶。<br />这里一点要说说，一个智能电压力锅实在是太值得入手了，煮饭炖汤焖肉都用的上，最重要的是有预约功能，晚上下好米，早上起来就能吃稀饭了。<br />2.篮球<br />周六无安排的话，坚持到上海大学打篮球，虐与被虐之间，技术还是有所进步的。值得一提的事，公司内部比赛，也算是第一次正式上了场，蛮开心。<br />3.吉他<br />没进步，只剩下随便吼吼的技能，走入社会越久，越哑。这个技能的好处是，年会总有机会上台去释放下闷骚的青春，顺带还能带点小礼品下来。<br />4.电子琴<br />主要练熟了两首曲子：《菊次郎的夏天》和《梦中的婚礼》，完成了大学时的小心愿。《克罗地亚狂想曲》挑战失败，最近电子琴已摆烂。<br />5.驾照<br />魔都4月份报名，7500，模拟考什么的花了500左右，每次练车都AA请教练吃饭，加上请假考试，总成本10000左右，好在一次性过----说实话，没上过几回车，教练素质一般，考科三中间三个月停练，呆车上的时间也绝对没达标 ----&nbsp;全国的驾校都这样吗？都TM没人管了？<br />6.代码能力<br />对于Linux下的操作更加熟练，shell脚本编写，组织SQL的能力有所提高。<br />在不同的公司，读到不同风格的代码，隐约觉得内功有所提升----别的不说，抄代码能力那是肯定增长了。<br />作为一个半路出家的程序员，补了《C++ primer》和《C程序设计语言》两本心法，眼界稍稍增长，至少不会被&#8220;java程序员不晓得指针是啥&#8221;这类的说辞给躺枪。<br />主要的吃饭家伙----Java方面，我再&#8220;三&#8221;次尝试了《Java并发编程实践》这本书，比最初多懂得一点。<br />比较用得上的一本书是《Java程序性能优化》，在大牛眼中这书可能比较浅显，但里面的东西确实比其它一些大部头里说的简洁一些，挺多地方一般面试也常问到。<br />《Java性能优化权威指南》就是前者的加强版，干货不少，字太多没坚持读完。<br />项目中用上了redis，涨了点姿势。<br />比较实用的新技能：Lua算是比较熟练了，可以拿来换饭钱。<br /><br />四.开心的事<br />1.年会上中了三等奖<br />2.论坛上抽中一个机械键盘<br /><br />五.最重要的事<br />两口之家即将变成三口之家了，希望一切顺顺利利、平平安安！<br /><br />六.2015的目标<br />年底再揭晓<br /><br />祝观文的诸位码友三羊开泰，心想事成！<br />PS：没多少内容的一篇随笔，竟然花了近两个小时，必须对产出高质量博文的博主们表达一下由衷的敬佩<img src ="http://www.blogjava.net/rockblue1988/aggbug/423271.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rockblue1988/" target="_blank">Jimi</a> 2015-03-07 03:09 <a href="http://www.blogjava.net/rockblue1988/archive/2015/03/07/423271.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>