游戲編程自學(xué),有經(jīng)驗(yàn)的大佬可以提供一些建議嗎?
作為一名IT從業(yè)者,同時(shí)也是一名計(jì)算機(jī)專業(yè)的教育工作者,我來回答一下這個(gè)問題。
首先,專科生完全可以通過學(xué)習(xí)編程而就職到開發(fā)崗位上,目前IT行業(yè)內(nèi)也有很多專科畢業(yè)的程序員,其中很多專科出身的程序員還非常優(yōu)秀。
對(duì)于專科生來說,要想學(xué)習(xí)編程,需要首先根據(jù)自身的知識(shí)基礎(chǔ)和能力特點(diǎn)來選擇學(xué)習(xí)切入點(diǎn),不同的編程語言有不同的應(yīng)用場(chǎng)景,也有不同的學(xué)習(xí)路線,如果沒有一個(gè)明確的發(fā)展方向,那么可以選擇學(xué)習(xí)一門全場(chǎng)景編程語言,比如Java就是不錯(cuò)的選擇。
Java語言經(jīng)過多年的發(fā)展,已經(jīng)形成了一個(gè)龐大且健全的語言生態(tài),在生產(chǎn)環(huán)境下有大量的應(yīng)用。Java可以用于Web開發(fā)、移動(dòng)互聯(lián)網(wǎng)開發(fā)和大數(shù)據(jù)開發(fā)等場(chǎng)景,而且由于Java語言自身的性能比較穩(wěn)定且擴(kuò)展性也比較強(qiáng),所以很多大型開發(fā)團(tuán)隊(duì)往往更愿意采用Java語言。
雖然當(dāng)前Python語言的上升趨勢(shì)比較明顯,但是Python語言目前大量的就業(yè)崗位都集中在大數(shù)據(jù)和人工智能領(lǐng)域,而這些領(lǐng)域?qū)τ陂_發(fā)人員的要求還是比較高的,所以雖然Python語言本身比較簡(jiǎn)單,但是Python開發(fā)崗位往往對(duì)于從業(yè)者的知識(shí)結(jié)構(gòu)有比較高的要求。從就業(yè)的角度來看,專科生學(xué)習(xí)Python語言還是存在一定就業(yè)問題的。
學(xué)習(xí)Java語言需要重點(diǎn)突破三個(gè)學(xué)習(xí)難點(diǎn),其一是如何建立面向?qū)ο蟮木幊趟枷耄黄涠侨绾谓⒁?guī)范的編程模式;其三是如何通過框架和平臺(tái)來擴(kuò)展Java的開發(fā)邊界。
Java語言的初期學(xué)習(xí)難度是比較大的,由于Java語言的抽象程度比較高,所以在學(xué)習(xí)的初期要通過大量的實(shí)驗(yàn)來為各種抽象概念建立畫面感。對(duì)于初學(xué)者來說,要想獲得一個(gè)規(guī)范的編程模式,要重視編程模式的學(xué)習(xí)。
最后,在掌握了基礎(chǔ)的Java開發(fā)知識(shí)之后,應(yīng)該通過實(shí)習(xí)崗位來積累更多的實(shí)踐經(jīng)驗(yàn)。
我從事互聯(lián)網(wǎng)行業(yè)多年,目前也在帶計(jì)算機(jī)專業(yè)的研究生,主要的研究方向集中在大數(shù)據(jù)和人工智能領(lǐng)域,我會(huì)陸續(xù)寫一些關(guān)于互聯(lián)網(wǎng)技術(shù)方面的文章,感興趣的朋友可以關(guān)注我,相信一定會(huì)有所收獲。
如果有互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等方面的問題,或者是考研方面的問題,都可以在評(píng)論區(qū)留言,或者私信我!
學(xué)習(xí)java可以做游戲嗎?
可以的,可以做Java游戲。
【資料】
主要是用Java分支中的J2ME來寫,但是J2ME中需要Java的基礎(chǔ)知識(shí) 。
現(xiàn)在有大部分人,都是從零開始學(xué)J2ME的,學(xué)習(xí)J2ME的時(shí)候,總是從Java基礎(chǔ)開始學(xué)習(xí),而且現(xiàn)在講Java基礎(chǔ)的書籍中都是以J2SE來講基礎(chǔ),這就給學(xué)習(xí)造成了一些不必要的麻煩,下面將J2ME中用到的和不需要的Java基礎(chǔ)知識(shí)做一個(gè)簡(jiǎn)單的說明。
J2ME中使用到的Java基礎(chǔ)知識(shí):
1、Java語法基礎(chǔ):包括基本數(shù)據(jù)類型、關(guān)鍵字、運(yùn)算符等等
2、面向?qū)ο蟮乃枷耄侯惡蛯?duì)象的概念,繼承和多態(tài)等等。
3、異常處理
4、多線程
但看不懂編程代碼怎么辦?
我本人也是一個(gè)編程愛好者,以下以我的個(gè)人見解,提出個(gè)人的一些看法和建議。
我認(rèn)為這個(gè)問題問得本身就顯得有點(diǎn)矛盾,想學(xué)卻擔(dān)心自己看不懂代碼學(xué)不來,試問哪個(gè)編程人員不是從零開始的。
1、堅(jiān)定信念
我認(rèn)為學(xué)習(xí)是一種從心開始的過程,想學(xué)就說明有學(xué)習(xí)的心,有心之后就是行動(dòng)。很多人開始有學(xué)習(xí)的心是受到外界因素的影響,比如說看別人學(xué)習(xí)編程可以自己編寫一些小程序、APP之類的很酷,然后自己就滋生想學(xué)習(xí)編程的想法,又或者是看到別人、聽別人說學(xué)習(xí)編程日后就業(yè)好、工資好、可以做副業(yè)等等之類的好處萌生學(xué)編程的想法,但真正把心落地,拿起編程書,看編程視頻,開始接觸代碼時(shí),發(fā)展學(xué)習(xí)編程并沒有自己想象中的那么簡(jiǎn)單,又開始打退堂鼓了,覺得自己不行,學(xué)不來編程等等,開始對(duì)編程產(chǎn)生排斥心理,這樣自然也就不可能學(xué)會(huì)編程。我認(rèn)為學(xué)習(xí)編程,必須要有堅(jiān)定的學(xué)習(xí)編程的信念。
2、從零開始
學(xué)習(xí)編程是一個(gè)逐漸積累、不斷提升的過程。剛接觸編程就得從最最基礎(chǔ)的知識(shí)學(xué)習(xí),磚頭是蓋成摩天大廈的基礎(chǔ),沒有堅(jiān)實(shí)的基礎(chǔ)哪會(huì)有大廈。學(xué)習(xí)編程初期從零開始學(xué)習(xí)編程基礎(chǔ)理論知識(shí),記憶編程代碼,有了初步的編程認(rèn)知后,簡(jiǎn)單實(shí)操感受編程的魅力。有了基礎(chǔ)以后就是提升,多看實(shí)例,學(xué)習(xí)編程的編程方法,看多了自然也就會(huì)了,同時(shí)融匯貫通形成自己的編程手法,這需要時(shí)間的積累、沉淀,正所謂沒有量變?cè)趺磿?huì)有質(zhì)變出現(xiàn)。
以上是我的個(gè)人見解,希望對(duì)你有所幫助,謝謝!
怎么樣迅速提高自己編程能力?
軟件工程專業(yè)是最近幾年比較熱門的專業(yè),就業(yè)情況也不錯(cuò),不少科技公司對(duì)軟件工程專業(yè)的畢業(yè)生也有較好的評(píng)價(jià),所以軟件工程專業(yè)是一個(gè)不錯(cuò)的選擇。
對(duì)于軟件工程專業(yè)的學(xué)生來說,能夠完成學(xué)校安排的課程和實(shí)踐環(huán)節(jié),通常就能有一個(gè)比較完善的學(xué)習(xí)過程,由于軟件工程專業(yè)非常注重學(xué)生動(dòng)手能力的培養(yǎng),所以軟件工程專業(yè)的畢業(yè)生往往具有較強(qiáng)的動(dòng)手能力。
如果想迅速提高自己的編程能力需要從以下幾個(gè)方面入手:
第一:選擇一個(gè)主攻方向。目前是大數(shù)據(jù)、云計(jì)算和人工智能的時(shí)代,選擇這些比較有代表性的技術(shù)作為自己的主攻方向是一個(gè)不錯(cuò)的選擇,有了方向就可以制定一個(gè)系統(tǒng)的實(shí)踐計(jì)劃。比如選擇大數(shù)據(jù)方向可以學(xué)習(xí)Scala、Java、Python、R等語言,然后在平臺(tái)下進(jìn)行針對(duì)性的功能開發(fā),這對(duì)編程能力的提升有重要的幫助。目前Spark平臺(tái)在大數(shù)據(jù)領(lǐng)域使用的比較多,看一個(gè)Structured Streaming的小例子,分別采用Scala、Java、Python和R語言實(shí)現(xiàn):
第二:系統(tǒng)的開展實(shí)驗(yàn)。編程能力的提升需要結(jié)合算法的學(xué)習(xí),比如在大數(shù)據(jù)領(lǐng)域里一個(gè)非常重要的崗位就是大數(shù)據(jù)分析,大數(shù)據(jù)分析需要掌握算法、編程語言和場(chǎng)景應(yīng)用,對(duì)于大學(xué)生來說,場(chǎng)景應(yīng)用可以通過模擬來完成,而算法和編程語言的學(xué)習(xí)則要有一個(gè)系統(tǒng)的過程。目前在數(shù)據(jù)分析領(lǐng)域里,Python語言應(yīng)用的比較廣泛,在Python語言完成數(shù)據(jù)分析的過程中需要系統(tǒng)的學(xué)習(xí)Numpy、Matplotlib、Scipy等庫的使用。看一個(gè)Numpy庫的小例子:
再看一個(gè)Matplotlib和Numpy結(jié)合應(yīng)用的小例子:
第三:善于總結(jié)。每完成一個(gè)實(shí)驗(yàn)都要對(duì)實(shí)驗(yàn)的過程和思路進(jìn)行總結(jié),然后舉一反三,再動(dòng)手完成一個(gè)類似場(chǎng)景的開發(fā),這是建立編程思想的一個(gè)必要過程。
我的主要研究方向是大數(shù)據(jù)和人工智能,目前也在帶相關(guān)方向的研究生,我會(huì)陸續(xù)在頭條寫一些軟件開發(fā)方面的文章,感興趣的同學(xué)可以關(guān)注我,相信一定會(huì)有所收獲。
如果有軟件開發(fā)方面的問題,或者是讀研方面的問題,都可以咨詢我,謝謝!
零基礎(chǔ)如何入門軟件編程?
軟件編程包含很多種,前端,后端,客戶端等等這些都屬于軟件編程,因此你要先確定一個(gè)方向,比如你想學(xué)習(xí)網(wǎng)頁編程,以php作為你的主要編程語言。下面我們來詳細(xì)介紹下。
要學(xué)習(xí)什么Html,這是最基本的語言,也是網(wǎng)頁的主要構(gòu)成體Css,這是網(wǎng)頁樣式的主要書寫語言,也是必學(xué)的Js,主要用來實(shí)現(xiàn)網(wǎng)頁效果,是很重要也很強(qiáng)大的一門語言,而且會(huì)越來越強(qiáng)大,因此要加強(qiáng)學(xué)習(xí)。Php,這是后端的主要實(shí)現(xiàn)語言(盡管nodejs完全可以代替它,但是我們這里不考慮)Apache,這是用來作服務(wù)器的,處理用戶請(qǐng)求,php代碼會(huì)交給php處理,處理好之后再返回響應(yīng)給瀏覽器Mysql,用作數(shù)據(jù)庫,用起來很方便要怎么學(xué)可以去“慕課網(wǎng)”或者“極客學(xué)院”找相關(guān)的視頻課程學(xué)習(xí),看視頻往往會(huì)比文字有更好的效果,而且里面每節(jié)課還有隨堂練習(xí),這個(gè)對(duì)于知識(shí)的鞏固是很有作用的。如下圖是慕課網(wǎng)手機(jī)端APP的截圖:
里面還可以進(jìn)行提問,有眾多專業(yè)的網(wǎng)友會(huì)為你解答,當(dāng)然遇到問題也可以在悟空問答提出啦。如果把里面的視頻都看了,而且還親自動(dòng)手把教程里面的代碼操作了一遍,自己再寫其他網(wǎng)頁應(yīng)該問題不大的。
該怎么持續(xù)提升技能在實(shí)際項(xiàng)目中運(yùn)用是最快的提升方法,遇到問題先自己去搜索,自己去研究,靠自己解決的總會(huì)是記憶最深的。下面就可以多刷刷論壇,看看別人分享的東西,學(xué)習(xí)他們的經(jīng)驗(yàn)和想法。還可以在Github上多看看一些好項(xiàng)目的源碼,多研究才能多獲得啟發(fā)。