linuxpythoneclipse
1. 我想學編程,算是興趣吧。先從C開始還是java,需要用到什麼軟體,最好是能給網址、裡面軟體是現在還
首先你要學會一門語言,建議學C語言
C語言學了之後還需要學習數據結構,注意是數據結構,不是資料庫
相信這兩本書你看了之後,應該入門了
首要之首:不要急於選擇一種語言
新手們有一個常見的錯誤就是猶豫於判斷哪種編程語言是做好的、最該先學的。 我們有很多的選擇,但你不能說那種語言最好。 我們應該理解:說到底,什麼語言並不重要。 重要的是理解數據結構、控制邏輯和設計模式。任何一種語言甚至一種簡單的腳本語言都會具有所有編程語言都共有的各種特徵,也就是說各種語言是貫通的。 我正在攻讀我的計算機學學位,我編程使用Pascal,匯編,和C語言,事實上我從來沒有把它當成職業以求獲得回報。 我一直在自學編程,工作上用不到它,我使用現有的知識,參考各種文檔和書本,學習它們的用法。 因此,不要急於選擇何種編程語言。 找出你想要開發的東西,使用一種能夠完成這項任務的語言,這就可以了。
根據各種開發平台的不同,有很多不同的軟體開發形式可供你選擇:從網站應用到桌面軟體到智能手機軟體到命令行腳本工具。 這篇文章里,我將重點介紹一些很受歡迎的入門教程和資源,它們能幫助你學會如何在各種主流的平台上編程開發。 我先假設你是一個悟性很強的讀者,但對於新手,當我談論程序代碼時還是要按照入門級的水平。 因為即使是你自己看一篇編程入門 手冊,如果發現都能理解時,心情自然會很高興,這樣利於你進一步學習。
3
桌面腳本
想要動手在Windows里或蘋果系統里編程,最簡單的方法是從一種腳本語言或宏語言開始,例如AutoHotkey (Windows) 或 Automator (蘋果系統)。 如今一些硬體程序員沖著他們的屏幕大喊大叫,說AHK和AppleScript並不是真正的編程語言。 也許他斗鬧們說的是對的技術上,這些種類的語言只能做一些上層的編程。 但是對於那些只是想來脫盲、想在他們的電腦里實現一些能自動運行的程序的新手來說,這些語言會是一個絕妙的入門入口而且你會吃驚於它們豐富的功能。
例如,大家都喜愛的Texter就是Adam使用AutoHotkey開發的能獨立運行的Windows應用程序,所空碰罩以說這種腳本語言遠不是只能開發小規模腳本軟體。 如果你想從AutoHotkey入手,可以參考Adam的指導: how to turn any action into a keyboard shortcut using AutoHotkey(然後,你可以下載 Texter源代碼 看看這個功能齊全的使用AHK開發的Windows應用程序的內部結構)。
4
Web開發
除了把自己約束在特定的編程語言和特定的操作系統上,你還可以在瀏覽器里開發你的殺手鐧程序,讓它在互聯網上運行,這就是webapp。 歡迎來到奇妙的web編程世界。
HTML 和 CSS:開發網站,你第一件要知道的事情就是HTML(網頁就是由它組成的)和CSS(一種讓外觀更好看的樣式標記)。 HTML 和 CSS 並不是編程語言它們只是頁面的結構和樣式信息。 然而,在開始開發web應用程序之前你必須要學會如何手工的編寫簡單的HTML和CSS,web頁面是任何webapp的前端顯示部分。 這個 HTML 指導 是你入手的好地方。
JavaScript:當你可以通過HTML和CSS構建一個靜態頁面後,事情就開始變得有趣了因為到了該學JavaScript的時候了。 JavaScript是一種web瀏覽器上的編程語言,它的魔力就是能在頁面里製造一些動態效果。 JavaScript可以做bookmarklets, Greasemonkey 腳本, 和 Ajax, 所以吵伍它是web上各種好東西的關於因素。 學習JavaScript從這里開。
伺服器端腳本:一旦你學會了網頁里的知識,你就要開始對它添加一些動態伺服器操作為了實現這些,你需要把目光轉移到伺服器端腳本語言,例如PHP, python, Perl, 或 Ruby。 舉個例子,如果想要製作一個網頁形式的聯系方式表單,根據用戶的輸入發送郵件,你就需要使用伺服器端腳本來實現。 像PHP這樣的腳本語言可以讓你跟web伺服器上的資料庫進行溝通,所以如果你想搭建一個用戶可以登錄注冊的網站,這樣的語言正是你需要的。 Webmonkey 是一個優秀的web開發資源網站,裡面有大量的各種web編程語言的指導手冊。 閱讀一下他們的 PHP 初學者指南。 當你感覺差不多了的時候,看看WebMonkeys PHP and MySQL tutorial 學習如何使用PHP跟資料庫交互。 網上最好的要數PHP語言官方的在線文檔和函數參考了。 每個知識點上 (例如strlen function這個)都在後面列出來用戶的評論注釋,這些對於文檔的本身是非常有價值的。 (我很喜歡PHP,但還有很多其他種伺服器端的腳本語言你們都可以選擇。)
Web框架:過去數年裡,web開發人員在開發動態網站的過程中不得不一遍又一遍的針對重復遇到的問題寫出重復的代碼。 為了避免這種每次開發一些新網站都會重復勞動一次的問題,一些程序員動手搭建了一些框架,讓框架替我們完成重復性的工作。 非常流行的 Ruby on Rails 框架,作為一個例子,它利用Ruby編程語言,為我們提供了一個專門面向web的架構,普通的web應用程序都能使用它來完成。 事實上,Adam使用Rails開發了他的第一個正式的(而且是嘆為觀止的!)web應用程序,MixTape.me。這就是 他的如何在沒有任何經驗的情況下搭建一個網站。還有一些其他的web開發框架包括 CakePHP (針對 PHP 編程者), Django (針對 Python 編程中), 以及 jQuery (針對 JavaScript).
Web APIs: API (應用層序編程介面) 是指不同的軟體之間相互交換的程序途徑。 例如,如果你想在你的網站上放一個動態的地圖,你可以使用Google Map,而不需要開發自己的地圖。 The Google Maps API 可以輕松的讓你通過JavaScript在程序中引入一個地圖到你的頁面上。 幾乎所有的現代的你所知道的和喜愛的web服務都提供了API,通過這些API你可以獲取到他們的數據和小工具,在你的應用程序里就可以使用這些交互過來的東西了,例如Twitter, Facebook, Google Docs, Google Maps, 這個列表遠不止這些。 通過API把其他web應用集成到你的web應用里是現在富web開發的前沿地帶。 每個優秀的主流的web服務API都附帶有完整的文檔和一些快速入手的指導(例如,這個就是 Twitter的)。 瘋狂吧。
5
命令行腳本
如果你想開發一個程序,讓它讀取文字或文件、輸入輸出一些有用的東西,那麼,命令行腳本語言將是個不錯的選擇。 然而它並不像web應用程序和桌面應用程序那樣有吸引力和好看的外觀,但是作為快速開發的腳本語言,你卻不能忽視它們。
很多的在linux平台上運行的web腳本同樣能以命令行模式運行,例如Perl,Python和PHP,所以如果你學會了使用它們,你將能在兩種環境中使用它們。 我的學習道路一直沒離開Peal太遠,我自學Python使用的是這本優秀的在線免費書Dive into Python。
如果成為一個Unix高手也是你學習的目標,那麼你絕對要精通bash這個腳本語言。 Bash是Unix和Linux環境下的一種命令行腳本語言,它能夠為你做所以的事情:從自動備份資料庫腳本到功能齊全的用戶交互程序。 起初我沒有任何使用bash腳本的經驗,但最終我用bash開發了一個全功能的個人代辦任務管理器: Todo.txt CLI。
6
插件(Add-ons)
如今的web應用程序和瀏覽器都可以通過一些擴展軟體來豐富自己的功能。 由於一些現有的軟體,例如Firefox、WordPress越來越受到開發人員的關注,插件的開發也日益流行,人們都在說But if only it could do THIS
只要你掌握了HTML,JavaScript和CSS,你就可以在任何的瀏覽器里開發你想要的很多東西。 Bookmarklets, Greasemonkey user scripts, 和 Stylish user styles這些軟體都是用的更普通頁面一樣的語言寫成的, 這幾個東西都值得你去研究一些。
更高級的瀏覽器擴展程序,例如Firefox的擴展,它們可以幫助你很多。 開發Firefox的擴展,舉個例子,需要你精通JavaScript和XML(一種標記語言,類似HTML,但具有更嚴格的格式)。 早在2007年我就寫下來 how to build a Firefox extension, 這是我在笨手笨腳的研究網上的一些學習資料後獲得的成果。
很多免費的、受歡迎的web應用程序都提供了擴展框架,例如WordPress 和 MediaWiki。 這些應用程序都是用PHP寫成的,所以只有對PHP熟悉你才能做這些事情。 這個就是 如何編寫WordPress插件。 而想駕馭Google Wave前沿技術的開發人員可以從使用HTML, JavaScript, Java, 和 Python 寫小組件和小工具開始。 我寫的第一個Wave bot是跟著這個 一個下午時間的快速入門指導開始的。
7
開發桌面上的Web應用程序
學習編程最好的結果是你在一個環境下學的東西可以應用到另外的環境中。 先學習開發web應用程序的好處就是我們有一些方法可以讓web應用程序直接在桌面上運行。 例如, Adobe AIR 是一個跨平台的即時運行平台,它能讓你編寫的程序運行在任何裝有AIR的操作系統的桌面上。 AIR應用程序都是由HTML, Flash, 或 Flex 寫成的,所以它能讓你的web程序在桌面環境中運行。 AIR是開發部署桌面應用程序的一個優秀的選擇,就像我們提到過的 10個讓你值得去安裝AIR的應用程序。
8
移動應用開發
能在iPhone或者Android智能手機上運行的手機應用程序的開發如今正呈現井噴之勢,所以你也可以夢想一下如何在iTunes應用商店裡通過你的天才程序大賺一筆。 但是,作為一個編碼新手,直接奔向移動開發所經歷的學習曲線可能會很陡,因為它需要你熟悉高級的編程語言,例如Java和Objective C。 然而,你當然應該看看iPhone 和 Android 編程究竟是什麼樣子的。 閱讀這個 簡單的iPhone應用開發例子 可以初步認識一下iPhone程序的開發過程。 Android 程序都是由Java寫成的,這有一個 簡單的視頻教程教你如何開發第一個Hello Android程序(註:可能需要代理才能看這個視頻)。
9
最後:耐心,刻苦,嘗試,失敗
好的程序員都有一個不達目的誓不罷休的品質,他們會驚喜於通過長期推敲和失敗換來的一點成績。 學會編程會有很好的回報的,但是學習的過程可能會是飽受挫折和孤獨的。 如果有可能,最好找個伴一起陪你做這件事。 想精通編程,這和其他事情一樣,需要堅持,反復嘗試,獲得更多的經驗。
END
注意事項
這篇文章里的內容就是對那些想通過自我研究達到學會編程目的的新手們的一些重要建議。 編程老手們:我有什麼遺漏嗎? 不論你的水平如何,請留下你的想法。
有什麼想法可以跟 聯系
2. 前端開發常用哪些工具軟體
前端開發的編譯器在選擇上還是很多的。在學校里,老師主要講三個前端開發軟體:
1、WebStorm
幫助編寫HTML、CSS、Less、Sass和Stylus代碼,並且支持Node.js和主流框架,如React、Angular、Vue.js、Meteor等。與IntelliJ IDEA同源,繼承了IntelliJ IDEA強大的JS部分的功能。但是付費軟體。
2、IntelliJ idea
頁面很簡單,乍一看像是一個記事本,它也確實可以當記事本用。有很多特色插件可以使用,支持多種編程語言的語法高亮顯示,具有代碼折疊功能。
2、HBuilderX
HBuilderX是DCloud(數字天堂)推出的一款支持HTML5的Web開發IDE。HBuilder的編寫用到了Java、C、Web和Ruby。HBuilder本身主體是由Java編寫。是HBuilder下一代版本,具有輕便、適合vue框架的特點。
3. 給師弟師妹們學習數據挖掘的一些建議
給師弟師妹們學習數據挖掘的一些建議
看著剛進實驗室的師弟師妹們的迷茫,雖然也與他們進行過一些零散的交談,但是都不夠系統。因此,根據自己的經歷給出學習數據挖掘的一些建議,大家可以根據自身的情況,具體問題具體分析,作為參考。希望在上一屆的基礎上,走的更深,走的更遠。
一. 讀研與數據挖掘基礎
首先介紹一下大家都比較關心的幾個問題,包括我們組的研究方向是什麼,論文相關問題,大數據與工作相關問題,上海戶口問題幾個方面。
1. 我們組的研究方向是什麼
我們組大的研究方向是數據挖掘,論文的研究方向是推薦演算法。要注意大的研究方向,論文的研究方向與工作方向的區別和聯系。
2. 論文相關問題
讀研究生免不了會思考一個問題,讀研的意義是什麼?我自己認為讀研的最大意義是訓練自己系統化的嚴謹的分析思維能力。在導師給定論文研究方向後,如何確立更細的研究方向,如何檢索資料,如何閱讀英文論文,如何提出自己的創新點,如何做實驗,如何寫論文,如何修改論文,如何投稿,如何退修,如果是國際會議,還要去做英文口頭報告,與同行交流等,這些問題都是需要自己去思考的。
3. 大數據與工作相關問題
數據挖掘屬於大數據專業嗎?當然屬於。現在大數據找工作相對還是比較理想的。關鍵是要學習哪些課程呢?以前給大家推薦了很多的書籍,但是效果卻恰恰相反,因為實在太多了根本看不完,更不知閱讀書籍的順序,淺嘗輒止,最後一本書也沒有看完,研究生就結束了。
(1)最低保障書籍
無論將來做什麼,熟練掌握一門編程語言,一個資料庫,數據結構,演算法都是必備的。
《高性能MySQL》
《數據結構與演算法分析:Java語言描述》
《演算法》:http://book.douban.com/subject/19952400/
(2)Python與機器學習
《集體智慧編程》
《社交網站的數據挖掘與分析》
《數據挖掘:概念與技術》
Python官方文檔:https://www.python.org/
Scikit-Learn官方文檔:http://scikit-learn.org/stable/
(3)Java相關書籍
《Java開發實戰經典》
《Java Web開發實戰經典》
《Java虛擬機規范》
Java SE:http://docs.oracle.com/javase/8/docs/api/
Java EE:http://docs.oracle.com/javaee/6/api/
(4)Hadoop與Spark書籍
《大數據日知錄:架構與演算法》
《Hadoop權威指南》
《大數據Spark企業級實戰》
《Scala編程》
Hadoop官方網站:http://spark.apache.org/
Spark官方網站:http://spark.apache.org/
Scala官方網站:http://www.scala-lang.org/
說明:認准目標,耐住性子,一步一步往前走。要把上面推薦的書籍硬著頭皮讀完,數據挖掘基本也就算是入門了。
4. 上海戶口問題
上海戶口屬於積分制,如果想要在校期間就拿到,那麼唯一的方式就是參數每年的研究生數據建模比賽,並且獲獎。獲獎比例還是很高的。其實,好好學習Python,買本數學建模的書籍看完,看幾篇近些年來的獲獎論文,比賽時硬著頭皮鑽研一道題目並且寫好論文,基本上都可以獲獎。
二. 數據挖掘進階
數據挖掘涉及多個方向,但是通常從數學統計,資料庫和數據倉庫,機器學習三個方向來進行研究。當我想學習一個方向的時候,最希望做的事情就是讓別人給我列出一個書單。因為我也會給你們列出一個書單,讓你們慢慢研究吧。
1. 數學統計
(1)理論數學:復變函數,實變函數,泛函分析,拓撲學,積分變換,微分流形,常微分方程,偏微分方程等。
(2)應用數學:離散數學(集合,邏輯,組合,代數,圖論,數論),具體數學,張量分析,數值計算,矩陣論,逼近論,運籌學,凸優化,小波變換,時間序列分析等。
(3)概率:概率論,測度論,隨機過程等。
(4)統計:統計學,多元統計,貝葉斯統計,統計模擬,非參數統計,參數統計等。
2. 資料庫和數據倉庫
《資料庫系統概念》
《資料庫系統實現》
《數據倉庫》
《分布式系統:概念與設計》
3. 機器學習
通信原理;數據挖掘;機器學習;統計學習;自然語言處理;信息檢索;模式識別;人工智慧;圖形圖像;機器視覺;語音識別;機器人學等。(這方面的經典書籍都可以看看,後面慢慢補充)
4. 其它書籍
(1)Linux
(2)網路原理,編譯原理,組成原理,
(3)JVM
(4)UML
(5)軟體工程
(6)設計模式
(7)雲計算與Docker
(8)並行計算
(9)需求分析
三. 學習與方法
作為一名軟體工程師,需要熟練掌握的工具,如下所示:
(1)博客
除了學習之外,更要思考和總結,把還沒有忘卻的記憶緩存序列化成為文字,記錄在博客中。
(2)語言
大數據常用的語言包括Java,Scala,Python。如果一定要選擇精通一門語言,自己選擇Scala,同時深度學習JVM。(3)開發工具
自己選擇IntelliJ IDEA用於Java和Scala的開發,Eclipse用於Python的開發。
(4)GitHub
每天都要堅持編程,主動參與開源項目。
(5)Linux
工作常用的是Ubuntu 12.04 LTS。
由於時間原因,上面總結的還比較粗糙,算是第一個版本吧,後面還會繼續深度總結和完善。
4. python 集成開發環境哪個好
推薦10個好用的Python集成開發環境:
1. Pydev+Eclipse–最好的免費python IDE
Pydev的是Python IDE中使用最普遍的,原因很簡單,它是免費的,同時還提供很多強大的功能來支持高效的Python編程。Pydev是一個運行在eclipse上的開源插件,它把python帶進了eclipse的王國,如果你本來就是是一個eclipse的用戶那麼Pydev將給你家裡一樣的感覺。
Pydev能高居榜首,得益於這些關鍵功能,包括Django集成、自動代碼補全、多語言支持、集成的Python調試、代碼分析、代碼模板、智能縮進、括弧匹配、錯誤標記、源代碼控制集成、代碼折疊、UML編輯和查看和單元測試整合等。
2. PyCharm–最好的商業python IDE
PyCharm是專業的python集成開發環境,有兩個版本。一個是免費的社區版本,另一個是面向企業開發者的更先進的專業版本。
大部分的功能在免費版本中都是可用的,包括智能代碼補全、直觀的項目導航、錯誤檢查和修復、遵循PEP8規范的代碼質量檢查、智能重構,圖形化的調試器和運行器。它還能與IPython
notebook進行集成,並支持Anaconda及其他的科學計算包,比如matplotlib和NumPy。
PyCharm專業版本支持更多高級的功能,比如遠程開發功能、資料庫支持以及對web開發框架的支持等。
3.VIM
VIM是一個很先進的文本編輯器,在python開發者社區中很受歡迎。它是一個開源軟體並遵循GPL協議,所以你可以免費的使用它。
雖然VIM是最好的文本編輯器,但是它提供的功能不亞於此,經過正確的配置後它可以成為一個全功能的Python開發環境。此外VIM還是一個輕量級的、模塊化、快速響應的工具,非常適合那些很牛的程序員—編程從不用滑鼠的人。
4. Wing IDE
Wing IDE是另外一個商業的、面向專業開發人員的python集成開發環境,可以運行在windows、OS X和Linux系統上,支持最新版本的python,包括stackless Python。Wing
IDE分三個版本:免費的基礎版,個人版以及更強大的專業版。
調試功能是Wing IDE的一大亮點,包括多線程調試,線程代碼調試,自動子進程調試,斷點,單步代碼調試,代碼數據檢查等功能,此外還提供了在樹莓派上進行遠程調試的功能。
5.Spyder Python
Spyder Python是一個開源的python集成開發環境,非常適合用來進行科學計算方面的python開發。是一個輕量級的軟體,是用python開發的,遵循MIT協議,可免費使用。
Spyder python的基本功能包括多語言編輯器、互動式控制台、文件查看、variable explorer、文件查找、文件管理等。Spyder IDE也可以運行於windows、Mac或者Linux系統之上。
6.Komodo IDE
Komodo是Activestate公司開發的一個跨平台的集成開發環境,支持多種語言包括python。它是商用產品,但是提供了開源的免費版本叫Komodo Edit,能夠安裝在Mac、Windows和Linux系統上。
和大多數的專業python IDE一樣,Komodo也提供了代碼重構,自動補全,調用提示,括弧匹配,代碼瀏覽器,代碼跳轉,圖形化調試,多進程調試,多線程調試,斷點,代碼分析,集成測試單元等功能,並且集成其他的第三方庫,比如pyWin32。
7.PTVS-Best Python IDE for Windows
PTVS集成在Visual Studio中,就像Pydev可以集成在eclipse中一樣。PTVS將Visual
Studio變成了一個強大的、功能豐富的python集成開發環境,並且它是開源的,完全的免費。PTVS發布於2015年,由社區和微軟自己在維護。
8.Eric Python
Eric是一個開源python代碼編輯器和集成開發環境,提供很多高效編程需要的功能。它是純python編寫的,基於Qt GUI並集成強大的Scintilla編輯器功能。
Eric由Detlev Offenbach創建,遵循GPL協議,免費使用。經過多年的開發完善Eric已經成為一個常用的、功能豐富的集成開發環境。它提供一個可靠的插件管理系統,可以通過插件來擴展功能。Eric提供所有的基礎功能,比如調用提示、代碼折疊、代碼高亮、類瀏覽器、代碼覆蓋及分析等等。
9.Sublime Text3
Sublime Text3是目前為止功能最強大的跨平台的、輕量級的代碼編輯器。通過添加插件Sublime Text3可以成一個全功能的python IDE。
10.Emacs-Python Editor cum IDE
Emacs有屬於它自己的生態系統,它是一個可擴展的並能高度定製的GNU文本編輯器。它可以配置為一個全功能的免費的python集成開發環境。
Emacs在python開發中很受歡迎,他通過python-mode提供開箱即用的python。Emacs可以通過額外的擴展包來增加更多的高級功能。
5. Linux系統python的IDE(編輯器)在哪裡啊
Linux下沒有IDE,不過可以使用linux系統自帶的vi命令編輯*.py文件後運行。
在此基礎上,推薦使用Emacs或者Vim。
如果是UBUNTU等帶界面的LINUX系統,可以使用PYCHARM