Mga sikat na ideya. Pagpili ng development environment (IDE). Mga editor ng teksto para sa pagbuo ng web

Pagpili maginhawang kasangkapan- isa sa mga pangunahing gawain ng isang programmer. At una sa lahat, ito ay may kinalaman sa kapaligiran ng pag-unlad. Iba ang IDE sa simpleng editor code 4 na bagay:

  • Suporta malaking bilang programming language. Bilang panuntunan, lahat ng nasa saklaw ng focus (web, mobile, desktop).
  • Ang pagkakaroon ng isang compiler at interpreter para sa pag-convert ng mga nilikha sa machine code.
  • Mga built-in na utility para i-automate ang proseso: mga library, template, snippet, atbp.
  • Debugger para sa pag-detect ng mga error, typo at iba pang mga panganib.

Para sa isang baguhan sa programming, ang isang editor na gumagamit ng 1-2 wika ay maaaring sapat na, at mas mahusay na mahuli ang mga error sa manu-manong mode upang makita ang kanilang mga kahihinatnan.

Ngunit sa sandaling pumasok ka sa landas ng pag-unlad ng "pang-adulto", hindi mo magagawa nang walang magandang IDE. At buti na lang libre. Narito ang isang seleksyon ng 9 na may subjective na pinakamahusay:

NetBeans

Platform: Windows/Mac/Linux

Paglalarawan: Ang NetBeans ay isang cross-platform na open-source na IDE na idinisenyo upang tumakbo sa Java, ngunit sumusuporta sa Python, JavaScript, Ruby, C, C++, Ada, PHP, HTML, CSS, XML, Groovy. Ang kapaligiran ay nagpapahintulot sa iyo na magtrabaho sa lahat ng tatlong mga lugar ng pag-unlad.

Eclipse

Platform: Windows/Mac/Linux

Paglalarawan: Ang isa pang sikat na IDE na hindi nakatali sa OS, at sa tulong ng mga add-on ay sumusuporta sa hanggang 25 programming language. Sa pangkalahatan, ang bilang ng mga kasamang aklatan ay ginagawang isa ang Eclipse sa mga pinaka-functional na IDE.

Microsoft Visual Studio Express

Platform: Windows

Paglalarawan: Hinubaran, ngunit libreng bersyon Visual Studio. Para sa isang baguhan, sapat na ang mga kakayahan nito:

  • IntelliSense auto-completion system.
  • Sinusuportahan ang C/C++/C#/Python/Ruby/VB.NET/JavaScript/HTML/CSS/XML.
  • Suporta para sa Git at TFS version control system.
  • Pagsasama sa Azure.

CodeLite

Platform: Windows/Mac/Linux

Paglalarawan: Cross-platform IDE para sa software development sa C/C++, PHP at Node.js. Sa kabila ng minimalism nito, lahat pangunahing pangangailangan ito ay masisiyahan ang developer.

Code::Block

Platform: Windows/Mac/Linux

Paglalarawan: 3 pangunahing tampok ng Code::Blocks:

  • Suporta para sa isang malaking bilang ng mga compiler, kabilang ang MinGW/GCC, Watcom, Clang, Digital Mars C/C++, at GNU GDB at MS CDB debugger.
  • wxSmith tool para sa mabilis na pag-unlad mga aplikasyon (RAD).
  • Pinapadali ng wxWidgets core library ang pagbuo ng mga GUI sa mga application.

Qt Creator

Platform: Windows/Mac/Linux

Paglalarawan: Ang Qt Creator ay dalubhasa sa pagtatrabaho sa C, C++ at QML, na sumusuporta sa parehong mga compiler at debugger bilang Code::Blocks. Gumagana sa lahat ng sikat na bersyon ng control system: Subversion, Mercurial, Git, CVS, Bazaar, Perforce.

Aptana Studio

Platform: Windows/Mac/Linux

Paglalarawan: Nang walang pagkonekta ng mga aklatan, maaari lamang gumana ang Aptana sa JavaScript, HTML at CSS. Sinusuportahan nila ang PHP, Python at Ruby. Kumokonekta rin ang Aptana sa Eclipse bilang isang plugin, na ginagawa itong mas kapaki-pakinabang para sa isang baguhan.

WebScripter

Platform:Mac

Paglalarawan: Ang WebScripter ay isang simple at nauunawaang IDE para sa mga web developer ng Apple. Ito ay hindi binuo sa loob ng 5 taon, ngunit ang built-in na editor, debugger at debugger ay sapat na upang makapagsimula.

PSPad

Platform: Windows

Paglalarawan: Code editor na sumusuporta sa higit sa 30 programming language, kabilang ang COBOL at Pascal. Ito ay may kakayahang ikonekta ang isang panlabas na compiler at debugger, na nagiging PSPad sa isang tunay na IDE.

Ang ilan sa mga tool na nakalista ay mabuti lamang para sa mga unang hakbang sa pag-unlad, ngunit hindi mo na kailangang gumugol ng maraming oras sa pag-aaral ng mga ito. Ang iba ay lumampas sa mga kakayahan ng karamihan sa mga bayad na kakumpitensya, kaya maaari silang maging mga kasama habang buhay, ngunit nangangailangan ng mahabang panahon upang makabisado.

Anong pinili mo?

Ang pagsusulat sa Python gamit ang IDLE o Python Shell ay medyo maginhawa pagdating sa mga simpleng bagay, gayunpaman, habang lumalaki ang mga proyekto, nagiging sakit ang programming. SA gamit ang IDE o kahit na ang isang mahusay na editor ng code ay maaaring gawing mas madali ang iyong buhay. Ngunit ang tanong ay - ano ang pipiliin?

Sa artikulong ito, tatalakayin namin ang mga pangunahing tool na nagbibigay-daan sa iyo na magsulat sa Python. Hindi kami pipili para sa iyo pinakamahusay na pagpipilian, ngunit titingnan namin ang mga kalamangan at kahinaan ng bawat isa at tutulungan kang gumawa ng matalinong desisyon.

Ano ang isang IDE at code editor?

Ang IDE (o integrated development environment) ay isang program na idinisenyo para sa software development. Gaya ng ipinahihiwatig ng pangalan, pinagsasama-sama ng IDE ang ilang mga tool na partikular na idinisenyo para sa pag-unlad. Ang mga tool na ito ay karaniwang may kasamang editor na idinisenyo upang gumana sa code (tulad ng syntax highlighting at autocompletion); build, runtime, at mga tool sa pag-debug; at ilang anyo ng version control system.

Karamihan sa mga IDE ay sumusuporta sa maramihang mga programming language at may maraming mga tampok, na nangangahulugan na ang mga ito ay maaaring malaki, magtagal sa pag-download at pag-install, at nangangailangan ng malawak na kaalaman upang magamit nang tama.

Sa kabilang banda, may mga code editor, na isang text editor na may syntax highlighting at code formatting capabilities. Karamihan magaling na mga editor Ang mga coder ay maaaring magpatakbo ng code at gumamit ng isang debugger, at ang pinakamahuhusay ay maaaring makipag-ugnayan sa mga version control system. Kung ikukumpara sa isang IDE, ang isang mahusay na editor ng code ay karaniwang mas magaan at mas mabilis, ngunit kadalasan sa halaga ng mas kaunting pag-andar.

Mga kinakailangan para sa isang magandang kapaligiran sa pag-unlad

Kaya ano ang kailangan natin mula sa isang kapaligiran sa pag-unlad? Maaaring magkaiba ang hanay ng mga function ng iba't ibang kapaligiran, ngunit mayroong isang hanay ng mga pangunahing bagay na nagpapasimple sa programming:

  • Nagse-save ng mga file. Kung ang isang IDE o editor ay hindi nagbibigay sa iyo ng kakayahang i-save ang iyong trabaho at sa paglaon ay buksan ang lahat sa parehong estado kung saan ito ay noong isinara mo ito, kung gayon ito ay hindi gaanong IDE;
  • Pagpapatakbo ng code mula sa kapaligiran. Parehong bagay, kung kailangan mong lumabas sa kapaligiran upang magpatakbo ng code, kung gayon ito ay walang iba kundi isang simpleng text editor;
  • Suporta sa pag-debug. Ang kakayahang hakbang sa code ay pangunahing pag-andar lahat ng mga IDE at pinakamagagandang code editor;
  • Pag-highlight ng syntax. Kakayahang mabilis na mahanap mga keyword, mga variable, atbp. ginagawang mas madali ang pagbabasa at pag-unawa sa code;
  • Awtomatikong pag-format ng code. Ang sinumang editor o IDE na talagang isa ay makikilala ang isang colon pagkatapos ng ilang sandali o para sa pagpapahayag at awtomatikong mag-indent sa susunod na linya.

Siyempre, maraming iba pang mga tampok na hindi mo nais na makaligtaan, ngunit ang nasa itaas ay ang mga pangunahing tampok na dapat magkaroon ng isang mahusay na kapaligiran sa pag-unlad.

Ngayon tingnan natin ang ilang mga tool pangkalahatang layunin, na maaaring magamit para sa pagbuo ng Python.

Mga editor at IDE na may suporta sa Python

Eclipse + PyDev

Kung malapit ka sa open-source na komunidad, malamang na narinig mo na ang Eclipse. Magagamit para sa Linux, Windows at OS X, ang Eclipse ay ang de facto na open-source na IDE para sa pagbuo ng Java. Maraming extension at addon na ginagawang kapaki-pakinabang ang Eclipse para sa iba't ibang gawain.

Ang isang ganoong extension ay ang PyDev, na nagbibigay ng interactive na Python console at mga kakayahan sa pag-debug at pagkumpleto ng code. Ang pag-install nito ay simple: ilunsad ang Eclipse, piliin ang Tulong → Eclipse Marketplace, pagkatapos ay hanapin ang PyDev. I-click ang I-install at i-restart ang Eclipse kung kinakailangan.

Mga kalamangan: Kung na-install mo na ang Eclipse, magiging mabilis at maayos ang pag-install ng PyDev. U makaranasang gumagamit Hindi magkakaroon ng problema ang Eclipse sa pag-aaral ng extension na ito.

Mga kapintasan: Kung nagsisimula ka pa lamang matuto ng Python o pag-unlad sa pangkalahatan, ang Eclipse ay maaaring maging napakabigat na pasanin. Tandaan na sinabi namin na ang mga IDE ay malaki at nangangailangan ng higit pang karanasan buong paggamit? Ang lahat ng ito ay masasabi tungkol sa Eclipse.

Sublime Text

Uri: editor ng code
Website: http://www.sublimetext.com

Isinulat ng isang Google engineer na may pangarap ng isang mas mahusay na text editor, ang Sublime Text ay isang napakasikat na code editor. Magagamit sa lahat ng mga platform, ang Sublime Text ay may built-in na suporta para sa pag-edit ng Python code, pati na rin ang isang rich set ng mga extension na tinatawag na mga package na nagpapalawak ng syntax at mga kakayahan sa pag-edit.

Ang pag-install ng karagdagang Python package ay maaaring nakakalito - lahat ng Sublime Text package ay nakasulat sa Python, kaya ang pag-install ng mga community package ay kadalasang nangangailangan ng pagpapatakbo ng Python script nang direkta sa editor.

Mga kalamangan:y Mahusay na Teksto malaking bilang tagahanga. Bilang isang editor ng code, ang Sublime Text ay mabilis, magaan, at mahusay na suportado.

Mga kapintasan: Ang Sublime Text ay hindi libre, bagama't maaari mong gamitin panahon ng pagsubok hangga't gusto mo. Ang pag-install ng mga extension ay maaaring maging isa pang quest. Bilang karagdagan, hindi sinusuportahan ng editor ang pag-debug o pagpapatakbo ng code.

Atom

Uri: editor ng code
Website: https://atom.io/

Magagamit sa lahat ng mga platform, ang Atom ay tinawag na "ang na-hack na text editor ng ika-21 siglo." Isinulat ang Atom gamit ang Electron - isang framework para sa paglikha ng mga cross-platform na desktop application gamit ang JavaScript, HTML at CSS - at may maraming extension. Ang suporta sa Python ay maaari ding paganahin gamit ang isang extension na maaaring direktang mai-install sa Atom.

Mga kalamangan: Sinusuportahan sa lahat ng mga platform salamat sa Electron. Ang Atom ay magaan at mabilis na i-download at i-load.

Mga kapintasan: Ang suporta para sa pagbuo at pag-debug ay hindi built-in, ngunit idinagdag sa pamamagitan ng mga extension. Dahil isinulat ang Atom gamit ang Electron, palagi itong tumatakbo bilang proseso ng JavaScript, hindi bilang katutubong app.

GNU Emacs

Uri: editor ng code
Website: https://www.gnu.org/software/emacs/

Matagal bago ang digmaan sa iPhone-Android, bago ang digmaan sa Linux-Windows, bago pa man ang digmaan ng PC-Mac, nagkaroon ng digmaan ng mga editor kasama ang GNU Emacs bilang isa sa mga mandirigma. Inilarawan bilang isang "extensible, customizable, self-documenting text editor", ang GNU Emacs ay halos kasingtagal na ng UNIX at nakakuha ng maraming tagasunod.

Magagamit nang libre sa bawat platform (sa isang anyo o iba pa), ginagamit ng GNU Emacs ang Lisp na wika para sa pagpapasadya. Siyempre, mayroon ding mga customization script para sa Python.

Mga kalamangan: Pamilyar ka sa Emacs, gumagamit ka ng Emacs, mahal mo ang Emacs. Ang Lisp ay ang iyong pangalawang wika at alam mong magagawa mo ang anumang bagay dito.

Mga kapintasan: Ang pagpapasadya ay nagsasangkot ng pagsulat (o pagkopya-paste) ng Lisp code sa iba't ibang mga script. Kung wala man, maaaring kailanganin mong matutunan ang Lisp para malaman ito.

Vi/Vim

Uri: editor ng code
Website: https://www.vim.org/

Sa kabilang panig ng digmaang editor ay VI/VIM. Available bilang default sa halos lahat ng UNIX system at Mac OS X, VI ay nanalo ng kasing dami ng mga tagahanga. Ang VI at VIM ay mga modal editor na naghihiwalay sa pagtingin sa isang file mula sa pag-edit nito. Kasama sa VIM ang lahat ng mayroon ang VI, kasama ang ilang mga pagpapabuti tulad ng pagkakaroon ng mga extension. Para sa iba't ibang uri ng mga gawain sa Python, maaari mong gamitin ang VIMScripts.

Mga kalamangan: Pamilyar ka sa VI, VI ang ginagamit mo, mahal mo si VI. Hindi ka tinatakot ng VIMScripts, at alam mo kung paano ibaluktot ang mga ito sa iyong kalooban.

Mga kapintasan: Tulad ng sa Emacs, hindi ka masyadong kumportable sa paghahanap o pagsulat ng mga script upang magdagdag ng mga kakayahan sa pagbuo ng Python, at wala kang ideya kung paano dapat gumana ang isang modal editor.

Visual Studio

Mga kalamangan: Tulad ng sa Eclipse, kung mayroon ka nang naka-install na Visual Studio para sa iba pang mga layunin, ang pag-install ng PTVS ay walang problema.

Mga kapintasan: Tulad ng Eclipse, ang Visual Studio ay magiging medyo malaki kung kailangan mo lamang ng Python. Bilang karagdagan, kung gumagamit ka ng Linux, kung gayon ikaw ay nasa problema - walang Visual Studio para sa platform na ito.

Visual Studio Code

Uri: editor ng code
Website: https://code.visualstudio.com/
Mga tool sa Python: https://marketplace.visualstudio.com/items?itemName=ms-python.python

Ang Visual Studio Code (hindi dapat ipagkamali sa Visual Studio) ay isang full-feature na code editor na available sa Windows, Linux at Mac OS X. Ang VS Code ay isang extensible na open-source na editor na maaaring i-customize para sa anumang gawain. Tulad ng Atom, ang VS Code ay binuo sa Electron, kaya ito ay may parehong mga pakinabang at disadvantages.

Ang pagdaragdag ng suporta sa Python sa VS Code ay hindi magiging madali—hanapin ang "Python" sa Marketplace, i-click ang "I-install," at i-restart ang editor kung kinakailangan. Awtomatikong makikita ng VS Code ang iyong Python interpreter at mga naka-install na library.

Mga kalamangan: Salamat sa Electron, available ang VS Code sa lahat ng platform na may kamangha-manghang functionality. Bilang karagdagan, ang source code ay matatagpuan sa pampublikong domain.

Mga kapintasan: Dahil ang Electron ay kasangkot, nangangahulugan ito na ang VS Code ay hindi isang katutubong aplikasyon. Bilang karagdagan, pinipigilan sila ng relihiyon ng ilang tao na gumamit ng mga produkto ng Microsoft.

Mga editor at IDE na idinisenyo para sa Python

PyCharm

Ang isa sa mga pinakamahusay na ganap na tampok na mga IDE na partikular na idinisenyo para sa Python ay ang PyCharm. Mayroong parehong libreng open-source (Komunidad) at bayad (Propesyonal) na mga opsyon sa IDE. Available ang PyCharm sa Windows, Mac OS X at Linux.

Sinusuportahan ng PyCharm ang pagbuo ng Python sa labas ng kahon nang direkta - bukas bagong file at simulan ang pagsulat ng code. Maaari kang magpatakbo at mag-debug ng code nang direkta mula sa PyCharm. Bilang karagdagan, ang IDE ay may suporta para sa mga proyekto at kontrol sa bersyon.

Mga kalamangan: Ito ay isang Python development environment na may suporta para sa lahat at isang magandang komunidad. Sa loob nito, sa labas ng kahon, maaari mong i-edit, patakbuhin at i-debug ang Python code.

Mga kapintasan: Maaaring mabagal ang pag-load ng PyCharm at maaaring kailangang ayusin ang mga default na setting para sa mga kasalukuyang proyekto.

Spyder

Ang Spyder ay isang open-source na IDE para sa Python, na na-optimize para sa mga data scientist. Kasama ng Spyder ang manager ng package ng Anaconda, kaya posibleng na-install mo na ito.

Ano ang kawili-wili tungkol sa Spyder ay na ito target na madla ay mga data scientist na gumagamit ng Python. Halimbawa, mahusay na gumagana ang Spyder sa mga library ng data science gaya ng SciPy, NumPy at Matplotlib.

Ang Spyder ay mayroong functionality na iyong inaasahan mula sa isang karaniwang IDE, tulad ng isang code editor na may syntax highlighting, code completion, at kahit isang built-in na documentation browser.

Ang isang natatanging tampok ng Spyder ay ang pagkakaroon ng isang variable explorer. Pinapayagan ka nitong tingnan ang mga variable na halaga sa form ng talahanayan sa loob mismo ng IDE. Ang pagsasama sa IPython/Jupyter ay gumagana rin nang maayos.

Masasabi natin ang tungkol sa Spyder na ito ay mas "down to earth" kaysa sa iba pang mga IDE. Maaari itong tingnan bilang isang tool para sa isang tiyak na layunin sa halip na isang pangunahing kapaligiran sa pag-unlad. Ang maganda dito ay libre ito, open-source, at available sa Windows, macOS, at Linux.

Mga kalamangan: Isa kang data scientist na gumagamit ng Anaconda.

Mga kapintasan: Maaaring makita ng mas may karanasan na mga developer ng Python ang Spyder na hindi sapat na mayaman sa tampok para sa pang-araw-araw na gawain at pipiliin ang isang mas maraming tampok na IDE o editor.

Thonny

Si Thonny ay tinatawag na isang IDE para sa mga nagsisimula. Isinulat at pinananatili ng Institute of Informatics sa University of Tartu sa Estonia, available si Thonny sa lahat ng pangunahing platform.

Bilang default, nag-i-install si Tonny gamit ang kasamang bersyon ng Python, kaya hindi mo na kailangang mag-install ng anupaman. Maaaring kailanganin ng mga advanced na user na baguhin ang setting na ito upang mahanap at magamit ng IDE ang mga naka-install na library.

Mga kalamangan: Ikaw ay isang newbie Python programmer at kailangan mo ng IDE na maaari mong diretsong tumalon sa aksyon.

Mga kapintasan: Ang mga advanced na user ay hindi magkakaroon ng sapat na functionality at papalitan ang built-in na interpreter. Bilang karagdagan, dahil sa pagiging bago ng IDE, maaaring lumitaw ang mga problema na hindi malulutas. sa ngayon Hindi.

Kaya alin ang dapat mong piliin?

  • Ang mga nagsisimulang Pythonist ay dapat pumili ng isang bagay na may pinakamababang halaga ng mga pagpipilian sa pagpapasadya. Ang mas kaunting mga hadlang ay mas mabuti;
  • Kung gumagamit ka na ng ilang editor para sa iba pang mga gawain, pagkatapos ay tumingin sa mga editor ng code;
  • Well, kung mayroon ka nang IDE para sa isa pang wika, subukang magdagdag ng suporta sa Python dito.

Interesado ka rin ba sa web? Pagkatapos ay tingnan ang aming katulad para sa web development.

Kino-convert ng compiler ang source code (*.c, *.cpp file) sa isang gumaganang program. Kung wala kang compiler, kakailanganin mong mag-install ng isa bago ka magsimula ng programming. Mayroong maraming mga compiler na magagamit online para sa pag-download. Kung ikaw ay Gumagamit ng Mac Sa OS X, Linux, o iba pang *nix system (gaya ng Unix o FreeBSD), malamang na mayroon ka nang mga compiler na naka-install gaya ng GCC o G++.

Pangunahing Konsepto

Compiler- isang program na nagsasalin ng source (high-level) code ng program sa final (low-level) code.
Compilation- mataas na antas ng proseso ng conversion pinagmulang teksto programa sa katumbas na teksto ng programa, ngunit sa isang mababang antas ng wika.
Linker(Linker) ay isang programa na bumubuo ng isang executable na module sa pamamagitan ng pag-link ng mga file ng object ng proyekto.
IDE(Integrated Development Environment) - isang kumbinasyon ng isang text editor at isang compiler. Ang pagbuo, pagsasama-sama at paglulunsad ng iyong mga programa ay direktang isinasagawa sa IDE. Pinapasimple ng pinagsama-samang mga kapaligiran sa pag-unlad ang proseso ng pagsulat ng mga programa, dahil ang pagsulat ng code, pag-compile at pagpapatakbo ng mga programa ay ginagawa sa isang programa - ang IDE. Isa pa mahalagang katangian Ang IDE ay tinutulungan ka ng IDE na mabilis na mahanap at ayusin ang mga error sa compilation.

Pag-unawa sa Mga Proseso ng Compilation

Mga proseso ng pagsasama-sama at pag-uugnay − maikling paglalarawan kung ano ang eksaktong mangyayari kapag nag-compile ka ng isang programa.
Mga error sa compilation, sa ilang linya ang compiler ay nakakahanap ng mga error na kailangang alisin.
Mga babala ng compiler - kung ano ang mga babala ng compiler, paano at bakit naresolba ang mga ito.
Ano ang pagkakaiba sa pagitan ng mga deklarasyon at mga kahulugan sa C/C++. Alamin ang pagkakaiba sa pagitan ng isang deklarasyon at isang kahulugan sa C/C++, at kung bakit ito napakahalaga.

Pagpili ng mga compiler (mga IDE)

Para sa Windows OS:
Code::Blocks sa Mingw ang aming inirerekomenda, libreng IDE! Code::Blocks ay available din sa Linux. Maaari mong makita kung paano i-install ang IDE na ito sa aming artikulong Pag-install ng Code::Blocks at MINGW.
Microsoft Visual C++ - Magbasa tungkol sa Visual C++. Gabay sa Pag-install ng Microsoft Visual Studio 2012

"Patuloy akong nag-iisip kung kailan darating ang sandali na sasabihin ko sa estilo ng "Oo, nasa edad mo ako!.. atbp. At ngayon... Ang sandaling ito, malamang, ay dumating na Ikaw -. gaano kaliwanag mula sa iyong kamakailang post - 16 taong gulang, at ipinoposisyon mo ang iyong sarili bilang isang kabataang interesado sa programming Alinman sa gagamit ka ng Go para sa isang malakihang proyekto sa web, o hindi mo mahanap ang isa. scheme ng kulay para sa editor ng Sublime Text 3 na magsimula ng programming, na may isang paksa para sa pang-araw na trabaho at ang isa para sa trabaho sa gabi. At lahat ng ito upang, habang inilalagay mo ito sa parehong post, sa malapit na hinaharap muli - magsimulang magsulat sa wikang golang. Ngayon ang IDE mismo ang pinag-uusapan.

Sa iyong edad, o sa halip, mula sa edad na 12 hanggang mga 16, nakaupo ako sa bahay sa isang umuugong na ES-1840 na computer na nilagyan ng black-and-white na monitor na "Electronics". Doon, maniwala ka sa akin, walang mga tema - ni gabi o araw. Hindi banggitin ang katotohanan na ang konsepto ng "graphics" ay nabawasan sa mga algorithm para sa pagpapakita ng mga simpleng geometric na hugis, halos, sabihin, "bawat pixel". Walang mga magarbong IDE, at ang Norton/Volkov Commander ay itinuturing na pinakamataas ng ergonomya ng UI. Windows at GUI? Hindi, hindi namin narinig... Nagkaroon ng MS-DOS sa lahat ng kaluwalhatian nito.

Ngunit, ang aking batang kaibigan, mayroong Borland TurboPascal, Borland C++, Microsoft GW-BASIC at iba pa - ang pinakasimple sa kahulugan graphical na shell(kung ang ganitong konsepto ay maaaring matagpuan doon), ngunit ang mga kinakailangang kapaligiran sa pag-unlad para sa MS-DOS, salamat sa kung saan marami ang naging mga propesyonal nang walang anumang mga tema sa gabi. Oh oo, nakalimutan kong banggitin: pagkatapos ay walang Internet at ang sagot sa isang tanong tulad ng "Paano ko ito gagawin upang..." ay hindi matagpuan sa gamit ang Google. At walang mga libro. Maliban na ang aklat ni V. E. Figurnov na "IBM PC for the User" ay halos ang tanging bibliya ng ating henerasyon at kaunting mga pag-scan mula sa dokumentasyong kasama ng mga opisyal na bersyon ang mga programa sa itaas at itinuring na mas mahalaga kaysa sa ginto.

Tulad ng isinulat ko na sa iyo, kilala ko ang mga tao (at maraming tao) na nagpaplanong matuto ng Java sa loob ng maraming taon, ngunit hindi makapagpasya kung alin ang mas mahusay - Eclipse o NetBeans. Bilang resulta, nanatili sila sa kanilang kinaroroonan, na walang natutunan. At lahat dahil nilapitan nila ang proseso mula sa maling panig, malinaw na naniniwala na ang ugat ng kanilang hindi pagkakaunawaan sa mga pangunahing kaalaman ng programming ay nauugnay sa paggamit ng isang hindi maginhawang IDE.

Nais kong umunlad ka, at samakatuwid ay hinihiling ko: huwag ulitin ang karanasan ng mga natalo at huwag mong tapakan ang mga sira-sirang rake ng iba. Matuto at simulan ang programming, at mag-iwan ng mga paksa para sa ibang pagkakataon.

Maraming paraan para magsulat ng code para sa mga web application, mula sa mga text editor hanggang sa cloud-based na development environment. Mahirap agad na magpasya kung aling kapaligiran ang pinakaangkop para sa mga gawaing nasa kamay. Para makatipid ka ng oras, pinili namin ang pinakasikat:

Sa dulo ng bawat seksyon ay mayroon pivot table, kung saan malinaw mong makikita ang paghahambing ng mga function ng mga editor para sa web development. Tinatalakay ng artikulong ito ang mga eksklusibong libreng cross-platform na solusyon, kaya hindi kasama sa pagpili ang mga sikat na proprietary editor tulad ng Sublime Text.

Mga editor ng teksto para sa pagbuo ng web

Komodo Edit

Pangunahing tampok:

  • walang katapusang kwento ng pagkansela,
  • isang malawak na hanay ng mga plugin,
  • suporta para sa daan-daang mga programming language at mga format ng file,
  • malakas na paghahanap at pagpapalit,
  • pagsasama sa mga tool ng third party.

GNU Emacs

Mga Desktop Integrated Development Environment (Mga IDE)

Eclipse

Mga Cloud IDE

Karamihan sa mga desktop application ay lumipat sa cloud, kaya hindi nakakagulat na mga kapaligiran sa ulap nagiging tanyag din sa mga programmer. Hindi lahat ay agad na nagtitiwala sa mga cloud IDE, ngunit ang mga sikat na tool tulad ng Github at Pastebin ay tumutulong sa iyo na masanay sa katotohanan na ang source code ay hindi nakaimbak sa lokal na makina, ngunit sa isang third-party na server.

Ulap9

Pagkatapos ng ilang minutong pagtatrabaho sa Cloud9, makukuha mo ang impresyon na ikaw ay nasa paraiso para sa mga programmer. Ang interface ay nakasulat sa JavaScript, at bahagi ng server- sa NodeJS. Kahit na ang Cloud9 ay pinapaboran ng mga developer at interface designer, sinusuportahan nito ang syntax highlighting para sa C#, C++, Python, Perl, Ruby, Scala at ilang iba pang mga wika.

Ang built-in na mode ng Vim ay isang magandang touch, pati na rin ang suporta mga sikat na sistema kontrol ng bersyon tulad ng Git, Mercurial at SVN. Sa CSSLint at JSBeautify, isa ito sa pinakamagandang development environment.

Codeanywhere

Ang isa pang tool sa paggawa ng app na madalas nangunguna sa mga listahan ng pinakamahusay ay Codeanywhere. Sinusuportahan ng cloud-friendly na IDE na ito ang pag-highlight ng code para sa HTML, CSS, JavaScript, PHP, MySQL at iba pang mga wika. Sa mga app para sa iOS, Android, at BlackBerry, pinapayagan ng Codeanywhere ang mga programmer na magtrabaho kahit saan.

Bukod pa rito, sinusuportahan ng Codeanywhere ang Dropbox at SFTP, na tumutulong sa iyong madaling gumawa mga backup mga file ng proyekto at ibahagi ang mga ito sa mga kasamahan. Hindi ito ang pinaka-ganap na itinatampok na kapaligiran, ngunit nagagawa nitong ganap ang trabaho.

Ang sistema ay binabayaran, ngunit mayroong isang libreng plano ng taripa.

Eclipse Che

Eclipse Che - batay sa ulap workspace developer at built-in na IDE. Nagbibigay si Che ng malayong platform na may bukas source code para sa paglikha ng multi-user na application.

Pangunahing tampok:

  • mga workspace kabilang ang mga runtime at IDE,
  • server ng workstation na may RESTful web services,
  • cloud IDE,
  • mga plugin ng wika, mga platform at tool,
  • SDK para sa paggawa ng mga plugin at assemblies.

May dalawang build ang Eclipse Che - single-user at multi-user. Ang una ay walang mga bahagi na nagbibigay ng multitenancy at pagkakaiba ng mga karapatan sa pag-access. Sa kasong ito, ang server ay nananatiling hindi protektado, ngunit para sa lokal na pag-unlad- ito ay isang magandang pagpipilian.

Nagbibigay ang multi-tenant ng multi-tenancy. Mga account Ang mga gumagamit at desktop ay nakahiwalay, at ang mekanismo ng KeyCloak ay ginagamit para sa pagpaparehistro, pamamahala at pagpapatunay. Ang mga API ng Pahintulot ay namamahala sa pag-access sa mga bagay gaya ng mga espasyo, stack, at organisasyon. Ang impormasyon ng user ay naka-imbak sa isang migration-aware database (PostgreSQL).