Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >BAT架构师教你如何三个月从开发瓶颈期进阶iOS高级架构师?

BAT架构师教你如何三个月从开发瓶颈期进阶iOS高级架构师?

原创
作者头像
原来是泽镜啊
发布于 2018-07-10 14:59:38
发布于 2018-07-10 14:59:38
7810
举报

前言:

最近好多人私信问我,该怎样才能成为架构师,还有一个就对当前的状态感到迷茫。我在此做一个简单的说明,或者对迷茫中的你来说有些许帮助。

如果你是想成为iOS架构师,那么你首先要是一个iOS高级攻城狮。也就是说,基础底层知识必须牢固,对iOS的了解全面而且深入。

有很多人对现在的工作感到很没意思,因为当前的工作,完全是实现业务,技术上没有任何提高。在这种状态下就会感到迷茫,特别是一想到将来这种迷茫感就更强烈了。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:638302184,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!希望帮助开发者少走弯路。

与其说迷茫还不如说是担忧,随着时间的推移,自己的技术又没有长进,所以感觉忧心忡忡。

这里分为这二种人:

第一种:混日子,过一天算一天,不想学习。

这一种的我就不过多讨论了,没有意义。我也碰到过很多这样的同事,此类程序员已经废啦。

第二种:想提高自己的技术,往架构师方向努力。

给我发私信的人,大部分是这一种。首先,可以看出来,这些人都是有自己理想的人,也会付诸实践的。想往架构师方向走,但是却苦于没有人带,自己也不知道如何成为框架师。再不改变,此类程序员可能会也废。

所以今天,我在这里,用书写的方式,来教大家,要想成为一名高级架构师,都需要干些什么,才能够成为一名真正的高级架构师,虽然我说的不完全对或者准确,但我想我写的这些也是能够帮助大家的。

要成为一名高级架构师,必须要认知一下这几点:

第一点:要认知架构师的定义

百度百科,架构师是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物。一个架构师得需

要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清单。

如果你作为一名高级架构师,你连架构师的定义都不能理解,那我觉得,你的架构师生涯基本是可以结束了。

第二点:要认知架构师的工作职能

软件架构师在整个软件开发过程中都起着重要的作用,并随着开发进程的推进而其职责或关注点不断地变化,在需求阶段,软件架构师主要负责理解和管理非功能性系统需求,比如软件的可维护性、性能、复用性、可靠性、有效性和可测试性等等,此外,架构师还要经常审查客户及市场人员所提出的需求。

确认开发团队所提出的设计;在需求越来越明确后,架构师的关注点开始转移到组织开发团队成员和开发过程定义上;在软件设计阶段,架构师负责对整个软件体系结构、关键构件、接口和开发政策的设计;在编码阶段,架构师则成为详细设计者和代码编写者的顾问,并且经常性地要举行一些技术研讨会、技术培训班等;随着软件开始测试、集成和交付,集成和测试支持将成为软件架构师的工作重点;在软件维护开始时,软件架构师就开始为下一版本的产品是否应该增加新的功能模块进行决策。

第三点:要认知架构师所具备的那几个技能

知识广度:需要知道主流技术为什么诞生,能解决什么问题?如果同一种业务用不用的技术来实现,会有什么哪些优缺点?比如:流行的框架OpenGL,要有清晰的认识会能在技术造型时做出正确的决定。

抽象能力:对业务和技术进行抽象。业务抽象就是对需求进行分析后,能够建立完美的实体类以及他们之间的联系。技术抽象是对整体架构进行一个分层,各层之间的交互。这至关重要,如果技术抽象能力不足,这会导致整个系统的架构不灵活,难以维护和扩展。

知识的深度:至少是某个领域的专家,比如消息队列,KVO,KVC熟悉其源码,知道其实现。

优秀的学习能力:对新的技术和前沿性的技术进行学习,使用它来解决工作中的业务问题。

以上这三大点,是架构师必须掌握的知识,那么,问题来了,要把以上三大点给做好,那么你该如何去做呢?我觉得可以从以下几个步骤开始:

1: 扎实的iOS 基础,底层技术

2:熟练使用主流框架,

3:研究过至少一种以web框架的源码,

4:架构过或者参与过高并发系统设计,知道如何应对突发情况。

5:对自己所处的业务能够根据自己的知识维度,提出优化建议或者预测其风险点。

其实能否成为架构师跟机遇有很大关系,比如一个程序员,以上都做到了,但是公司并没有给他这个机会去做,一个真正架构的机会。因为之前的架构师不离职他就没有机会,这就是现实!

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:638302184,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!希望帮助开发者少走弯路。

作者:一粒红尘

文章来源于网络,如有侵权,请联系小编删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
BAT资深架构师告诉你从程序员到架构师,你需要掌握什么能力?
架构师和开发者一样,也经常写代码,简单的说,开发者和架构师之间最大的区别就是技术领导力。
java架构师
2018/08/23
8460
资深架构师十年总结:成为架构师,你必须具备这五点能力
作者 | Alan Tai 译者 | 冬雨 策划 | 闫园园 在过去的 20 年里,作为一名软件工程师和软件架构师,我与不同领域和不同学科的软件工程师聊过很多次。他们中有一些人是有着 8 到 10 年经验的高级工程师,有许多人还在职业生涯早期,有着 3 到 5 年的经验。其中一些人是我的同事。有些人是求职者。聊到最后,他们几乎都会问到同样一个问题: “我想成为一名解决方案架构师。了解更多架构相关内容的资源有哪些?“——很多软件工程师都会问的一个问题。 他们问错了问题。如果你读下去,就会知道为什么我
深度学习与Python
2023/03/29
5840
资深架构师十年总结:成为架构师,你必须具备这五点能力
霸榜Github三个月的「架构师成长手册」!成为架构师竟然也有捷径
“架构师”我想应该没有程序员会陌生了吧,作为程序员技术追求的一个里程碑,有多少程序员想转型架构师而不得门路,其实架构师比较抽象的拆解能力就两方面 技术+项目。
愿天堂没有BUG
2022/10/28
5600
霸榜Github三个月的「架构师成长手册」!成为架构师竟然也有捷径
7年iOS架构师-- 告诉你坚持写博客对我们有什么好处
1.今天来谈谈,写博客对我的益处,说起写博客,其实我写博客的时间不长,也就10来个月时间;
原来是泽镜啊
2018/06/29
8252
要想做好iOS开发,必须要清楚这几个点!【架构师总结出来的经验】
每个人的都有独特的经历,因此会有特别的事情会让ta感到快乐,并享受做自己喜欢的事情。写程序也不例外,我在很年轻的时候就明白这点,它成为我开始创业的无形资产。写程序的渴望来自我想完整独立做一件事情的渴望,做移动开发,可以让我不依赖任何人就能学会完成一个完整的App需要的所有能力。
原来是泽镜啊
2018/07/23
5510
硬核干货:一位码农的架构师封神之路!
几年前有人问我:「你是怎么成为一名软件架构师的?」我们就此探讨了必备技能、经验,以及储备相关知识所需的时间和精力。除此之外,我也回顾了自己走过的路、使用或尝试过的技术,以及我从那些五花八门的工作中学到的东西。
用户6543014
2020/02/21
3450
「企业架构」企业架构师,解决方案架构师和软件架构师有何不同
在体系结构开发中使用实际操作的方法来在项目生命周期中提供技术领导。通常,他们是根据他们所掌握的技术来命名的,例如,Python架构师。他们负责软件开发中的设计模式、标准和策略。软件架构师倾向于回答这样的问题:“我们重构现有代码的开发标准是什么?“并确定开发方法。它们还可以定义集成标准。他就是我们很多人所说的架构师。负责特定解决方案/项目的最高设计级别和范围的人员。如果有其他类型的架构师,也可以在标题中使用Application,并且您希望清楚地看到此人主要担心的是某个特定的应用程序。
架构师研究会
2020/07/20
8850
「企业架构」企业架构师,解决方案架构师和软件架构师有何不同
架构师之路一-架构师入门指引
导读:本系列文章教你怎么样成为一名架构师,而本篇文章则带你先认识一下什么是架构师,架构师的工作是什么?
JAVA日知录
2020/03/12
3.3K0
7年iOS架构师教你如何快速提高并掌握 iOS开发核心技能
首先你要花点时间针对objective-c语言的学习;毕竟这个是iOS开发的基础(你也可以尝试用Swift,但此项目只是针对OC),编程套路其实都是差不多,多写多想多实践;关于环境的搭建就不在本文进行介绍,这部分内容可以自行百度或谷歌,都有相应的说明;
原来是泽镜啊
2018/07/11
9980
月薪80k阿里架构师:给迷茫的JAVA一些中肯建议(附学习路线图)
刚当程序员时,我是属于那种勤勤恳恳类型的员工,工作态度用认真来形容不为过,每天我几乎是团队里最早到公司,又最晚下班的一个。而组员张工一般情况下都是准时上下班的,即使项目进度比较紧急,他也很少加班,除非是有特殊情况,他才加班。
用户4447430
2019/04/26
4770
月薪80k阿里架构师:给迷茫的JAVA一些中肯建议(附学习路线图)
浅谈软件架构师的素质与职责
最近开始学习如何成为一名合格的架构师。首先参照别人的观点,在结合自己的实际经验,写出自己对如何成为一名架构师的理解,希望大家热心于与援手,能够指点一二. 沟通能力和自我表达 我认为沟通能力是基本中的基本,最为重要,最为普遍的素质。技术人员好像容易忽略,想成为架构师就不能忽略。因为架构师要做的第一件事就是与团队成员、项目经理、客户认同沟通,获得认同。我知道,这对于现在做技术,以后想转做架构的人也许很难.对本人也是如此。也许 你会注意到虽然你兢兢业业,老黄牛的做了很多事,但每次升迁的总是那些平时最活跃的人。抛除
张善友
2018/01/30
6750
你离架构师还有多远?
  软件架构师在整个软件开发过程中都起着重要的作用,并随着开发进程的推进而其职责或关注点不断地变化,总结下面几点。   在需求阶段,软件架构师主要负责理解和管理非功能性系统需求,比如软件的可维护性、性能、复用性、可靠性、有效性和可测试性等等,此外,架构师还要经常审查客户及市场人员所提出的需求,确认开发团队所提出的设计;   在需求越来越明确后,架构师的关注点开始转移到组织开发团队成员和开发过程定义上;   在软件设计阶段,架构师负责对整个软件体系结构、关键构件、接口和开发政策的设计;   在编码阶段,架
欢醉
2018/04/19
8880
你离架构师还有多远?
Java进阶之路——如何从程序员到架构师,从码农到专家Java进阶技术方面
怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作三五年之后开始迷茫的老程序员经常会问到的问题。希望这篇文章会是你看到过的最全面最权威的回答。
美的让人心动
2018/07/30
8050
Java进阶之路——如何从程序员到架构师,从码农到专家Java进阶技术方面
滴滴在职iOS开发者,告诉你他是如何实现指数级提升开发技术的?
如何提升开发技术的方法很多,比如专注,刻苦,热情,兴趣等,不过我这里不会提这些,下面想说的是我觉得能够指数级提升的窍门和一些自己在求索路上的一些体会,也算是一个阶段性的总结吧。给大家做个分享,希望对需要的同学有用。
原来是泽镜啊
2018/06/28
9180
架构师是怎样炼成的?
随着软件行业的发展,软件人才也在不断地细分。以前,他们被统称为软件开发工程师。而现在,系统分析员、配置管理员、测试工程师,新兴的岗位名称不断出现。其中,软件架构师这一角色的重要开始日益凸显。
java架构师
2018/08/23
4080
30KiOS程序员的简述:如何成为高级开发人员
本篇文章适用于所有在这个行业已经有了几年时间后想要在职业生涯中取得突破的开发人员,编程人员和程序员(或者你可能刚刚开始,但希望你能看到你的路径)。本文适合那些有着简单愿望的人:你想成为一名高级开发人员,并希望在你的领域中脱颖而出。在阅读完这篇文章后,您将获得一组具有最佳资源列表的路径,供您升级并成为高级开发人员。
原来是泽镜啊
2018/07/16
6410
一个思维习惯,让你成为架构师
  程序员的迷茫不仅仅是面对技术繁杂的无力感,更重要的是因为长期埋没于软件 世界的浩大的分工体系中,无法看清从业务到软件架构的价值链条,无法清楚定位自 己在分工体系的位置,处理不好自身与技术、业务的关系所致。
lyb-geek
2018/11/08
4540
硬核干货:一位菜鸟码农的架构师“封神”之路!
不久前,高级架构师 Justin Miller 在 GitHub 上创建项目,介绍自己关于如何成为更好的软件架构师的想法。该项目发布一天即获得 1.4K star,现在已有近 5K star 量。
江南一点雨
2020/02/19
4260
什么样的架构师才是真正的架构师?
  很多的创业公司,一人身兼数职的情形还是很常见的。至少,我是经历过的,一个人包办了所有的开发过程,连测试我都做了,绝对的一条龙,但是经常踩钢丝、骑独轮车总会有失足的时候,结果有一次,从我手里发出去的光盘母盘,含有病毒僵尸,以至于被迫收回已经推上市场的2万张光盘,从那之后,我的心脏就开始变得无比坚强,现在就是整个后台服务都瘫痪了,我也只是微微一笑。其实,一个人身兼架构师和程序员,甚至多种角色,没什么不妥,后面还会讲这个话题,这种现象不是中国特色,跟国外是完全接轨的。我曾经跟米国的一个工程师在msn中聊过类似的话题,发现他们的路子跟咱们没什么不同,在IT这个行业,我们跟世界的差距只有1天,他们刚弄出来的新东西,我们这里第2天保准见得到。
java架构师
2018/08/23
4460
Android 资深架构师的成长之路(技术详细介绍)
众所周知,当下流行的编程语言有Java、PHP、C、C++、Python、Go等。其中,稳坐榜首的仍然是Java编程语言,且在以面向对象思想占主导的应用开发中,Java往往成为其代名词。Java语言的背景强大,开发者众多,一直发展都不错。从普遍的企业的角度来看,存在的问题是:后台被认为是技术核心,客户端却被认为技术含量不高,甚至小企业会让后台人员顺便开发简单的客户端,或者让后台的架构师管理客户端几个人。事实上,客户端技术和后台技术的侧重点完全不同,连编程语言都不同(Android使用Kotlin编程语言的逐渐普及)。另外,后台的人跟用户相对离得太远,而客户端是直接面向用户的,与产品人员沟通更直接。所以,我认为企业产品真的是为了给用户用,那么选客户端背景的人员去做架构更好一点。
Android技术干货分享
2019/10/08
2.6K0
Android 资深架构师的成长之路(技术详细介绍)
推荐阅读
相关推荐
BAT资深架构师告诉你从程序员到架构师,你需要掌握什么能力?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档