什么是開發(fā)工具?
什么是操作系統(tǒng)?
什么是前端和后端?
前后端都是寫代碼,有啥區(qū)別?
還有這些英文Lambda、Steam,bootstrap、vue、Docker……
我真的是栓Q了。
互聯(lián)網(wǎng)上對于這些是有定義的,但是理解起來較為晦澀,今天小編就給大家做個掃盲,同時對這些知識進(jìn)行大體的歸類,下次再遇上不認(rèn)識的,都可以按照這個方法歸類呢~~
一、軟件開發(fā)的基本步驟
第一步:設(shè)計師設(shè)計圖片。關(guān)于設(shè)計有幾點(diǎn)是需要了解的。
1、 設(shè)計師設(shè)計出來的僅僅是每一個元素,是散落的單個圖片,并沒有排版布局。
如圖所示:
2、 主流的設(shè)計師,需要掌握什么技術(shù)呢?
作為當(dāng)代的設(shè)計師,除了掌握常見的PS,AI等設(shè)計軟件,還需要懂“扁平化”技術(shù),通俗的說就是把圖片縮小成一個一個的圖標(biāo)樣式,便于在移動端顯示的技術(shù),還需要懂交互設(shè)計,交互設(shè)計這個詞很流行,通俗的說,就是讓人們使用起來更舒服。
第二步:前端工程師實(shí)現(xiàn)網(wǎng)頁整體排版和布局
前端開發(fā)分為web前端開發(fā),移動前端開發(fā),主要是根據(jù)媒介來區(qū)分的,但是無論哪種前端,都是需要將圖片的呈現(xiàn)形式“合理”的實(shí)現(xiàn)。
所謂合理,是指符合交互的原理,這就要求前端工程師一方面要跟上不斷迭代的前端框架技術(shù),人們的審美并非一成不變的,對網(wǎng)頁和app的功能要求也在不斷更新,所以前端的框架技術(shù)是層出不窮的。
另一方面,前端工程師還需要了解各行業(yè)客戶的需求特點(diǎn),才能做出有互動性的、可推廣的網(wǎng)站。
當(dāng)今社會,純展示的靜態(tài)網(wǎng)站已經(jīng)過時了。
什么是靜態(tài)網(wǎng)頁呢,就是我們以前說的純展示類的網(wǎng)站,申請個域名,把自己單位的主要產(chǎn)品簡單拍個圖羅列一下,加一個聯(lián)系方式就可以了?,F(xiàn)在的網(wǎng)頁都是動態(tài)網(wǎng)頁,需要有用戶注冊,數(shù)據(jù)交互等功能,即我們說的“動態(tài)網(wǎng)頁”。
第三步:后端工程師實(shí)現(xiàn)網(wǎng)頁,app的各項功能
在介紹后端開發(fā)之前,先要說一下,現(xiàn)在“前后端分離”技術(shù)已經(jīng)趨于成熟,早期的時候,前端只需要做頁面排版即可,現(xiàn)在后端的接口技術(shù)成熟后,后端工程師把接口的功能寫完善,給前端一個接口文檔,前端對照直接調(diào)用即可,這樣前后端的功能和職責(zé)劃分就清晰了。
前后端都是寫代碼,有什么區(qū)別呢?
前端開發(fā)人員更關(guān)注網(wǎng)站的外觀,后端開發(fā)人員則更關(guān)注網(wǎng)站的打開速度、響應(yīng)能力,多人同時操作時的承壓能力等。
我們初步了解了軟件開發(fā)的流程,那么如果正式開發(fā)前,還有哪些基礎(chǔ)知識是需要了解的呢,那必然要了解開發(fā)工具,數(shù)據(jù)庫,操作系統(tǒng)。
這三個內(nèi)容是所有軟件開發(fā)前必須提前確認(rèn)的,下面小編就來給大家介紹介紹。
二、 開發(fā)相關(guān)知識的基本分類
1、 開發(fā)工具
定義:一些被軟件工程師用于為特定的軟件包、軟件框架、硬件平臺、操作系統(tǒng)等建立應(yīng)用軟件的特殊軟件。
通俗說,就是提供代碼編寫的平臺。在這些平臺里,編寫代碼只需要關(guān)注代碼本身,不需要去考慮代碼被機(jī)器識別并運(yùn)行的過程。
舉個例子,編程代碼發(fā)出一條輸出的指令即可。開發(fā)工具會讓CPU會去識別“輸出”這個指令的意思,將輸出的內(nèi)容傳輸?shù)斤@示器,顯示器在執(zhí)行顯示等。
分類:開發(fā)工具分為前端開發(fā)和后端開發(fā)。
常見的前端開發(fā)工具有:JavaScript和Jquery、Vue等。
后端開發(fā)工具有:Java,Php,C,Python。
2、 數(shù)據(jù)庫
定義:存放數(shù)據(jù)的倉庫。
分類:數(shù)據(jù)庫分為關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫。關(guān)系型數(shù)據(jù)庫處理結(jié)構(gòu)化數(shù)據(jù),非關(guān)系型數(shù)據(jù)庫處理非結(jié)構(gòu)化數(shù)據(jù)。那什么是結(jié)構(gòu)化數(shù)據(jù)?什么是非結(jié)構(gòu)化數(shù)據(jù)呢?
結(jié)構(gòu)化數(shù)據(jù)是指表格等常規(guī)數(shù)據(jù)。非結(jié)構(gòu)化數(shù)據(jù)是指語音,圖片,視頻等。
常見的關(guān)系型數(shù)據(jù)庫有My Sql、SQL Sever、Oracle等;
處理非結(jié)構(gòu)化數(shù)據(jù)的數(shù)據(jù)庫主要有:Hadoop等相關(guān)組件。
3、 操作系統(tǒng)
定義:是一組主管并控制計算機(jī)操作、運(yùn)用和運(yùn)行硬件、軟件資源和提供公共服務(wù)來組織用戶交互的相互關(guān)聯(lián)的系統(tǒng)軟件程序。
通俗的說,就是軟件運(yùn)行的環(huán)境、媒介。
分類標(biāo)準(zhǔn)一:主要分為開放式和封閉式,例如Linux和安卓是開放式,Windows和ios是封閉式。
開放式就是代碼開源,允許修改。封閉式是代碼封閉,功能固定。例如安卓,大家可能有小米安卓,華為安卓,但是蘋果IOS系統(tǒng)就沒有小米蘋果系統(tǒng)。
分類標(biāo)準(zhǔn)二:還可以分為PC端、服務(wù)器端、移動端。主要是根據(jù)媒介來區(qū)分的,現(xiàn)在的軟件,一般都會有這三個端的版本。即操作系統(tǒng)需要兼容。
今天的分享主要是掃盲貼,大家日后遇上晦澀的知識點(diǎn),都可以往這些方向歸類。
如果你想了解更多軟件開發(fā)流程,我們資料包這里也整理了很多關(guān)于軟件開發(fā)流
本文來源于網(wǎng)絡(luò),如有侵權(quán)請聯(lián)系后臺刪除
來源:軟件開發(fā)管家