1. 前端用什麼編輯器
高效的Web前端開發工具:
1、Prettier Playground
Prettier是一個代碼格式化程序,支持javaScript,包括ES2017、JSX、Angular、Vue、Flow、TypeScript等。它可以移除你的原始格式,並且將其替換為遵循最佳運行方式的、標準的一致樣式。如此便捷的工具在我們的編輯器中十分流行,與此同時它還有一個線上版本,可以在線完成對代碼格式的修正。
2、EnjoyCSS
運用CSS,非常簡單的工具就是遇到困難時的救星。EnjoyCSS可以讓你通過簡單的UI設計你的元素,並且提供相關的CSS輸出。
3、StackBlitz
根據Chime Nnamdi顯示,StackBlitz是每名使用者都很喜歡的一款在線編輯工具。最重要的一點就是,它將IDE引入了web——Visual Studio Code中。只要在StackBlitz中點擊一下,你就可以設置Angular、React、Ionic、TypeScript、RxJS、Svelte以及其他JavaScript框架。由於它的操作十分便捷,在打開StackBlitz後的五秒之內,你就可以開始編輯代碼了。
StackBlitz十分好用,尤其在嘗試簡化代碼片段或在線資料庫方面,你可能沒有時間從頭開始創建新的項目,而只是嘗試新的功能。而通過StackBlitz不需要創建新的項目就可以在短短幾分鍾內試用新的NPM軟體包。
4、Postman
Postman就一直在我的開發人員工具集中。它在後端檢查GET、POST、DELETE、OPTIONS和PUT在內的一系列端點這方面,起到了非常顯著的作用。
5、CanIUse
CanlUse非常的簡便,可以幫你弄清楚期望實現的功能,是否與你使用的瀏覽器兼容。很多開發者都會遇到瀏覽器的兼容問題,在這個瀏覽器上可以正常使用的,但換一個瀏覽器就不支持了。
6、Bit.dev
一個軟體開發的基本原則就是代碼的可重復使用性,它確保你可以減少開發量,而不需要去從頭構建組件。這確實是Bit.dev可以做到的,它允許共享可重復使用代碼片段和組件,從而減少開銷,並且加快你的開發進程。Bit.dev還允許在團隊之間共享組件,讓你的團隊可以與其他團隊進行協作。
以上就是今天為大家分享的Web前端開發常用的6款提高工作效率的開發工具。大家要是想提供自己的工作效率,現在就趕緊用起來吧!
2. 如何選擇編程語言
很多語言,像C、Java、Python和JavaScript在幾十年來一直持續支配著他們的各自的領域。另一方面,也要看到近期流行的需求語言,像Swift、Google Go 和 Rust。
怎樣選擇學習哪一種編程語言,其答案取決於學習之後用它來做什麼。許多人的選擇標准僅僅是「學習一門語言最大的需求就是能找到一份高收入的工作」。但這個標准並非人人都適用,還有很多其它的方面要考慮。例如,在大學里使用Python這門語言給學生講授編程,其主要原因在於Python功能強大,學生們能夠很容易地掌握編程概念。對於初學編程的人來說,使用Python是一個不錯的選擇;對於想從事移動程序開發的人來說,學習Swift、C#、Java和JavaScript是很好的選擇;對於web開發來說,在CSS、HTML、JavaScript這樣的前端技術支持下,使用PHP、Java、Python和Ruby on Rails是第一選擇。
如果要完成像訪問關系資料庫這樣的更加具體化的任務,可以學習SQL編程語言。SQL語言並非是用來開發應用程序的,而是用來支持應用程序和資料庫之間的連接。更何況,很多數據驅動應用都在廣泛地使用SQL,如今,對SQL的需求已經超越了對許多工作表的需求。
如果你對硬體編程感興趣,想要開發嵌入式系統、操作系統、通信設備或者復雜的游戲引擎等,那麼選擇的語言依然是C/C++(主要是C)。
1.JavaScript——多用途編程語言
時至今日,對JavaScript的需求依然巨大,招聘網站上充斥著有關JavaScript及其相關技術的招聘信息。JavaScript由Brendan Eich設計,運行在Netscape瀏覽器中。那時,他或許做夢也沒有想到JavaScript會有如此超乎尋常的發展。
JavaScript是WWW的默認語言,並且幾乎每個web瀏覽器都支持JavaScript,它已經成為了web前端開發的世界標准。隨著Node.js的發展,JavaScript的應用領域又擴展到了伺服器端開發,如今和java、.Net、PHP、Ruby on Rails以及其它的伺服器端技術展開了競爭。
JavaScript除了應用於前端和伺服器端開發外,它也快速地發展成為移動應用開發的選擇。開發者可以使用許多流行的JavaScript框架來構建混合移動應用程序,比如ionic、kendo UI和Sencha touch等。
後來,隨著React native框架的興起(由Facebook提出),JavaScript又出現在了android和iOS原生應用開發領域。
JavaScript無處不在!然而,JavaScript本身不會讓你擁有最高薪酬的開發工作,你還需要學習基於JavaScript的技術、框架和庫(比如Node.js、React、React Native、ionic、jQuery、D3.js和Kendo UI等等)。相關技術的選擇完全取決於你要從事的工作。
說到學習JavaScript,它是一種動態編程語言,並且非常容易入門。熟悉了JavaScript基礎知識之後,你就可以很容易地學習相關的技術,比如 jQuery、Node.js、Angular或React。
2.Python——最好的編程語言
Python是另一種編程語言,目前世界各地的開發者正在使用它進行快速應用程序開發。Python是一種模塊化的、易於學習的、面向對象以及注重可讀性的高級語言。
Python廣泛地應用於教育領域、web與internet開發、科學與數值計算以及大數據、機器學習演算法開發。
Python的深度和廣度使得它成為教育和研究領域的首選語言,世界各地的學生正使用Python來學習編程和構建研究項目。如今很多進行計算機編程的學生把Python作為他們學習的第一門語言。
Python已經廣泛地用於web和internet開發,並且有許多流行的框架,比如Django、Pyramid、Flask和Bottle。Django CMS和Plone是兩種廣泛使用的基於Python的內容管理系統,許多流行網站和web應用程序都在使用它們。
最近,由於對大數據分析和機器學習演算法的需求急速增長,對Python的需求也在快速增長。用Python編寫的許多開源庫能夠實現數據科學廣泛使用的一些核心的機器學習演算法。R是統計與數據科學領域廣泛使用的另一種語言,但是學習曲線比較陡峭。
庫方面,一些流行的Python庫例如用於數學、工程和科學領域的scipy、用於庫建模和數據分析領域的「pandas」,以及其它一些有用的庫,比如iPython、kivy、pyqt和pyside。
3.Java——大眾化的編程語言
Java是大眾化的編程語言,它也是一種永葆青春的語言,多年來一直是各個招聘板塊的寵兒。Java於1990年由 Sun Microsystems公司發布,後來被Oracle公司收購,Java的哲學理念是「編寫一次,到處運行」。
Java廣泛地應用於web開發、企業軟體開發和Android app開發。隨著對運行在Android平台上的移動app的需求不斷增長,對java的應用也達到一個新高度,這也是為什麼全球范圍內對java的需求依然第一的原因。
Java是高級的面向對象的編程語言,學習起來比C++更容易,但是程序的性能要比C或C++差一些。因此,一般不用java構建核心引擎、操作系統或嵌入式系統開發。
4.SQL——結構化查詢語言
SQL結構化查詢語言是一種能被資料庫理解的語言。SQL是由IBM工程師於1970年開發的,用來創建、更新和檢索「System R」這個資料庫管理系統中的數據。從那時起,SQL已經走過了很長的路,時至今日,它仍然是市場最需要的一種技能。
近年來,使用非SQL資料庫來處理大數據的這種需求給SQL蒙上了陰影,但持續的時間不會太長。不久人們就會認識到SQL提供的大數據分析方法更好,它是一種更具有擴展性、可驗證性和經得起時間檢驗的技術。
SQL語言用以輔助進行數據驅動網站、web應用程序、桌面應用程序以及移動應用程序的開發。SQL在任何應用領域都有應用。從學習的角度看,SQL比較容易掌握,並且由於有很高的市場需求,你可以僅僅通過SQL就能找到第一份工作。
然而,要找到一份高薪酬工作,還需要擁有設計、管理和維護多種資料庫,比如Oracle、MySQL、PostgreSQL、IBM DB2和Microsoft SQL Server等的經驗。
5.C#——排名第一的微軟技術
C#是最通用的語言之一,它使得編程像Java語言一樣簡單。C#是類型安全的、面向對象的編程語言,運行在.NET框架運行時環境中。C#代碼被編譯成符合CLI規范的IL語言(中間語言)。
C#語言正迅速成為構建微軟家族各種應用的首選,你可以用來構建客戶端—伺服器應用程序、資料庫應用程序、web服務、移動應用程序、游戲等等。
C#在游戲開發中也有很好的應用(高級的但並非是硬核心),頂級游戲引擎Unity 3D就把C#作為支持的語言之一,除此外只有JavaScript語言被支持。C#還是許多交叉平台應用程序構建工具(如Xamarin)所採用的編碼語言。你可以使用Xamarin產品套件構建交叉平台移動應用程序。
盡管匯編語言是首選的游戲引擎開發工具,要進行硬核心終端游戲開發,仍然可以使用C或C++,Rust語言也可以應用在該領域。
6.C/C++——古老而金貴的編程語言
有人說C++很古老,但卻一致被認為依然金貴。當涉及更注重性能的硬核心系統編程時,C/C++ 仍然是首選的編程語言。C比C++更接近硬體,並且能提供更好的性能。
許多開發者轉向Java,是因為和C++(&C)相比,使用Java更便於開發,而且在很多情況下性能可以通過對硬體部分進行更多的投資而抵消。但並非總是如此,比如對於嵌入式系統,你就只需要管理最少的硬體組件。
C和C++仍然屬於高級編程語言嗎?
C/C++擁有最好的編譯器、開發環境、庫和核心開發部件,還擁有一個在未來也不可能被替換的巨大的生態系統。現有的生態系統和高性能應用程序的需要,使得對C/C++的需求一直很高,而且C/C++開發人員的工資檔次也比較高。
7.Swift——第一個工業質量級的系統編程語言
Swift是相對較新的語言,並且正快速地流行起來。Swift是完全用於Apple的開發語言,例如iOS應用程序、OS X應用程序、watchOS應用程序和tvOS應用程序。Swift引入了C和Objective-c的優點,並且能和cocoa以及cocoa touch框架很好地協同工作。
Apple擁有自己的巨大生態系統,毫無疑問,Swift將成為在未來幾年中引領其發展的語言。如果你想進入Apple生態系統,Swift正是要學習的語言。
Swift學起來很容易,用起來很有趣,究其原因在於它引入了嚴格類型語言(如C、Java、C++)的所有特性,而使用起來和任何腳本語言(如 Ruby或Python)一樣容易和有趣。你可以通過Swift playgrounds嘗試使用Swift,並且可以馬上看到結果,無需擔憂程序的編譯和運行。
Apple聲稱Swift是第一個工業質量級的系統編程語言,它提供了類似腳本的語法,能使開發變得絕對輕松。
8.PHP——基礎的編程語言
許多人認為PHP不是程序設計的未來,但PHP巨大的生態系統使得在未來幾年裡全世界需要大量的開發人員對其提供支持。排名前三的內容管理系統——WordPress、Drupal和Joomla都是使用PHP構建的,而且迄今大概有80%的網站運行在PHP之上。所以,它是巨大的!
PHP是容易學習的語言,它可以作為你進入編程世界的入門語言。PHP屬於就業市場中炙手可熱的語言,你可以找到大量的需要PHP技能的工作機會。PHP開發者的薪資水平和Java、C++、Python或Swift開發者相比,通常偏低。
PHP生態系統包括上述頂尖的內容管理系統(如WordPress、Drupal和Joomla等 )和PHP框架(如Laravel、Symfony、Yii和FuelPHP等)。這些內容管理系統和框架能使開發者在幾天內就構建出可以投入使用的網站和web應用程序。
近年來隨著 Node.js、Django和Ruby on Rails的出現,PHP蒙上了一層陰影,但是PHP正在改進,更新的版本完全可以和新興的語言與技術展開競爭。
9.Ruby——適合學習的編程語言
Ruby是另外一種開源的、面向對象的、通用的編程語言,這是一種簡單的、有助於快速應用開發的語言。Ruby最有名的框架是Rails(Ruby on Rails),這主要被用來web開發。
它在伺服器端開發是很有用的,有很多公司都使用它,如:Bloomberg、Airbnb、Shopify、Hulu和Slideshare等等,且被用在一個或多個項目之中。
Ruby是用來學習的最好的編程語言嗎?
Ruby常常被用來與Python的可讀性進行比較,它提供類英語的語法,這讓 Ruby 成為一個完美的候選者,最適合作為第一個編程語言來學習。
10.Rust——發展迅速的新一代編程語言
Rust是後起之秀,並且承諾要成為新一代的熱門技術。它快速地成為硬核心開發人員所痴迷的技術,並且以非常快的速度發展著。Rust語言還在發展之中,還是一門新語言,因此,Rust的就業市場尚未形成,傳播的深度與廣度還不夠。
Rust語言由Mozilla公司於2010年開發,它是Graydon Hoare所負責的一個研究項目。而現在開發者社區喜愛它並負責對其維護,他們決心將Rust推向一個新的高度。
Rust是一種低級的系統編程語言,其目標是提供高性能、安全性和並發性,它是一個不錯的C/C++的替代語言。過去,C開發人員努力使用Rust編寫操作系統、資料庫、嵌入式程序、內核以及各種系統程序。
Rust是一種現代語言,它擁有高級語言的靈活性和C這樣的低級語言才有的高性能以及對硬體的可控性。
11.其他
下面是另外的一些很受歡迎的編程語言,它們和排名靠前的那些語言進行著激烈的競爭。
GO——Go是谷歌公司推出的一款相對較新的語言,對於web伺服器開發、網路開發以及命令行程序開發來說,它是又一個比較優秀的選擇。
R——當要進行數據分析和統計軟體開發時,你可以選擇R語言。隨著大數據和機器學習的興起,R得以不斷發展並和Python和Matlab展開了激烈競爭。
Perl——最古老的語言之一,但它正越來越受歡迎並顯示出偉大復甦的跡象。DevOps是新生事物, Perl正發展成為用於DevOps的深受歡迎的語言,它或許會成為像Python語言那樣的下一個重要語言。
VisualBasic .Net——微軟公司推出的一種面向對象編程語言,對於開發.Net程序以及web程序和XML web服務這樣的專業領域程序來說,這是一個很好的選擇。
Haskell——統治著函數式編程的世界。和面向對象編程相比,函數式編程具有完全不同的哲學理念。函數式編程在分布式系統開發中應用廣泛,分布式系統開發的關鍵需求是並行執行和並發性。人工智慧和數學計算是函數式編程的又一應用領域,Haskell的應用同樣如此。
3. ionic framework 框架怎麼樣
Ionic是一個前端的框架,幫助開發者使用HTML5, CSS3和JavaScript做出原生應用。ionic的理念類似前端開發的BootStrap,目標是封裝HTML5移動跨平台開發的最佳實踐,就像Twitter Bootstrap在前端開發中做的一樣。Ionic框架目前發展很迅速,我們從2014年3月開始使用,當時是1.0.0beta2,現在已經更新到1.0.0beta10,大概每2個星期會出一個beta版本,並且都包含實質性更新。Ionic框架很先進,js部分是基於AngularJS框架,大量使用了Css3,css生成基於Sass,構建工具基於最新的gulp,版本升級基於bower,原生層無縫封裝了cordova。
4. 如何開發Ionic插件
1. Cordova Plugin基礎
1.1. 目錄結構層次
IONIC下的插件都是遵循CORDOVA插件([BIBAPACHECORDOVA])規范,同時提供與CORDOVA類似的PLUGIN子命令來管理插件(IONIC PLUGIN XXX)。
下面是插件管理命令中的添加、刪除及列舉等基本使用方法:
$ ionic plugin list
cordova-plugin-camera 1.2.0 "Camera"
cordova-plugin-console 1.0.1 "Console"
cordova-plugin-device 1.0.1 "Device"
cordova-plugin-splashscreen 2.1.0 "Splashscreen"
cordova-plugin-statusbar 1.0.1 "StatusBar"
cordova-plugin-whitelist 1.0.0 "Whitelist"
ionic-plugin-keyboard 1.0.7 "Keyboard"
plugin-mydemo 1.0.0 "MyDemo"
添加(add)一個插件的時候,若指定的是本地的路徑,則是將本地路徑下的目錄文件到plugins/下。若是插件名,則會自動連接到網上下載對應的插件。
由於插件是遵循Cordova插件規范,所以每個插件的代碼目錄層次結構都是高度類似的。每一個插件都是plugins/的一個子目錄,Figure-1描述了插件共同的基本目錄結構框架。
Figure 1. 插件的目錄結構
從圖中可以看出,插件框架中將不同平台的實現代碼都放在各自不同的目錄下(android/ios),通過ionic統一生成各自對應平台的應用程序。
為了方便管理plugins/下多個插件,通常在plugins/下會有一個總的管理文件,比如編譯android平台的時候,會有一個android.json文件,裡面放著當前插件的簡單信息。
當用戶使用ionic plugin add/remove命令來添加、刪除插件的時候,android.json也會自動的把相應插件定義條目添加或者刪除掉。
1.2. 插件工作原理分析
上一節我們已經清楚了一個插件的代碼目錄結構,那麼一個插件是如何正確地在IONIC框架下運行的呢? 前台的HTML/JS代碼又是如何與後面具體平台做數據交互的呢?
這個就需要對插件的工作原理及各個模塊之間的流程關系有一個基本的了解[1]
為了讓插件能夠訪問具體平台系統的代碼,Cordova提供了對應的標准封裝API來完成,下面的圖簡單地示意了Android平台情況下的封裝過程:
Figure 2. 插件封裝調用圖
當用戶ionic
build
android進行第一次編譯的時候,會自動將插件下的Java文件到platform/android/目錄下面,同時將JS也到platform/android/目錄下,最終使用Android的編譯工具(aapt/aidl/dx/apkbuilder等)生成.APK應用程序。
這里需要注意的是,插件中的Java文件默認下只會在第一次編譯的時候自動放到platform/android/,之後即使用戶修改了插件目錄下面的Java文件,編譯的時候仍然是使用platform/android/下的Java文件。
解決的方法可以是在編寫自己插件調試的時候,在platform/android/下建立一個symbol link, 指向插件中的Java文件。
這樣可以保證修改的Java文件會參加編譯。
1.3. 數據的交互
從\REF{SECIONICPLUGINFLOW}節我們已經清楚JS和ANDROID平台之間分別通過JS的CORDOVA.EXEC()和JAVA的CORDOVAPLUGIN.EXECUTE()函數來對接。
這兩個介面的參數對應關系如下所示:
由於JS發送到Java的數據已經作為函數的參數傳入, 所以函數中的回調參數,主要是幫助Java側反饋數據給JS側所用。
Cordova使用了org.apache.cordova.PluginResult來完成,當中的PluginResult.Staus代表JS調用插件成功與否的狀態。
通常代碼中判斷狀態值是否為PluginResult.Staus.OK,來確認調用結果成果或者失敗
2. 製作插件
實際工作中,我們往往需要自己編寫滿足自己項目需求的插件。這里將逐步介紹編寫插件的步驟和注意事項。
2.1. PLUGMAN
也許IONIC的框架編寫者覺得JS開發人員只要會怎麼調用和刪除插件就足夠了。
所以默認下,ionic的plugin子命令,只是給JS開發者來add/remove編寫好的插件。它並沒有, 也不提供start/create等類似的生成插件代碼框架的功能選項。
若我們需要自己編寫自己的插件,則可以使用額外的一個叫做plugman的工具[2], 該工具可直接通過npm來安裝。
安裝成功後,就可以使用plugman命令來自動生成插件代碼框架,避免手工建立和輸入代碼文件的工作:
$ sudo npm install -g plugman
$ plugman create --name plugin-myspeech --plugin_version 0.1 --plugin_id org.foo
$ cd plugin-myspeech
$ plugman platform add --platform_name android
上述命令將會生成一個plugin-myspeech的目錄,同時會自動生成plugin.xml、src以及www目錄。
當使用platform add添加完android支持後,對應的Android Java代碼框架也會自動生成。
同理,plugman platform add --platform_name ios添加iOS支持後,和iOS相關的代碼框架也自動生成。
2.2. 編寫插件
這里介紹一個自己寫的ANDROID平台下的簡單PLUGIN,演示前台到後面具體平台實現的流程。
插件本身邏輯非常簡單: 得到JS請求後,把當前手機的Android系統的版本信息,並發送回前端。
通過plugman命令生成基本插件代碼框架:
$ plugman create --name MyDemo --plugin_version 0.1 --plugin_id org.ioniconline
$ cd MyDemo
$ plugman platform add --platform_name android
自動生成的代碼框架中,定義了coolMethod方法,我們可以在Java代碼中處理該請求
public class MyDemo extends CordovaPlugin {
public boolean execute() {
if (action.equals("coolMethod")) {
Log.e("MyDemo", "process the req");
String str = android.os.Build.VERSION.RELEASE;
PluginResult r = new PluginResult(PluginResult.Status.OK, str);
r.setKeepCallback(true);
callbackContext.sendPluginResult(r);
return true;
}
return false;
}
}
至此,一個插件的功能已經完成。
接下來我們在自己的ionic應用中添加該插件。用戶可以指定自己剛剛編寫的控制項文件目錄位置。該示例插件已經存放在github上,所以可以從github上直接添加:
$ ionic plugin add https://github.com/yangsongx/MyDemo
這樣會在當前應用的plugins目錄下生成org.ioniconline目錄,裡面放的就是前面編寫的插件代碼。
在需要調用Android介面的地方加上JS代碼:
function getVersion() {
cordova.plugins.MyDemo.coolMethod('useless',
function(okData) {
alert(okData);
},
function(failData) {
alert(failData);
});
}
成功情況下,會彈出包含Android系統版本號數據的對話框。比如在我華為P7上返回的是4.4.2
Figure-\ref{figIOnicMyDemo}演示了整個代碼在各個模塊間的調用關系。完整的MyDemo的插件代碼可以從github[3]上得到。
Figure 3. MyDemo插件邏輯流程
每個Plugin需要輸出(export)的介面都需要使用mole.exports的命令來完成。
var myApis = {};
myApis.foo1 = function(a,b) {
cordova.exec(...);
};
myApis.foo2 = function(a,b,c) {
cordova.exec(...);
};
MODULE.EXPORTS = MYAPIS;
2.3. 注意事項
不要直接修改Plugin中的Java代碼,這個代碼不參與編譯。
原因: 第一次編譯目標應用時,ionic會將Plugin中的Java代碼到platform/下編譯。但下次再進行編譯的時候不會在rJava代碼,所以參加編譯的實際上只是platform/下的Java代碼。
plugin中的js可以直接修改,而且每次重新編譯都參加編譯。
原因: ionic下的JS是在Cordova上封裝了一層,所以每次編譯,需要將ionic下的JS轉換成Cordova JS才能正確工作
使用exec()中的service參數必需和插件plugin.xml中的featur定義的一致,否則會有class not found錯誤
報method not found異常, 插件中的js腳本未正確地使用mole.exports聲明
Further Reading
5. 非原生App開發的基本步驟(以安卓端為例)
主要使用:
移動端:ionic、cordova
後端:CoreThink
一、安裝
1.安裝node.js
2.安裝git
3.安裝ionic & cordova:
命令行輸入:npminstall –g cordova ionic
註:-g表示全局安裝,也可以進入指定的目錄安裝,但這里推薦全局安裝,安裝後的目錄為C:/users/Administrator/AppData/Roaming/npm/node_moles
4.安裝Java JDK
5.安裝Apache Ant
6.安裝Android SDK(從這里開始後面基本以android為例,ios類似)
7.設置環境變數:
①打開計算機->系統屬性->高級系統設置->環境變數
②在系統變數中新建ANDROID_HOME變數,變數值為sdk所在目錄,如圖
③新建CLASSPATH變數,變數值為.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
④新建JAVA_HOME變數,變數值為jdk所在目錄
⑤編輯系統變數中的path變數,不要刪原來的變數值,在原值後面添加;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%ANDROID_HOME%\tools;%ANDROID_HOME%\build-tools;%ANDROID_HOME%\platform-tools
註:這里是添加了jdk\bin、jdk\jre\bin、sdk\tools、sdk\build-tools、sdk\platform-tools的路徑,互相以英文分號隔開
8.創建項目:
命令行cd進入任何你喜歡的目錄,ionic startAnyNameYouLikeblank,如果一切順利,就會在你指定的目錄新建一個你喜歡的名字的文件夾,並在裡面初始化一個ionic項目。
9.添加平台
進入剛才新建的項目的目錄,命令行輸入ionic platform add android
二、在項目目錄中有一個www的文件夾,裡面的文件有html,js,css等,可隨意編寫,在platform中的www文件最好不要動它。
三、測試項目
1.進入項目目錄,ionic build android編譯項目
2.測試項目的方法:
桌面瀏覽器測試法:ionic serve
模擬器測試法:這個比較煩,而且運行慢,破機子卡到爆,一直沒成功,所以略
手機瀏覽測試法: http://ionicframework.com/docs/guide/testing.html 自己看吧,略
手機測試法:連上數據線,打開開發者選項,執行ionic run android
四、編寫項目
http://ionicframework.com/docs/guide/building.html 英文太多,翻譯不出來
五、發布app,前面的准備就是為了這一步了
1.執行cordova plugin rm cordova-plugin-console,這一步是Before we deploy, we should take care to adjust plugins needed ring development that should not be in proction mode.
2.執行cordova build --release android,在platforms/android/build/outputs/apk,中會出現***-release-unsigned.apk,最前面取決於取了什麼名字
3.使用keytool打包私有密鑰:執行keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
4.給沒有簽名的apk簽名:執行jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk alias_name
5.最後一步,執行zipalign -v 4 HelloWorld-release-unsigned.apk HelloWorld.apk
六、基本步驟到此結束,可能會出現各種報錯的情況,只能具體問題具體分析了,
參考網址:
http://ionicframework.com/docs/guide/preface.html
https://cordova.apache.org/docs/en/latest/guide/cli/index.html#link-3
http://developer.android.com/sdk/installing/adding-packages.html
https://developer.apple.com/ios/download/
6. ionic 有沒有類似 vs的編譯器
沒有。
ionic是一個用來開發混合手機應用的,開源的,免費的代碼庫。可以優化html、css和js的性能,構建高效的應用程序,而且還可以用於構建Sass和AngularJS的優化。ionic會是一個可以信賴的框架。
7. ionic和dcloud哪個好
你好
個人還是比較推薦推薦使用ionic的。
簡單點評一下的話, ionic約等於APIcloud+dcloud,那麼你們就想問了為什麼不繼續用ionic,最近很蛋疼的發現ionic的ionic view真機測試刷新應用一直404錯誤,估計跟應用伺服器有關。
重點就是ionic是搭配著angularjs 使用的,結構分工比較明細,加上類似MVC的效果是的開發思路變得簡單,容易上手。
dcloud感覺就是差個類似MVC的搭配使用。不過dcloud還是被拍在這三個產品中的第二位。只能說dcloud的技術是可以的,但是還有很多的地方可以再補充。
希望對你有幫助
8. ionic框架支持ipv6嗎
ionic 是一個專注於用WEB開發技術,基於HTML5創建類似於手機平台原生應用的一個開發框架。綁定了與AngularJS和Sass。這個框架的目的是從web的角度開發手機應用,基於PhoneGap的編譯平台,可以實現編譯成各個平台的應用程序。
ionic的開發添加android和ios環境。
ionic提供很多css組件 和javascript UI庫。
ionic可以支持定製android和ios的插件,也支持服務端REST的敏捷開發
9. ionic 和cordova的區別是什麼
區別在於:
Ionic 底層打包使用 Cordova ( 和 Phonegap 一樣 ) , Ionic 是一個全堆棧的混合應用開發框架,可以理解成 Ionic = Cordova + AngularJS + Ionic UI。
Ionic(ionicframework)一款開源的Html5移動App開發框架,是AngularJS移動端解決方案,Ionic以流行的跨平台移動app開發框架phoengap為藍本,讓開發者可以通過命令行工具快速生成android ios移動app應用。
Cordova提供了一組設備相關的API,通過這組API,移動應用能夠以JavaScript訪問原生的設備功能,如攝像頭、麥克風等。Cordova還提供了一組統一的JavaScript類庫,以及為這些類庫所用的設備相關的原生後台代碼。Cordova支持如下移動操作系統:iOS, Android,ubuntu phone os, Blackberry, Windows Phone, Palm WebOS, Bada 和 Symbian。