Skip to content

today/ThinkingInSoftwareDevelopment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

ThinkingInSoftwareDevelop 软件开发需要掌握的思想方法

在和初学者接触的过程中,经常会发现,某些老手们习以为常的能力和知识点,对某些初学者是难以跨越的鸿沟。例如上周有人问我,为什么输出到控制台的字符,在没有指定输出位置的情况下,不是覆盖上一次的输出,而是跟在上次的输出后面? 还有人对 i=i+1; 这种写法表示不理解。

我大致总结了一些和具体的语言、操作系统和运行环境无关的知识点列在下面。应该不全面,所以在这里请大家帮忙补全。 如果有很好的讲解文章,也请推荐出来,我会补充进去。

github: https://github.com/today/ThinkingInSoftwareDevelopment

Google Drive: https://docs.google.com/document/d/1PQkWP0Nqeng8oohwklD_9nVfMrN_P1bmTtiLh9pZXDg

解决问题的思路

大问题拆分成小问题,复杂问题拆分成简单问题

分层和分块

黑盒和白盒,以及透明

划归思想

时间换空间,空间换时间

具体技术实现

文件和流

迭代和递归

ASCII 和字符集

设计思想

面向过程

面向对象

函数式编程

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published