iOS开发:从新手到专家的一些建议

2024-08-27 05:58
文章标签 开发 新手 ios 建议 专家

本文主要是介绍iOS开发:从新手到专家的一些建议,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

虽然你有可能在一周内学习到iOS开发的本质,但想要精通iOS开发需则要花费更长的时间。问题是你如何从新手变成专家?在这篇文章中,我们主要就这个主题给出一些建议(如果你有好的建议和相关文章欢迎分享给更多开发者):

1.练习,练习还是练习
iOS开发没有捷径可走。这是我在继续这个话题之前需要强调的东西,因为摆脱任何常常浮现于你脑海的幻想很重要。如果你仅仅在星期天的4PM和5PM之间学习/练习编程,那么你不会成为一个熟练的iOS开发者。不要误会我的意思,这么做可能会很有趣,但是它很难让你成为一个老练的专业的iOS开发者。除了极少数的人,大部分人都需要不断的练习和实践。如果你还没有准备好投入大量时间,这时候最好重新审视你的目标和理想。

2.向其他人学习
提升开发技能和采用最佳实践的最好策略之一是学习别人的代码。这不仅仅意味着浏览Stack Overflow,但更重要的是其他开发者的各种开源类库和代码片段。

不管何时你一头扎进各种类库的学习,比如AFNetworking或者Magical Record,很关键的一点是不要被各种代码淹没。有可能你不理解各种库中的代码,但这不是真正的关键,重点是从一个更高的层次来看源码和尽可能多地学习,比如命名规范、最佳实践以及设计模式等。

除了学习别人的代码外,创建你自己的类库是一个最好的学习方法。不久前,我用Core Data作为数据层开发了一款app,我没有使用Magical Record,我决定通过学习Magical Record创建自己的库,并重新创建了我需要的功能。这种方法不仅帮我创建了一个更加灵活的库,也让我学习到很多Magical Record内部的工作原理。

3. 不要仅仅复制和粘贴
这一点让我看到了正确学习方式的另一个关键面:不要不动脑子简单地复制和粘贴。我们常常会使用我们在Stack Overflow或者苹果开发者论坛找到的各种代码片段,但是不要为了偷懒简单地复制粘贴你从网络上找到的代码,这样你很难彻底理解它。最大的危险在于这可能会导致意外的行为,以致于你的代码以后都很难调试和修复。

有时候,复制别人的代码片段看着可能已经解决了你遇到的问题,但是我强烈建议不要这么做。阅读代码,理解你往代码库添加的东西,可能的话定制你需要的解决方案。不用说,这并不适用于开发者积极维护的库或框架。在项目中使用Magical Record前,如果你需要仔细检查它,那么我确信你已经理解了不同之处。使用你自己的常识。

4. 模式
Cocoa和Objective-C在很多方面都不同于其他编程语言和环境。这意味着他们有自己独特的模式和最佳实践。我确信你已经熟悉了一些常见的模式,比如委托和通知。但还有很多模式可以开发过程中帮助你,比如单例模式、观察者模式以及通用模式等。Cocoa Fundamentals Guide很好地概述了Cocoa中大部分常用模式。

5.了解你的工具
作为一个开发者并不仅仅是理解语言和框架,理解你每天使用的工具同样重要。对于iOS开发来说,这意味着你需要很好地理解Xcode和其他可能用到的工具,比如PonyDebugger和Charles。如果你想学习一些额外的技巧,你可能会对我此前的一篇文章(iOS Quick Tip: 7 Tips to Speed Up Your Development)感兴趣。

6.与时俱进
即使你不能参加苹果一年一度的开发者大会–WWDC,但浏览大量的会议视频是个很好的学习方法,你可以观看你感兴趣的专题视频,它们都是由在某方面擅长的工程师演讲,他们可以告诉你一些细节信息以及相关使用说明。另外,你还可以多关注优秀的开发者,他们会定期写一些技术文章,比如比如Matt Gemmell、 Aaron Hillegass以及Mike Ash,你可以在我为Mobiletuts+写的这篇“Where To Go Next”文章中找到更多学习资源。

7.学习其他语言
我已经注意到学习新语言或者使用新框架让我对软件开发的整体理解有了明显提高。这种方法的优点在于不会限制你对最熟悉语言的认知和它潜在可能性的理解。我最近在研究Ember.js,并了解到它的创建者 Yehuda Katz和Tom Dale是从Cocoa获得的灵感。Ember.js对mvc的实现并没有遵循JavaScript framework,不过如果你熟悉cocoa的话,就不会感觉到奇怪了。

对于软件开发来说,没有最好的语言,每种语言都有自己的优势和劣势。但是好的一面在于或多或少他们都有所不同,这使得学习新语言变得更加有趣和更有启发性。比如对我来说,Ruby在写DRY (Don’t Repeat Yourself)、易读的、干净的代码方面让我大开眼界。

总结
如果你不想花费时间成为一个更好的程序员,那么你可能要重新考虑下为什么你把成为一个程序员摆在首位。但如果你会因为一个可以帮你的新类库或者开发工具而兴奋,那么随着时间的流逝,你在提高自身技能方面可能不会有什么问题。你真的必须热爱你所做的事情,并在这面擅长,这一点尤其适用于编程。不管什么人告诉你,你不会在一夜之间成为一个老练的开发者,但如果你保持不间断的学习,并细心打磨自己的“手艺”,我想你的技术会有很好的提高。

via:cocoachina

这篇关于iOS开发:从新手到专家的一些建议的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

使用Python实现一个简易计算器的新手指南

《使用Python实现一个简易计算器的新手指南》计算器是编程入门的经典项目,它涵盖了变量、输入输出、条件判断等核心编程概念,通过这个小项目,可以快速掌握Python的基础语法,并为后续更复杂的项目打下... 目录准备工作基础概念解析分步实现计算器第一步:获取用户输入第二步:实现基本运算第三步:显示计算结果进