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 · 4338 次点击
    这是一个创建于 3219 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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  
       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  
       2015-07-12 23:18:57 +08:00
    只能说翻译辛苦了。

    弱弱的觉得原作在不统一代码前提条件下,还达不到“禅”的地步,只是把一些博客和 SO 上的问题混合了下。
    beimenjun
        11
    beimenjun  
       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  
       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   ·   我们的愿景   ·   实用小工具   ·   761 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 20:16 · PVG 04:16 · LAX 13:16 · JFK 16:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.