[翻译] 禅与 Objective-C 编程艺术 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
oa414
V2EX    iDev

[翻译] 禅与 Objective-C 编程艺术

  •  2
     
  •   oa414
    oa414 2015-07-10 17:28:49 +08:00 4938 次点击
    这是一个创建于 3754 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://github.com/objc-zen/objc-zen-book

    之前看到的一本小书,感觉非常棒,主要是讲编程风格和注意的一些点,融合了诸多的风格指南的观点。虽然 Objective-C 慢慢失宠, 但是仍然还是开发的主要语言,同时本书里面也有一些跨语言的观念。

    最近完成了它的中文翻译(表达可能欠佳,请各位指正):

    https://github.com/oa414/objc-zen-book-cn
    17 条回复    2015-07-17 12:28:34 +08:00
    headwindx
        1
    headwindx  
       2015-07-10 18:27:22 +08:00
    看了下目录,还不错,有空细看。
    loveuqian
        2
    loveuqian  
       2015-07-10 18:35:31 +08:00 via iPhone
    m
    晚上看
    linxy
        3
    linxy  
       2015-07-10 21:07:55 +08:00
    谢谢翻译~
    forkon
        4
    forkon  
       2015-07-10 22:07:53 +08:00 via iPhone
    ( σ )σgood
    beimenjun
        5
    beimenjun  
    PRO
       2015-07-10 22:42:51 +08:00
    原文有些代码格式不对,比如懒加载那里,另外存在不少代码风格不统一。

    有些看法个人不认可。

    另外“属性定义”的 @implementation 部分是不是写错了?
    Elethom
        6
    Elethom  
       2015-07-10 22:59:17 +08:00
    Star 了一下,然後立刻 unstar 了,的示例代格就非常糟糕。
    Hamniba
        7
    Hamniba  
       2015-07-11 00:34:24 +08:00 via iPhone
    国内程序员为什么硬要中文翻译?中文翻译的一定比原版英文好吗?
    Lazy Loading ? 懒加载? 哪一个更顺口?意义更明确?
    平时沟通有人说了一句中文版的专业术语,有时候我都听不懂他讲的到底是什么东西。
    marginleft
        8
    marginleft  
       2015-07-11 19:09:57 +08:00
    非常感谢!已star
    oa414
        9
    oa414  
    OP
       2015-07-12 10:52:20 +08:00
    @beimenjun 嗯,“属性定义”的 @implementation 应该是原文笔误,已经在翻译稿中修订了。
    beimenjun
        10
    beimenjun  
    PRO
       2015-07-12 23:18:57 +08:00
    只能说翻译辛苦了。

    弱弱的觉得原作在不统一代码前提条件下,还达不到“禅”的地步,只是把一些博客和 SO 上的问题混合了下。
    beimenjun
        11
    beimenjun  
    PRO
       2015-07-13 00:39:58 +08:00
    Cyclomatic complexity 应该可以用维基百科上的翻译。

    in-line 可以翻译成“一致”。

    “interface 文件”对应了“实现文件”,有点怪。

    Literals 翻译成“字面值”有问题的,翻译成“写法”“语法”都要好,另外对于那段不推荐 mutableCopy 的写法的意见以及原因持保留态度。

    建议统一“app”、“crash”以及“objective-c"这几个词的大小写。

    如果你要改码的风格,先把他的此前作为范例的代码风格参照“Beautifying the code”这一节整理一下。

    “也应该用冒号对其方法”应该打错字了“也应该用冒号对齐方法”。

    “blocks”有些时候原文中其他部分翻译了之后,就没必要在译文里继续用复数形式了。

    block那里的“Case 1”、“Case 2”、“Case 3”翻译过来成“1.”、“2.”、“3.”,有点怪,排版也出问题。

    “这回让优化性能变得困难”应该是“这会让优化性能变得困难”

    另外用“Notifications”做 Notification 常量结尾不认同,估计是写错了,应该没有复数的。
    ciwonderful
        12
    ciwonderful  
       2015-07-13 10:22:44 +08:00
    支持,谢谢
    yfmir
        13
    yfmir  
       2015-07-13 14:31:13 +08:00
    支持一下,感谢翻译
    skyming
        14
    skyming  
       2015-07-15 16:48:14 +08:00
    看了个开头,感觉很好,是不是我太水了T_T
    oa414
        15
    oa414  
    OP
       2015-07-16 15:05:26 +08:00
    @beimenjun

    十分感谢前辈细致的检查指正 ^_^,大部分已经进行了修正。

    此外我不太理解


    如果你要改代码的风格,先把他的此前作为范例的代码风格参照“Beautifying the code”这一节整理一下。



    是说我的翻译改动了原文的示例代码么。。。出了加上部分代码注释的翻译我应该没动过。。
    beimenjun
        16
    beimenjun  
    PRO
       2015-07-16 18:48:42 +08:00
    @oa414 我知识觉得它这里边的示例代码提取出来,会发现有好多种风格(也就是原文并没有真正的按照自己所说的代码风格的规范去写代码),你干脆帮他集中改了好了。
    yourtion
        17
    yourtion  
       2015-07-17 12:28:34 +08:00
    做了一本Gitbook,方便导出PDF和EPUB查看,欢迎吐槽~~

    http://yourtion.gitbooks.io/objc-zen-book-cn/
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2555 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 11:33 PVG 19:33 LAX 04:33 JFK 07:33
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86