??xml version="1.0" encoding="utf-8" standalone="yes"?>久久精品国产网红主播,久久久久久精品免费看SSS,色综合久久无码中文字幕http://m.shnenglu.com/codejie/category/9778.htmlUsing C++zh-cnWed, 15 Apr 2015 01:38:20 GMTWed, 15 Apr 2015 01:38:20 GMT60OpenCV : build with Glade on Android Studiohttp://m.shnenglu.com/codejie/archive/2015/04/14/210337.htmlcodejiecodejieTue, 14 Apr 2015 15:54:00 GMThttp://m.shnenglu.com/codejie/archive/2015/04/14/210337.htmlhttp://m.shnenglu.com/codejie/comments/210337.htmlhttp://m.shnenglu.com/codejie/archive/2015/04/14/210337.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/210337.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/210337.htmlFROM : http://stackoverflow.com/questions/17767557/how-to-use-opencv-in-android-studio-using-gradle-build-tool


Android Studio 0.8.2+ and above, could easily import modules. Thanks to TGMCains answer, is simplified, by using Android Studio itself to import OpenCV as a module.

  1. Download latest OpenCV sdk for Android from OpenCV.org and decompress the zip file.
  2. Import OpenCV to Android Studio, From File -> Import Module, choose sdk/java folder in the unzipped opencv archive.
  3. Update build.gradle under imported OpenCV module to update 4 fields to match your project build.gradle a) compileSdkVersion b) buildToolsVersion c) minSdkVersion and 4) targetSdkVersion.
  4. Add module dependency by Application -> Module Settings, and select the Dependenciestab. Click + icon at bottom, choose Module Dependency and select the imported OpenCV module.
  5. Copy libs folder under sdk/native to Android Studio under app/src/main.
  6. In Android Studio, rename the copied libs directory to jniLibs and we are done.

Step (6) is since Android studio expects native libs in app/src/main/jniLibs instead of older libs folder. For those new to Android OpenCV, don't miss below steps

  • include static{ System.loadLibrary("opencv_java"); }
  • For step(5), if you ignore any platform libs like x86, make sure your device/emulator is not on that platform.

OpenCV written is in C/C++. Java wrappers are

  1. Android OpenCV SDK - OpenCV.org maintained Android Java wrapper. I suggest this one.
  2. OpenCV Java - OpenCV.org maintained auto generated desktop Java wrapper.
  3. JavaCV - Popular Java wrapper maintained by independent developer(s). Not Android specific. This library might get out of sync with OpenCV newer versions.


codejie 2015-04-14 23:54 发表评论
]]>
SPRING : Handle JSON and Image object in One Requesthttp://m.shnenglu.com/codejie/archive/2015/04/13/210331.htmlcodejiecodejieMon, 13 Apr 2015 15:53:00 GMThttp://m.shnenglu.com/codejie/archive/2015/04/13/210331.htmlhttp://m.shnenglu.com/codejie/comments/210331.htmlhttp://m.shnenglu.com/codejie/archive/2015/04/13/210331.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/210331.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/210331.html    代码q里~

    @RequestMapping(value = "/req", method = RequestMethod.POST)
    @ResponseBody
    public ResponseEntity<Post.Response> post(HttpServletRequest request) {

        Post.Response resp = null;
        
        Post.Request req = null;
        String file = null;
        
        CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());  

        if (multipartResolver.isMultipart(request)) {  
            MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;  
  
            try {
                Collection<Part> parts = multiRequest.getParts();
                
                boolean hasJSON = false;
                boolean hasFile = false;
                
                for (final Part p : parts) {
                    
                    if (hasJSON) {
                        continue;
                    }

                    if (p.getContentType().contains("application/json")) {

                        ObjectMapper mapper = new ObjectMapper();
                        req = mapper.readValue(p.getInputStream(), Post.Request.class);
                        
                        if (req != null) {
                            resp = new Post.Response();
                            resp.setX(100);
                            
                            hasJSON = true;
                        }

                    } else if (p.getContentType().contains("image/jpeg")) {
                        ++ index;
                        file = UPLOAD_ROOT + String.valueOf(index) + ".jpg";
                        
                        InputStream is = p.getInputStream();
                        
                        File localFile = new File(file);                        
                        OutputStream os = new FileOutputStream(localFile);
                        int bytesRead = 0;
                        byte[] buffer = new byte[8192];
                        while ((bytesRead = is.read(buffer, 0, 8192)) != -1) {
                            os.write(buffer, 0, bytesRead);
                        }
                        os.close();
                        
                        hasFile = true;
                    }
                    
                    if (hasJSON && hasFile) {
                        break;
                    }
                }
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            } catch (ServletException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        }
        if (req != null && file != null) {
            resp = calc.calc(req, file);
        }
        
        if (resp != null) {
            return new ResponseEntity<Post.Response>(resp, HttpStatus.OK);
        } else {
            return new ResponseEntity<Post.Response>(resp, HttpStatus.BAD_REQUEST);
        }
    }


codejie 2015-04-13 23:53 发表评论
]]>
OpenCV : build with Maven on Springhttp://m.shnenglu.com/codejie/archive/2015/03/24/210154.htmlcodejiecodejieTue, 24 Mar 2015 14:13:00 GMThttp://m.shnenglu.com/codejie/archive/2015/03/24/210154.htmlhttp://m.shnenglu.com/codejie/comments/210154.htmlhttp://m.shnenglu.com/codejie/archive/2015/03/24/210154.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/210154.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/210154.html    Z赶时髦,准备把OpenCV的操作通过WebService的方式Deploy出去Q因此做了如下的事情Q?br />
    1. download opencv zip packageQ?br />    2. download cmake source zipQ?br />    3. download ant binary packageQ?br />    4. install ant binary;
    5. make cmake;
    6. unzip opencv;
    7. cmake opencv source;

#mkdir build
#cd build
#cmake -D BUILD_SHARED_LIBS=OFF ../
#make

    8. install opencv library into Maven;
mvn install:install-file -Dfile=opencv-2411.jar -DgroupId=org.opencv -DartifaceId=opencv -Dversion=2.4.11 -Dpackaging=jar

    9. update pom.xml to add openvn dependency;
    <dependency>
       <groupId>org.opencv</groupId>
       <artifactId>opencv</artifactId>
       <version>2.4.11</version>
       <systemPath>/Users/Jie/Downloads/opencv-2.4.11/build/bin/opencv-2411.jar</systemPath>
       <scope>system</scope>
    </dependency>

    10. run webapp;
mvn spring-boot:run

    11. done;

    M无数++的页面,p些~


codejie 2015-03-24 22:13 发表评论
]]>
LAC : Do you remember it?http://m.shnenglu.com/codejie/archive/2014/06/30/207463.htmlcodejiecodejieMon, 30 Jun 2014 07:24:00 GMThttp://m.shnenglu.com/codejie/archive/2014/06/30/207463.htmlhttp://m.shnenglu.com/codejie/comments/207463.htmlhttp://m.shnenglu.com/codejie/archive/2014/06/30/207463.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/207463.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/207463.html 

    早上很意外地收到一个留a, 说是需要LAC (LingosHook Android Client)和数据文? 不知大家是否q记得这? LAC敲完发布都已l过Mq了, 怎么使用看这?/a>, 需要的p里下载了.

 

    q段旉Google的服务都不可讉K, 我把q两个文仉C到OneDrive上了, q手把其中的广告给删了, ? 反正在Android上一炚w子也见不? 索性真需要的拿d...

 

    ? 实际都忘记这个LAC? x自己在Android也敲了三q半? 应用, 游戏敲了几个, 但现在想换䆾跟Android相关的工作竟然无? 各种阴差阳错DLd? 看来转行q是不对?..



codejie 2014-06-30 15:24 发表评论
]]>
SnakeGo : Scaling Screen and Moving Camerahttp://m.shnenglu.com/codejie/archive/2014/05/18/207007.htmlcodejiecodejieSun, 18 May 2014 11:24:00 GMThttp://m.shnenglu.com/codejie/archive/2014/05/18/207007.htmlhttp://m.shnenglu.com/codejie/comments/207007.htmlhttp://m.shnenglu.com/codejie/archive/2014/05/18/207007.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/207007.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/207007.html 

    敲了几晚SnakeGo, 原型出来? 大家来看看不...

 

123

 

    不错, q货是---贪吃?..哈哈...别? q还是原? 好玩的在后面?..(以我敲字速度, 大约再等不到六个月应该可以完成了...)

 

    今天q里记录下用LIBGDXq程中碰到的两个问题:

        1. 调整屏幕比例;

        2. Ud观察镜头;

 

一, 调整屏幕比例

    LIBGDX是跨q_? 一大好处就是直接在PC上测? 那是非常的方? 但这有两个问题需要考虑, 一, 手机?280x768, 但我PC只有1280x1024? 而且真要开个跟手机一样大的一样大的屏幕, 那还怎么看log输出? 二就是不同的手机有着不同的分辨率, 长宽比也不一? 那怎么保证囑Ş不变形呢?

    q个问题不难解决, 只需要在屏幕寸发生变化? 即resize()(W一ơ启动也会调用此函数)? 重新调整镜头(Camera)的参数即? 如下代码:

	@Override
	public void resize(int width, int height) {
		Vector2 size = Scaling.fit.apply(WIDTH, HEIGHT, width, height);
		
		camera = new OrthographicCamera(size.x, size.y);
		camera.update();

		batch.setProjectionMatrix(camera.combined);
	    
              int viewportX = (int)(width - size.x) / 2;
	       int viewportY = (int)(height - size.y) / 2;
	       int viewportWidth = (int)size.x;
	       int viewportHeight = (int)size.y;
	    
		Gdx.gl.glViewport(viewportX, viewportY, viewportWidth, viewportHeight);

		super.resize(width, height);
	}

    q里采用的是重新创徏camera实例的方? 另外用改变已有camera实例的参数方式也是一L. 很简? 而且q样一ơ就解决了上面两个问?-- PCZ使用M寸的窗? 都可以获得跟讄{比例的H口, 手机上亦是如? ?a href="http://m.shnenglu.com/codejie/category/20828.html">I;P是采用的这U方式来保持其在L手机上都?280:768的比?

    q种Ҏ只是改变?视图'的大? 但ƈ不会改变其中的图形的大小, q样Z保持囑Ş昄比例, 需要在输出囑Ş时做相应的比例放~? 可以在resize()获得q个比例, 染在囑Ş输出时用这个比?

              screenScaling = new Vector2((size.x / WIDTH), (size.y / HEIGHT));
              ...
              ...
              batch.draw(img, (- WIDTH / 2) * screenScaling.x, (- HEIGHT / 2) * screenScaling.y, WIDTH * screenScaling.x, HEIGHT * screenScaling.y);
 

? Ud观察镜头

    在SnakeGo? Z不让Snake'跑出'屏幕, 需要镜头camera跟Snake本n保持'同步'Ud, q样看v来Snake保持在屏q的中间, 但其它Object是移动的. Ҏ'相对q行'原理, 使整个看h像是Snake在Object中穿? 所? Udcamaera是必ȝ, 代码也简? 如下:

              ...
		final OrthographicCamera camera = game.getCamera();
		camera.translate(0.0f, 32.0f, 0.0f);
		camera.update();
		game.getSpriteBatch().setProjectionMatrix(camera.combined);
              ...

 

<----心烦意ؕ的分割线---->

    q几天在扑ַ? 前面去面了一? 其中没一个App或者Game的问? 倒全是C++相关? L傻g...虽说׃是C++'n'?不然Blog也不会在q里不是), 但也许真的是'?? 才三q不用C++,竟然忘记的只剩下个auto_ptr?..更悲剧的是咱用的C++98标准已经变成C++11? auto_ptr变成smart_ptr?..

    都说现在是个'跨界'的时? 但咱q还没有跨界, 只是同行转个方向而已, 为啥p么悲剧了...好吧, 估计学艺不精才是Ҏ...

    同学"'大数?的博?周五来电, 问我要不要跟她一起做?囑փ搜烦', 有些犹U, 要说三年? 也许干? 但现?..再{ơ嘛...

    恰逢I;P敲完, 心烦意ؕ的一? 只好赶紧抓vSnakeGo? 夜夜疯敲, 来安抚砰砰躁动的?..是的, 臛_敲字可以让自己^静些...

 

    吐槽而已, q里惌 ---- E序员们? 转行要趁着q轻赶紧?..



codejie 2014-05-18 19:24 发表评论
]]>
随笔 : Do you remember Turbo Basic?http://m.shnenglu.com/codejie/archive/2014/05/13/206952.htmlcodejiecodejieTue, 13 May 2014 15:29:00 GMThttp://m.shnenglu.com/codejie/archive/2014/05/13/206952.htmlhttp://m.shnenglu.com/codejie/comments/206952.htmlhttp://m.shnenglu.com/codejie/archive/2014/05/13/206952.html#Feedback6http://m.shnenglu.com/codejie/comments/commentRss/206952.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/206952.html 

    老爷子心不? 依然在勤勤恳恛_敲着书和代码...没错, 是source code. 像老爷子这L老一辈会用电脑的都不? 而我亲爱的老爷子那是会Turbo Basic的顶高手啊...每次惛_q个, 内心都倍感自豪...

    当年?H口"~程极其J琐, 如果不看看那一?lt;Win32 API大全>, 再加上个<Visual C++技术内q?gt;, 都不保证能敲个Window出来, 什么HWND, hInstance, 以及׃八糟的各cȝ口和消息的struct...反正我是早早忘光光?..x现在在的Android上弄?H口"出来, ?那真?太小儿科"?..

    ? 跑远?..我意思是 ---- 老爷子止步于Windows~程, 各类代码全部q行在DOS? 随着Windows的不断改q? l于, Windows下再也不能运行老爸手中的无敌神?-- Turbo Basic?..

    曾跟老爷子说q? 他的代码都U至到Android? 但老爷子不同意, 因ؓ, 他老h家还要改些参数的, 改些参数, 些参? 参数...看着老爷子在Win7上装个VM跑XP再打开CommandH口q行Turbo Basic, 甚是辛苦. 作ؓ知原? 会Google的程序员我来? 帮老爷子弄个DOS虚拟环境来跑TB.EXE, 那是必须?..

    于是有了下面的截图.

 

dos tb

 

   DosBox



codejie 2014-05-13 23:29 发表评论
]]>
LIBGDX : version 1.0.1!http://m.shnenglu.com/codejie/archive/2014/05/12/206929.htmlcodejiecodejieMon, 12 May 2014 13:24:00 GMThttp://m.shnenglu.com/codejie/archive/2014/05/12/206929.htmlhttp://m.shnenglu.com/codejie/comments/206929.htmlhttp://m.shnenglu.com/codejie/archive/2014/05/12/206929.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/206929.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/206929.html 

    创徏SnakeGo工程的时? 忽然发现一?天大'的新?-- Libgdx竟然1.0.1?/a>?!! 无数?.99版的日子? 一直认版本p变成永恒?..

 

 

    昨天把I;P?a >Release版本l于提交上去? ȝ完成了自q一个目?-- 发布一个Game应用! (EL是第一个目?-- 发布一个App应用 :) )

 

    所以昨晚终于可以开始敲W二个Game? 是前面说到? 可以作弊的无脑游?-- SnakeGo ! q样再也不怕因为IQq低而在里被刺Ȁ?-- '再笑我就开无敌状态了,灭哈?(台词都想好了....), 所? 现在l于知道一个游戏界?潜规?  -- "可以作弊"是必ȝ! (I;P没法作弊, q?q是多么'?的领悟啊....)

 

    好吧, 不就?.0.1?再学习一ơ就是了...



codejie 2014-05-12 21:24 发表评论
]]>
随想: 业余游戏开发者对阉K手游q_?amp;quot;?amp;quot;?/title><link>http://m.shnenglu.com/codejie/archive/2014/01/10/205276.html</link><dc:creator>codejie</dc:creator><author>codejie</author><pubDate>Fri, 10 Jan 2014 09:15:00 GMT</pubDate><guid>http://m.shnenglu.com/codejie/archive/2014/01/10/205276.html</guid><wfw:comment>http://m.shnenglu.com/codejie/comments/205276.html</wfw:comment><comments>http://m.shnenglu.com/codejie/archive/2014/01/10/205276.html#Feedback</comments><slash:comments>13</slash:comments><wfw:commentRss>http://m.shnenglu.com/codejie/comments/commentRss/205276.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/codejie/services/trackbacks/205276.html</trackback:ping><description><![CDATA[<p>    前两天看到阿里也出手游^C. 对于我这样野生的业余游戏开发爱好者来? 是多了个可以选择的^? 想着借助阉K的这个手游^? 咱就可以做个q样的游?--</p> <p>        虚拟逛街 : I行与虚拟化的店铺间, 通过q告什么的, 来找指定商品, 或者参加什么的zd, 完成? 获得一定的金币, U分或者成׃么的, 然后可以在-- 真正的实体店铺或taobao店中折h购买或者免费获得商? </p> <p>    你看q创意如? x阉K肯定会通过q个q_<strong>打通这条虚拟游戏到实体交易的通道</strong>? 那么q个q_到底会如何实现这个通道? 于是赶紧L -- 才发? 在新ȝ中还有个关键字我没有看清 -- "?. 好吧, 我心急了, 原来阉K的这个^台还没有开攑֑. 那么也好, 作ؓ业余游戏开放? 可以好好x, 到底惌个怎样的手游^台呢?</p> <p> </p> <p>    关于阉Kq个q_的是是非非已l在各大ȝ的帖子已l够多了, 今天不说哪些, 只从?--  一个纯_的业余游戏E序员自w情况和理解来说...</p> <p>    q_只是一个概? 而且<strong>对于开发者来? q_是一片Q? 而真正能看到? 真正惌的都是些实实在在的东?---- APIs. </strong>一个^台能够ؓ应用带来什么样的接口支撑才是最最l于的参?</p> <p>一. q_情况</p> <p>    因ؓ对于游戏只是个业余h? q_q真没太xq各大^? 今天Ҏq次新闻提到的几?指标"做了下比?(最后一列不在其? 只是本脓需?</p> <table cellspacing="0" cellpadding="2" width="643" border="2"> <tbody> <tr> <td valign="top" width="73"> </td> <td valign="top" width="63">优势</td> <td valign="top" width="99">云服?/td> <td valign="top" width="98">支付</td> <td valign="top" width="84">虚拟货币</td> <td valign="top" width="65">用户?/td> <td valign="top" width="157">开攑^?APIs</td></tr> <tr> <td valign="top" width="75">阉K</td> <td valign="top" width="63">交易</td> <td valign="top" width="99">阉K?br></td> <td valign="top" width="98">支付?/td> <td valign="top" width="84">?</td> <td valign="top" width="65">淘宝</td> <td valign="top" width="157">?</td></tr> <tr> <td valign="top" width="77">癑ֺ</td> <td valign="top" width="63">内容</td> <td valign="top" width="99">癑ֺ?br></td> <td valign="top" width="98">癑ֺ钱包</td> <td valign="top" width="84">?</td> <td valign="top" width="65">?</td> <td valign="top" width="157"><a >open.baidu.com</a><br>个h数据存储<br>推?br>W三方̎L?br>C会化分?br>Udl计</td></tr> <tr> <td valign="top" width="79">腾讯</td> <td valign="top" width="63">C交</td> <td valign="top" width="99">腾讯?/td> <td valign="top" width="98">财付?/td> <td valign="top" width="84">Q?/td> <td valign="top" width="65">QQ<br>微信</td> <td valign="top" width="157"><a >open.qq.com</a><br>用户信息<br>关系铄<br>应用推广<br>支付<br>营销</td></tr></tbody></table> <p> </p> <p>    如上表可以看? 其实各个q_该有的都有了, 没有的也都没?q话说的..) . 图表中也没包含像360, |易{? q不是说他们的手游^C强大, q里只是做个Ҏ? 各个的fans表认真了.</p> <p>    好了, 现在说重?..实际作ؓ一个业务开发? 我最兛_的是表中最后一?-- "开攑^?APIs" . 阉Kq_q找不到, 所以空着? 当然q也正是我们可以"?想的地方. 我们来看看其它两个^C要提供的APIs.</p> <p>        癑ֺ: </p> <p>                  没有自己的用L, 没有支付方向(不是通道), 所以更多地?默默"地干着"实事", 像推? 数据存储{?做ؓ开发? 我比较欣赏百度提供的q些API);</p> <p>        腾讯: </p> <p>                  依托庞大的的用户? 其APIs更們֐与社交交互和业务推广, 但多q通过Q币培养v来的"内购"們֐, 所以也有专门的支付接口;</p> <p>    那么, 我们推测(希望)阉Kq_会有怎么的APIs提供? 话说阉K有taobao, 支付? 再加上个L"W一"的阿里云, q要是三个都打通了, 实能把腾讯下个一大蟩. 但阿里在C交上不是强? 虽然强推了半q多?来往", 感觉q是晚了, g一D|间内完全不在微信的眼? 那么早期应该更关?交易"?支付"相关的APIs; 但作为后Lq_, 也不得不考虑下如何吸引和扶持开发? 所?</p> <p>        阉K: </p> <p>                  1. 买家d/理<br>                  2. 商家d/理<br>                  3. 商家讉K<br>                  4. 商品理/展示/讉K<br>                  5. 安全支付/内购接口<br>                  6. 消息/q告推?br>                  7. 事g记录/触发</p> <p>                  8. 应用数据存储<br>                  9. 应用数据分析/理</p> <p> </p> <p>    够多? q真?站着说话不腰?不是...好了, 那么作ؓ一个野生的业余游戏开发者来?急切"?最?需要什么呢? </p> <p>? 个h开发者需?/p> <p>    实际作ؓ野生?独立?业余的游戏开发者来? 多数应该被限制在"?目? 那么作ؓq_, 提供的服?支撑丰? 灵zd受欢q? 因此, ??目的共性来? 希望q_能提供如下支?</p> <blockquote> <p>1. q_服务</p> <p>    a. 应用发布: q个是必ȝ不是?</p> <p>    b. 应用数据l计与分? 通过攉到的应用数据, 如安装数? 安装分布{信? 可以非常有效Cؓ应用自n改善提供数据参?</p> <p>    c. q告理: 应用的广告接入与qo;</p> <p>    d. 钱包理: 应用收入情况展示与分? 内购数据理;</p> <p>    e. 信息推? 是GCM的功? 但要能弄个群发支持的? 阉K云应该搞?</p> <p>    f. 应用共性数据需求支? 例如应用的排行榜数据的存储和展示, 成就数据讄与触? 应用的配套论?IM{SNSq_{?阉K云就在那? 是不是呢?);</p> <p> </p> <p>2. APIs支持</p> <p>    a. 用户数据讉K: 支持用户d, 获取用户自n数据;</p> <p>    b. 商家数据讉K: 获取商家信息;</p> <p>    c. 商品数据讉K: 获取商品信息;</p> <p>    d. 支付宝接? 支持用户购买商品;</p> <p>    e. 内购接口:  支持用户购买应用内商?q个跟支付宝接口应该不一?;</p> <p>    f. q告接口: 实现传统的哪U广告发布的接口好;</p> <p>   g. 消息/事g推送接? 支持通过应用的服务端下发消息/事g到应?</p></blockquote> <p>    ? q些应该够了(实际目前我的游戏只需要其中一?.), C?.. 多用户交? 用户状态数据维持什么的, 那是高开发者想要的? 他们应该自己可以搞定q些? 新闻?阉K?:2分成方式是对开发者的扶持, 实际也有挖墙脚之? ? 如果q_的功能灵zd? 2:8的分成一样可以引人入伙不?</p> <p> </p> <p>    说到对开发者的扶持, 或者叫做拉Z水也? 反正都是Z增加人气不是? 那么阉K可以考虑下下面的法子.</p> <p>? 扶持</p> <blockquote> <p>1. 交流q_</p> <p>    开发中? 交流论坛什么的, 各种行的模式也没啥好说? 很多时? 我觉得一个好的交^C仅给开发??的温暖感? 反倒是能提供找个解决问题地? 而减挫败感来的更重?-- 话说, N你不喜欢<a ><font color="#0066cc">stackoverflow.com</font></a>?</p> <p>2. 虚拟团队l徏</p> <p>    不得不承? 当下的游戏不再是一个h可以搞定? 臛_如我q样? 只会code, 完全不懂PS的程序员, 敲打出来的游戏基本都是用?吓h"? 但目前看, pU野生的业余E序员还混不到游戏队伍中, 所?..Z不出头考虑建立虚拟团队的方案呢? </p> <p>    杭州在动漫方面也前? 敲代码的也以万计, 而多数的游戏都?短^?的项? 所以呢...当创新出现时, 阉K只需z个D的PM出来, 协调l徏个时团? 引导团队使用自nq_, 协助应用创徏发布什么的...q对于业余游戏开发者和q_自n来说, 不是一件功h? 一矛_? 普大喜奔的好事吗?</p> <p> </p> <p>    </p></blockquote> <p><---- 求扩散的分割U?----></p> <p>    都说隔六个h可以跟奥巴马搭上关p? 要是觉得"?想的有些道理, 那就扩散它吧, 说不定就能被某个做^台的大{看到, 然后q真的这么做? ? 那咱q样的的野生业余游戏开发者们可以笑醒了啊不?...</p> <p><a ><font color="#0066cc"></font></a></p><img src ="http://m.shnenglu.com/codejie/aggbug/205276.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/codejie/" target="_blank">codejie</a> 2014-01-10 17:15 <a href="http://m.shnenglu.com/codejie/archive/2014/01/10/205276.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>LingosHook : q规?!http://m.shnenglu.com/codejie/archive/2013/11/16/204278.htmlcodejiecodejieSat, 16 Nov 2013 13:39:00 GMThttp://m.shnenglu.com/codejie/archive/2013/11/16/204278.htmlhttp://m.shnenglu.com/codejie/comments/204278.htmlhttp://m.shnenglu.com/codejie/archive/2013/11/16/204278.html#Feedback4http://m.shnenglu.com/codejie/comments/commentRss/204278.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/204278.html    上周"意外"收到一份LingosHook捐赠, 因ؓ之前的已是半q前的事情了...

    "ƣ喜若狂"发货? 今天查看状态发? LingosHook捐赠插g竟然?q规"删除?..忽然来了感慨: 捐赠? 感谢你下手比taobao? 嘿嘿... 于是"赶紧"删除"q规"字眼, 重新发布上去...

image

 

    LingosHook从开始敲打到今天已四q的旉? q里感谢各位捐赠? 各位使用? 感谢你们的支持和使用 !



codejie 2013-11-16 21:39 发表评论
]]>
EL : Saving Batteryhttp://m.shnenglu.com/codejie/archive/2013/08/22/202692.htmlcodejiecodejieWed, 21 Aug 2013 16:28:00 GMThttp://m.shnenglu.com/codejie/archive/2013/08/22/202692.htmlhttp://m.shnenglu.com/codejie/comments/202692.htmlhttp://m.shnenglu.com/codejie/archive/2013/08/22/202692.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/202692.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/202692.html     下班路上用EL听ESL, 没到家电池就没了...
    下了? 边走边算计着 -- 应该是高亮全开看小?现在换成<C火之?gt;?.)D没电? 但ؓ啥以前不用EL? 听个ESL不会没电?..会不会EL比较耗电?

    晚上火力全开, 反省代码 -- 一个异步线E? 用于通知UI更新播放轨迹? 后台播放时也在不停的running...
    q个U程本n是sleep()个几百毫U? 然后通知UI更新下音频播攄位置. 虽没有数据表明这L'?U程会消耗多大电? 但本着有CPU跛_, ׃有电量消耗的原则, 改了...

    private class TickCounterTask extends AsyncTask<Void, Void, Void> {

        @Override
        protected Void doInBackground(Void arg0) {
             while (isAudioPlaying && listener != null) {
                try {
                    listener.onPlaying(player.getCurrentPosition());                    
                    Thread.sleep(777);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } catch (DeadObjectException e) {
                    listener = null;
                } catch (RemoteException e) {
                    e.printStackTrace();
                }
            }
            
            return null;
        }
    }

    加了listener != null的条? q样当UI被切换到后台? 取消listener, 异步U程卌l止. 嘿嘿, 省了...

    l端讑֤上的app不比PC机的, 除了要考虑UI, Screen Size{问题外, 电量消耗也是必ȝ? M能让Zؓ了一个app, 随n背上个三块电板不? 再说, CPU占多? 真的??手啊...

codejie 2013-08-22 00:28 发表评论
]]>
EL : getPrev() and getNext()http://m.shnenglu.com/codejie/archive/2013/08/20/202681.htmlcodejiecodejieTue, 20 Aug 2013 15:35:00 GMThttp://m.shnenglu.com/codejie/archive/2013/08/20/202681.htmlhttp://m.shnenglu.com/codejie/comments/202681.htmlhttp://m.shnenglu.com/codejie/archive/2013/08/20/202681.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/202681.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/202681.html    早上一朋友? EL如果支持删除某个评, q怎么能支持getPrev()和getNext()? 我很奇? 为啥不能? 他说, 因ؓEL的课E号是不q箋? 那么应该是靠q箋的记录IDl箋上下索引? 那么当删除某个记录时, DID不连l? 也就不能正常Navigate? 是不? 除非删除? 一个一??, 以包装连l? 听他说完, 忽然感到L -- 原来'W蛋'不止我一个啊...
    在实现EL对记录的getPrev()和getNext()? 我也为EL的记录表中没有一个连l的记录ID而郁?-- 没有个连lID, 而课E号本n又不q箋, 咋不? 那时都还没考虑删除的问题呢. 郁闷地去睡觉, 半夜惊醒才想? 没有q箋记录ID是设计是觉得这个ID跟课E号在一起太冗余才去掉的, 而getPrev()/getNext(), 完全靠课E号p搞定的啊, 代码敲的都忘记自q初衷? SQL语句也白学了...

    于是我把下面ELContentProvider的片D发l他, q加了句 -- '你咋跟我一L?..'

    @Override
    public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
        int res = matcher.match(uri);
        String table = null;
        switch (res) {
        
        
        
        case MATCH_ITEM_EL_ESL_RANDOM:
            db = elDBAccess.getReadableDatabase();
            table = "esl";
            sortOrder = "random() limit 1";
            break;
            
        case MATCH_ITEM_EL_ESL_NEXT:
        case MATCH_ITEM_EL_ESL_PREV:
        case MATCH_ITEM_EL_ESL_FIRST:
        case MATCH_ITEM_EL_ESL_LAST:            
            if (res == MATCH_ITEM_EL_ESL_NEXT) {
                selection = "idx>" + ContentUris.parseId(uri);
                sortOrder = "idx asc";
            } else if (res == MATCH_ITEM_EL_ESL_PREV) {
                selection = "idx<" + ContentUris.parseId(uri);
                sortOrder = "idx desc";                
            } else if (res == MATCH_ITEM_EL_ESL_FIRST) {
                selection = null;
                sortOrder = "idx asc";
            } else {
                selection = null;
                sortOrder = "idx desc";
            }
            
            db = elDBAccess.getReadableDatabase();
            
            return db.query("esl", projection, selection, nullnullnull, sortOrder, "1");            

        
        }
        
        
    }
    
   记录在此, 提醒自己保持清醒...

codejie 2013-08-20 23:35 发表评论
]]>
EL : Fragment and FragmentManagerhttp://m.shnenglu.com/codejie/archive/2013/08/11/202459.htmlcodejiecodejieSun, 11 Aug 2013 02:08:00 GMThttp://m.shnenglu.com/codejie/archive/2013/08/11/202459.htmlhttp://m.shnenglu.com/codejie/comments/202459.htmlhttp://m.shnenglu.com/codejie/archive/2013/08/11/202459.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/202459.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/202459.html    考虑Cؓ了减UI?h效果',EL使用Fragment来代替常规的Activity方式.
    Fragment代替Activity的好处很?比如没有不同UI间切换的'闪动',视觉是上也有加快昄的效?但这U效果也是有代h? 大量Activity方式下的工作,在Fragment?不得不自己来实现,比如UI?压栈'{等.
    q里记录下EL实现?到的跟Fragment相关的问? (Fragment相关文?a >官方链接在这?/a>)

    1. 参数传?br />        Activity切换?可以在StartActivity()?通过Intent的方式将所需参数传递给下一个Activity. 但在Fragment方式下就不行?此时可?参考Fragment支持的setArguments()和getArguments(). EL中所有Fragment都承于BaseFragment,在显CFragment?使用设计的OnArgument()接口传递参?
        fragment.onArguments(args);
        fragmentManager.beginTransaction().show(fragment).commit();

    2. 界面切换
        FragmentManager是用于管理Fragment的类,通过内部的FragmentTranscation对象实现Fragment的加?昄/隐藏/U除{操? EL实现?使用FragmentSwitchercd装了FrangmentManager,以实现某些更灉|的Fragment理,比如某些Fragment在被切换是需要删?而其他的仅需要隐藏等操作.
    public enum Type {
        
        LIST("list", false), SHOW("show", false), ABOUT("about", true), SETTING("setting", true),
        DOWNLOAD("download", true);
        
        private final String title;
        private final boolean removed;
        
        private Type(final String title, boolean removed) {
            this.title = title;
            this.removed = removed;
        }
        
        public String getTitle() {
            return title;
        }

        public boolean hasRemoved() {
            return removed;
        }
        
        public static Type getType(final String title) {
            if (title.equals(LIST.getTitle())) {
                return LIST;
            } else if (title.equals(SHOW.getTitle())) {
                return SHOW;
            } else {
                return null;
            }
        }
        
    }

    public boolean show(Type type, Bundle args) {
        if (curType != null) {
            if (curType == type) {
                ((BaseFragment) fragmentManager.findFragmentByTag(type.getTitle())).onArguments(args);                
                return true;
            } else {
                hide(curType);
            }
        }
        
        BaseFragment fragment = (BaseFragment) fragmentManager.findFragmentByTag(type.getTitle());
        if (fragment == null) {
            fragment = create(type);
            if (fragment == null) {
                return false;
            }
        }
        
        fragment.onArguments(args);
        fragmentManager.beginTransaction().show(fragment).commit();
        curType = type;
        
        return true;
    }

    3. Fragment的栈
        Activity在切换时,通常情况下可以通过BACK键返回前一个Activity,是因为存在一??来存攑։面的Activity. Fragment也有栈的概念,但在操作上就需要自׃动调用了 -- Fragment隐藏?压栈; Fragment退出时,出栈.
    private void hide(Type type) {
        BaseFragment fragment = (BaseFragment) fragmentManager.findFragmentByTag(type.getTitle());
        if (fragment != null) {
            if (type.hasRemoved()) {
                fragmentManager.beginTransaction().remove(fragment).commit();
            } else {
                FragmentTransaction ft = fragmentManager.beginTransaction();
                ft.addToBackStack(type.getTitle());
                ft.hide(fragment);
                ft.commit();
//                fragmentManager.beginTransaction().hide(fragment).commit();
            }
            
            curType = null;            
        }
    }

    public boolean showPrevFragment() {
        int count = fragmentManager.getBackStackEntryCount();
        if (count > 0) {
            String name = fragmentManager.getBackStackEntryAt(count - 1).getName();
            fragmentManager.popBackStack();// .popBackStackImmediate();
            Type type = Type.getType(name);
            if (type != null) {
                show(type);
                return true;
            }
        }
        
        return false;
    }


    ȝ来说,Fragment要想用着方便,自己使用FragmentSwitcher和BaseFragment来封装下FragmentManager和Fragmentq是不错的选择.

    Fragment看v来很?用v来真是发疯啊.上面q些都是实现EL中碰到的问题,q里做下记录,怕回头又忘记'痛苦地翻文档'的日?..

    ?EL基本完工,q两天可发布Alpha版了...


codejie 2013-08-11 10:08 发表评论
]]>
LAC: Demo Dictionary v2 : extend the expiration again..http://m.shnenglu.com/codejie/archive/2013/07/16/201879.htmlcodejiecodejieTue, 16 Jul 2013 14:29:00 GMThttp://m.shnenglu.com/codejie/archive/2013/07/16/201879.htmlhttp://m.shnenglu.com/codejie/comments/201879.htmlhttp://m.shnenglu.com/codejie/archive/2013/07/16/201879.html#Feedback3http://m.shnenglu.com/codejie/comments/commentRss/201879.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/201879.html    先不说废?重新~译的包在这?需要你q?/a>...q次q期点设|在10/31/2013,到时q是希望各位能关注下LAC2...(首先要有..是不..?打脸!) 说明查看q里V1V2.

    q个Demo讄个超?目的是ؓ了促使自p紧敲完LAC2,实际我真的在?几乎每晚都在敲的(周末'法定'攑ց的哦...),也有所成,不信看下?..


   
    ?某天公交上正听着ESL,看着<蜀山剑侠传>?忽然那么一?不是闪腰?.) -- 为啥不将ESL和LAC合ƈh做个应用?q样既可以看其文?又可以实时查询不认识的单? 说干干,所以啊...LAC2停?..实在不好意思啊...

    量一个月内搞定这个EL,然后再LAC2. 不过LAC2可能q有晚点?因ؓ我打试试能不能靠EL把下半年和明q的点卡赚出?.(U房钱难存啊,LingosHook的捐赠早被|光了...)所以估计要q箋改几个版本才?..
    目前ELq不是个样子...
   





<----- 想不L分割U?----->
    基本每天都会来看看这?或者回复下吐槽,或者发个帖子吐?..今天H然发现竟然又快整整一个月一未?堕落?..
    可能是白天工作忙,晚上敲字?又没人来吐槽,也就懒了...今天交代下q况---q喘?能敲?/strong>...
    
    q半q天天java,敲的不亦乐乎,LingosHook的问题基本当不存? 也导致经帔R自己,是不是该直接转行dandroid应用??U结的很...

codejie 2013-07-16 22:29 发表评论
]]>
Android DEV : get AttributeSet from XML resourcehttp://m.shnenglu.com/codejie/archive/2013/06/19/201137.htmlcodejiecodejieTue, 18 Jun 2013 16:00:00 GMThttp://m.shnenglu.com/codejie/archive/2013/06/19/201137.htmlhttp://m.shnenglu.com/codejie/comments/201137.htmlhttp://m.shnenglu.com/codejie/archive/2013/06/19/201137.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/201137.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/201137.html     q两天在l习个Android应用,需要创Z些自定义的View,实际每个View都是很简单的装或者?但每个的Attribute都要一一配置,很是ȝ.
    写一半时,忽然惌v,q些Attributes都是可以从XML资源文g加蝲的啊...土了一?赶紧删了全部代码,重写?..(又土了一?..)

    虽然很早q道这?但却从来没写q?错了无数?l于发现问题?于是装个UtilsҎ,供以后调?..

    public static AttributeSet getAttributeSet(Context context, final String className, int resId) {

        XmlResourceParser p = context.getResources().getXml(resId);
        int state = XmlResourceParser.START_DOCUMENT;
        do {
            try {
                state = p.next();

                if (state == XmlResourceParser.START_TAG) {
                    if (p.getName().equals(className)) {
                        return Xml.asAttributeSet(p);
                    }
                }
                
            } catch (XmlPullParserException e) {
                e.printStackTrace();
                break;
            } catch (IOException e) {
                e.printStackTrace();
                break;
            }
        } while (state != XmlResourceParser.END_DOCUMENT);
        
        return null;
    }


    说明下啊,当前本hjava代码仅作记录,不负责的...原因你懂?..强力大家吐槽...嘿嘿...

codejie 2013-06-19 00:00 发表评论
]]>
Android DEV : Amazing Theme and Stylehttp://m.shnenglu.com/codejie/archive/2013/05/10/200157.htmlcodejiecodejieFri, 10 May 2013 06:37:00 GMThttp://m.shnenglu.com/codejie/archive/2013/05/10/200157.htmlhttp://m.shnenglu.com/codejie/comments/200157.htmlhttp://m.shnenglu.com/codejie/archive/2013/05/10/200157.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/200157.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/200157.html     工作上需要动态改变app字体大小,而我的LAC也可能需要这?于是半公半私地看h...google了很多页?发觉得Theme和Style奇?..

    ׃讲不?q是直接放上几段代码做记录吧...

    styles.xml

<resources>
    <style name="small_title_text">
      <item name="android:textSize">22sp</item>
      <item name="android:textColor">@color/color1</item>
      <item name="android:textStyle">normal</item>
      <item name="android:paddingBottom">5dip</item>
   </style>
   <style name="small_body_text">
      <item name="android:textSize">16sp</item>
      <item name="android:textColor">@color/color1</item>
      <item name="android:textStyle">normal</item>
      <item name="android:paddingBottom">5dip</item>
   </style>
   <style name="large_title_text">
      <item name="android:textSize">40sp</item>
      <item name="android:textColor">@color/color</item>
      <item name="android:textStyle">normal</item>
      <item name="android:paddingBottom">5dip</item>
   </style>

   <style name="large_body_text">
      <item name="android:textSize">20sp</item>
      <item name="android:textColor">@color/color</item>
      <item name="android:textStyle">normal</item>
      <item name="android:paddingBottom">5dip</item>
   </style>

  <!-- Base application theme is the default theme. -->
  <style name="Theme" parent="android:Theme">
  </style>

  <style name="Theme.Small" parent="Theme">
     <item name="textTitle">@style/small_title_text</item>
     <item name="textBody">@style/small_body_text</item>
  </style>

  <style name="Theme.Large"  parent="Theme">
      <item name="textTitle">@style/large_title_text</item>
      <item name="textBody">@style/large_body_text</item>
  </style>
    
</resources>

    attrs.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
       <attr name="textTitle" format="reference" />
       <attr name="textBody" format="reference" />    
</resources>

    main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools
="http://schemas.android.com/tools"
    android:layout_width
="match_parent"
    android:layout_height
="match_parent"
    android:paddingBottom
="@dimen/activity_vertical_margin"
    android:paddingLeft
="@dimen/activity_horizontal_margin"
    android:paddingRight
="@dimen/activity_horizontal_margin"
    android:paddingTop
="@dimen/activity_vertical_margin"
    tools:context
=".MainActivity" >

    <TextView
        
android:id="@+id/textView1"
        style
="?textTitle"
        android:layout_width
="wrap_content"
        android:layout_height
="wrap_content"
        android:layout_alignParentLeft
="true"
        android:layout_alignParentTop
="true"
        android:text
="@string/hello_world" />

    <Button
        
android:id="@+id/button1"
        style
="?textBody"
        android:layout_width
="match_parent"
        android:layout_height
="wrap_content"
        android:layout_alignLeft
="@+id/textView1"
        android:layout_below
="@+id/textView1"
        android:layout_marginTop
="14dp"
        android:text
="ToggleButton" />

</RelativeLayout>

    main.java
    protected void onButtonClick() {
        
        if (toggle) {
            this.setTheme(R.style.Theme_Large);
            setContentView(R.layout.activity_main);
        } else {
            this.setTheme(R.style.Theme_Small);
            setContentView(R.layout.activity_main);            
        }
        Button btn = (Button) this.findViewById(R.id.button1);
        btn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                onButtonClick();
            }
            
        });
        
        toggle = !toggle;
    }


file://C:\Program Files\sdk\platforms\android-17\data\res
http://developer.android.com/guide/topics/ui/themes.html
http://stackoverflow.com/questions/3241729/android-dynamically-change-style-at-runtime



codejie 2013-05-10 14:37 发表评论
]]>
LingosHook : Lingoes的x64版来?/title><link>http://m.shnenglu.com/codejie/archive/2013/04/19/199573.html</link><dc:creator>codejie</dc:creator><author>codejie</author><pubDate>Fri, 19 Apr 2013 14:43:00 GMT</pubDate><guid>http://m.shnenglu.com/codejie/archive/2013/04/19/199573.html</guid><wfw:comment>http://m.shnenglu.com/codejie/comments/199573.html</wfw:comment><comments>http://m.shnenglu.com/codejie/archive/2013/04/19/199573.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/codejie/comments/commentRss/199573.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/codejie/services/trackbacks/199573.html</trackback:ping><description><![CDATA[<br />    一周不在线,Lingoes变成2.9.1?..不过也正?一般新版本发布后马上就会来?补丁?...臛_我是l常q样?..<br /><br />    是刚到家查看blog?才发现Lingoes升?有跟帖说LingosHook没法Hook住新版了...我一直担心这?不过一?补丁'不会太大变化?x应该是个?但还是赶紧下载来试试.一试啊,果然有不兼容问题?..<br />    LingoesZ个x64?LingosHook是不支持64位版本的.为啥?单啊,因ؓp水^,可以说完?搞不?什么x86,x64的区?..<br />    l想来应该是API有差?q好,LingosHookq能l箋兼容2.9.1的非x64?..?找个旉google下Hook相应的x64的APIs?希望只是API问题,不然只能再发个帖子说咱LingosHook不支持x64?..<br />    (说到google,想起以前的一个吐槽来,意思是?google让程序员的世界变q了...)<img src ="http://m.shnenglu.com/codejie/aggbug/199573.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/codejie/" target="_blank">codejie</a> 2013-04-19 22:43 <a href="http://m.shnenglu.com/codejie/archive/2013/04/19/199573.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>LAC: Lingoes.XSLhttp://m.shnenglu.com/codejie/archive/2013/04/03/199083.htmlcodejiecodejieWed, 03 Apr 2013 15:43:00 GMThttp://m.shnenglu.com/codejie/archive/2013/04/03/199083.htmlhttp://m.shnenglu.com/codejie/comments/199083.htmlhttp://m.shnenglu.com/codejie/archive/2013/04/03/199083.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/199083.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/199083.html    q两天晚上在忙着修改LAC的Navite Dictionary演示E序,d对多词典的支?一来可以ؓ后面LAC2的开发积累点l验,二来,也是主要原因是下个月我自己可能要用到...?自己敲的app,实际自己使用的时间不如敲打时间的癑ֈ之一...

    q次支持了中文Vicon词典,敲字q程中碰到曾l没有考虑到很多问?卡了我很多天.目前看除了那个DES加密破解不了?像字W集~码,XML输出什么的都还能搞?应该可以拿到LAC2中直接用?当然那个cursor.MoveToFirst()L的问题估计需要到旉新设计下数据库表来解决了...

    今天记录下对XSL的认??XML认识了那么久,从来没有好好静心研究q?q次碰到钉子了...也好,搞明白了q个,在也不用自己分解XML再拼串输Z...不论对不?贴上再说...(只是个draft,q我自q?.)

    更新?来张囑օ,使用xslt输出xmlq是很cool的啊..(q单词代表我的心...)




<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='html' version='1.0' encoding='UTF-8' indent='yes'/>

<xsl:template match="LingosHook Android Client">
    
<HTML><HEAD></HEAD><BODY>
    
<xsl:apply-templates/>
    
</BODY></HTML>
</xsl:template>

<xsl:template match="W">
    
<DIV>
    
<SPAN style="LINE-HEIGHT: 150%; COLOR: #000000; FONT-SIZE: 180%"><B>
        
<xsl:value-of select="."/>
    
</B></SPAN>
    
</DIV>
</xsl:template>

<xsl:template match="D">
    
<DIV style="LINE-HEIGHT: 120%; background-color:#cfddf0; COLOR:#000080; FONT-SIZE: 100%"><B>
        
<xsl:value-of select="."/>
    
</B>
    
</DIV>
</xsl:template>

<xsl:template match="C">
    
<xsl:for-each select="F">
        
<DIV style="MARGIN: 5px 0px">
            
<xsl:apply-templates/>
        
</DIV>
    
</xsl:for-each>
    
    
<xsl:if test="E">
        
<DIV style="MARGIN: 4px 0px; LINE-HEIGHT: 150%; FONT-SIZE: 100%">
            
<B>Extension:</B>
            
<FONT COLOR="#229922">
                
<xsl:for-each select="E">
                    
<xsl:value-of select="."/>
                
</xsl:for-each>
            
</FONT>
        
</DIV>        
    
</xsl:if>
</xsl:template>

<xsl:template match="H">
    
<SPAN style="LINE-HEIGHT: 120%; COLOR: #000000; FONT-SIZE: 120%">
        
<xsl:apply-templates/>
    
</SPAN>
</xsl:template>

<xsl:template match="L">
    
<DIV style="MARGIN: 0px 0px 5px; ">
        
<xsl:value-of select="."/>
    
</DIV>
</xsl:template>

<xsl:template match="M">
    [
<FONT COLOR="#009900">
        
<xsl:value-of select="."/>
    
</FONT>]
</xsl:template>

<xsl:template match="I">
    
<DIV style="MARGIN: 0px 0px 5px">
        
<xsl:apply-templates/>
    
</DIV>
</xsl:template>

<xsl:template match="N">
    
<DIV style="MARGIN: 4px 0px; LINE-HEIGHT: 120%; FONT-SIZE: 120%">
        
<xsl:apply-templates/>
    
</DIV>
</xsl:template>

<xsl:template match="U">
    
<FONT color="#c00000">
        
<xsl:value-of select="."/>
    
</FONT>
</xsl:template>

<xsl:template match="x">
    
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="h">
    
<I>
        
<xsl:value-of select="."/>
    
</I>
</xsl:template>

</xsl:stylesheet>


codejie 2013-04-03 23:43 发表评论
]]>
Java: 只有g?/title><link>http://m.shnenglu.com/codejie/archive/2013/02/08/197776.html</link><dc:creator>codejie</dc:creator><author>codejie</author><pubDate>Fri, 08 Feb 2013 02:56:00 GMT</pubDate><guid>http://m.shnenglu.com/codejie/archive/2013/02/08/197776.html</guid><wfw:comment>http://m.shnenglu.com/codejie/comments/197776.html</wfw:comment><comments>http://m.shnenglu.com/codejie/archive/2013/02/08/197776.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/codejie/comments/commentRss/197776.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/codejie/services/trackbacks/197776.html</trackback:ping><description><![CDATA[<br />    又一ơ被Java的函C参搞?..写段代码,U念?..<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 />--><span style="color: #0000FF; ">package</span> jie.java.test;<br /><br /><span style="color: #0000FF; ">public</span> <span style="color: #0000FF; ">class</span> main {<br /><br />    <span style="color: #0000FF; ">public</span> <span style="color: #0000FF; ">static</span> <span style="color: #0000FF; ">class</span> Holder<T> {<br />        <span style="color: #0000FF; ">private</span> T value = <span style="color: #0000FF; ">null</span>;<br />        <span style="color: #0000FF; ">public</span> Holder(T value) {<br />            <span style="color: #0000FF; ">this</span>.setValue(value);<br />        }<br />        <span style="color: #0000FF; ">public</span> T getValue() {<br />            <span style="color: #0000FF; ">return</span> value;<br />        }<br />        <span style="color: #0000FF; ">public</span> <span style="color: #0000FF; ">void</span> setValue(T value) {<br />            <span style="color: #0000FF; ">this</span>.value = value;<br />        }<br />    }<br />        <br />    <span style="color: #0000FF; ">private</span> <span style="color: #0000FF; ">static</span> <span style="color: #0000FF; ">void</span> paramTest(Integer in, Holder<Integer> o) {<br /><span style="color: #008000; ">//</span><span style="color: #008000; ">        o = new Holder<Integer>(100);</span><span style="color: #008000; "><br /></span>        o.setValue(in);<br />    }<br />    <br />    <span style="color: #0000FF; ">public</span> <span style="color: #0000FF; ">static</span> <span style="color: #0000FF; ">void</span> main(String[] args) {<br />        Integer i = 10;<br />        Holder<Integer> o = <span style="color: #0000FF; ">new</span> Holder<Integer>(0);<br />        <br />        paramTest(i, o);<br />        <br />        System.out.println("o = " + o.getValue());<br />    }<br />}</div><img src ="http://m.shnenglu.com/codejie/aggbug/197776.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/codejie/" target="_blank">codejie</a> 2013-02-08 10:56 <a href="http://m.shnenglu.com/codejie/archive/2013/02/08/197776.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Android ROM : Enable to debug with DDMShttp://m.shnenglu.com/codejie/archive/2013/02/01/197672.htmlcodejiecodejieFri, 01 Feb 2013 15:13:00 GMThttp://m.shnenglu.com/codejie/archive/2013/02/01/197672.htmlhttp://m.shnenglu.com/codejie/comments/197672.htmlhttp://m.shnenglu.com/codejie/archive/2013/02/01/197672.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/197672.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/197672.html阅读全文

codejie 2013-02-01 23:13 发表评论
]]>
LAC : The Preview of Native Dictionary http://m.shnenglu.com/codejie/archive/2013/01/15/197302.htmlcodejiecodejieTue, 15 Jan 2013 15:56:00 GMThttp://m.shnenglu.com/codejie/archive/2013/01/15/197302.htmlhttp://m.shnenglu.com/codejie/comments/197302.htmlhttp://m.shnenglu.com/codejie/archive/2013/01/15/197302.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/197302.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/197302.html    今天是来U当前LAC Native Dictionary的Demo应用的进展情?Z吐槽?..(好吧,实际今天是来吐槽的..)

    老规?先上图了~


    当前Demo应用的基本架子和功能炚w完成了,{真正敲完估计就界面上再来点变化?..q次不鼓励大家提?看吐槽先?..

    (下面是吐槽?..)

    真的h?..怎么说呢?好吧--我本是一只来自北方的?在南方的冬天?/strong>愣是L了猴...

    q段旉可爱的宝宝越睡越?而我却越睡越晚了,因此冬日的夜变得来长...按理应该有更大把的时间挥霍到敲字?但~~d的双手握着零下(室内)的刻度板,依然坚持?jandan',?wow',是不敲一行LAC代码...
    不知Z,换了环境以后,反而失M更多的往日激?来多的是对自ph字的怀疑和q,每个冬夜都是在这U纠l中,敲打寥寥数行代码便草草commit?..

    是因为全q没有做一个项目吗?
    是因为新的工作压力吗?
    是因为担忧自q未来?
    ...

    有时真的担心沉在这U茫然中的我会不?_崩溃'...当然,也许只会是个'_分裂'而已..?..

    希望q一切只是冬日带来的'淡E忧伤'而已...q忧伤真的很伤h...
    希望自己快回归?疯狂'敲字的时IZ?..q时I穿的不对...

    q一切还只能靠自?强大的精力?来纠正~~吐槽是一U反?

    吐槽l束~很抱歉LAC的这个Native Dictionary Demo应用拖拖拉拉q么?׃把责Ll这'L?的冬?会不会是个好理由?嘿嘿...
    好吧,无论怎样,哪怕是满手ȝ,我都保证敲完q个Demo!!! (透露个个人隐U?---l历q么q么多的敲字的冬?q然从没生q冻?嫉妒慕恨吗?嘿嘿...)




codejie 2013-01-15 23:56 发表评论
]]>
随笔: coding lifehttp://m.shnenglu.com/codejie/archive/2012/11/15/195234.htmlcodejiecodejieThu, 15 Nov 2012 07:42:00 GMThttp://m.shnenglu.com/codejie/archive/2012/11/15/195234.htmlhttp://m.shnenglu.com/codejie/comments/195234.htmlhttp://m.shnenglu.com/codejie/archive/2012/11/15/195234.html#Feedback1http://m.shnenglu.com/codejie/comments/commentRss/195234.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/195234.html
codejie: 人生是个main(),可能会有许多_ֽ的function()调用,但终归还是要exit()?..

老大: exit是胜利h生了Q更多的是crash.


老大是老大,看待人生跟看待代码一?依然是那么的深奥,那么的犀?..



codejie 2012-11-15 15:42 发表评论
]]>
随笔: 崩溃的Pythonhttp://m.shnenglu.com/codejie/archive/2012/11/05/194616.htmlcodejiecodejieMon, 05 Nov 2012 09:05:00 GMThttp://m.shnenglu.com/codejie/archive/2012/11/05/194616.htmlhttp://m.shnenglu.com/codejie/comments/194616.htmlhttp://m.shnenglu.com/codejie/archive/2012/11/05/194616.html#Feedback13http://m.shnenglu.com/codejie/comments/commentRss/194616.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/194616.html
#!/usr/bin/python

import string

l = []

class A:
    v = []
    
    def __str__(self):
        return string.join(map(str, self.v))
    
l.append(A())
l[0].v.append(1)
l[0].v.append(2)
l.append(A())
l[1].v.append(3)


print l[0]
print l[1]

    作ؓ搞C++的各?你觉得上面的Python代码该输Z? (我就不脓l果...猜哦...不行p下了,Pythonq是很好玩的...)


<---- 公告分割U?---->
    1. 休假一周去北京见老爸老妈,基本不上|?..
    2. LAC2今年没指望了...
    3. 体检l束,又胖?..
    4. WOWl于90,哇哈?..

codejie 2012-11-05 17:05 发表评论
]]>
LAC : Lingoes-Extractor is powerfulhttp://m.shnenglu.com/codejie/archive/2012/10/16/193392.htmlcodejiecodejieTue, 16 Oct 2012 15:59:00 GMThttp://m.shnenglu.com/codejie/archive/2012/10/16/193392.htmlhttp://m.shnenglu.com/codejie/comments/193392.htmlhttp://m.shnenglu.com/codejie/archive/2012/10/16/193392.html#Feedback5http://m.shnenglu.com/codejie/comments/commentRss/193392.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/193392.html    又仔l分解了?a >Lingoes-Extractor的代?发现昨晚弄错?..人家不是没有做到'l致'破解,人家只是'好心'所有tag都strip掉了...下次是破解出的原始数?
abut = <C><E>abuts|abutted|abutting</E><F><H><M>a·but || ə'bʌt</M></H><I><N><U>v.</U>  L; 紧靠; 毗连</N></I></F></C>

    LD2文g中是通过自定义Tag来标C的,cMHTML格式,哇哈?..q个,q个是咱的强?咱有TinyHtmlParser在手,分?隔离什么的,不麻烦h家了...

    LAC的Native Dictionary的有希望?..为减开发时?WOW中我?7U啊...)计划qLingoes默认的Vicon词典作ؓLAC词典的数据源?



codejie 2012-10-16 23:59 发表评论
]]>
LAC : I hate encoded data.http://m.shnenglu.com/codejie/archive/2012/10/16/193343.htmlcodejiecodejieMon, 15 Oct 2012 16:22:00 GMThttp://m.shnenglu.com/codejie/archive/2012/10/16/193343.htmlhttp://m.shnenglu.com/codejie/comments/193343.htmlhttp://m.shnenglu.com/codejie/archive/2012/10/16/193343.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/193343.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/193343.html    昨晚敲好了LAC的Native Dictionary数据? 今天准备放些数据q去,又是那么一冲动--Z么不直接Lingoes的数据导入进d?反正早晚要做?

    于是兴冲冲地checkout?a >Lingoes-Extractor.q个目是七八月份中无意间发现的,很强?一定程度上破解了Lingoes的LD2格式,有兴的快去download?
 
    在最早做LingosHook时也不是没想q破解LD2,只是׃想着LingosHook只是个单词本,不是个词?加上通过Hook方式也能获得数据,也就没有d?现在要增加Native Dictionary,q些数据是必需的了,本来想着前面准备的(CET4,6)拿来用用好?但又觉得是不是有点不专业?于是转而到处找词典数据,l果,l果发Cq个Lingoes-Extractor目.惊喜?当时决定直接用Lingoes是数据了...

    现在悲剧?..q就是ؓ什么前面说Lingoes-Extractor?一定程度上'破解了LD2?因ؓ,虽然破解出的数据很全?但很多必要的数据无法获得.比如如下破解后的数据:
abut = abuts|abutted|abuttinga·but || ə'bʌtv.  L; 紧靠; 毗连

    数据昄了abut单词的多U表辑ּ,以及x,词性和解释,很全?但问题是--q些数据该怎么分隔?
    研究了Lingoes-Extractor的源?发现其似乎也没法分隔q些数据,只能单地分成'单词'?解释'两部?
    
    现在,现在N要我自己再来破解LD2? 太悲剧了...现在真的么时间玩破解?..记得上次破解WOW的WDB文g(有图有真?..),差点L,我恨~码数据!!!


<---- 烧香的分割线 ---->

    高h?你在哪里?.. ?明天再好好看看h家的code?..

codejie 2012-10-16 00:22 发表评论
]]>
Why the inline function can not be covered?http://m.shnenglu.com/codejie/archive/2012/09/21/191508.htmlcodejiecodejieFri, 21 Sep 2012 09:45:00 GMThttp://m.shnenglu.com/codejie/archive/2012/09/21/191508.htmlhttp://m.shnenglu.com/codejie/comments/191508.htmlhttp://m.shnenglu.com/codejie/archive/2012/09/21/191508.html#Feedback2http://m.shnenglu.com/codejie/comments/commentRss/191508.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/191508.html
Please have a look the following codes, they include two source files (source.h, source.c), one test file (test_source.c) and one makefile file.

//source.h
 1 #ifndef __SOURCE_H__
 2 #define __SOURCE_H__
 3 
 4 #include <stdio.h>
 5 
 6 inline void inline_test()
 7 {
 8     printf("\nthis is the inline function.");
 9 }
10 
11 void normal_test();
12 
13 #endif

//source.c
1 #include "source.h"
2 
3 void normal_test()
4 {
5     printf("\nThis is a normal function.");
6 }

//test_source.c
 1 #include "source.h"
 2 
 3 void test_inline() 
 4 {
 5     inline_test();
 6 }
 7 
 8 void test_normal()
 9 {
10     normal_test();
11 }
12 
13 int main()
14 {
15     test_inline();
16     test_normal();
17     
18     return 0;
19 }


//makefile
 1 TEST = test_source.o
 2 
 3 TARGET = a.exe
 4 
 5 all: $(TARGET)
 6 
 7 $(TARGET):$(SOURCE) $(TEST)
 8     gcc -Xlinker --allow-multiple-definition $^ -fprofile-arcs -ftest-coverage -o $(TARGET)    
 9 
10 $(SOURCE): %.o:%.c
11     gcc -MM -MF $(subst .o,.d,$@) -MT "$@ $(subst .o,.d,$@)" $<
12     gcc -c $< -o $@ -fprofile-arcs -ftest-coverage
13     
14 $(TEST): %.o:%.c
15     gcc -MM -MF $(subst .o,.d,$@) -MT "$@ $(subst .o,.d,$@)" $<
16     gcc -c $< -o $@   
17  
18 clean:
19     -rm -rf $(DIR_COVERAGE)
22     -rm -rf *.d *.o *.gcda *.gcno $(TARGET)

...

My purpose is that get the UT line coverage report of source files by running the test file. I guess I should get the below report of line coverage, because I have called every functions of source file in test file, include the inline function and the normal function.

But after run test file, I got the report is just 50%, the inline function has not been covered. Why? Why it is not be covered? I am sure it is called in test file.
OK, Calming down. If it is not covered, there are two reason, one is that the inline function is not be called, of course it is impossible, because we did it. So the root cause must be the second one that gcov/lcov tools do not process those lines of inline function. Have any idea? gcov/lcov tools process all files with compilation parameters '-fprofile-arcs -ftest-coverage', so let's check makefile file again.
Look here, source files have the compilation paraments, but why normal function has been coverage, but inline function not?

$(SOURCE): %.o:%.c
    gcc -MM -MF $(subst .o,.d,$@) -MT "$@ $(subst .o,.d,$@)" $<
    gcc -c $< -o $@ -fprofile-arcs -ftest-coverage

Thinking again, as we knew, the difference between inline function and normal function is just that inline function will be inserted source code while compiling period. Yes, the answer is here! While compiling, the inline function is put into test file, but the test file has not '-fprofile-arcs -ftest-coverage' paramenter. So, so it was not covered.

$(TEST): %.o:%.c
    gcc -MM -MF $(subst .o,.d,$@) -MT "$@ $(subst .o,.d,$@)" $<
    gcc -c $< -o $@

To fix it, just add the parameter to test file while compiling. OK, let's update the makefile file like the below line.

$(TEST): %.o:%.c
    gcc -MM -MF $(subst .o,.d,$@) -MT "$@ $(subst .o,.d,$@)" $<
    gcc -c $< -o $@ -fprofile-arcs -ftest-coverage    

Done, enjoy it!


codejie 2012-09-21 17:45 发表评论
]]>
随笔:Java只有g?/title><link>http://m.shnenglu.com/codejie/archive/2012/08/22/187898.html</link><dc:creator>codejie</dc:creator><author>codejie</author><pubDate>Tue, 21 Aug 2012 16:42:00 GMT</pubDate><guid>http://m.shnenglu.com/codejie/archive/2012/08/22/187898.html</guid><wfw:comment>http://m.shnenglu.com/codejie/comments/187898.html</wfw:comment><comments>http://m.shnenglu.com/codejie/archive/2012/08/22/187898.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/codejie/comments/commentRss/187898.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/codejie/services/trackbacks/187898.html</trackback:ping><description><![CDATA[<br />    C++怹?g?指针传?引用传递已l根植在脑袋里了,面对Java?L被它的参C递搞的晕头{?..Java有简单类?引用cd什么的,那么到底该传递什么呢?<br />    今晚是被一个错误搞明白?---如果非要靠向C++的概?那么Java只有g?<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 />-->    <span style="color: #0000FF; ">public</span> <span style="color: #0000FF; ">static</span> <span style="color: #0000FF; ">void</span> main(String[] args) {<br /><span style="color: #008000; "></span>        String str = "Hello";<br />        <span style="color: #008000; ">//</span><span style="color: #008000; ">System.out.println(str.toLowerCase());</span><span style="color: #008000; "><br /></span>        System.out.println(test(str));<br />        System.out.println(str);<br />    }<br />    <br />    <span style="color: #0000FF; ">private</span> <span style="color: #0000FF; ">static</span> String test(String str) {<br />        str = str.toLowerCase();<br />        <span style="color: #0000FF; ">return</span> str;<br />    }<br /><br /><br />Output:<br /><div>hello</div><div>Hello</div><div></div></div><img src ="http://m.shnenglu.com/codejie/aggbug/187898.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/codejie/" target="_blank">codejie</a> 2012-08-22 00:42 <a href="http://m.shnenglu.com/codejie/archive/2012/08/22/187898.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>LingosHook : Test for Youdaohttp://m.shnenglu.com/codejie/archive/2012/05/08/174016.htmlcodejiecodejieTue, 08 May 2012 14:53:00 GMThttp://m.shnenglu.com/codejie/archive/2012/05/08/174016.htmlhttp://m.shnenglu.com/codejie/comments/174016.htmlhttp://m.shnenglu.com/codejie/archive/2012/05/08/174016.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/174016.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/174016.html    我要说敲LingosHook多了,会有蛋疼的时?你信不信...e,q是真的. q箋用了两个晚上,我测试了用LingosHookL取Youdao词典的数?..l论----只能?q是可行?..
    1. LingosHookLHook到Youdaoq程;
    2. 暂时无法定Youdao的显C数据控件的cd和属?获取数据p|;

    好了,蛋疼q了,我l了...

codejie 2012-05-08 22:53 发表评论
]]>
LingosHook : Development Environment Setuphttp://m.shnenglu.com/codejie/archive/2012/03/30/169536.htmlcodejiecodejieFri, 30 Mar 2012 08:16:00 GMThttp://m.shnenglu.com/codejie/archive/2012/03/30/169536.htmlhttp://m.shnenglu.com/codejie/comments/169536.htmlhttp://m.shnenglu.com/codejie/archive/2012/03/30/169536.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/169536.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/169536.html    上周本本重装成了Win7Q我也兴冲冲地安装了VCExpress2010和wxWidgets2.9Q悲剧的是LingosHook竟然在此环境下编译失败。。?br />    都是版本兼容错误Q我也懒得改了,于是速度恢复了原来的环境Q一切OK。。。顺便记录下Q有兴趣的可以看看。。?br />
    1. VC Express 2008Q?br />    2. atlmfc sdkQ?br />    3. wxWidgets 2.8.10Q?br />    4. wsSQLite3 1.9.7Q?br />
    嗯,很简单,安装好了q些Q编译个LingosHookQ那是一个easy啊。。?br />
<---- 回档的分割线 ---->
    cppblog.com敢再E_点不。。。写好的帖子可以重写Q回复的评论真的忘记了。。。?img src ="http://m.shnenglu.com/codejie/aggbug/169536.html" width = "1" height = "1" />

codejie 2012-03-30 16:16 发表评论
]]>
Perl: (.)(.)http://m.shnenglu.com/codejie/archive/2012/03/01/166852.htmlcodejiecodejieThu, 01 Mar 2012 03:37:00 GMThttp://m.shnenglu.com/codejie/archive/2012/03/01/166852.htmlhttp://m.shnenglu.com/codejie/comments/166852.htmlhttp://m.shnenglu.com/codejie/archive/2012/03/01/166852.html#Feedback0http://m.shnenglu.com/codejie/comments/commentRss/166852.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/166852.html    x会Perl的兄弟知道这?.)(.)是啥Q表太邪Ӟ如果不明白,赶紧学Perl厅R。?br />    q个让我惛_Q每U语a都有自己很独特的操作W或者表辑ּQ比如C中的++。。?br />    其他语言会是什么呢Q?img src ="http://m.shnenglu.com/codejie/aggbug/166852.html" width = "1" height = "1" />

codejie 2012-03-01 11:37 发表评论
]]>
Perl: So terrible http://m.shnenglu.com/codejie/archive/2012/02/29/166755.htmlcodejiecodejieWed, 29 Feb 2012 03:20:00 GMThttp://m.shnenglu.com/codejie/archive/2012/02/29/166755.htmlhttp://m.shnenglu.com/codejie/comments/166755.htmlhttp://m.shnenglu.com/codejie/archive/2012/02/29/166755.html#Feedback3http://m.shnenglu.com/codejie/comments/commentRss/166755.htmlhttp://m.shnenglu.com/codejie/services/trackbacks/166755.html    q两天在看PerlQ发现Perl的精髓真的跟其强调的Q-“There's More Than One Way To Do It. ”Q但问题是太混ؕ了。。?br />    研究了下面简单脚本,我整个h都震惊了。。?br />
sub T {
    my $n = @_;
    print $n;
    print @_;
    print $#_;
}

T(123);

    W一个print打印?n, 昄了参C敎ͼW二个print打印@_Q按照习惯思维Q应该跟$n是一LQNoQNoQNoQ它昄了@_的内容;而第三个print打印的是$_数组的最大边界倹{。。反正三U方法都能得到参C数。。?br />    更崩溃的是下面这句,也能参C数。。?br />
print (@_ == 3);

    都说Perl的发明?a >Larry Wall获得q两?a >IOCCCQ看来这个,我一点不奇怪了Q-他Y是故意把Perl搞成q样的。。?br />


codejie 2012-02-29 11:20 发表评论
]]>
þþþþۺ| þ99Ʒþþþþhb | avɫۺϾþavɫۺ| Ʒþþþþù | ƷþþĻ| þˬˬAV| 99þۺϺݺۺϾþֹ| Ʒþþþһ| þҹҹݺ2022| TOKYOۺϾþþƷ| þó˾Ʒ| þ99Ʒþþþþþò| ĻӰӾþþ| 99þùۺϾƷӰԺ | 91Ʒþþþþ| þþƷĻ| ݺݺɫۺϾþ| ޹˾þһҳ| Ʒþþþù| AVպƷþþþ| ޾Ʒþþ| þøһëƬ| 91Ʒþþþþio| 7777Ʒþþô߽| þɫۺϼ| ھƷþþþþþɬ| 99þ99ֻѵľƷ| þþþþþŮú| ղƷaëƬþ | һĻþ| þۺϾþ߾Ʒ | ŷ˾þô߽ۺ69| 99þwww˳ɾƷ| ƷһþþƷ| þþƷ99þ㽶ɫ| þþAVɫۺ| ޹Ʒþһ | ޾Ʒھþ| þþƷĻ| þùƷһ| þþƷ˳|