【計算機心理學】先設計再實現 在實現中完善設計

先設計再實現

在物理學中,通常都是先理論證明觀點,再進行實踐,然后,再有世界各地的科學家根據理論進行實驗,以證明觀點正確。

在計算機軟件開發,硬件開發等,都講求先邏輯抽象設計再進行編碼實現

其實二者道理相同,先想明白,再去做,無疑是高效的,如果直接就去做,會導致

  1. 事情沒有方向
  2. 事情做的一團糟
  3. 事情做的很好但是不能滿足需求

這些情況都會導致一個軟件或者硬件成為廢品。

所以,不要嫌棄設計階段,它很重要,沒有設計,編碼本身毫無意義。

實現中完善設計

設計雖好,但是中間,它只是人類大腦抽象的產物,人類并不具備像計算機一樣不容得一點錯誤的特點,因此,設計必然有缺陷,在實現中發現錯誤,反過來完善設計,是必要流程,這是設計的常態,不要因此而憂傷,這不是一個問題,是常態,請正確對待這件事。

計算機中的心理學

以上兩點,更像是心理學內容,幫助開發者更好地面對開發工作,心態先擺正,才能更好地完成開發。

永遠記得,編碼只是工具,更重要的是人的問題,設計的問題,《軟件工程》這門學問更多地是解決人的問題,而不是編碼。

考試與實踐

考試題目,是實踐中的設計環節,并且是簡單的,因為考試題目的設計有答案,而實踐中的設計,需要反復迭代才能獲得解決方案,但是始終不會有答案。

考試是重要的,畢竟在中國的環境中,這是一種很重要的衡量標準,你必須要接受。

實踐也是重要的,因為生活沒有答案,實踐沒有答案,這是真實世界,是你必須面對的

考試與實踐如何衡量?答案是:沒有答案

不過有一些事實值得參考

  • 掌握了實踐技能,考試會更加容易
  • 會了實踐,不一定會考試,但是通過一些訓練,能夠快速掌握考試
  • 掌握了考試,實踐可能完全不會,因為脫離了真實世界

至于具體如何應對,因人而異,不過最終的目標很重要

  • 考試取得高分
  • 實踐能力不斷增強

其他的就全靠自己了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/384698.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/384698.shtml
英文地址,請注明出處:http://en.pswp.cn/news/384698.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【FPGA VerilogHDL】第一次嘗試:LED燈基礎實驗

0 實驗環境 0.1 軟件環境 ISE 14.7win10vivado 2017.4 0.2 硬件設備 ISE適用的FPGA開發板:ALINK AX309 1 需求 能夠靈活控制4個LED燈 2 Verilog實現 timescale 1ns / 1ps // // Create Date: 14:18:20 08/08/2020 // Module Name: led // Revision…

使用ISE一鍵生成bit文件

我們知道,這幾個,在第一次做好源文件之后,需要一個個進行右鍵單擊-->run,以發現錯誤。 但是之后的調試,只要一點點變化,哪怕是注釋變化,都需要重新run3次,太麻煩了。 不過經過實…

【FPGA Verilog】實驗二:key按鍵基礎實驗

只說一下經驗和教訓 1 必須按照設計流程走 不要因為實驗簡單,就直接進行綜合,比如按照 設計編碼RTL優化仿真綜合管腳分配,實現下載 一定要按照這個步驟來。 2 必須先查看開發板說明文檔 開始出了一個令人困惑的問題,后來發現…

【Java】字符串轉換為數字:Integer的parseInt方法

Java官方文檔[1]的解釋 public static int parseInt?(String s) throws NumberFormatException Parses the string argument as a signed decimal integer. The characters in the string must all be decimal digits, except that the first character may be an ASCII minus…

在win10上使用Vmware安裝Mac OS

安裝macOS 如何在Windows上VMware上安裝macOS Catalina 10.15 做一些提示: 如果您在第一次啟動mac的時候,在出現【語言選擇】之前,出現了連接藍牙內容。 您可以將教程中【修改為win10 x64】那一步跳過,請注意,如果您…

JDBC 防御性編程

防御性編程(Defensive Programming) 什么是Defensive Programming[1]? 原文:Defensive programming is a form of defensive design intended to ensure the continuing function of a piece of software under unforeseen circu…

【Java】異常處理的目的

編程思維:Defensive Programming 我們寫好程序,將其打包,然后用戶就可以使用和運行,但是,外界的情況是未知的,我們的程序很可能因為某個因素的出現而崩潰,因此,對于我們可以預測到的…

【Coursera】Getting Started with Python:Week One - Reading: Welcome to The Class

原文 & 翻譯 Reading: Welcome to The Class Welcome to Getting Started with Python, the first class in our Python for Everybody Specialization. We have built this class specifically for those with no prior programming experience. With a relatively simpl…

【Java】獲取目錄及其子目錄文件的相關事宜

獲取目錄及其子目錄文件的代碼 public class Main {public static void main(String[] args) {String path "D:/"; File f new File(path);Main.getFile(f);}public static void getFile(File file){if(file ! null){File[] f file.listFiles();if(f ! null){for…

【計算機思維】面向人的開發 站在巨人的肩膀上

思維轉變:使用其他程序員開發的“黑箱”,不要重復造輪子 以Java舉例,從常用的集合框架開始,我們要產生新的思維轉變了,我們已經學會了基本的功能,但是在真正開發的時候,用基礎功能去做開發效率…

【Computer Organization】The Core Design Thinking of single cycle CPU

1 Overview This section introduces someting that maybe you need to know before learning. Note:This CPU is based on MIPS instruction set. 1.1 Tools LogisimCS 3410 ComponentsMARS MIPS simulatorWin10 or Mac OS 1.2 Courses 自己動手畫CPU《計算機組織與結構實…

【匯編語言】王爽 - 內中斷復習

0 前言 基于王爽《匯編語言》和Coursera的《計算機組成》課程。 1 中斷分類 CPU在執行指令的過程中,產生了一個異常/中斷,因為CPU只能同時執行一條指令,所以需要暫停該指令的執行,轉而去處理異常/中斷信息。 這個異常可以來…

【算法】蠻力法/窮舉法/枚舉法 的基本問題分析

炮兵問題的優化,設立邏輯數組 蠻力法設計思想 有策略地窮舉 驗證 制定窮舉策略避免重復 簡單來說,就是列舉問題所有可能的解,然后去看看是否滿足題目要求,是一種逆向解題方式。(我也不知道答案是什么,…

如何高效學習算法【實例 + 可視化】

對于初學者來說,學習算法,不應該先學習抽象的理論,那樣沒有感覺,越學越暈,應該: 有具體的例子有可視化過程 同時需要結合理論知識對照學習,理論扎實、實踐有效,同時要有結果反饋。…

【計算機網絡實驗·北航】實驗一:網絡實驗入門(1)

1.3 遠程在線環境使用 PCA、PCB、PCC和PCD:4臺PC機S1、S2:2臺交換機R1、R2:2臺路由器中間的設備:組網連線器 遠程組網連線: 使用PCA上的組網連線軟件,配置組網連線器,實現組網連線。 PCA和PCB…

【C++】int與string轉換

頭文件&#xff1a;<string>&#xff0c;注意&#xff0c;這與<string.h>、<cstring>不是一回事兒語法&#xff1a;int x to_string(str)&#xff0c;其中string str "1"。

【C++】rand函數的基本使用

rand()函數用于生成偽隨機數&#xff0c;每次生成的隨機數都不變&#xff0c;方便我們調試程序。 重要是的隨機數的范圍公式&#xff08;適用整數&#xff09; 公式&#xff1a; 確定范圍加偏移量 例如&#xff1a;a和b是整數 [a,b]&#xff0c;范圍是b - a 1&#xff0c…

【操作系統】虛擬化CPU、Memory,共享文件

幾個概念 CPU、虛擬CPU進程內存、虛擬地址空間 物理的CPU被OS虛擬成了多個虛擬的CPU&#xff0c;這些虛擬CPU分別運行各自的程序&#xff0c;這些正在運行的程序被稱為進程。物理內存被OS虛擬成了多個虛擬地址空間&#xff0c;每個進程都有獨立的、自己的地址空間&#xff0c;…

【Linux】編譯C語言文件(-o -lpthread)

在gcc中使用-o編譯 對于一個一般的程序&#xff0c;直接使用gcc <C語言文件名> -o <編譯后生成的文件名>即可&#xff0c;例如以下程序&#xff1a; // cpu.c #include <stdio.h> #include <unistd.h> #include <stdlib.h>int main(int argc,…

【Linux】Ubuntu下進行C語言編程

前言 需要您會使用Windows下cd切換目錄的基本命令&#xff0c;否則請先自學相關知識&#xff0c;之后再閱讀本文。 0 基礎命令 介紹最基礎的Linux終端命令。 su - root&#xff1a;切換到root用戶&#xff08;不用也可以&#xff09;ls&#xff1a;查看當前目錄位置cd&…