導航:首頁 > 程序命令 > 程序員編輯指南

程序員編輯指南

發布時間:2023-07-06 04:34:47

A. 微信小程序怎麼開發 微信小程序開發教程分享

微信應用號(小程序,「應用號」的新稱呼)終於來了!
目前還處於內測階段,微信只邀請了部分企業參與封測。想必大家都關心應用號的最終形態到底是什麼樣子?怎樣將一個「服務號」改造成為「小程序」?
我們暫時以一款簡單的第三方工具的實例,來演示一下開發過程吧。

序言
開始開發應用號之前,先看看官方公布的「小程序」教程吧!(以下內容來自微信官方公布的「小程序」開發指南)
本文檔將帶你一步步創建完成一個微信小程序,並可以在手機上體驗該小程序的實際效果。這個小程序的首頁將會顯示歡迎語以及當前用戶的微信頭像,點擊頭像,可以在新開的頁面中查看當前小程序的啟動日誌。

1. 獲取微信小程序的 AppID
首先,我們需要擁有一個帳號,如果你能看到該文檔,我們應當已經邀請並為你創建好一個帳號。注意不可直接使用服務號或訂閱號的 AppID。 利用提供的帳號,登錄 https://mp.weixin.qq.com ,就可以在網站的「設置」-「開發者設置」中,查看到微信小程序的 AppID 了。

注意:如果我們不是用注冊時綁定的管理員微信號,在手機上體驗該小程序。那麼我們還需要操作「綁定開發者」。即在「用戶身份-開發者」模塊,綁定上需要體驗該小程序的微信號。本教程默認注冊帳號、體驗都是使用管理員微信號。

2. 創建項目
我們需要通過開發者工具,來完成小程序創建和代碼編輯。
開發者工具安裝完成後,打開並使用微信掃碼登錄。選擇創建「項目」,填入上文獲取到的 AppID,設置一個本地項目的名稱(非小程序名稱),比如「我的第一個項目」,並選擇一個本地的文件夾作為代碼存儲的目錄,點擊「新建項目」就可以了。
為方便初學者了解微信小程序的基本代碼結構,在創建過程中,如果選擇的本地文件夾是個空文件夾,開發者工具會提示,是否需要創建一個 quick start 項目。選擇「是」,開發者工具會幫助我們在開發目錄里生成一個簡單的 demo。

項目創建成功後,我們就可以點擊該項目,進入並看到完整的開發者工具界面,點擊左側導航,在「編輯」里可以查看和編輯我們的代碼,在「調試」里可以測試代碼並模擬小程序在微信客戶端效果,在「項目」里可以發送到手機里預覽實際效果。

3. 編寫代碼
點擊開發者工具左側導航的「編輯」,我們可以看到這個項目,已經初始化並包含了一些簡單的代碼文件。最關鍵也是必不可少的,是 app.js、app.json、app.wxss 這三個。其中,.js 後綴的是腳本文件,.json 後綴的文件是配置文件,.wxss 後綴的是樣式表文件。微信小程序會讀取這些文件,並生成小程序實例。
下面我們簡單了解這三個文件的功能,方便修改以及從頭開發自己的微信小程序。
app.js 是小程序的腳本代碼。我們可以在這個文件中監聽並處理小程序的生命周期函數、聲明全局變數。調用 MINA 提供的豐富的 API,如本例的同步存儲及同步讀取本地數據。

//app.js App({

onLaunch: function () { //調用API從本地緩存中獲取數據 var logs = wx.getStorageSync('logs') || []

logs.unshift(Date.now())

wx.setStorageSync('logs', logs)

},

getUserInfo:function(cb){ var that = this; if(this.globalData.userInfo){ typeof cb == "function" && cb(this.globalData.userInfo)

}else{ //調用登錄介面 wx.login({

success: function () {

wx.getUserInfo({

success: function (res) {

that.globalData.userInfo = res.userInfo; typeof cb == "function" && cb(that.globalData.userInfo)

}

})

}

});

}

},

globalData:{

userInfo:null }

})

app.json 是對整個小程序的全局配置。我們可以在這個文件中配置小程序是由哪些頁面組成,配置小程序的窗口 背景色,配置導航條樣式,配置默認標題。注意該文件不可添加任何注釋。
{ "pages":[ "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "WeChat", "navigationBarTextStyle":"black" }

}

app.wxss 是整個小程序的公共樣式表。我們可以在頁面組件的class屬性上直接使用app.wxss中聲明的樣式規則。
/**app.wxss**/ .container { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 200rpx 0; box-sizing: border-box;

}

3. 創建頁面
在這個教程里,我們有兩個頁面,index 頁面和 logs 頁面,即歡迎頁和小程序啟動日誌的展示頁,他們都在 pages 目錄下。微信小程序中的每一個頁面的【路徑+頁面名】都需要寫在 app.json 的 pages 中,且 pages 中的第一個頁面是小程序的首頁。
每一個小程序頁面是由同路徑下同名的四個不同後綴文件的組成,如:index.js、index.wxml、index.wxss、index.json。.js 後綴的文件是腳本文件,.json 後綴的文件是配置文件,.wxss 後綴的是樣式表文件,.wxml 後綴的文件是頁面結構文件。
index.wxml是頁面的結構文件:
<view class="container"> <view bindtap="bindViewTap" class="userinfo"> <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"> image> <text class="userinfo-nickname">{{userInfo.nickName}} text> view> <view class="usermotto"> <text class="user-motto">{{motto}} text> view> view>

本例中使用了、、來搭建頁面結構,綁定數據和交互處理函數。
index.js 是頁面的腳本文件,在這個文件中我們可以監聽並處理頁面的生命周期函數、獲取小程序實例,聲明並處理數據,響應頁面交互事件等。
//index.js //獲取應用實例 var app = getApp()

Page({

data: {

motto: 'Hello World',

userInfo: {}

}, //事件處理函數 bindViewTap: function() {

wx.navigateTo({

url: '../logs/logs' })

},

onLoad: function () { console.log('onLoad') var that = this //調用應用實例的方法獲取全局數據 app.getUserInfo(function(userInfo){ //更新數據 that.setData({

userInfo:userInfo

})

})

}

})

index.wxss是頁面的樣式表:
/**index.wxss**/ .userinfo { display: flex; flex-direction: column; align-items: center;

} .userinfo-avatar { width: 128rpx; height: 128rpx; margin: 20rpx; border-radius: 50%;

} .userinfo-nickname { color: #aaa;

} .usermotto { margin-top: 200px;

}

頁面的樣式表是非必要的。當有頁面樣式表時,頁面的樣式表中的樣式規則會層疊覆蓋 app.wxss 中的樣式規則。如果不指定頁面的樣式表,也可以在頁面的結構文件中直接使用 app.wxss 中指定的樣式規則。
index.json是頁面的配置文件:
頁面的配置文件是非必要的。當有頁面的配置文件時,配置項在該頁面會覆蓋 app.json 的 window 中相同的配置項。如果沒有指定的頁面配置文件,則在該頁面直接使用 app.json 中的默認配置。
logs的頁面結構
<view class="container log-list"> <block wx:for-items="{{logs}}" wx:for-item="log"> <text class="log-item">{{index + 1}}. {{log}} text> block> view>

logs 頁面使用 控制標簽來組織代碼,在 上使用 wx:for-items 綁定 logs 數據,並將 logs 數據循環展開節點

//logs.js var util = require('../../utils/util.js')

Page({

data: {

logs: []

},

onLoad: function () { this.setData({

logs: (wx.getStorageSync('logs') || []).map(function (log) { return util.formatTime(new Date(log))

})

})

}

})

運行結果如下:

4. 手機預覽
開發者工具左側菜單欄選擇「項目」,點擊「預覽」,掃碼後即可在微信客戶端中體驗。

目前,預覽和上傳功能尚無法實現,需要等待微信官方的下一步更新。

如你所見,微信官方給出的開發指南還非常簡單,很多細節、代碼和功能都沒有明確的展示,所以接下來就到展示實力的時候啦!開發教程正式開始!

第一章:准備工作

做好准備工作很重要。開發一個微信應用號,你需要提前到微信的官方網站(weixin.qq.com)下載開發者工具。

1. 下載最新微信開發者工具,打開後你會看到該界面:

2. 點擊「新建 web+」項目,隨後出現如下畫面:

3. 該頁面內的各項內容需要注意——
AppID:依照官方解釋來填。
Appname: 項目最外層文件夾名稱,如你將其命名為「ABC」,則之後的全部項目內容均將保存在「/ABC/…」目錄下。
本地開發目錄:項目存放在本地的目錄。

註:再次強調,如果你和團隊成員共同開發該項目,則建議你們使用同樣的目錄名稱及本地目錄,以確保協同開發的統一性。如果你之前已有項目,則導入過程與以上內容近似,不再贅述。

4. 准備工作全部完成後,點擊「新建項目」按鈕,彈出框點「確定」。

5. 如上圖所示,此刻,微信開發者工具已經為你自動構建了一個初始的 demo 項目,該項目內包含了一個微信應用項目所需具備的基本內容和框架結構。點擊項目名稱(圖中即「cards」)進入該項目,就能看到整個項目的基本架構了:

第二章:項目構架

微信目前用戶群體非常龐大,微信推出公眾號以後,火爆程度大家都看得到,也同樣推動著 Html 5 的高速發展,隨著公眾號業務的需求越來越復雜,應用號現在的到來也是恰到好處。
我們發現,微信提供給開發者的方式也在發生全面的改變:從操作 DOM 轉為操作數據,基於微信提供的一個過橋工具實現很多 Html 5 在公眾號很難實現的功能,有點類似於 hybrid 開發,不同於 hybrid 開發的方式是:微信開放的介面更為嚴謹,結構必須採用他提供給的組件,外部的框架和插件都不能在這里使用上,讓開發者完全脫離操作 DOM,開發思想轉變很大。
工欲善其事,必先利其器。理解它的核心功能非常重要,先了解它的整個運作流程。

生命周期:
在index.js裡面:

開發者工具上 Console 可以看到:

在首頁 console 可以看出順序是 App Launch-->App Show-->onLoad-->onShow-->onReady。
首先是整個 app 的啟動與顯示,app 的啟動在 app.js 裡面可以配置,其次再進入到各個頁面的載入顯示等等。
可以想像到這里可以處理很多東西了,如載入框之類的都可以實現等等。

路由:
路由在項目開發中一直是個核心點,在這里其實微信對路由的介紹很少,可見微信在路由方面經過很好的封裝,也提供三個跳轉方法。
wx.navigateTo(OBJECT):保留當前頁面,跳轉到應用內的某個頁面,使用wx.navigateBack可以返回到原頁面。
wx.redirectTo(OBJECT):關閉當前頁面,跳轉到應用內的某個頁面。
wx.navigateBack():關閉當前頁面,回退前一頁面。
這三個基本上使用足夠,在路由方面微信封裝的很好,開發者根本不用去配置路由,往往很多框架在路由方面配置很繁瑣。

組件:
此次微信在組件提供方面也是非常全面,基本上滿足項目需求,故而開發速度非常快,開發前可以認真瀏覽幾次,開發效率會很好。

其它:
任何外部框架以及插件基本上無法使用,就算原生的 js 插件也很難使用,因為以前的 js 插件也基本上全部是一操作 dom 的形式存在,而微信應用號此次的架構是不允許操作任何 dom,就連以前開發者們習慣使用的動態設置的rem.js也是不支持的。
此次微信還提供了 WebSocket,就可以直接利用它做聊天,可以開發的空間非常大。
跟公眾號對比發現,開發應用號組件化,結構化,多樣化。新大陸總是充滿著驚喜,更多的彩蛋等著大家來發現。
接下來開始搞一些簡單的代碼了!

1. 找到項目文件夾,導入你的編輯器裡面。在這里,我們使用了 Sublime Text 編輯器。你可以根據自己的開發習慣選擇自己喜歡的編輯器。

2. 接下來,你需要根據自己的項目內容調整項目結構。在範例項目中,「card_course」目錄下面主要包含了「tabBar」頁面以及該應用的一些配置文件。

3. 示例項目的「tabBar」是五個菜單按鈕:

4. 找到「app.json」文件,用來配置這個五個菜單。在代碼行中找到「tabBar」:

你可以根據實際項目需求更改,其中:
「Color」是底部字體顏色,「selectedColor」是切換到該頁面高亮顏色,「borderStyle」是切換菜單上面的一條線的顏色,「backgroundColor」是底部菜單欄背景顏色。文字描述較為抽象,建議你一一調試並查看其效果,加深印象。
「list」下的代碼順序必須依次放置,不能隨便更改。
「pagePath」之後的文件名內,「.wxml」後綴被隱藏起來了,這是微信開發代碼中人性化的一點——幫你節約寫代碼的時間,無須頻繁聲明文件後綴。
「iconPath」為未獲得顯示頁面的圖標路徑,這兩個路徑可以直接是網路圖標。
「selectedIconPath」為當前顯示頁面高亮圖標路徑,可以去掉,去掉之後會默認顯示為「iconPath」的圖標。
「Text」為頁面標題,也可以去掉,去掉之後純顯示圖標,如只去掉其中一個,該位置會被佔用。
注意:微信的底部菜單最多支持五欄(五個 icons),所以在你設計微信應用的 UI 和基本架構時就要預先考慮好菜單欄的排布。

5. 根據以上代碼規則,我們做好了示例項目的基本架構,供你參考:

6. 「Json」文件配置好後,「card_course」的基本結構入上圖所示,不需要的子集都可以暫時刪除,缺少的子集則需要你主動新建。刪除子集時記得順帶檢查一下「app.json」里的相關內容是否已經一並刪除。
注意:個人建議你新建一個「wxml」文件的同時,把對應的「js」和「wxss」文件一起新建好,因為微信應用號的配置特點就是解析到一個「wxml」文件時,會同時在同級目錄下找到同文件名的「js」和「wxss」文件,所以「js」文件需及時在「app.json」里預先配置好。
編寫「wxml」時,根據微信應用號提供的介面編碼即可,大部分就是以前的「div」,而現在就用「view」即可。需要用其它子集時,可以根據微信提供的介面酌情選擇。
使用「class」名來設置樣式,「id」名在這里基本沒有什麼用處。主要操作數據,不操作「dom」。

7. 以上是示例項目首頁的「wxml」編碼。從圖中就可以看出,實現一個頁面代碼量非常少。

8. 「Wxss」文件是引入的樣式文件,你也可以直接在裡面寫樣式,示例中採用的是引入方式:

9. 修改代碼後刷新一次,可以看到未設背景的「view」標簽直接變成了粉色。
注意:修改「wxml」和「wxss」下的內容後,直接 F5 刷新就能直接看到效果,修改「js」則需點擊重啟按鈕才能看到效果。

10. 另外,公共樣式可以在「app.wxss」里直接引用。

11. 「Js」文件需要在「app.json」文件的「page」里預先配置好。為了項目結構清晰化,在示例項目中的「index」首頁同級目錄新建其它四個頁面文件,具體如下:

經過以上步驟,案例中的五個底部菜單就全部配置完畢了。

如果你要入門的話,首先要掌握 js、html、css 知識。

然後可以通過查看微信公眾平台中的微信小程序開發教程來大概了解微信小程序的開發方式和調試方式, 官方的介紹還是比較簡單易懂的。

另外可以通過入門級的帖子http://www.gzbifang.com/newsshow.php?id=142 來了解具體開發流程。

以上~~
希望能給你一些幫助,希望採納·

B. 在C語言編程中應該注意哪些問題

1.先學習C語言的基礎知識。現在正在學C語言的在校學生可以直接進入第2步學習。
2.按照《C語言程序設計入門學習六步曲》進行上機練習。
3.在上機練習時要養成良好的編程風格。點擊查看C語言的編程風格

4.積極參加C、C++興趣小組,養成和老師與同學交流習慣,從而相互收益。有時別人不經意的一句話可能使你茅塞頓開--「一句話點醒夢中人」。

5.及時總結自己的學習經驗,養成寫C語言日記的習慣。軟體有編程日記功能。

6.從網上或教材上找一個自己感興趣的題目(選題時根據自己的能力,可先易後難,培養自己的成就感,如果有了成就感,即使再苦再累還是感覺C語言學習是一件快樂的事,同學們喜歡打游戲,經常通宵達旦地玩游戲也樂而不疲就是這個道理)進行實戰訓練,提高自己的C語言綜合應用能力。

7. 由於C語言靈活、強大,初學者要全面地掌握它是不可能的,因此在學習C語言的過程中,不要在細枝末節上浪費精力(比如++、--用於表達式的計算,實際上是沒有意義的),但一定要熟練掌握C語言的流程式控制制語句、數組、函數、指針等基礎知識的應用,為學習面向對象程序設計打下堅實的基礎。如果這些知識你學不好,要後續學習好C++、可視化的程序設計Visual C++或C++Builder就像空中樓閣,是不現實的。
C語言程序設計入門學習六步曲

筆者在從事教學的過程中,聽到同學抱怨最多的一句話是:老師,上課我也能聽懂,書上的例題也能看明白,可是到自己動手做編程時,卻不知道如何下手。發生這種現象的原因有三個:

一、所謂的看懂聽明白,只是很膚淺的語法知識,而我們編寫的程序或軟體是要根據要解決問題的實際需要控製程序的流程,如果你沒有深刻地理解C語言的語句的執行過程(或流程),你怎麼會編寫程序解決這些實際問題呢?

二、用C語言編程解決實際問題,所需要的不僅僅是C語言的編程知識,還需要相關的專業知識。例如,如果你不知道長方形的面積公式,即使C語言學得再好你也編不出求長方形的面積的程序來。

三、C語言程序設計是一門實踐性很強的課程,「紙上談兵」式的光學不練是學不好C語言的。例如,大家都看過精彩自行車雜技表演,假如,你從來沒有騎過自行車,光聽教練講解相關的知識、規則、技巧,不要說上台表演、就是上路你恐怕都不行。

出現問題原因清楚了,那麼如何學習呢?請你看【C語言學習六步曲】

在程序開發的過程中,上機調試程序是一個不可缺少的重要環節。「三分編程七分調試」,說明程序調試的工作量要比編程大得多。這里以如何上機調試C程序來說明C語言的學習方法。

第一步、驗證性練習

在這一步要求按照教材上的程序實例進行原樣輸入,運行一下程序是否正確。在這一步基本掌握C語言編程軟體的使用方法(包括新建、打開、保存、關閉C程序,熟練地輸入、編輯C程序;初步記憶新學章節的知識點、養成良好的C語言編程風格)。
初學者最容易犯的錯誤是:

1、沒有區分開教材上的數字1和字母l,字母o和數字0的區別,造成變數未定義的錯誤。另一個易錯點是將英文狀態下的逗號,分號;括弧()雙引號""輸入出入成中文狀態下的逗號,分號;括弧(),雙引號「」造成非法字元錯誤。

2、C語言初學者易犯語法錯誤:使用未定義的變數、標示符(變數、常量、數組、函數等)不區分大小寫、漏掉「;」、「{」與「}」、「(」與「)」不匹、控制語句(選擇、分支、循環)的格式不正確、調用庫函數卻沒有包含相應的頭文件、調用未C聲明的自定義函數、調用函數時實參與形參不匹配、數組的邊界超界等。

3、修改C語言語法錯誤時要注意以下兩點:

(1)、由於C語言語法比較自由、靈活,因此錯誤信息定位不是特別精確。例如,當提示第10行發生錯誤時,如果在第10行沒有發現錯誤,從第10行開始往前查找錯誤並修改之。

(2)、一條語句錯誤可能會產生若干條錯誤信息只要修改了這條錯誤,其他錯誤會隨之消失。特別提示:一般情況下,第一條錯誤信息最能反映錯誤的位置和類型,所以調試程序時務必根據第一條錯誤信息進行修改,修改後,立即運行程序,如果還有很多錯誤,要一個一個地修改,即,每修改一處錯誤要運行一次程序。
第二步、照葫蘆畫瓢
在第一步輸入的C程序的基礎上進行試驗性的修改,運行一下程序看一看程序結果發生了什麼變化,分析結果變化的原因,加深新學知識點的理解。事實上這和第一步時同步進行的,實現「輸入」加深知識的記憶,「修改」加深對知識的理解。記憶和理解是相輔相成的,相互促進。

例如:將最簡單的Hello World!程序
#include "stdio.h"
int main()
{
printf("Hello World!\n");
return 0;
}
中的

printf("Hello World!\n");

中的Hello World!改成你的姓名,運行一下程序,看有什麼變化?

再如求1+2+3...+100的和的程序

#include <stdio.h>

main()

{

int i,sum=0;

for(i=1;i<=100;i++)
{
sum=sum+i;
}
printf("sum=%d\n",sum);
}

第1次將for(i=1;i<=100;i++)中的100改成50,運行一下程序,看有什麼變化?

第2次將for(i=1;i<=100;i++)中的i++改成i=i+2,運行一下程序,看有什麼變化?

找出程序結果變化的原因,就加深了對C語句的理解。

第三步、不看教材看是否能將前兩步的程序進行正確地輸入並運行。

在這一步要求不看教材,即使程序不能運行,看能否將其改正,使其能正確運行。目的是對前兩步的記憶、理解進一步強化。

第四步、增強程序的調試能力

在教材中每章都有C語言初學者易犯的錯誤,按照易出錯的類型,將教材中的正確的程序改成錯誤的程序,運行一下程序,看出現的錯誤信息提示,並記下錯誤信息,再將程序改成正確的,運行一下程序。這樣反復修改,就能夠學習C語言程序發生錯誤的原因和修改錯誤的能力。

注意:每次只改錯一個地方,目的是顯示發生該錯誤的真正原因,避免一次改動多個地方,搞清發生錯誤的真正原因,切記!!!!

注意:上機調試程序時要帶一個記錄本,記下英文錯誤提示信息和解決該錯誤問題的方法,積累程序調試經驗,避免在編程犯同樣的錯誤,切記!!!!。

例如,將Hello World程序中語句

printf("Hello World!\n");

中的;改成中文的分號;

運行一下程序,看有什麼結果?

調試程序是一種實踐性很強的事,光紙上談兵是是沒用的,就像游泳運動員只聽教練講解示範,而不親自下水練習,是永遠學不會游泳的。

即使在優秀的程序員編寫程序也會犯錯誤的,可能事最低級的語法錯誤,但他能快速發現錯誤並改正錯誤,而我們C語言初學者面對錯誤提示,不知道發生了什麼錯誤,如何改正,這就事差別。

第五步、研究典型的C語言程序,提高程序設計能力

C語言初學者遇到最多的困惑是:上課也能聽懂,書上的例題也能看明白,可是到自己動手做編程時,卻不知道如何下手。發生這種現象的原因是:所謂的看懂聽明白,只是很膚淺的語法知識,而沒有深刻地理解C語言的語句的執行過程(或流程)。

計算機是按照人的指令(編寫的程序)去執行的,如果不知道這些C語句在計算機中是如何執行的,你怎麼回靈活運用這些知識去解決實際問題呢?

解決問題的方法是要先理解C語言各種語句的流程(即計算機是如何執行這些語句的過程),然後研讀現成C語言經典程序,看懂別人事如何解決問題的,以提高自己的程序設計能力。
第六步、研究課程設計源成序,提高C語言的綜合應用能力.

C. 小程序製作流程有哪些

小程序製作流程有哪些?一般做小程序,都會用到支付功能,一般想要支付功能都必須要有營業執照。

步驟一:准備工作

在做微信小程序之前,首先需要准備這個東西,小程序賬號、微信支付商戶ID和密鑰l以及微信支付證書下載。

步驟四:一鍵發布小程序

組件設置完成之後,點擊保存並發布,發布完成之後,再立即授權給木魚小鋪,木魚小鋪同意之後,再點擊一鍵發布,輸入您的微信支付商戶ID和微信支付密鑰信息,點擊提交,給微信官方審核,審核通過之後,就可以在微信上搜索您的小程序了。

以上就是小程序製作流程,大家可以嘗試使用以上的方法,希望以上的內容,對你有所幫助!

D. Web前端工程師的入門指南-教你如何成為一名web前端開發工程師

今天小編要跟大家分享的文章是關於Web前端工程師的入門指南-教你如何成為一名web前端開發工程師。經過如此多的試驗和測試,而不是說你從頭開始創建了所有內容,接著,你在網頁上創建了第一個登錄表單時,你感覺如何?經過了多次更改後,將布局分配給第一個Web應用程序時感覺如何?當成功處理了數千個用戶的操作時,你感覺如何?

大多數Web開發人員都經歷了上述所有階段,最初可能會對其中某些感到沮喪,但是當他們看到自己的網站正在運行並且人們在世界各地使用它時,總體感覺確實令人興奮和驚奇。Web開發人員負責許多任務,從收集需求到設計網站,處理網站的後端部分,並使其成功地為用戶服務。每年,行業中都會涌現出新技術和工具,以提高開發人員的工鄭槐作效率,並為用戶提供更好的網站。對於他們來說,保持在Web開發游戲之上的挑戰變得越來越大。今天,我們將討論要在2020年成為Web開發人員的完整地圖。這將是針對所有開發人員(前端,後端和全棧)的實用指南。


1、首先確定你的目標或道路


我們將討論很多技術,趨勢和工具,但我們不希望您不知所措,因此你需要首先決定要成為一名Web開發人員要做什麼,因為這將幫助你選擇合適的工具。和學習技術。成為Web開發人員的原因有很多,下面列出了一些選擇因素:


·你想作為一卜叢賀名Web開發型派人員在一家公司工作,這是最普遍的原因。


·你想以自由開發人員的身份來開始自己的業務或代理。


·你可以成為其他公司的顧問。


·你可以創建自己的應用來賺錢。


·編碼是你的業余愛好。


從上述感興趣或目標的領域,你可以選擇適用於你的目標的正確工具和技術。如果你的目標是成為一名前端開發人員,則可以選擇前端開發的工具和技術。後端和全棧開發也是如此。


2、Web開發的基本工具和軟體


·
計算機和操作系統:如果沒有計算機和操作系統,則無法編寫代碼。要學習Web開發,你不需要任何高端計算機(如果你擁有的話,那麼更好)。你可以使用任何類型的中型筆記本電腦或台式機。對於操作系統,可以使用適合你的MacOS,Windows(最新版本)或Linux。


·文本編輯器/
IDE:毫無疑問,VSCode適用於大多數情況和大多數語言。它具有良好的性能,出色的擴展性,內置的終端功能以及大量功能。在2019年StackOverFlow調查中,VSCode也是開發人員的首選。你還可以選擇其他一些不錯的選擇,例如Sublime
Text或Atom。如果我們談論IDE,那麼是Visual
Studio(#或C#),Eclipse和Netbeans(java)。是不錯的選擇。


·
Web瀏覽器:大多數開發人員的首選是Chrome或Firefox。Chrome速度很快,並且使用V8引擎(JavaScript引擎)。Firefox也取得了長足的進步,其中的一些好東西不在chrome瀏覽器中。兩種瀏覽器都有出色的開發工具,可以對Web開發中的問題進行故障排除。


·終端:您將使用一些系統命令來使用CLI進行很多工作。您可以將默認或第三方終端用於您的Web開發項目。Bash,Zsh,Powershell,Git
Bash,iTerm,Hyper這些都是可以使用的選項。


·設計(可選):並不是每個人都需要學習。在公司中,有專門的團隊來製作圖像,徽標或草圖,但是如果您是自由職業者,則可能必須學習Adobe
XD,Photoshop,Sketch或Figma。


3、從HTML和CSS開始


HTML和CSS是Web開發的基本構建塊。無論您的Web應用程序有多先進,或者使用什麼框架和後端語言,都必須使用HTML和CSS構建前端應用程序。因此,這是在Web開發中要學習的第一件事。


·HTML5(語義元素,屬性,文檔類型等)


·CSS基礎知識顏色,字體,位置,盒子模型等。


·CSSGrid和Flexbox對齊內容或創建列。


·CSS自定義屬性


4、響應式布局


您的應用程序應該在所有類型的設備(例如智能手機,平板電腦,台式機,iPad或任何其他屏幕尺寸的設備)上都可以查看和使用。因此,了解創建響應式設計或布局非常重要。讓我們來看一些重要的主題。


·了解如何設置視口


·媒體查詢不同的屏幕尺寸。


·流體寬度


·雷姆單位


·移動優先


5、自定義可重用CSS組件


與其依賴大型的CSS框架(如Bootstrap),不如創建自己的模塊化,可重用的CSS組件以在項目中使用。如果您構建自己的定製設計,則無需導入完整的庫。您創建只需要特定UI的組件。的新趨勢最近還出現了有助於更有效地編寫CSS代碼的代碼。如果你已經了解CSS,那麼您無需在學習Saas上花費很多精力。Saas是CSS預處理程序,可為標准CSS添加更多功能並使其更加高效。你可以使用變數,嵌套,條件語句來減少CSS的重復並提高其效率。你還可以為每個可重用組件創建單獨的Saas文件。Sass確實節省了很多時間,所以你絕對應該在2020年學習它。


6、CSS框架


學習CSS框架的普及程度不如去年,但對於不擅長設計的開發人員而言,仍然非常相關或有用。有許多流行的CSS框架可供使用,其中一些如下。


·Bootstrap是最流行的CSS框架。學習引導程序也有助於學習其他框架。


·Tailwind
CSS是其他正在流行的框架,與其他框架幾乎沒有什麼不同。它是一組實用程序類,因此您可以創建自己的按鈕和其他看起來與其他按鈕確實不同的東西。它們也是高度可定製的。


·物化


·布爾瑪


7、前端必須語言:JavaScript


學習HTML和CSS之後,接下來需要學習的是Vanilla
Javascript。對開發人員來說,掌握javascript基本知識非常重要。您將在伺服器端語言(例如PHP,Python或#)中使用大量javascript,並且如果您想與React,Angular,NodeJS,Vue或任何其他javascript框架或庫一起使用,則非常需要學習這種語言。以下是你應該在javascript中涵蓋的一些重要主題


·JavaScript基礎知識(變數,數據類型,函數,條件等)


·DOM(文檔對象模型)


·JSON(JavaScript對象表示法)


·提取API(請求/響應/Ajax)


·如果您想轉向React,Vue,Angular或其他框架,現代JS(ES6)概念對於學習非常重要。


8、一些重要工具


Web開發中將使用一些工具。這些工具將幫助你進行調試,提高生產率,管理代碼,與其他開發人員合作以及類似的東西。讓我們討論其中一些工具。


·
Git(版本控制)和Github是您肯定會在2020年學習的最受歡迎的工具。Git在與其他開發人員協作和管理代碼方面有很多幫助。您還可以選擇其他一些選項,例如GitLab,Bitbucket和其他一些選項。


·
了解如何使用瀏覽器開發工具。無論是chrome還是firefox,您都應該知道如何使用不同的選項卡,例如元素選項卡,javascript控制台,用於請求和響應的網路選項卡,應用程序選項卡以及其他用於不同目的的選項卡。


·大多數IDE或文本編輯器都具有添加擴展名或插件的功能,這對提高生產力和構建Web應用程序非常有幫助。例如,Visual
Studio代碼中的VSCode擴展可幫助下載擴展,例如實時伺服器或實時saas編譯器以與React一起使用。


·Emmet是另一個很棒的工具,它允許您編寫非常快速的HTML和CSS,這有助於提高開發人員的生產力。


·
學習使用javascript軟體包管理器,例如NPM和Yarn。如果您正在使用Javascript框架或庫(例如React),那麼這些軟體包管理器將使用很多,但是對於其他語言(例如Python或Php),您將使用不同的軟體包管理器。


·
如果要在前端安裝NPM軟體包,則必須使用Webpack或Parcel。如果要創建自己的模塊,或者要將一個javascript文件帶到另一個javascript文件,則默認情況下不能僅使用瀏覽器來執行此操作,因此需要Webpack或Parcel對其進行捆綁。


9、基本部署


此時,一旦你知道應該為前端開發學習什麼工具或技術,就需要知道如何在Internet上部署前端網站。如果你正在為小型企業構建一些小型應用程序,登錄頁面或個人站點,則無需學習AWS或DevOps,僅因為它們具有光澤和新潮。你將使事情變得更加復雜而不是簡單。你需要在2020年學習一些部署工具和步驟。


·域注冊(Namecheap,Google等)


·託管託管(InMotion,Hostgator,Bluehost等)


·靜態主機(Netlify,Github頁面)


·SSL證書。


·FTP,SFTP(文件傳輸協議)非常適合小型應用程序。


·SSH(安全外殼),用於高級應用程序。


·CLI和Git。


到目前為止,我們討論的任何工具,技術趨勢或步驟都是前端開發的一部分。您尚不知道該框架,但可以為個人和小型企業構建網站,也可以構建適合移動設備的布局。您還可以使用到目前為止討論的工具或技術來部署小型應用程序或項目。如果您想申請工作,那麼學習一些前端框架(如React,Vue或Angular)將是很棒的。


10、前端框架和狀態管理


框架使您可以進行更高級的前端開發。框架為您提供了許多優勢,例如可重用的組件,更有條理的UI或頁面交互。這對於協作更好,也有助於編寫簡潔的代碼。另外,了解狀態管理。每個框架都有不同的方法。以下是2020年的一些流行框架和狀態管理器。


·React:React庫是最流行的Web開發學習方法,與其他框架和庫相比,它相當容易。React開發人員還有很多工作要做。您可以將Rex和
ContextAPI與Hooks一起使用以進行狀態管理。


·Vue:
Vue也越來越受歡迎,開發人員也更喜歡學習Vue。與React和Angular相比,Vue最容易學習。VueX是為視圖而構建的狀態管理器。


·Angular:此框架通常在大型組織中使用。它具有相當陡峭的學習曲線。用Angular學習
TypeScript也很好。它允許您使用可選的靜態類型並支持ES2015的功能。NGRX和Services是可以學習此框架的良好狀態管理器。


可選學習:


·
如果您具有這三個框架之一的知識,那麼您還可以使用Svelte,它是一個JavaScript編譯器,可讓您生成純凈的原始JS代碼並幫助您輕松構建用戶界面。


·
了解伺服器端渲染。NextJS(React)和NuxtJS(Vue)是允許您在伺服器上運行React和Vue的框架。兩者都有很好的功能,例如更好的SEO,文件系統路由,自動代碼拆分,靜態導出,JS中的CSS和許多其他功能。


·靜態網站生成器:Gatsby(反應式)和Gridsome(Vue)


我們已經討論了所有大多數前端開發工具和技術。現在讓我們討論成為後端開發人員或全棧開發人員的語言和技術。


11、伺服器端語言(選擇一種)


您應該至少了解一種伺服器端語言。要在2020年選擇一種語言,下面提供了一些選項...


·NodeJS(不是語言,而是運行時環境)


·Python(非常適合初學者)


·Java(適合大型組織)


·Php(適合自由職業)


·Ruby(2020年少兩極)


·C#


·Go


注意:無論你喜歡學習哪種伺服器端語言,都要確保你了解使用該語言的數據結構和演算法。數據結構和演算法將幫助您為用戶呈現數據,並將幫助您優化Web應用程序中的代碼。我們特別建議您專注於使用數組和字元串(最重要)。你將同時使用這兩種方法。


12、伺服器端框架(選擇一項)


一旦學習了自己選擇的一種伺服器端語言,就可以使用其中一種語言框架。您可以選擇以下給出的選項之一...


·Node.js_Express,Koa,Adonis,Feather.js,Nest.js


·Python:Django,Flask,


·Java:SpringMVC,Grails


·PHP:Laravel,Symfony,Codeignitor,Slim


·Ruby:Sinatra上的RubyonRails


·C#:ASP.NETMVC


·Go:Revel


13、資料庫(選擇一項)


大多數Web應用程序都需要一個存儲數據的地方。在某些情況下,某些技術或某些語言可以與某些資料庫配合使用。例如:在Mern堆棧中,M代表MongoDB,而在LAMP堆棧中M代表MySQL,但完全取決於您要為應用程序選擇哪個資料庫。我們將討論2020年一些流行的資料庫。


·關系資料庫:RDBMS仍然是最受歡迎的資料庫。最喜歡使用PostgreSQL,MySQL,MSSQL。


·NoSQL:MongoDB,RethinkDB,CouchDB


·雲資料庫:Firebase,AzureCouldDB,AWS


·輕量級和緩存:Redis,SQLlite,NeDB


在學習資料庫時,您還將學習RDBMS,ORM(對象關系映射器)或ODM(對象數據映射器)的SQL(結構化查詢語言)。GraphQL
:(可選)您可以了解現在流行的GraphQL。這是API的查詢語言。它具有類似於JSON的簡單語法,並且相當容易實現。


14、CMS:內容管理


您絕對應該了解內容管理系統,尤其是如果您是自由職業者。CMS用於將內容添加到您的網站或應用程序。客戶能夠更新自己的內容非常好。


·
傳統CMS:WordPress(PHP),Drupal(PHP),Keystone(Javascript),Enro(Javascript)


·其他CMS:DEDECMS,帝國CMS,PHPcms,Prismic.io,Strati。


15、部署和DevOps


託管全棧應用程序或後端應用程序比僅前端應用程序要復雜一些,尤其是當您擁有資料庫時。確保您知道如何使用CLI進行部署。了解有關用於部署應用程序的以下內容。


在大多數公司中,有不同的團隊從事DevOps的工作。因此,擁有有關DevOps的知識完全是可選的。您可以了解到,如果您正在從事自己的項目。


·SSH(安全外殼)


·Web伺服器環境:NGINX,Apache


·應用程序託管:Linode,Heroku,AWS,Azure,Now。


·虛擬化:Docker,Vagrant


·測試:單元,功能,集成等


·負載平衡,監視,安全性。


以上所有技術工具都足以使您成為前端,後端或全棧開發人員。根據最終目標選擇正確的工具和技術。


以上就是小編今天為大家分享的關於Web前端工程師的入門指南-教你如何成為一名web前端開發工程師的文章,希望本篇文章能夠對正在從事web前端工作的小夥伴和正在學習web前端知識的夥伴們有所幫助,想要了解更多web前端相關知識記得關注北大青鳥web培訓官網。最後祝願小夥伴們工作順利,成為一名優秀的web前端開發工程師!


英文|#/how-to-become-a-web-developer-in-2020-a-complete-guide/翻譯|web前端開發(ID:web_qdkf)


E. 自學Java怎麼入門

自學java怎麼算入門? 衡量標準是什麼?

我從個人角度分為三個階梯: 初學,入門,高手

第一: 初學 (理論知識階段)

很多同學剛剛入門學習java,看書,或者看視頻。這個階段是積累理論知識的時候,相對比較容易,一個小知識點,信息量少,跟著老師的思路走就可以。

在這個階段,很多同學學得很快,感覺編程好簡單。

隨著學習的深入,大多數同學會產生混亂。 為什麼?所有的技術背後都有原理,前面都有應用場景,不同應用場景有不同使用方法。 信息量逐級增加。

信息量逐級增大後,會有什麼問題?

理論知識階段,更重要的是理解原理和規律,知識點的細節記不住可後面查找。學習方法更重要的是交流討論,理解和總結。 多問為什麼是關鍵!

第二: 入門 (熟練度)

一個項目從0到1的過程才是最寶貴的,也是初學者提升最大的部分。但從書本或者視頻中,很難學習這個過程。

技術的應用能力換句話說是 技術的分解排序能力, 當遇到一個需求,該如下實現?

基本的思路是把需求分解成原子操作。 原子操作代表開發當中的基本操作,也就是在知識點當中學到的,比如資料庫操作,sql,框架的基本使用等等。

如果能把需求分解為原子操作序列,開發完成只是時間快慢的問題。往往剛剛開始學習編程的同學,不善於或者懶得去思考。畢竟看視頻是被動的,分析問題是主動思考。學習只是看看視頻,本質上是思考的懶惰。

所以需要找大量的練習和項目案例進行實踐!!!

第三: 高手(業務和性能)

程序員是把理論知識組合應用起來解決用戶的問題。(或者提高用戶的效率)

第三個等級的知識更加多元化,不同行業涉及不同的領域知識,信息量也是增大。

所以在企業開發中,需要考慮更多和成本,時間,用戶等相關的問題。

總結: 掌握理論知識後,需要大量的代碼去實踐,才算入門。

分享下我們的學習路線,供你參考一下!


希望能幫到你,望採納!

F. C++課 沒聽··· 不懂··· 關於什麼類啊 對象的~求詳細解釋

//修改後的程序如下:
#include <iostream>
using namespace std;
class stud
{
public: //增加public 定義,VS2010在未使用此定義時默認為 private
void setscore(int sc);
void inscore();
void getscore();
int score;
};

stud s;
int main()
{
s.setscore(0); // 增加 s. , 調用 s 的成員函數 , 下同
s.inscore();
s.getscore();
}

void stud::setscore(int sc) // 修改 函數類型,與類定義一致,增加stud::, 表示是 stud的成員函數
{ score=sc; }
void stud::inscore()
{ cin>>score; } // 去掉s. , 下同。
void stud::getscore()
{
cout<<score<<endl;
}

// 建議不在類的 成員函數中 使用 CIN,COUT等,否則失去封閉的意義了

閱讀全文

與程序員編輯指南相關的資料

熱點內容
dns備用什麼伺服器 瀏覽:1000
中達優控觸摸屏編譯失敗 瀏覽:80
上海科納壓縮機 瀏覽:680
python工時系統 瀏覽:551
查好友ip命令 瀏覽:118
通達信python量化交易 瀏覽:506
cnc編程工程師自我評價 瀏覽:132
書本文件夾夾子怎麼安 瀏覽:803
如何更改編譯器的背景 瀏覽:86
linuxcp拷貝文件 瀏覽:610
我的世界如何屏蔽別人伺服器 瀏覽:909
單片機燒錄員 瀏覽:972
美國數據伺服器可以部署什麼業務 瀏覽:973
如何卸載伺服器中的ie 瀏覽:42
單片機必須學編程嗎 瀏覽:155
如何判斷是否與伺服器連接資料庫 瀏覽:742
吃甜食會緩解壓力嘛 瀏覽:319
pdf魔鬼 瀏覽:29
二維數組遞歸解決演算法問題 瀏覽:384
java反射例子 瀏覽:672