知言 容芳志:Objective-C地位下滑是必然

2024-02-11 06:40

本文主要是介绍知言 容芳志:Objective-C地位下滑是必然,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【编者按】自从Swift(Swift知识库:http://lib.csdn.net/base/swift)发布以后,曾风光一时的Objective-C便呈现出自由落体趋势。尽管如此,作为iOS平台上的一员老将,许多著名软件或者项目大多还是基于OC开发。为此,知识库特邀请《十分钟让你明白Objective-C的语法(和Java、C++的对比)》一文作者容芳志老师为大家绘制了Objective-C知识图谱,并且根据各个知识点挑选优质都干货和精品给大家。

Objective-C知识库发布~

下面是容芳志老师的采访内容,分享他眼中的Objective-C语言。

图片描述

容芳志老师

1.请先简单地介绍一下自己

容芳志:自己现在比较专长的是iOS的应用软件开发,也做过2-3年Android开发。
接触移动开发有6-7年了,移动开发经历过Symbian,MTK,Android,iOS等几个系统的开发。

2.能否分享一下你的计算机编程之路,踩(挖)过哪些坑或者特别值得分享的故事。

容芳志:最早接触的是Symbian系统开发,Symbian算是当时先进的智能手机系统了。不过诺基亚在开发者工具,文档和服务这方面做的非常不到位,开发非常艰难,系统也不开发,感觉这也是诺基亚衰败的如此快的一个原因。有了Symbian开发Symbian C++基础后,再学习Java切换到Android开发就比较容易些了,文档和开发环境也有了很大的改善。在做Android开发的同时,也有机会接触到了iOS开发,不过机会也是靠自己争取的。学习新的知识比较好的一个途径就是边学习边写博客总结分享+实践。

3.你最近使用的技术有哪些,它们给您或团队带来了哪些便利?

容芳志:使用动态修复技术,Jenkins持续集成,HTTP数据传输层使用动态秘钥技术,也在项目实践中探索无埋点技术。

动态修复技术解决了App上线后发现bug不能及时修复的烦恼。Jenkins持续集成可以让开发和测试更敏捷的开发和调试各个版本。HTTP数据传输用动态秘钥加密技术,可以保证App数据通讯不被拦截或破解。无埋点技术可以动态埋点。

4.在最新的TIOBE排行榜上,Swift迅速上升,而Objective-C呈现自由落体,你如何看待这一现象。

容芳志:这是一个必然的趋势,Apple也在努力的推广Swift,新的项目如果没有Objective-C代码的负担的话,基本都是直接用Swift。我们自己的项目也会慢慢向Swift转换

5.对比Swift,Objective-C存在哪些不足?是否会被Swift取代?

容芳志:相比Swift ,Objective-C缺少了很多现代语言的灵活性、可读性、安全性也没有Swift好。不过想完全取代Objective-C还有很长一段路。Apple会在很长长一段时间还是会允许两个语言同时存在。

6.如何利用OC底层的一些原理,对应用程序日常进行监控分析?

容芳志:这个自己倒是没实现过。不过试验过听云监控App的性能SDK,他们只用了两代码,就实现了对App的所有方面的监控。应该是使用了大量OC底层的原理。

7.关于移动端App的热修复、插件化,你是如何实践的?

容芳志:目前只用了热修复,做了一个热修复的平台,可以针对每个App版本出现的线上问题进行热修复。当然热修复补丁也是做了加密和校验的,预防其他人恶意篡改。

8.跨平台领域特别火,评价一下React Native和Weex库,它们分别有哪些优缺点?

容芳志: React Native比较从代码或集成商,都比较重。学习成本高,对安卓支持还不是太好。目前大公司大规模运用React Native的不多,可能还是在一些小模块上实验。个人比较喜欢Weex,代码和集成比较轻量,不过现在刚推出不久,工具链&文档&教程还有待进一步完善。

9.微信小程序出来,请谈谈你的看法?

容芳志:刚推出公测时比较轰动,现在又沉默了。微信小程序估计以后能在移动市场占一席之地,从体验和实际使用上,还是没法取代原生态的App。而且大家不会所有应用流量入口都压在微信上,微信也有很大风险,比如微信会封你的微信小程序。

10.从您自身的经验出发,您认为iOS开发者应该如何自我提升?

容芳志:首先是对iOS开发的热爱,对编程有热情才能激发人去找方法学习。
提升自己的方法可以是:边学习边总结、写博客分享、有问题经常去官方文档学习并查到答案,看官方英文文档有困难及时补充自己看文档的英文能力。有能力可以自己做些开源的项目每年的WWDC的视频也都学习下。

11.作为开发者,除了关注当下热门的技术之外,还要考虑职业规划,你觉得iOS开发者如何才能在编程这条道路上走的更远。

容芳志:职业轨迹:初级开发程序员—中级—高级–软件架构师–系统架构师–开发经理–技术总监–首席技术官
上面提到的是很长的一个链条,当然要做到总监职位,不单单只会移动端开发就可以了,还需要对后端开发也有深入的学习和实践。

12.请你简单谈谈CSDN推出的系统化学习平台——知识库,开发者该如何使用它们?

容芳志:知识库的内容非常全面和丰富,开发者不可能全部都学习精通。需要结合自己当前的技术水平情况或项目情况选择学习或浏览。也可以到根据知识库的知识点,到Apple DEV官网查到详细的官方文档来学习。

推荐阅读:

  • Get IT技能知识库 50个领域一键直达
  • 【知识库专访】蒋守壮:Hive性能优化实战分享
  • 【知识库专访】阿里孙佰贵:深度学习十问十答
  • 【知识库专访】亲加CTO郝飞:直播技术架构解密与优化之道
  • 前端开发人员必须了解的七大技能图谱
  • 来吧 主流编程语言图谱+知识库都在这了
  • 主流编程语言图谱+知识库(二)

这里写图片描述

这篇关于知言 容芳志:Objective-C地位下滑是必然的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/699103

相关文章

金融市场聚焦:8月非农报告与美元地位新动向

非农数据悬念:就业市场能否支撑降息预期? 随着8月非农就业报告的临近,华尔街的焦点再次聚焦于就业市场的表现。市场普遍预期非农就业人数将增加16.1万,失业率小幅下降至4.2%。然而,近期数据修正显示招聘速度显著放缓,为这一预测蒙上阴影。若实际数据强于预期,尤其是就业增长超过16.5万人且失业率低于4.2%,可能削弱市场对美联储大幅降息的期待,因为强劲的就业市场被视为经济韧性的

Core Text Objective-C Wrapper

Core Text Objective-C Wrapper https://github.com/akosma/CoreTextWrapper Introduction(介绍) One of the most promising and mysterious new frameworks introduced in iOS 3.2 is Core Text. Apple define

保隆科技半年报:净利同比下滑近两成,ADAS/空悬业务仍亏损

2024年上半年,在全球产业链调整、局部战争仍未平息等事件长期影响下,叠加主要经济体货币政策调整、债务风险上升等周期性因素,全球经济复苏面临较大不确定性,汽车市场尚处在缓慢恢复阶段。 这也导致不少汽车零部件上市公司的半年报财务数据普遍出现营收增速下滑,甚至是负增长;净利润大幅下滑,甚至是亏损的情况。同时,持续增长的研发投入、人力成本以及终端车企降本效应的凸显,企业经营压力仍在持续上升。

Objective-C ,ios,iphone开发基础:JSON解析(使用苹果官方提供的JSON库:NSJSONSerialization)

json和xml的普及个人觉得是为了简化阅读难度,以及减轻网络负荷,json和xml 数据格式在格式化以后都是一种树状结构,可以树藤摸瓜的得到你想要的任何果子。 而不格式化的时候json和xml 又是一个普普通通的字符串,在网络通信的时候也只需要请求一次,而不用每次为得到木一个值而重复的请求服务器或者目标主机, json和xml 都采用 键 - 值 的形式来存放数据。 xml 使用:

Objective-C总Runtime的那点事儿(一)消息机制

最近在找工作,Objective-C中的Runtime是经常被问到的一个问题,几乎是面试大公司必问的一个问题。当然还有一些其他问题也几乎必问,例 如:RunLoop,Block,内存管理等。其他的问题如果有机会我会在其他文章中介绍。本篇文章主要介绍RunTime。 RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪

第二证券:大洗牌!头部券商营收、净利集体下滑

前十券商营收团体下滑,银河证券跌幅最小 新股IPO数量锐减129家至44家,国内证券市场股票基金交易量日均规划 同比下降 6.83%……关于证券公司而言,本年上半年可谓多重要素叠加冲击,成果下滑难以避免。于大多数证券公司而言,2024年现已是成果接连缩水的第三个年初。 因为头部券商业务布局更为概括、基数更高、也相对更为市场化,其成果变化往往更能折射工作生态。 就运营收入、净获利近三年来早年跻

【Objective-C】07-自定义构造方法和description方法

知识回顾 在第5讲中已经介绍了如何定义类和创建并初始化对象,比如有Student这个类 1.Student.h 1 #import <Foundation/Foundation.h>2 3 @interface Student : NSObject {4 int _age;5 }6 - (void)setAge:(int)age;7 - (int)age;

嘉兴银行业绩上涨却市值下滑,新任行长背后的辛酸

撰稿|芋圆 2024年3月6日,秦山核电有限公司(以下简称“泰山核电”)在上海联合产权交易所转让其所持有的嘉兴银行股份有限公司(下称“嘉兴银行”)的全部股份630万股的,占嘉兴银行总股本的0.3272%,转让底价1990万元,于4月16日成交。 据此推算,嘉兴银行的市值约为60.82亿元。 这是泰山核电多次公开挂牌转让后的结果。泰山核电在2023年就有两次挂牌转让嘉兴银行股份的记录,前两

收集几个Objective-C的HTML解析库

收集几个Objective-C的HTML解析库 JAN 14 最近在着手开发《掌中站》iOS客户端的HTML解析这一块,老早就选用了Google去年开源的Gumbo,用的OC对Gumbo的一个封装OCGumbo。最近在开发的一个功能点就是想根据OCGumbo里面的各种Query、Find方法写一个自动解析器,解析某一页面的时候只需要读取一个JSON文件,根据JSON里面的操作符号就能在程序

Objective-C中是如何实现线程同步的? 网络的同步、异步区别

多线程在各种编程语言中都是难点,很多语言中实现起来很麻烦,objective-c虽然源于c,但其多线程编程却相当简单,可以与java相媲美。这篇文章主要从线程创建与启动、线程的同步与锁、线程的交互、线程池等等四个方面简单的讲解一下iphone中的多线程编程。    一、线程创建与启动    线程创建主要有二种方式:    当然,还有一种比较特殊,就是使用所谓的convenient