LeaCoder

From-Other-Blog-Or-Web.md

2019-03-21
leacoder

Flask和Django是Python最流行的两个Web框架,在这篇文章中,作者讨论在Flask和Django之间进行选择时应该考虑的一些要点。作者长期使用Flask并是Flask by Example这本书的作者,所以作者个人可能对Flask有点偏见。 为什么我需要一个Web框架,以及那是什么。 Web框架旨在实现大多数Web应用程序常用的所有功能,例如将URL映射到Python代码块。 确切地说,框架中实现的内容以及应用程序开发人员编写的内容因框架而异。 Flask和Django之间的最大区别是: Flask实现了最低限度的功能,并为附加组件或开发人员留下接口 Django遵循“batteries included”的理念,为您提供更多开箱即用的功能。 快速比较 主要对比: Flask提供简单,灵活和细粒度的控制。它可以让你决定如何实现它。 Django提供全面的体验:您可以获得开箱即用的应用程序和项目的管理面板,数据库界面,ORM和目录结构。 你应该选择: Flask,如果您专注于体验和学习机会,或者您想要更多地控制使用哪些组件(例如您想要使用哪些数据库以及如何与它们进行交互)。 Django,如果你专注于最终产品。特别是如果你正在开发一个直接的应用程序,如新闻网站,电子商店或博客,你希望总是有一种明显的做事方式。 更多信息: Django已经存在了很长时间 - 它于2005年首次发布,而Flask于2010年首次亮相 Hello, World! 作者分别就使用Flask和Django来实现一个“Hello World”应用程序,按步骤进行了具体说明。可以从中体会Flask和Django的差别。 最后的评论 在这篇文章中,作者介绍了Flask和Django,然后对两者进行了简短的比较,接着展示了如何使用每个框架构建一个“Hello World”应用程序。 Django是一个比Flask更重的框架 - 如果你正在学习Web编程,那么要弄清楚哪些部分负责什么功能,以及你需要改变什么来获得你想要的结果可能更难。但是,一旦你习惯了Django,它所做的额外工作可能非常有用,可以节省你设置Web应用程序重复,枯燥的组件的时间。 有时很难在两个框架之间进行选择 - 好的是,即使你进入更高级的功能,例如模板,这两个在许多方面仍然非常相似。 因此,如果您需要或想要,可以轻松地从一个切换到另一个。

为什么学习更多并不总是更好? Knowledge is power.这是一个流行的短语 - 在人与人之间重复,很少考虑其真正的意义。 也许知识本身并不是我们所追求的,也许我们追求的是获取足够的知识来能够采取明智的行动。 1.知道不是学习的同义词 大目标通常需要的不仅仅是死记硬背;他们要求更深入地了解核心原则。但是我们中的许多人仍然将学习与记忆事实,公式和概念联系在一起。过多的没有实践的知识会导致压力,沮丧和误导。最终,我们将意识到我们已经被欺骗了:没有实践,知识就没有力量。对于信息的保留率,仅通过阅读,信息保留了10%;付诸练习,信息保留了75%,而能向他人传授,信息保留了90%.获取知识的过程看起来应该这样:读/听/观看→执行→评估→重复 2.强迫学习会削弱创造力。 孩子们不会因小挫折感到沮丧,因为他们没有失败的概念;他们一直在尝试,因为那很有趣。我们都是曾是孩子。我们的天性引导我们学习语言,学习社交,研究我们认为重要的事情。直到上学才开始让学习成为一件苦差事。换句话说,学习是自然而然的,直到我们强迫它。最大限度地学习我们喜欢的感兴趣的知识,而不是强迫自己去学习,要让学习知识回到我们牙牙学语时,那样的自然而然而非强迫学习。 3.有时候我们需要忘掉。 可以理解的是,我们大多数人认为学习就是增加知识和技能。然而,有时我们必须删除旧的思维方式才能开始新事物。经验之谈是有必要的,但是我们得承认过多的依赖已学习的知识,有时并不利于学习新的知识。当新知识与旧知识有不同时,我们应该问自己为什么会有不同之处时,而不是简单地套用旧知识的方法去学习新知识。 4.有时委托是个更好的选择 每天的时间有限人的精力也是有限的,我们不可能也没必要了解所有的知识,术业有专攻,将事情委托给更专业技能的人事是明智的选择,我们就能将时间和精力放在真正需要学习的知识上。 成功的关键似乎在于调整我们的知识获取,同时将我们获得的信息付诸实践。

文章介绍了C编程语言的特点以及优缺点

作者在文中解决了三个关键概念。1. “I don’t have enough time”,第一个是那些认为他们没有足够时间的人。2. The benefits of keeping your job, 第二是强调坚持工作的好处。3. Restructuring your way of thinking,我们可以在思考方法中做出的一些改进。 大多数人高估了他们一天所能做的事情,但低估了他们一年可以做些什么。 做事要有重点,如果一切都是优先事项,那么没有什么是优先事项。保持想法新鲜,保持头脑清晰。优化你的生活。不要抱有一夜成名的神话。不要把工作之外的时间“me time”,理所当然地去放松去挥霍,如果使用得当,每年将近3000小时可以去实现很多东西

XY问题是询问您尝试的解决方案而不是实际问题。通常是这个样子的,我们想做X,但是我们不知道如何做X,我们认为如果能够做到Y,那么我们可以摸索X的解决方案。 可是很多时候我们也不知道如何做Y. 然后我们去寻求做Y的帮助。无论是寻求帮助的人还是提供帮助的人,这会导致大量的时间和精力浪费。所以问问题要问X求X,不要问的Y实际上我是想解决X

阅读了耗子叔推荐的一篇自学界神文 中英对照版 建议还是看原版虽然是英文但是不难。编程(不只是编程)没有捷径,不要想着市面上标题着《7天搞定……》《24小时自学……》这些书籍能给你多大提高,这种书籍最多也就让你有个粗浅的印象,但是绝对不可能有深入的理解,那种浅尝辄止是很危险的。要深入要精通要成为专家,你得花时间耗精力,加上科学正确的方法之外没有捷径可言。

作者通过拐点(The Inflection Point)一说,在学习编程中存在最消磨人意志的阶段,那就是拐点阶段,从各种角度来说,也是唯一重要的阶段。当你不再依靠教程,开始解决没人提供解决方案的问题时,这就是拐点阶段。 拐点阶段,你编程的速度可能只有接受指导阶段的十分之一到二十分之一,这时你会产生疑问:我是否能成为一个程序员。在拐点阶段产生不安和疑惑是正常的。尽管你发现学习新东西和敲代码的速度大幅下降,但实际上,你正在完成最重要的事情。在特定领域的知识足够丰富的时候,你所学的东西实际上是过程性知识(https://en.wikipedia.org/wiki/Procedural_knowledge)。过程性知识指的是教会自己原本不知道的东西的能力。 高效率征服拐点,需要在接受指导阶段,除了学习结构性的指导材料,还要全程给自己一些挑战,尝试尽可能少的依赖教学材料,了解越过拐点是一个困难的过程,别给自己太大压力,拐点过程的最后阶段是接受。接受软件开发是一个持续学习的过程。如果你感觉已经学习了所有东西,只意味着你应该想一想如何解决更复杂的问题。 https://www.jianshu.com/p/a140c8475933


GitHub链接: https://github.com/lichangke/LeetCode

知乎个人首页: https://www.zhihu.com/people/lichangke/

简书个人首页: https://www.jianshu.com/u/3e95c7555dc7

个人Blog: https://lichangke.github.io/

欢迎大家来一起交流学习


Comments

Content