iOS开发者选项如何在枯燥的工作中寻求技术的提

6.2K293 条评论分享收藏感谢收起唐巧访谈: iOS 大 V 的技术进阶之路
唐巧访谈: iOS 大 V 的技术进阶之路
如果你有志于将 iOS 开发作为职业,或者已经是一位 iOS 开发者,那么你应该听说过唐巧的名字。唐巧,2012 年从网易有道离开参与创业,
目前是猿题库 iOS 高级研发工程师。难得的是,他本身是一线的 iOS 开发者,同时又对 iOS 开发在国内的布道做了不少的工作,身影活跃于博客、微博、微信公众账号等地。从 2011 年以来,唐巧开始在博客分享自己写的 iOS 开发技术文章,CocoaChina
也曾多次转载过他的博客文章,后来他成为 InfoQ 兼职编辑,除了发表技术文章之外,还负责整理《iOS 移动开发周报》,至今已有 35 期,他的微博和微信公众账号粉丝都超过 1 万,可以说是 iOS 开发领域的 " 大 V"。最近,经过一年的辛苦编写,他的新书《iOS 开发进阶》已经和大家见面,下面就让我们来和他聊聊这本新书,以及他对于技术学习、建设技术影响力等方面的经验和看法。受访者:唐巧。猿题库 iOS 高级研发工程师,《iOS 开发进阶》作者。CocoaChina:感谢您能和大家分享自己的宝贵经验。能否介绍一下您现在的工作和生活情况?唐巧:大家好,非常高兴能和大家分享一些我的想法。我喜欢写作与分享,长期维护着自己的 、技术微博
以及微信公共帐号 iOSDevTips。我的技术文章也多次发表在
网站和《程序员》杂志上。工作方面:我从
月从网易离职加入猿题库创业,经过
年多发展,猿题库现在已经是一家到
轮融资的,估值
亿美元的公司。我有幸见证了猿题库从几个人发展到现在近百人的过程。我一直在猿题库负责
端的开发工作,最近主要在参与
" 小猿搜题 "
这个新项目。生活方面:虽然不服老,但今年我已经年满
岁了,一些
圈子里的晚辈甚至叫我巧叔。平时创业能有的空余时间不多,周末一般写写博客,陪陪家人。CocoaChina:能否分享一下您在
开发方面的学习方法?唐巧:我之前写过一篇《》的文章,简单总结来说,就是多读、多写、多思考、多讨论。多读主要包括:阅读博客、图书、WWDC
视频、官方文档、开源项目。多写就没什么好说了,没有写过几十万行代码是不能算熟悉一门语言的。多思考和讨论这个需要个人主动一些,遇到问题喜欢多问为什么,在多次重构和思考的过程中,我们就会慢慢积累出一类问题的
" 最佳实践 "
方式,成为自己宝贵的经验。我个人也是比较信奉
万小时理论的,所以我会拿晚上和周末的时间去学习积累
开发技术,这可能也是为什么我会成长得比较快的原因。CocoaChina:
开发技术的更新换代特别快,而且在更新过程中会有一些坑,您对此有什么看法?唐巧:移动开发真正火起来其实就是最近这三年,iOS
开发技术因为发展也就才这么几年,所以值得做的事情还有很多,这就造成了每年苹果的
都会推出一堆新的特性和
API。整体上来说,这对业界是好事情。在技术更新过程中产生一些坑,是在所难免的事情。所以希望大家都能用一个比较平和的心态去搞定这些坑。CocoaChina:
您对现在的
有什么看法?唐巧:有一点不容怀疑:Swift
最终肯定会替代
Objective-C,成为主要的
开发语言。单从语言特性上来看,Swift
吸收了众多现代编程语言的优秀特性,例如类型推断(Type inference)、范型(Generic)、闭包(Closure)、命名空间(namespace),元组(tuple)等,整体语法上也更加简洁。所有
开发者都应该花时间学习这门全新的语言。但是,客观地说,Swift
当前的生态环境还不够成熟,这包括第三方开源库,文档和教程,甚至是苹果自己的编译器。我前不久才和一些同行们聊过这个话题,朋友晒出了
上整理出来的 ,从上面可以看出,Swift
语言本身还有较长的路要走。用
还有一个不大不小的问题就是体积会比较大,因为
相关的库会直接打包进
中。我们曾经拿猿题库的
测试过,采用
和 Objective-C
混合编写的方案后,应用体积会增加
10M,这对于公司来说还是比较大的困扰。我个人对于
的预期是:在
年内能够全面替代
Objective-C。但在近期,我个人还是会使用
Objective-C
来完成公司的项目。CocoaChina:您最近出了新书《iOS
开发进阶》,能否给我们介绍一下这本书,您认为这本书最大的亮点或者说价值在哪里?唐巧:我写这本书主要的原因是:国内没有一本原创的
进阶方面的图书出现,所以我想尝试着写一本这样的书。《iOS
开发进阶》分工具、实践、理论三大部分:第一部分介绍
开发的常用工具、第二部分介绍
开发中的一些常见的实践经验、第三部分介绍
开发中涉及的原理。如果把成为
开发高手比作武林小说中的高手修炼的话,工具、实践和理论的学习就分别对应兵器,招式和内功的修炼。此书希望通过这三方面的综合讲解,以全面提高开发者的技能水平。我感觉本书最大的价值就是填补了
进阶一类图书的空白吧,我敢保证书中的
内容在其它
开发的图书中找不到。有该书详细的目录
。CocoaChina:请问作为一线开发者,编写这样的技术书籍是什么样的体验?有哪些经验可以对有志于出书的开发者分享的?唐巧:简单来说就是一个字:累!我大概花费了一年时间来完成这本书。如果是为了挣钱的话,应该有很多方式比写书性价比高。加上我自己还在创业,所以基本上只有周末的时间可以用了。我具体在做的时候是尝试用
的方式来安排自己周末的时间。简单来说就是把书稿的内容进行拆分,然后对于细分到每一个章节的内容进行估分。接着我的每一个周末的目标就是把当周安排的章节写作完成。当然,人都是需要休息的。所以周末两天我通常不会安排满。我会安排一整天用来写作,而另外一天做小量的修改和休息。如果有加班,就暂停写作。我感觉写作的体验和跑马拉松类似,前期的起跑和最后的冲刺都比较激动,但是中途长达一年的写作过程却是孤独,枯燥和寂寞的。这个时候,需要自己的坚持和自我鼓励。CocoaChina:从您自身的经验出发,您认为 iOS
开发者应该如何自我提升?唐巧:对于技术实力的提升,我比较推荐最近
写了一篇文章,叫《》。我觉得你提的这个问题的根本还是在于:iOS
开发者到底热不热爱编程。在我看来,任何一件事情,如果你做到了热爱它,把它当作乐趣,那么在同行中做到出类拔萃应该是理所当然的。如果不热爱,我感觉做到会比较难。对于其它方面,比如管理及其它软能力的提升,我其实也没有很多经验。如果从我自己的经验出发,我自认为多写作对于提高表达沟通能力是有帮助的。CocoaChina:您的博客有很多精品技术文章,还有人专门将它们总结梳理,请问如何写出一篇好的技术分享文章?唐巧:我首先想分享一个事实,就是我高考的时候语文只有
分)。所以说其实技术文章真的不难写,很多时候,你只需要把一个技术细节的前因后果,用客观的语言陈述出来就可以了。那为什么很多人写不好技术文章呢?我觉得还是比较懒的原因。因为要写好一篇技术文章,为了讲清楚,需要非常仔细地介绍知识的前因后果,做各种铺垫,还需要做到有条理,表达清晰。这些如果要做好,配图、举例子、提供参考资料等工作是免不了的。我常常为了写一篇文章,花费周末一整天的时间,来回修改和查证资料。另外我认为写作是可以训练的,所以平时如果坚持多写的话,慢慢得文字就变得更有条理,在沟通的时候也会更加注意表达,这对于自我表达能力的提高是非常好的方式。CocoaChina:
您的微博和微信公众账号都有超过 1
万粉丝,算是
开发这个领域的大
V,想请教一下如何建设个人在技术领域的影响力?唐巧:我能成为
开发领域的大
V,一方面,其实我个人不停地在分享
开发技术。也在有意识地经营微博和微信,你仔细观察就可以发现,我在微博上只讨论 iOS
技术问题。多分享、专注于一个领域,自然会有志趣相投的人来关注你。另一方面的原因是,移动开发最近几年才兴起,我有幸成为最早一批做这个事情的人,当时这个领域坚持写作的人很少,所以我的博客文章内容相对来说更容易被大家阅读到,这就增加了我个人的知名度。另外,建立个人技术影响力是一个长期持续的过程,需要不停地分享,而短期收益比较少,所以很多同行做不到。我坚持做到了,所以就比较成功。以上就是本次访谈的全部内容,感谢唐巧老师的分享。如果您还想了解更多关于唐巧的故事,可以看看这篇技术人攻略对他的。本文属于 CocoaChina 开发者访谈的系列文章,本系列访谈意在寻找资深的一线 iOS 开发者、布道者、开源项目的参与者,来和大家交流经验和想法,欢迎大家自荐或推荐,联系邮箱:原网页已经由 ZAKER 转码以便在移动设备上查看
大家都在看WEB开发中前台和后台各用什么软件,或者技术之类的?
按时间排序
首先,前台后台可能你我理解不一样。叫服务器端和浏览器端(或者客户端)会更加准确点。在服务器端,PHP是可选用的开发语言之一,当然,常用的还有 java, asp.net,在浏览器端,没有支持PHP脚本运行的环境。因为这是由浏览器厂商决定的,当前占绝大部分市场的就是javascript了。因为有的浏览器(如IE)都不能自动更新,所以浏览器端技术进步很慢。也有一些开发者选择用actionscript(flash)来做Js做不了的事,但那总是少数。对于你来说,前端可以让你明明白白的看到你的成果,而后端则是看不见的。也许对有些人来说这也是枯燥无味的dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。Flash又被称之为闪客,是由macromedia公司推出的交互式矢量图和 Web 动画的标准,这两个是软件,可以网上下,HTML是一种语言,你打开一个网页查看源代码,里面的就是HTML语言写的前台用javascript css html,flash,后台用php,asp,.net,jsp。这些都可以用的,你学Java语言都会了解到的
1.首先,前台后台可能你我理解不一样。叫服务器端和浏览器端(或者客户端)会更加准确点。
2.在服务器端,PHP是可选用的开发语言之一,当然,常用的还有 java, asp.net,在浏览器端,没有支持PHP脚本运行的环境。因为这是由浏览器厂商决定的,当前占绝大部分市场的就是javascript了。因为有的浏览器(如IE)都不能自动更新,所以浏览器端技术进步很慢。也有一些开发者选择用actionscript(flash)来做Js做不了的事,但那总是少数。
3.对于你来说,前端可以让你明明白白的看到你的成果,而后端则是看不见的。也许对有些人来说这也是枯燥无味的
4.dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。Flash又被称之为闪客,是由macromedia公司推出的交互式矢量图和 Web 动画的标准,这两个是软件,可以网上下,HTML是一种语言,你打开一个网页查看源代码,里面的就是HTML语言写的
5.前台用javascript css html,flash,后台用php,asp,.net,jsp。这些都可以用的,你学Java语言都会了解到的
前端开发用Photoshop,dreamOver等等之类的,你可以百度搜索一下。Photoshop用来修图,dreamOver用来调试页面。基本上需要掌握html,CSS+DIV,JavaScript,jquery等。
后台开发种类很多了,java,php,c++,C#都是可以的,不同的语言有不同的编辑器。java通常用eclipse或myeclipse,C#开发工具有visual studio 。还有数据库必须会用,大多数是oracle,mysql,slq server,语法和使用上会稍微有些区别。管理数据库的工具oracle有pl sql,mysql 有sql yog,当然这些工具只是方便你操作数据库。java开发的话掌握的基本知识大概有三大框架:Struts、hibernate和spring。其他技术需要慢慢学习掌握了。楼主前段和后台可以先掌握一个,熟悉一个,没必要一下子把所有知识技术都吞掉。注楼主好运早日步入人生巅峰。
前台:web前端始终离不开浏览器,最终还是HTML+JavaScript+CSS这3个核心,围绕这3个核心而开发出来大量技术框架/解决方案。后台:跟语言有关。可以选择PHP、java、C# 等语言。
首先,前台后台可能你我理解不一样。叫服务器端和浏览器端(或者客户端)会更加准确点。在服务器端,PHP是可选用的开发语言之一,当然,常用的还有 java, asp.net,在浏览器端,没有支持PHP脚本运行的环境。因为这是由浏览器厂商决定的,当前占绝大部分市场的就是javascript了。因为有的浏览器(如IE)都不能自动更新,所以浏览器端技术进步很慢。也有一些开发者选择用actionscript(flash)来做Js做不了的事,但那总是少数。对于你来说,前端可以让你明明白白的看到你的成果,而后端则是看不见的。也许对有些人来说这也是枯燥无味的dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。Flash又被称之为闪客,是由macromedia公司推出的交互式矢量图和 Web 动画的标准,这两个是软件,可以网上下,HTML是一种语言,你打开一个网页查看源代码,里面的就是HTML语言写的前台用javascript css html,flash,后台用php,asp,.net,jsp。这些都可以用的,你学Java语言都会了解到的
web前端只要使用的是
HTML+css+js后台现在主要有php、ASP、jspphp开发的话用zend studio 这款软件支持web前端和php后台
感谢您为社区的和谐贡献力量请选择举报类型
经过核实后将会做出处理感谢您为社区和谐做出贡献
确定要取消此次报名,退出该活动?
请输入私信内容:184 条评论分享收藏感谢收起赞同 11 条评论分享收藏感谢收起

我要回帖

更多关于 iOS开发者预览版 的文章

 

随机推荐