当移动客户端开发到一定阶段,比方说对于使用objective-c和swift的开发人员来说,如何进一步提高技能?比方说有些高级工程师的面试题是objective-c里面的__weak是怎么实现的?比方说高级工程师要做一些架构方面的实现,那runtime需要非常熟练。比方说要进一步优化工程或者是性能,那怎么加速编译速度,是否要对编译原理很清楚?怎么考虑开发语言的消息转发机制效率和swift的虚函数分发表效率,从而写出更加高效的代码?
以上,就是这个问题的背景,也许一个开发人员,已经到了熟练使用一门开发语言,对于开发平台的库也都非常熟悉,但是该如何进阶?需要再加强自己C/C++的素质吗?需要进一步学习编译原理么?需要折腾一下UNIX的编程么?需要读哪些书,做哪些事?已经突破瓶颈的大神能否给一些建议。
この質問はとても奇妙です。勉強したいことはすでに述べているので、次のステップはもちろん本を読むことです。勉強に関しては本を読む以外に何か方法はありますか?おすすめの本が欲しいですか、それとも他の人に並べ替えてもらいますか?もちろん本をしっかり選ぶ必要はありますが、どの本に出会っても勉強する必要はないと思います。
もちろん、これらのことを学ぶときに「モバイル端末」に限定される必要はないことを指摘しなければなりません。丸暗記しなければ、自然にモバイル端末に知識を応用することができます。
一度にすべてをやるのではなく、一定期間だけ 1 つの側面に集中してください。
たとえば、1 か月以内に私は
GCD
ドキュメントを読んだり、ソースコードを書いたり、プロジェクトを書いたりすることだけに集中しました。海外の作品をもっと読むことができ、解説も充実しています
ここに挙げた内容は、一生懸命取り組んだ場合、半年で完了するには遅すぎると考えられます。もちろん、熟練するには、さらに多くの時間を費やし、さらに練習する必要があります。例えば、ネットワーク通信やアルゴリズム、さまざまな暗号化や復号化の原理なども興味を持って学ぶのが一番です。
あなたが挙げた知識ポイントに答えるには、次の本をお勧めします
「コンピュータ システムの深い理解」