大家好,感謝邀請,今天來為大家分享一下自己怎么開發(fā)一個軟件app的問題,以及和個人開發(fā)app最簡單方法的一些困惑,大家要是還不太明白的話,也沒有關(guān)系,因為接下來將為大家分享,希望可以幫助到大家,解決大家的問題,下面就開始吧!
想從零開始學(xué)開發(fā)app,該怎么做
感謝邀請,感謝信任~
我一直在做Java的開發(fā),中間自己做過Andorid的開發(fā),完成了一個小的APP,也有一些盈利,而IOS開發(fā)只是研究過,安裝完環(huán)境之后就沒有再繼續(xù)了(自己汗一個)。
我就用自己“淺薄的經(jīng)驗”,提一些建議。
AndroidorIOS首先要面對這樣的選擇,到底選擇哪個平臺。(我先把WindowsPhone默默地忽略掉)
因為不知道題主的零基礎(chǔ)是怎么個零基礎(chǔ):
如果會一些Java開發(fā)的話,只是沒有開發(fā)APP的經(jīng)驗,直接學(xué)習(xí)Android開發(fā)會比較簡單。IOS和Android開發(fā)的差別還是挺大的。
如果開發(fā)零基礎(chǔ),兩者的難度我覺得差不多,不過IOS開發(fā)的前提比較“貴”,需要一臺Mac;我不太建議安裝“黑蘋果”,感覺不是很好用。
Android開發(fā)一臺Window的電腦即可,一臺Android系統(tǒng)的手機(jī)(或者用模擬器替代),開發(fā)環(huán)境(JDK、AndroidSDK),IDE,
做Android開發(fā)的話,Java還是要學(xué)好的:Java的基礎(chǔ)語法,面向?qū)ο笏枷耄S玫念惡桶琁O,集合,異常等等;還要學(xué)習(xí)接口的開發(fā),數(shù)據(jù)庫入門知識。
Java學(xué)習(xí)的差不多了,再去看Android方面的知識:AndroidUI的各種控件及布局、網(wǎng)絡(luò)編程、數(shù)據(jù)存儲等等。
更多的知識點(diǎn)我也不好詳細(xì)說明,可以在網(wǎng)上找一些教學(xué)視頻,跟著視頻學(xué)習(xí)(初學(xué)者不建議看書,學(xué)習(xí)速度會比較慢)。
IOS開發(fā)需要一臺MacOS的電腦,不建議使用黑蘋果,一臺蘋果的手機(jī),說不定還需要一個平板,開發(fā)環(huán)境,IDE(XCode)。
開發(fā)語言,我學(xué)習(xí)的時候還是Object-C,現(xiàn)在應(yīng)該都是Swift。
接下來的建議我就不給了,因為...我的IOS開發(fā)生涯,到這里就結(jié)束了。
我將持續(xù)分享Java開發(fā)、架構(gòu)設(shè)計、程序員職業(yè)發(fā)展等方面的見解,希望能得到你的關(guān)注。怎樣開發(fā)一款軟件
這個問題比較籠統(tǒng)。
我可以以我個人的理解簡單的回答一下。
如果提出這個問題,說明你沒有軟件開發(fā)的經(jīng)驗。
軟件開發(fā)可以從最基本的可以簡單理解成為,用一種規(guī)定的語言系統(tǒng)寫出來的東西。
我們經(jīng)常看到的有用中文英文各種語言寫出來的小說,或者是寫出來的故事。軟件呢,就相當(dāng)于是一個成熟的故事,而你怎么把它寫出來呢?就是你用了什么樣的語言。
開發(fā)語言主要分為三大類:
1.網(wǎng)絡(luò)開發(fā)現(xiàn)在網(wǎng)絡(luò)已經(jīng)成為世界通訊的一座橋梁,好像Javascript、PHP、Ruby這幾類開發(fā)語言大部分是用作網(wǎng)絡(luò)開發(fā)方面。
2.企業(yè)軟件開發(fā)JAVA、C#、VB這幾類開發(fā)語言都實(shí)現(xiàn)了面向?qū)ο箝_發(fā)的目標(biāo),更多時候用于企業(yè)系統(tǒng)的開發(fā)。
3.系統(tǒng)軟件C語言、C++、Objective-C這些軟件更多是用在系統(tǒng)軟件開發(fā),嵌入式開發(fā)的方面。當(dāng)然,像JAVA、C#、VB很多時候也用于動態(tài)網(wǎng)站的開發(fā)。在很開發(fā)項目都會使用集成開發(fā)的方式,同一個項目里面使用多種開發(fā)語言,各展所長,同步開發(fā)。但所以在剛?cè)腴T的時候,建議您先為自己選擇一種合適的開發(fā)工具,“專注地投入學(xué)習(xí),全力一擊”。
上面說的是基本的語言,不同的語言有不同的特點(diǎn),就像中文,英語,俄語,法語一樣。語言和語言之間會有不同的語系,這個就不多細(xì)說了。
我們可以從最基本的數(shù)學(xué),簡單的數(shù)學(xué),1+1等于2這種。我們電腦手機(jī)上用到的各種計算器,就屬于這種簡單的軟件,他只是把數(shù)學(xué)的相關(guān)東西放進(jìn)去了而已。開發(fā)軟件也可以涉及到各方各面。我們平常說的ps這種軟件也是要有語言開發(fā)包開發(fā)出來的。它里面涉及到的數(shù)學(xué)公式,就不會像1+1這么簡單,它可能會涉及到各種的顏色數(shù)值的加減運(yùn)算。它里面也可能就不會涉及到數(shù)學(xué)運(yùn)算,它可能會涉及到函數(shù)運(yùn)算,矢量運(yùn)算等等的一些計算方式,總之你可以把它理解成它就是一種計算出來的一種東西。只是最后呈現(xiàn)到你面前的呢,是一種可以互動的啊,你可以下達(dá)什么命令,它可以完成什么命令的一種這種系統(tǒng)軟件。
比如說我們打開電腦上的ps軟件他可能后臺要進(jìn)行的操作有很多步,比如說他會先啟動主程序,然后再啟動主程序下面,帶動了其他子程序,或者它里面設(shè)置了各種預(yù)設(shè)的東西。這個時候在編寫軟件的時候,他會根據(jù)需要把這些東西都會寫進(jìn)去,他可能會給你留個后門,和通道。
總之你只要知道軟件是通過一種特殊的語言來寫成了一種成熟的工具就行了。
學(xué)習(xí)軟件開發(fā)難不難
首先我想強(qiáng)調(diào)的是:“學(xué)習(xí)從來都不是件容易的事,除非你是天才”。
所以,就更不用說軟件開發(fā),這個極其需要腦力和精力的學(xué)習(xí)。
軟件開發(fā),本身就是一門大學(xué)問,不僅僅需要有扎實(shí)的理論知識,還需要不斷的實(shí)踐經(jīng)驗積累。
當(dāng)然,不同平臺的軟件開發(fā),上手難易程度是不一樣的,而且跟該軟件開發(fā)所需的編程語言掌握程度關(guān)系也非常大。所以,學(xué)習(xí)軟件開發(fā)你得先把對應(yīng)的編程語言先學(xué)好學(xué)精。
這里簡單說下當(dāng)初我自學(xué)Android軟件開發(fā)的經(jīng)歷:
2011年剛畢業(yè)沒多久,我在一些論壇上看到很多牛人通過自己寫的移動端應(yīng)用或者游戲賺取了大量的廣告費(fèi),我在這些數(shù)字(金錢)的誘惑下決定自學(xué)Android軟件開發(fā),希望能從中分一杯羹。
那時候基本上是白天上班,晚上就窩在自己的小屋里,天天學(xué)習(xí)Java編程語言和Android軟件開發(fā)到凌晨2、3點(diǎn)。后期基礎(chǔ)學(xué)的差不多了就開始著手開發(fā)自己的App,每天晚上基本都是在完成一段自認(rèn)為比較滿意的代碼或者完成自己的App上一個比較重大的功能之后才回床休息。
那段時間很累,但人很興奮(我這得有多大的興趣啊)。雖然廣告費(fèi)沒賺到多少,但成功的把自己送進(jìn)了一個比較高大上的外企,薪資也翻了兩翻,算是正式踏進(jìn)了移動互聯(lián)網(wǎng)行業(yè)!
所以,對普通人來說軟件開發(fā)并不是件容易的事,但天道酬勤,勤學(xué)勤練自然就會變得容易!
前方有只程序猿:大家好,我是一只會寫代碼的IT猿,希望能與大家共同探討,共同進(jìn)步!歡迎關(guān)注我!
謝謝~
怎樣學(xué)習(xí)開發(fā)軟件
首先告訴你的是,計算機(jī)高級編程語言都是相似相通的,會了一門編程再去學(xué)習(xí)另一門會很容易。所以先選擇一個比較簡單的入個門,知道編程這么回事,對編程有一定的了解,然后再去深入學(xué)習(xí)和研究自己喜歡的那方面。下面主要面向兩種人分別推薦,第一種是什么基礎(chǔ)都沒有的,對電腦也不熟悉的人。另一種是了解一點(diǎn)電腦的基礎(chǔ)和使用,會通過百度查詢遇到的某些問題,能獨(dú)立解決一些問題的人。
不同語言輸出helloworld
如果你是第一種人。沒有任何基礎(chǔ),不了解什么是編程,對計算機(jī)也不是很了解,那么推薦C語言。一般來說,計算機(jī)相關(guān)專業(yè),都會開設(shè)C語言課程,C語言是高級語言里邊最基礎(chǔ)的,并且是面向過程的,所以相比較其他高級語言,學(xué)習(xí)起來入門簡單些。剛開始學(xué)習(xí)C語言編出來的程序都是黑框框,沒有界面,如果想做個正經(jīng)用的軟件,肯定得有界面,這個以后可以通過別的語言學(xué),因為C語言寫帶界面的程序太麻煩了。因為C語言基礎(chǔ),簡單,易上手,所以被大部分學(xué)校選為計算機(jī)基礎(chǔ)課程。
除了上述原因,最重要的一個就是C語言搭建編譯環(huán)境很方便,下載一個C語言的IDE即可,不需要進(jìn)行其他的配置,所謂編譯環(huán)境,就是你寫代碼并且編譯代碼的地方,也就是你的工作站,C語言的編譯環(huán)境,安裝一個編譯工具就搞定,方便。萬事開頭難,所有的人學(xué)編程剛開始大部分都會在搭建開發(fā)環(huán)境上卡住一陣,所以一般推薦零基礎(chǔ)的同學(xué)看視頻學(xué)習(xí),因為大部分視頻都是教你搭建環(huán)境的,跟著視頻一步步操作,比看書容易些。并且這些基礎(chǔ)課程免費(fèi)的很多,沒必要花錢購買。
網(wǎng)易云課堂搜索C語言顯示的結(jié)果
除了C語言入門,還可以通過學(xué)習(xí)網(wǎng)頁編程語言入門,因為編寫網(wǎng)頁的語言相比較而言簡單點(diǎn),并且寫好網(wǎng)頁就能看到界面,有成就感。剛開始接觸編程除了了解編程,更應(yīng)該培養(yǎng)興趣,增加成就感。不然剛上手就去研究電腦或者手機(jī)的帶界面的程序,那太難了,打擊你的信心。
網(wǎng)頁編程可以從HTMl入手學(xué)習(xí),這個非常簡單,并且這個寫好之后用瀏覽器直接打開就能顯示你寫的東西,并且這個甚至可以不用編譯環(huán)境,直接用記事本來寫,很省事。你要是不承認(rèn)這是一門語言的話,可以去學(xué)PHP或ASP.NET。這倆也都不難,但是需要搭建開發(fā)環(huán)境,跟著視頻去做的話,也是不難的,就是安裝幾個工具,這倆語言的優(yōu)勢同樣也是寫了就能看到成果,并且語法簡單。
在學(xué)了這些基礎(chǔ)課程之后,大家肯定就對編程有了一定的認(rèn)識,然后根據(jù)自己的興趣,去學(xué)習(xí)你想開發(fā)的軟件所用的語言,這時候?qū)W起來就比較容易了,以后再怎么學(xué)習(xí)就有目標(biāo)了。不了解的事請,總是入門難,一旦入了門,那將得到飛快的提高。
第二種人,就是那些有一點(diǎn)點(diǎn)計算機(jī)的使用基礎(chǔ),能善于使用搜索引擎的同學(xué)。可以直接上手學(xué)習(xí)JAVA或者Python,這倆都是面向?qū)ο蟮母呒壵Z言,也是目前很火的語言。像這種比較火的語言,或者像C語言那種比較經(jīng)典的語言,教程資料都比較好找。遇到問題也比較容易能搜到解決方法。這兩種語言最大一個問題就是需要搭建環(huán)境,這個對于小白來說,還是挺麻煩的,需要安裝一些環(huán)境,然后配置環(huán)境變量,然后設(shè)置編譯環(huán)境,下載一些常用的庫等等。在這安裝和使用過程中,可能會遇到各種各樣的問題,出現(xiàn)各種奇葩問題,有些甚至跟著老師視頻一步步操作,最后都無法運(yùn)行,所以這類語言僅僅適用于那些對計算機(jī)使用有點(diǎn)基礎(chǔ)的,并且會自己查百度,能自己動手的同學(xué)學(xué)習(xí)。如果身邊恰好有個懂這些的朋友,跟著他學(xué)習(xí)下或者讓他幫忙配置下開發(fā)環(huán)境,也是可以的。
這些一旦入門之后可以直接深入研究,拿JAVA來說,它是跨平臺的,寫好一個程序,無論是哪個系統(tǒng),只要他裝了java的環(huán)境,都可以直接運(yùn)行這個程序,并且java除了開發(fā)軟件還能做網(wǎng)站。一旦會使用這些高級語言,你會發(fā)現(xiàn)同樣實(shí)現(xiàn)一個功能,C語言可能需要寫幾百行代碼,而java或者Python可能只需要寫幾十行代碼就能完成。這些高級語言封裝了很多功能,你直接調(diào)用就可以。所以在實(shí)現(xiàn)某些功能的時候更方便。
等你學(xué)的差不多的時候,多看看網(wǎng)上別人寫的源代碼,自己嘗試做一些能做的小項目。如果學(xué)的是C或者Python這些,可以做一些數(shù)學(xué)題的運(yùn)算程序,求面積、體積,或者寫個進(jìn)制轉(zhuǎn)換器之類的。如果學(xué)的是HTML或者PHP,嘗試自己做個屬于自己的小網(wǎng)站,實(shí)踐是最鍛煉人的。這時候盡量買本參考書,因為這本書需要來回翻,所以推薦買實(shí)體書。至于買哪一本,可以根據(jù)你學(xué)習(xí)的語言去選擇,詢問下相關(guān)行業(yè)前輩的意見或者去搜索下網(wǎng)友的意見。
學(xué)習(xí)編程之前最好先學(xué)習(xí)下電腦基礎(chǔ)和相關(guān)使用技巧、計算機(jī)原理,有助于你對計算機(jī)軟硬件的了解和認(rèn)識。把打字的速度提升下,畢竟你的任務(wù)就是敲代碼,速度還是比較重要的。順便了解下進(jìn)制轉(zhuǎn)換之類的,玩計算機(jī)的,和二進(jìn)制十六進(jìn)制打交道有時候比十進(jìn)制更多。
等大家學(xué)一段時間編程之后,你會發(fā)現(xiàn),編程的很多東西其實(shí)本質(zhì)上就是數(shù)學(xué)、邏輯。精華就是這些數(shù)學(xué)思維寫出來的算法。
最后補(bǔ)充一句,可以在買編程書籍的時候順便買本勁椎病的預(yù)防和治療,這樣的話,湊湊單或許能包郵。
開發(fā)一個app,口碑比較好的開發(fā)公司都有哪家
這個問題太粗了,需要更多的信息才好做判斷推薦。
首先要說明是什么行業(yè)什么產(chǎn)品的app,其次最好有類似已上線的app作為比較,這樣才可以大致估算項目規(guī)模,從而根據(jù)不同的特征做出不同的選擇。
其次,根據(jù)不同的需求,也許app并不一定是最合適的解決方案。
當(dāng)大致功能列出后,根據(jù)需求和規(guī)模可以有幾種選擇。一種是自建開發(fā)團(tuán)隊,投資較大,但總體風(fēng)險可控。第二種是尋找外包開發(fā),外包開發(fā)有不同的級別公司,總之明白一分錢一分貨。
文章到此結(jié)束,如果本次分享的自己怎么開發(fā)一個軟件app和個人開發(fā)app最簡單方法的問題解決了您的問題,那么我們由衷的感到高興!