Program Development PsychologyThe Psychology of Program Development was published by Tsinghua University Press on January 1, 2004. The author was Gerald Weinberg. In the book, the author analyzed it from the perspectives of human behavior, social behavior, and individual behavior.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Thoughts on the Psychology of Program Development" Psychology of Program Development " explored the relevant issues in the process of program development from many angles. Reading it could bring about many thoughts and insights.
In terms of the limitations of the computer, we realized that the computer used a limited set of rational numbers when calculating, which was far from the ideal computer. However, programmers often forgot that this was a hardware limitation, and a lot of development work was devoted to overcoming the hardware configuration imperfection. This made us realize that in program development, we must always consider the constraints of hardware conditions on the program. We can't treat the limitations of the hardware as an insurmountable gap, but we must actively find countermeasures.
From the perspective of language limitations, from machine language to high-level language, users lost the opportunity to use certain functions of the hardware. In order to overcome language limitations, code and data would need to be changed, and future languages might also allow us to detect limitations that have yet to be discovered by existing languages. This made us understand that when choosing a development language, we must weigh the convenience and possible limitations, and we must keep a forward-looking mind about the development of the language.
Regarding the limitations of programmers, the book pointed out that programmers might write some code because they did not fully master the computer, language, or themselves. For example, there were " vocabulary limitations," they did not know certain algorithms, or they could not take care of many aspects and repeat the work. This warned us to constantly improve our knowledge reserve and comprehensive ability in program development to avoid inefficient or unreasonable program development due to our own limitations.
From the perspective of the history of the program, the content of the program may be caused by various limitations, but in fact, it was also influenced by the development history. In terms of specifications, although only a small portion of the code in the program was directly related to solving the problem, the core code could not be simply used as a standard. This was because if one lacked understanding of the computer's ability when formulating specifications, it would be difficult to develop efficient code. In many cases, one would only understand their real needs after hands-on programming. This allowed us to have a deeper understanding of the planning and execution process of program development. We must pay attention to the influence of historical factors on the program, and we must be cautious about the formulation of program specifications.
In general, the Psychology of Program Development prompted us to understand program development from a deeper level. Not only did we focus on the code itself, but we also considered the influence of computers, languages, programmers, and history on the process and results of program development.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Program Development Psychology BooksI recommend 'The Path of Cultivation as a programmer.' This book is super interesting. The protagonist was a programmer who traveled through the cultivation world and compared the cultivation system to the computer system, such as the spiritual root being the power source and the meridians being the circuit. Reiki was the materialized 0s and 1s, so he could use mana to program and create his own spells. When the inner demons came, he would write anti-virus software to deal with them. The design was rigorous and logical, and it combined ancient China culture and computers very well, such as Yin and Yang and binaries. Although it was a seedling, it was very creative. For example," Walking into Cultivation " was written in more detail. The author had also worked hard to collect computer books. It was worth reading.
" Doomsday programmer " was not bad either. In the apocalypse of 2035, the protagonist, the IT man, obtained the identity of a professional programmer from the apocalypse system. He could create things in 3D models, such as food, weapons, and even people. At the beginning, a seed was used to start an unusual apocalypse journey. It was a cool apocalypse novel with good creativity.
'Game Development Guide' was worth recommending. The author had been a game planner before, writing about the protagonist's rebirth and making games. It was practical and satisfying. The plot was well controlled, and the career and relationship lines intersected. Other than the problem at the beginning, the overall rhythm was good, the character creation was up to standard, and it could also allow people to learn game production knowledge. It was suitable for game enthusiasts.
" Mind Hacker " could also be read. It compared the human body to a computer, the brain to the CPU, and the nervous system to the motherboards. It was very interesting to imagine that humans could invade other people's minds.
" Miracle Doctor " recommended. After the main character had a new heart, he obtained the original owner's medical skills. Without the help of the system, it was written very well. The medical skills were within the scope of comprehension, the plot was reasonable, and the characters were well shaped. It was a masterpiece of a doctor's work.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Understanding the MvMm Development ModelMVP was a development model that evolved from the traditional MVP model. There were three core components in the MV model: Model, View, and View Model.
Model is the data logic layer, which can be regarded as the data access layer. It is responsible for data persistence and the logical processing of business data in the background. For example, it can interact with the data source to obtain data and provide the data to the view model. It is similar to the model in MVP, mainly dealing with the data and business logic of the application.
The View was the visual layer, the front-end interface that the user could see. It was responsible for user interaction and transmitting user behavior to the background. From the perspective of structure layout, it was responsible for displaying the data in the model, including structure, layout, appearance (such as browser, browser, etc.). The view obtained data from the view model and displayed it to the user. At the same time, it passed the user input to the view model, similar to the view function in MVP.
View Model was the bridge between view and model. It could separate the data analysis and loading functions of Controller in MVP pattern. It deals with the logic of the view, converting the commands of the view into operations on the model, and converting the data of the model into a form that the view can display. It doesn't know the specific implementation of the view, but only focuses on how to convert the data of the model into data that the view can use.
An important feature of the MV model was that it provided two-way data binding between the View and the View Model. This meant that changes in the View Model's state could be automatically transmitted to the View, and vice versa. This two-way data binding mechanism allowed the View and the data to be consistent. The advantage of this model was that it minimized the dependence between the view and the model, allowing the view and the model to be developed and tested independently. With the help of the view model, developers could use data binding and other technologies to reduce the code couple between the view and the controller, thereby improving the code's survivability and expansibility. In some scenarios, such as front-end development, Vue.js was a javelin library that provided a two-way data binding in the style of MV. The core of the javelin was the ViewModel in MV. The MV model was also particularly suitable for the development of WTF (Windows Presentation Foundation) and WinForms (Windows Forms).
<a href="/?from=ask_words" style="color:red" target="_blank">Read more exciting novels for free</a>
Rewrite of Gilmore Girls fanfiction: How to improve character development?To improve character development in a Gilmore Girls fanfiction rewrite, give each character more complex motives. For example, instead of just having Jess be the 'bad boy', show the reasons behind his actions, like his difficult family life. Also, let the characters grow and change over time. If you're writing about Lane, show how her experiences in the band and her relationship with Zack affect her dreams and values.
3 answers
2024-11-20 12:26
How can one improve in understanding fiction?One way is to read a lot of different types of fiction. By exposing yourself to various styles, themes, and authors, you get a broader perspective. For example, reading classic novels like 'Pride and Prejudice' gives you a sense of how complex characters are developed in that era, while modern dystopian fiction like 'The Hunger Games' shows different ways of creating tension and engaging the reader. Another important aspect is to analyze the elements of the story such as plot, setting, and characters. Understanding how these elements interact helps in a deeper understanding of the fiction.
2 answers
2024-11-06 15:34
How to improve Japanese for understanding novels betterWatch Japanese dramas or anime with subtitles first and then without. This exposes you to spoken Japanese which is closely related to the written language in novels. Also, make flashcards for new words and grammar points you encounter while reading novels. Review them often to reinforce your memory.
2 answers
2024-11-15 02:03