网站架构师的工作内容(2016年六安金安区事业单位面试真题-乐题库)

优采云 发布时间: 2021-12-30 14:04

  网站架构师的工作内容(2016年六安金安区事业单位面试真题-乐题库)

  查看文章索引,请通过

  我已经编码多年。虽然我失败了,但我终于有了一点失败的经验。不过,我在中国。大多数程序员和我一样。他们一直在走弯路。如果你想成为一名建筑师,你必须正确。否则,正在努力的程序员们,你们是否有以下感受?

  一、 我的工作就是按时完成领导交给我的任务。至于代码是怎么写的,我知道有改进的空间,但我没有时间改进。关键是领导不给我时间。

  二、 我发现我的水平跟不上技术的进步。要学习的东西太多了。最近使用Jquery的人比较多。听说最近比较流行MVC,还有LINQ。听着说微软又拥有 Silverlight 了……

  三、 我发现虽然工作了几年,除了不停的编码,Ctrl+c和Ctrl+V更加熟练,但是编码水平并没有提高。我还是一个普通的程序员,但是已经有人实现了架构。老师。

  四、 我已经工作好几年了,想换工作。结果面试官问了一些数据结构,垃圾采集

,设计模式。虽然看过,但平时用不着。我读了它。我也忘了,答不上来,但是考官说我基础太差。. .

  你有吗?如果没有,接下来就不用看了,一定是个大吃货,或者你已经懂路了,哈哈。

  如果是这样,那么恭喜您,您进入了学习误区。如果你想在技术上进步,你不能一直编码。为了满足要求,我们必须边编码边工作,让我们的思维和思维水平不断提高。.

  编写代码必须经过以下几个阶段。

  1. 必须学习面向对象的基础知识。如果你忘记了这一点,那么你的编程之路注定是一次原创

的重复!

  很多程序员都知道类、方法、抽象类、接口等概念,但是为什么要面向对象,好处在哪里,应该解决什么问题呢?只是理解了概念,但是表达的不清楚,实际工作中并没有用到。一段时间后,面向对象的东西又模糊了。因此,大多数程序员使用面向对象的语言来做面向过程的工作。,所以要学习面向对象,首先要了解面向对象的目的?

  面向对象的目的是什么?

  开发语言在不断演进,从机器语言,到汇编,再到高级语言,再到第四代语言;软件开发方法在不断演进,从面向过程、面向对象,到面向方面等,虽然这些都在不断演进,但其追求的目标并没有改变。这些目标是:

  1.降低软件开发的复杂性

  2.提高软件开发效率

  3.提高软件质量:可维护性、可扩展性、可重用性等。

  其中,语言的开发和开发方法的开发在1,2方面取得了很大的进步,但对于第三项,我们不能只靠开发方法本身来解决。

  提高软件质量:可维护性、可扩展性、可重用性等,具体来说就是高内聚、低耦合,面向对象是解决第三个问题。因此,要成为一名优秀的程序员,最不可回避的就是面向对象。

  二、 如果你想学习面向对象,你必须学习设计模式。

  假设我们理解了面向对象的目的和概念,但是在编码的过程中发现我们的面向对象的知识似乎没有用。其实原因很简单,因为我们不知道怎么用,就像游泳一样。同样,我们已经了解了游泳的好处,以及几种游泳方式,狗刨、仰泳、蛙泳、自由泳,但我们还是不会游泳。. . .

  因此,这些基本原则是不够的。我们必须有一些更详细的原则才能了解我们的设计。这还有五个基本的面向对象原则,这些原则在实践中得到了更详细的应用。在这里,解决实际问题,这就是设计模式。因此,要学好OO,必须学习设计模式,学习设计模式。大师说,人类试图解决的许多领域的成功解决方案来自各种模式。教育的一个重要目标是将知识模型代代相传。

  因此,学习设计模式就像我们在看世界顶级游泳比赛。我们为之着迷,为之着迷。

  三种学习设计模式

  正如我们不想只看别人的表演一样,我们也要学会自己游泳。这是我们的目的。

  在阅读了一些设计模式后,我们对它们感到兴奋。当我们刚开始编码的时候,我们总是想努力使用我们学到的设计模式,但我们经常会误用这些模式,经过长时间的折腾,发现我们正在脱裤子。抓挠。. .

  学习了设计模式后,我们又迷茫了,觉得这些模式太相似了。很多时候我们分不清这些模式的区别,就明白了设计过程中的一个致命的事情——over design。,因为设计模式要求我们具有高扩展性和高复用性,但在需求之初,我们不是神。除了靠过去的经验来判断,我们不知道往哪里扩展,往哪里重用,过去他的经验一定是正确的吗?所以我们甚至不敢再轻易使用设计模式,而是一直在使用面向过程的方法来实现需求。

  四学习重构

  如何想出精彩的代码比看到精彩的代码更令人兴奋,于是我们开始思考,这些高手不需要工作,没有领导规定完成时间,只以设计精彩的代码为标准。开始工作?这种工作太酷了,不可能。老板不愿意。就算他有这些理想条件,一开始就设计出完美的代码?不可能。除非他是神,否则他从一开始就预见到未来的所有需求。既然这些条件都没有,那怎么写出精彩的代码呢?

  Joshua Kerievsky 在著名的《模式与 XP》(收录在《极限编程研究》一书中)中明确指出:在设计的早期阶段使用模式往往会导致过度设计。这是一个残酷的现实,光是追求完美是写不出实用的代码的,“实用性”是软件压倒一切的要素。

  《重构——改进现有代码的设计》一书中提到,通过重构,你可以找到变化的平衡点。你会发现所谓的设计不再是所有动作的前提,而是在整个开发过程中逐渐浮现出来。在系统建设的过程中,可以学习如何加强设计;过程中带来的交互可以让程序在开发过程中继续保持良好的设计。

  综上所述,我们在设计的早期阶段就使用了设计模式,这往往会导致过度设计。因此,我们应该在整个开发过程和整个需求变更过程中不断重构当前代码,以保持程序的良好设计。可见,开发过程需要一直重构,否则原先的设计再好,随着需求的变化,也会变成一堆糟糕的代码,难以维护,难以扩展。所谓重构就是这样一个过程:“在不改变代码外部行为的前提下,对代码进行修改,以改善程序的内部结构”。重构的目标是设计模式。更本质的是,

  《重构-改进现有代码的设计》一书也是 Martin Fowler 等大师的作品。是软件工程领域的超级经典杰作。它与另一部杰作《设计模式》也被称为“软工程二人组”。什么。

  五 开始走上优秀软件设计师之路

  通过设计模式和重构,我们所学到的和我们工作的编码最终结合在一起。我们可以用面向对象的思维去思考工作中的问题,开始学习重构。这就像游泳。看完各种顶级游泳比赛,了解了名人使用的各种规则、方法和技巧,是时候回家在村边的小溪里练习了。练习也需要教练。我推荐另一本经典书籍《重构与模式》,引用他的开篇介绍,这本书开创性地揭示了重构和模式这两个关键软件开发技术之间的联系。最好在新设计的早期使用该模型。这本书不是只展示了一种创新的应用模式和重构方法,

  这本书正是我们需要的教练,值得一读。

  六没有尽头,只有执着的研究和努力。

  经过几年的坚持,我终于学会了如何灵活地使用各种模式。我们不需要刻意考虑使用什么模式以及如何重构。程序的目标,即可维护性、可扩展性和可重用性,已经成为一种编程习惯,一种思考习惯,就像我们接触了几年游泳之后,我们不必刻意去思考如何让自己能够浮在水面上,仰泳和蛙泳的区别……而是跳入水中,自然游,游向对岸。不过跟大师比起来,呵呵,我们还有很长的路要走,到头来不一定是大师,但不管能不能成为大师,我们都已经走上了成为大师的正确道路。掌握。我们和其他节目的选手已经开始不同了,因为无论他们多年轻,他们的水平都不会改变。他们只是在重新制造轮子。唯一比你快的是 ctrl+c 和 ctrl+v。

  在正确的道路上,只要坚持下去,就会离目标越来越近。未来,你一定会成为一名优秀的建筑师。与优秀建筑师的区别可能只是时间问题。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线