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实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

基于Python开发一个有趣的工作时长计算器

《基于Python开发一个有趣的工作时长计算器》随着远程办公和弹性工作制的兴起,个人及团队对于工作时长的准确统计需求日益增长,本文将使用Python和PyQt5打造一个工作时长计算器,感兴趣的小伙伴可... 目录概述功能介绍界面展示php软件使用步骤说明代码详解1.窗口初始化与布局2.工作时长计算核心逻辑3

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1

如何基于Python开发一个微信自动化工具

《如何基于Python开发一个微信自动化工具》在当今数字化办公场景中,自动化工具已成为提升工作效率的利器,本文将深入剖析一个基于Python的微信自动化工具开发全过程,有需要的小伙伴可以了解下... 目录概述功能全景1. 核心功能模块2. 特色功能效果展示1. 主界面概览2. 定时任务配置3. 操作日志演示

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

一文教你如何解决Python开发总是import出错的问题

《一文教你如何解决Python开发总是import出错的问题》经常朋友碰到Python开发的过程中import包报错的问题,所以本文将和大家介绍一下可编辑安装(EditableInstall)模式,可... 目录摘要1. 可编辑安装(Editable Install)模式到底在解决什么问题?2. 原理3.

Spring Boot 常用注解详解与使用最佳实践建议

《SpringBoot常用注解详解与使用最佳实践建议》:本文主要介绍SpringBoot常用注解详解与使用最佳实践建议,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、核心启动注解1. @SpringBootApplication2. @EnableAutoConfi