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

优采云 发布时间: 2022-04-01 00:20

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

  我也从事编码多年。虽然失败了很多次,但我终于有了失败的经历。但是,在中国,大多数程序员和我一样,一直在走弯路。如果你想成为一名建筑师,你必须做对。否则,你会离你的目标越来越远。正在努力工作的程序员们,你们有没有以下感触呢?

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

  二、 发现自己的水平跟不上科技的进步。要学的东西太多了。最近 Jquery 被更多人使用。听说最近很流行MVC,还有LINQ。听话说微软又有 Silverlight 了……

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

  四、 我已经工作了几年,想换工作。于是,面试官就数据结构、垃圾回收、设计模式等问题进行了提问。虽然我读过它,但我通常不需要它。我读了。我也忘记了,答不上来,考官说我基础太差。. .

  如果有,如果没有,那你就不用看了,你一定是看过了,或者已经看懂了,呵呵。

  如果是这样,那么恭喜你,你进入了一个学习误区。如果你想在技术上取得进步,你不能总是编码。为了满足需求,我们必须在编码的同时不断提高我们的思维和水平。.

  编写代码经历以下阶段。

  1.你必须学习面向对象的基础知识。如果您忘记了这一点,那么您的编程路径注定是原创和初级的重复!

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

  面向对象的目的是什么?

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

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

  2.提高软件开发效率

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

  其中,语言的开发和开发方法的开发,在第1、2两项中都有很大的进展,但是对于第3项,我们不能依靠开发方法本身来解决。

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

  二、 要想学好面向对象,就必须学习设计模式。

  假设我们了解了面向对象的目的和概念,但是在编码过程中,我们发现我们的面向对象知识似乎一直无用。其实原因很简单,因为我们不知道怎么用,就像游泳一样,我们了解了游泳的好处,还有几个游泳姿势,狗刨、仰泳、蛙泳、自由泳,但我们仍然不会游泳。. . .

  因此,不可能有这些基本原则。我们必须有一些更详细的原则来了解我们的设计。这里面有比较基本的面向对象的五项原则,而且这些原则在实践中应用的比较详细。来,解决实际问题,这就是设计模式,所以要学好OO,就必须学好设计模式,学好设计模式,按照大师的话,人类努力解决的很多领域的成功解决方案来自各种模式,教育的一个重要目标是将知识模式代代相传。

  所以学习设计模式就像我们在看世界顶级的游泳比赛,我们为之疯狂,为之着迷。

  三种学习设计模式

  就像我们不想只看别人表演一样,我们必须学会自己游泳,这就是我们来这里的目的。

  当我们读到一些设计模式时,我们很兴奋。当我们刚接触编码时,我们总是尝试使用我们学到的设计模式,但我们经常误用这些模式。过了许久,我们才发现我们正在脱裤子。抓挠。. .

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

  四学重构

  怎么想出精彩的代码比看到精彩的代码更激动人心,于是我们开始想,这些高手不用工作,需求来临时没有领导来设定完成时间,只有把精彩的代码设计成标准开始工作?这种工作太酷了,不可能,老板也不要。就算他有这些理想条件,他从一开始就设计出了完美的代码?这是不可能的,除非他是神,并且从一开始就预见到所有未来的需求。既然这些条件都没有,他们怎么能写出精彩的代码呢?

  Joshua Kerievsky 在他著名的“Patterns and XP”(“Extreme Programming Research”中的收录)中明确指出,在早期设计阶段使用模式往往会导致过度工程化。这是一个严酷的现实。只追求完美并不能产生实用的代码,而“实用性”是软件的首要元素。

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

  综上所述,我们在设计初期就使用了设计模式,这往往会导致过度设计。因此,我们应该在整个开发过程和整个需求变更过程中不断地重构当前代码,让程序始终保持良好的设计。可见,开发过程需要时刻重构,否则再好的原创设计,随着需求的变化,就会变成一堆烂代码,难以维护和扩展。所谓重构,就是“在不改变代码外部行为的情况下,对代码进行修改以改善程序内部结构”的过程。重构的目标是设计模式,更本质上是让程序的架构更合理,

  《Refactoring-Improving the Design of Existing Code》一书也是Martin Fowler等大师的著作。是软件工程领域的超级经典杰作。它与另一部代表作《设计模式》并称为“软工人”。这是必读的。什么。

  五 开启优秀软件设计师之路

  通过设计模式和重构,我们学到的东西和我们工作的编码最终结合在一起。我们可以用面向对象的思维来思考工作中的问题,并开始学习重构。就像游泳一样,我们看到在完成了各种顶级游泳比赛之后,我了解了名人使用的各种规则、方法和技巧,现在是时候回家在村子旁边的小河里练习了。练习也需要教练。推荐另一本经典著作《重构与模式》,引用他的开场介绍,这本书开创性地深入揭示了重构与模式这两个关键软件开发技术之间的联系,并解释说,通过重构来改进现有设计通常比在新设计早期使用模式更好。本书不仅展示了一种应用模式和重构的创新方法,而且结合实战帮助读者深入理解重构和模式。

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

  第六,没有终点,只有坚持不懈的研究和努力。

  经过几年的坚持,我终于学会了灵活使用各种模式。我们不需要刻意考虑使用哪种模式以及如何重构它。程序的目标,即可维护性、可扩展性和可重用性,已经成为一种编程习惯,一种思考的习惯,就像我们游泳了几年后,我们不再需要刻意去思考如何去做。让自己漂浮在水面上,仰泳和蛙泳的区别……但是跳进水里,然后自然游泳,然后向对岸游去。不过和大师比起来,呵呵,我们还有很长的路要走,最终可能成不了大师,但不管能不能成大师,我们都已经走上了当大师的正确道路,我们和其他节目成员开始不一样了,

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

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线