实际项目中的算法 和数据结构

我是大二软件学生 感觉学的更加偏向实际对于软件的整个把控上 ;老师总说前期架构设计最重要 想知道一下在实际中 算法和数据结构都是放在架构后面的吗?

长混知乎 感觉压力很大 算法什么的学到什么程度才能算是入门或者登堂入室 总感觉我现在啥也不明白 危机感很重

我自己也自己看了安卓方面开发 什么IDE 啊 api啊 感觉安卓都是调用一大堆函数 很少自己写厉害的函数或者类 一般理解的部分都是关于mvc方面 是不是作为一个小码农不需要知道太多算法,就写写页面方面的逻辑啊,最多看看源码?或者说得是项目里某个大神决定的?

引用一下邹欣老师的话:程序=数据结构+算法;软件=程序+软件工程;软件公司=软件+商业模式。对软件的全局把控和对程序实现的琢磨,这两者我觉得不是一个层面的东西,拿两个不同层面的东西来对比意义是不大的。

算法、数据结构是基础能力;架构设计是对软件进一步抽象和把控的能力;再往上可能要思考软件和人之间的关系了。这些都很重要,可以说是不同阶段的不同侧重点。作为初学者可能很多时候是亦步亦趋,很难有一种对软件的“掌控感”,也难说有软件作品产生影响力的“成就感”。但作为程序员,夯实编程能力(打好算法和数据结构基础等),是构建自己大楼最基础的一步,不做好这一步,后面的架构好的软件作品、组建有影响力的软件公司等就无从谈起了。