当前位置:网站首页>[FAQs for novices on the road] understand program design step by step
[FAQs for novices on the road] understand program design step by step
2022-06-13 06:24:00 【Apple II】
Catalog
1. How to think about programming ?
2. What kind of personality and thinking ability should a programmer have ?
3. What books can you read to get started and learn programming ?
To help developers learn and improve quickly , I opened up 《 FAQs for novices on the road 》 The column , Put your questions together , I hope I can give you some quick guidance , Avoid digging holes for yourself , Little detours .
How to explain programming for people who don't know programming and help them understand programming ? Today, let's talk about .

Picture from the Internet
1. How to think about programming ?

picture source :
I have compiled this article 【 Philosophy and practice 】 Computer thinking Computational Thinking, Each of us has a computational mind , It is one of the ways for human beings to break through limitations and solve problems . Computational thinking involves using the basic concepts of computer science to solve problems 、 Designing systems and understanding human behavior . Computational thinking is a kind of recursive thinking , It's parallel processing . Calculation thinking is based on accuracy 、 Efficiency and aesthetic factors to evaluate the process , Computational thinking requires that simplicity and elegance should be considered when evaluating system design . Computational thinking adopts two methods of abstraction and decomposition to design complex systems . Computational Thinking through redundancy 、 The way to correct errors is to prevent in the worst case 、 Protection and restoration . Computational Thinking uses heuristic reasoning to find solutions , Planning under uncertainty 、 Learning and scheduling . Computational thinking needs to balance space and time , Balance processing power and storage capacity . Computational thinking has influenced many disciplines , For example, machine learning in computational thinking has changed statistics . Computational biology 、 Computational game theory 、 Nano computing 、 Quantum computing has changed the way scientists in related fields think . Computational thinking requires people to think at multiple levels of abstraction ; Computational thinking does not require humans to think like computers ; Computational thinking requires people to integrate mathematical and engineering thinking ; Computational thinking is a kind of thought , We can use it to solve problems 、 Manage daily life and interact with others .
2. What kind of personality and thinking ability should a programmer have ?
I wrote about 【 Interest theory 】 Program the ape / Yuan's unique personality charm _ Apple II blog -CSDN Blog
and 【 Software development and people 】 Make a happy program / Yuan , Talked about the characteristics that programmers usually have , They are modest 、 honest 、 Be willing to admit your mistakes 、 thole 、 With curiosity and a strong thirst for knowledge , Know how to cooperate with others , Creative but disciplined , Know how to insist and give up , Follow the trend , Keep learning , Will use clever means to be lazy , Some good habits .
Pete Goodliffe stay 《 Programming craftsmanship 》 In a book, he wrote wittily , The ideal programmer should be a politician , Ability to work with a wide variety of software stakeholders , For example, management personnel 、 Testers 、 Support staff 、 Customers or users, etc .

picture source :What is a Stakeholder? (Definition and Examples) | Glossary
They are kind people , Can cooperate with others happily , Good communication skills , Good at speaking and listening . As for how to do , You can refer to 【 Actual combat skills 】 Communication skills for developers _ Apple II blog -CSDN Blog _ Communication skills of developers
They are artists , Can design elegant solutions .
They are technical geniuses , The code is very stable and easy to use , Have a wide range of technical capabilities , Not confined to a narrow field , That is what we call the whole stack of talents today .

picture source :The Myth of the Full-stack Developer
In terms of thinking ability , Good programmers should have good analytical skills , Logical thinking ability and abstract thinking ability , Good reading and writing skills .
3. What books can you read to get started and learn programming ?

The official website address of this book is :How to Design Programs
picture source :How to Design Programs
Matthias Felleisen Robert Bruce Findler , Matthew Flatt and Shriram Krishnamurthi What we have done How to Design Programs: An Introduction to Programming and Computing A Book , The name of the Chinese version is 《 How to design a program : Introduction to programming and computation 》, Is a programming textbook , Discuss how to write a well-organized procedure from problem description to the end . There is no emphasis on Algorithm and language details , But focus on teaching the design process of the program , Nor does it address a particular application area . This book gives a series of clear program design guidelines , Guide students to start from the description of the problem step by step , Through clearly defined intermediate processes , Training reading 、 analysis 、 organization 、 Experimental and systematic thinking ability , Finally write the program . The book uses a new programming environment . The programming environment will improve with the amount of knowledge learners have , The environment can eventually support the complete Scheme Language , Using this language, you can write both large programs and script programs , It can complete programming tasks in all fields .
Won the 2008 year Jolt Grand Prix Head First Programming: A learner's guide to programming using the Python language Pretty good also , For beginners without programming knowledge , Teach the reader through the classic graphic and easy way , Readers can understand the core functions of all programming languages , Include : Variable , sentence , Decision making , loop , Expressions and operators . Readers learn to reuse code with functions and use library code to save time and energy , You can also choose the best data structure to manage complex data , Learn to write and Web Communication procedure , A program that shares data with other programs and writes test code .

picture source :www.amazon.com
If we can easily help people understand programming , Our own understanding of programming will continue to strengthen . Our own programming skills may also become better .
Feel free to leave a comment , How to do program design well .
边栏推荐
- Hbuilderx: installation of hbuilderx and its common plug-ins
- Uniapp (upload local pictures, preview pictures, convert Base64 format, upload audio files)
- How to view APK version number from apk
- After clicking the uniapp e-commerce H5 embedded applet, the page prompts "the page iframe does not support referencing non business domain names"
- SSM框架整合--->简单后台管理
- 万能播放器 PotPlayer 的下载与安装,直播流 m3u8 导入
- Solution: vscode open file will always overwrite the last opened label
- 超有范的 logo 在线设计制作工具
- 本地文件秒搜工具 Everything
- The jadx decompiler can decompile jars and apks
猜你喜欢

‘ipconfig‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

AI实现亲人“复活”|老照片修复|老照片上色,免费APP推荐

Huawei developer certification and deveco studio compiler Download

超有范的 logo 在线设计制作工具

RFID process management solution for electroplating fixture

MFS详解(五)——MFS元数据日志服务器安装与配置

【新手上路常见问答】关于技术管理

JVM Foundation

微信小程序:基础复习

MFS详解(七)——MFS客户端与web监控安装配置
随机推荐
Applet disable native top
How to view APK version number from apk
Echart histogram: X-axis displays value, Y-axis displays category
Cross process two-way communication using messenger
微信小程序:基础复习
USB debugging assistant (20191028)
动态链接库嵌套样例
Not in the following list of legal domain names, wechat applet solution
1+1 > 2, share creators can help you achieve
《MATLAB 神经网络43个案例分析》:第10章 离散Hopfield神经网络的分类——高校科研能力评价
欧姆龙平替国产大货—JY-V640半导体晶元盒读写器
SSM框架整合--->简单后台管理
Echart柱状图:堆叠柱状图显示value
[one · data 𞓜 simple implementation of the leading two-way circular linked list]
Failed to extract manifest from apk: processexception:%1 is not a valid Win32 Application.
The jadx decompiler can decompile jars and apks
Multiple reception occurs in the uniapp message delivery
Rk3399 hid gadget configuration
Hbuilderx: installation of hbuilderx and its common plug-ins
Analysis of 43 cases of MATLAB neural network: Chapter 11 optimization of continuous Hopfield Neural Network -- optimization calculation of traveling salesman problem