Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Programet
  • Redaktori apo IDE? Një tjetër përpjekje për analizë. IDE më i gjithanshëm: JDeveloper

Redaktori apo IDE? Një tjetër përpjekje për analizë. IDE më i gjithanshëm: JDeveloper

Dëshiroj të ngre edhe një herë këtë temë mjaft të diskutueshme.

Që kur kam filluar programimin, kjo pyetje më përndjek, dhe tema të shumta në forume dhe habré nuk janë sqaruar. Plus, më duket se disa argumente për të dyja palët nuk janë paraqitur. Dhe ato që jepen kanë prioritete të gabuara dhe kontekst të humbur.

Në këtë artikull do të përpiqem ta korrigjoj këtë lëshim dhe të shënoj pak më shumë "e".

I ftoj të gjithë të marrin pjesë në kërkimin e mjetit të përsosur.

Rreth përvojës sime

Fillova të programoj në DOS. në Turbo Pascal. Dhe, për disa arsye, ne më pas përdorëm IDE vetëm për korrigjimin e gabimeve, dhe kjo është mjaft e rrallë. Për të shkruar kodin, ata preferuan të përdornin një edit.exe të caktuar pa emër pa ndonjë theksim sintaksor në lidhje me Komandant Volkov... Dhe kaq mjaftoi. Në të njëjtën mënyrë, më vonë u mora me asembler dhe, pjesërisht, C ++.

Duke vazhduar të mësoj C ++, kalova në Windows dhe, në përputhje me rrethanat, Studio pamore- ku pa të. Gjeta versione, nëse nuk gabohem, nga 5 në 7. Pas një redaktori të thjeshtë, ishte diçka - gjenerimi i kodit dhe plotësimi automatik ishin të këndshëm. Vërtetë, ishte pothuajse e pamundur të kuptohej gjithë kjo mirësi e krijuar, por dukej e parëndësishme.

Pas një kohe, kalova në Linux dhe fillova zhvillimin e uebit në php. Këtu kam studiuar vim paralelisht dhe kam përdorur ZendStudio për zhvillim. Në një moment, fillova të përdor vetëm Vim për gjithçka - e ktheva atë, sipas manualeve të shumta, në një ide të vogël. Në të, unë shkrova CMS-në time të parë të biçikletës në php.

Vini re se më parë programimi nuk ishte aktiviteti im kryesor. Po, kam shkruar shërbime të ndryshme të vogla për punë, kam bërë tema për WordPress, por aktiviteti im kryesor ka qenë administrimi.

Sapo fillova të zhvillohesha profesionalisht, nuk më mjaftonin më mundësitë e vim-it. Fillimisht kishte eklips, pastaj netbeans, tani phpstorm.

Për gjysmë viti i fundit jam përpjekur heroikisht të zotëroj emacs, përfshirë. si mjedisi kryesor i punës.

Kështu që unë kam diçka për të krahasuar dhe, shpresoj, mendimi im do të jetë mjaft i bazuar dhe i bazuar.

IDE? IDE ...

Mendova gjatë se në çfarë forme të sillja krahasimin e avantazheve dhe disavantazheve të palëve. Lista nuk është shumë e përshtatshme për këtë, pasi një listë e thjeshtë nuk pasqyron plotësisht thelbin e çështjes. Redaktori dhe IDE nuk janë të kundërta, por mjete, fushëveprimi i të cilave mbivendoset në disa zona. Përparësitë e redaktorit nuk janë gjithmonë disavantazhet e mjedisit, dhe anasjelltas. Për këtë arsye, arsyetimi pak a shumë i strukturuar mbi këtë temë vazhdon.

Do të filloj, ndoshta, me një nga avantazhet e padiskutueshme të redaktorit - mundësitë e tij të pasura për të punuar me tekst dhe aftësinë për të bërë gjithçka pa hequr duart nga tastiera. Shumica e mjediseve nuk e bëjnë këtë. Por a keni vërtet nevojë për aftësi të tilla kur shkruani kodin? Kur shkruani një artikull ose letër, mendoj se është e përshtatshme të ndërroni 2 fjalë me një shtypje tasti ose të zhvendosni një paragraf në krye të faqes. Por në tekstin e programit, në shumicën e rasteve është i pakuptimtë dhe kërkon rifaktorim. Dhe ju duhet të paguani për këtë ose me shkurtesat e tastierës emacs që ndajnë gishtat, ose me komandat po aq të dëmshme në vim. Por e gjithë kjo duhet të mbahet mend! Ajo që zgjidhet thjesht me një lëvizje të miut, si lëvizja e dritareve ose ndryshimi i madhësisë së tyre, kthehet në një kërkim të tërë. Po, edhe theksimi i tekstit është më i lehtë me miun - më saktë, më i shpejtë dhe nuk keni pse të numëroni sa fjalë ka deri në vendin e duhur në tekst. Jo, edhe programuesi mund Këto funksione mund të jenë të dobishme, por fakti është se koha e tij e shpenzuar për modifikimin e vërtetë të kodit është e papërfillshme, kështu që praktikisht nuk do të ketë asnjë përfitim në kohë. Por një ndërlikim domethënës i instrumentit është i dukshëm.

Një programues shpenzon 80% të kohës së tij duke kuptuar dhe lundruar kodin e shkruar. Për më tepër, lëvizja është përmes kodit, dhe jo përmes tekstit! Dhe këtu redaktori nuk mund ta ndihmojë atë me absolutisht asgjë. Lista e parametrave të metodës në këshillën e veglave nuk do të shfaqet, nuk do t'ju lejojë të shkoni te përkufizimi i metodës, sintaksa nuk do të kontrollojë. Dhe IDE-të, edhe ato më të thjeshtat, e trajtojnë këtë në një mënyrë të thjeshtë dhe elegante. Kohët e fundit kam kaluar 10 minuta duke kërkuar për një përkufizim të një metode në një projekt duke përdorur silversearcher nga emacs. Doli që klasa ishte përcaktuar në një modul tjetër, etj. 10 minuta në vend të një klikimi të mausit! Sigurisht, nuk kam përvojë të mjaftueshme në emacs, ndaj le të jetë 5 minuta, qoftë edhe një minutë. Por raporti është ende mbresëlënës.

Dhe këtu IDE tregon plusin e tij, ndoshta të vetëm, por shumë të guximshëm - kjo është prania e një analizuesi të gjuhës programuese. Mjedisi "e kupton" që është duke redaktuar kodin. Redaktori nuk është. Dhe ky është plotësimi automatik, lundrimi dhe nxjerrja në pah e gabimeve sintaksore dhe, ndonjëherë, semantike. Duket e tepërt, një gjë e vogël e këndshme, vetëkënaqësi. Por ajo kthehet në një domosdoshmëri pasi madhësia e projektit kalon një kufi të caktuar. Dhe duke marrë parasysh kornizat voluminoze moderne, ky kufi vjen pothuajse menjëherë.

Po, në një projekt me dhjetëra skedarë dhe disa mijëra rreshta, ky plus nuk manifestohet në gjithë lavdinë e tij. Redaktori mund të kryejë gjithashtu të njëjtin plotësim automatik, por nuk do të eliminojë kurrë opsionet e pakuptimta. Dhe nëse madhësia e projektit i afrohet 100 mijë rreshtave dhe përbëhet nga mijëra skedarë, pa llogaritur bibliotekat, atëherë bëhet problematike të zgjedhësh emrin e dëshiruar nga një grumbull emrash variablash, metoda të klasave të tjera dhe vetëm fjalë nga komentet (këtë e kisha në vim, nuk e di, ndoshta e rregulluan). Kërkesat inteligjente eliminojnë nevojën për të mbajtur mend emrat funksionet e dëshiruara dhe parametrat e tyre. Shpesh kjo thjesht nuk është fizikisht e mundur.

Duke folur për projekte. Të gjitha IDE-të kanë këtë koncept. Cilësimet, burimet janë të lidhura me të, mund të kërkoni, etj. Në redaktorët është në rasti më i mirë drejtoria e hapur sistemi i skedarëve... Ndonjëherë pak më shumë.

Integrimi me korrigjuesin në redaktorët gjithashtu lë shumë për të dëshiruar. Testimi i njësisë, regjistrimi, deri diku, e shpëton situatën, por ndonjëherë nuk mund të shkoni askund pa një korrigjues.

Dikush mund të argumentojë se në redaktorët modernë, shumë prej këtyre funksioneve tashmë janë zbatuar dhe nuk janë në asnjë mënyrë inferiore ndaj IDE-ve më të sofistikuara. Unë nuk jam dakord. Së pari, nuk ka zbatime të plota. Ata nuk punojnë siç duhet. Së dyti, instalimi i gjithë kësaj tashmë është i mjaftueshëm detyrë e vështirë... Po, edhe konfigurimi funksionet e brendshme redaktori nuk është më i parëndësishëm. Provoni, le të themi, të aktivizoni numërimin e rreshtave në të njëjtat emacs! Plus, shpesh funksionalitetin e kërkuar zbatuar nga një duzinë shtojcash, nuk është e qartë se si ndërveprojnë me njëri-tjetrin. Dhe shpesh ata gjithashtu kanë një duzinë versione dhe degë, jo gjithmonë të pajtueshme, çuditërisht të personalizueshme, etj. Sigurisht, mund të kaloni një muaj, të konfiguroni dhe instaloni gjithçka (që është gjithashtu shumë entuziastësh), por kjo vetëm sa do ta afrojë redaktorin me nivelin IDE. Për shembull, le të kthehemi te të njëjtat projekte - kam provuar Project nën vim dhe projectile nën emacs dhe disa shtojca të tjera. Nëse Projekti pak a shumë i plotëson kërkesat e mia (edhe pse në Versioni i fundit Nuk arrita të krijoj fare një projekt për shkak të gabimeve), atëherë predha la një përshtypje jashtëzakonisht negative.

E megjithatë, redaktorët kanë disa fusha aplikimi ku ata, të paktën, konkurrojnë me mjediset e zhvillimit.

Së pari, ata performojnë më mirë në projekte të vogla. Nuk ka kuptim të shkarkoni një korrës IDE për të punuar me një projekt prej 10-20 skedarësh. Është më e lehtë të korrigjosh 3-4 rreshta në redaktues.

Së dyti, në disa fusha specifike, të gjitha avantazhet e IDE janë të niveluara. Për shembull, zhvillimi i nivelit të ulët për Linux. Unë nuk e bëra atë, por duke gjykuar nga struktura e kodit dhe preferencat e zhvilluesve (rreth 70% - emacs dhe klone, 25% - vim, 5% - një lloj ekzotike si jed), nuk ka asgjë IDE për të bërë atje. E gjitha kodi i kërkuar, me të cilin po zhvillohet puna, mblidhet, si rregull, në një ose dy skedarë dhe nuk keni nevojë të hidheni brenda të gjithë projektit. Dhe plotësimi automatik nuk do të ndihmojë shumë kur zgjidhni nga një duzinë ose dy funksione me pothuajse të njëjtët emra.

Së treti, redaktorët mund të punojnë me më shumë sesa thjesht kod. Fuqia e tyre e plotë mund të përdoret kur punoni me csv ose skedarë xml... Ose diçka tjetër, e cila ndonjëherë është e nevojshme, si një artikull ose letër. Dhe nuk ka nevojë për rikualifikim, për të kërkuar program i përshtatshëm ose memorizoni çelësat kryesorë - gjithçka është afër, gjithçka është e njëjtë.

Së katërti, aftësia për të punuar me gjuhë për të cilat nuk ka IDE të arsyeshme. Thuaj, me të njëjtin rubin, mjedisi nuk më ndihmoi shumë. SublimeText ishte i mjaftueshëm. Megjithëse nuk punova me një projekt të madh rubin, ndoshta IDE do të ishte shfaqur atje.

Dhe së pesti, mundësia famëkeqe e zgjerimit. Në prani të shtojca të mira redaktori bëhet shumë miqësor për përdoruesit! Plus kënaqësinë specifike të akordimit të vazhdueshëm të instrumentit dhe ndjenjës suaj kryesore kontroll të plotë mbi të - vlen shumë.

Total

Nuk më pëlqejnë vërtet IDE-të, megjithëse mund të duket kështu nga teksti i mëparshëm. Unë mendoj se ata janë mjaft monstruoz, me një bandë të funksionet e panevojshme, i ngadalshëm dhe kërkues për burime. Dhe më të mirat janë mjaft të shtrenjta. Gjithashtu, besoj duke përdorur IDE relakson dhe lidhet me vetveten. Për redaktorët, në përputhje me rrethanat, e kundërta është e vërtetë. Plus disponueshmërinë dhe mundësinë e rregullimit të imët për veten tuaj. Nga të paktën vim dhe emacs. Në fund të fundit, më pëlqejnë ato. Për shembull, unë po shkruaj këtë artikull në Emacs.

Por industria (dhe shefat) diktojnë kërkesat e veta. Nëse nuk përdorni një IDE, performanca do të bjerë ndjeshëm. Por askush nuk do t'ju japë gjysmë ore për të gjetur presjen që mungon në 10 mijë rreshta kodi. E gjithë kjo duhet të bëhet automatikisht dhe të korrigjohet automatikisht. Gjithashtu ndonjëherë më pëlqen të gërmoj kode pa asnjë mjet - por në punë është humbje kohe.

Pas gjithë provës dhe gabimit tim, arrita në këtë përfundim - redaktor mund përdorni për zhvillim, por me një IDE, pas një kufiri të caktuar nuk krahasohet dhe përdorimi i një redaktori për diçka për të cilën paguheni është një luks i papranueshëm. Po, nëse përdorni praktikat e duhura të zhvillimit, hartoni / dokumentoni kodin në mënyrë korrekte, ndiqni standardet - mund të zbutni të metat e qenësishme të redaktorëve. Por ne nuk jetojmë në bote e perkryer kështu që përdorimi i një IDE është një domosdoshmëri, pavarësisht nga dëshira jonë.

Përpiluesi konverton burimi(skedarët * .с, * .cpp) në një program që funksionon. Nëse nuk keni një përpilues, duhet ta instaloni përpara se të filloni programimin. Ka shumë përpilues të disponueshëm për shkarkim në internet. Në qoftë se ju jeni përdorues Mac OS X, Linux ose sisteme të tjera * nix (si Unix ose FreeBSD), me siguri tashmë keni të instaluar përpilues si GCC ose G ++.

Konceptet bazë

Përpilues- një program që përkthen kodin burimor (të nivelit të lartë) të programit në kodin përfundimtar (të nivelit të ulët).
Përmbledhje- procesi i transformimit të nivelit të lartë teksti burimor programe, në tekstin ekuivalent të programit, por tashmë në një gjuhë të nivelit të ulët.
Lidhës(Linker) - një program që gjeneron një modul të ekzekutueshëm duke lidhur skedarët e objektit të projektit.
IDE(Integrated Development Environment) - Një kombinim i një redaktuesi teksti dhe një përpiluesi. Zhvillimi, përpilimi dhe nisja e programeve tuaja kryhen drejtpërdrejt në IDE. Mjediset e Integruara të Zhvillimit (IDE) thjeshtojnë procesin e kompozimit të programeve sepse ju shkruani kodin, përpiloni dhe ekzekutoni programe në një program - IDE. Nje me shume tipar i rëndësishëm IDE është se IDE ju ndihmon të gjeni dhe rregulloni shpejt gabimet e përpilimit.

Kuptimi i proceseve të përpilimit

Proceset e përpilimit dhe lidhjes janë - Përshkrim i shkurtërçfarë ndodh saktësisht kur përpiloni programin.
Gabimet e përpilimit, në disa rreshta përpiluesi gjen gabime që duhen eliminuar.
Paralajmërimet e përpiluesit - çfarë janë paralajmërimet e përpiluesit dhe si dhe pse zgjidhen ato.
Cili është ndryshimi midis deklaratave dhe përcaktimeve në C / C ++. Mësoni ndryshimin midis një deklarate dhe një përkufizimi në C / C ++ dhe pse është kaq e rëndësishme.

Zgjedhja e përpiluesit (IDE)

Për Windows OS:
Kodi :: Blloqe me Mingw - Rekomanduar nga ne, IDE falas! Kodi :: Blloqet disponohen gjithashtu në Linux. Ju mund të shihni se si ta instaloni këtë IDE në artikullin tonë Instalimi i Kodit :: Blocks dhe MINGW.
Microsoft Visual C ++ - Lexoni rreth Visual C ++. Udhëzues Instalimi i Microsoft Visual Studio 2012

"Kam menduar, kur do të vijë momenti kur do të më duhet të them në stilin "po, jam në moshën tuaj! .., etj." Dhe tani ... Ky moment, ka shumë të ngjarë, ka ardhur. mund të shihet nga postimi yt i fundit - 16 vjeç dhe pozicionohesh si një i ri që u tërhoq nga programimi, atëherë do të përdorësh Go për një projekt në internet në shkallë të gjerë, atëherë nuk mund ta gjesh skema e ngjyrave për redaktorin Tekst sublim 3 për të filluar programimin, me një temë për punë ditore, dhe e dyta është për natën. Dhe e gjithë kjo me qëllim, siç e keni vënë në të njëjtin postim, në të ardhmen e afërt përsëri - të filloni të shkruani në gjuhën golang. Tani vetë IDE është në pyetje.

Në moshën tuaj, ose më mirë, nga 12 vjeç e diku deri në 16 vjeç, u ula në shtëpi në kompjuterin gumëzhitës ES-1840, të pajisur me një monitor bardh e zi "Electronics". Atje, më besoni, nuk kishte tema - as natë as ditë. Nuk po flas as për faktin se koncepti i "grafikës" u reduktua në algoritme për shfaqjen e thjeshtë forma gjeometrike, dhe praktikisht, si të thuash, "piksel pas piksel". Nuk kishte as IDE të zbukuruara, dhe Norton / Volkov Commander u konsiderua kulmi i ergonomisë së UI. Windows dhe GUI? Jo, nuk kam dëgjuar .. Kishte MS-DOS në gjithë lavdinë e tij.

Por atëherë, miku im i ri, kishte Borland TurboPascal, Borland C ++, Microsoft GW-BASIC dhe të tjerë - më të thjeshtat në kuptim. guaskë grafike(nëse koncepti i tillë mund të gjendej fare atje), por mjediset e nevojshme të zhvillimit për MS-DOS, falë të cilave shumë u bënë profesionistë pa asnjë temë nate. Oh po, harrova të përmend: atëherë nuk kishte internet dhe përgjigja për një pyetje si "Dhe si ta bëni këtë ..." nuk mund të gjendej me duke përdorur google... Dhe nuk kishte libra. A është se libri i V. E. Figurnov "IBM PC për përdoruesit" është pothuajse e vetmja Bibël e gjeneratës sonë dhe skanime të pakta të dokumentacionit të furnizuar me versionet zyrtare nga programet e lartpërmendura dhe konsiderohet më i vlefshëm se ari.

Siç ju kam shkruar tashmë, unë njoh njerëz (dhe shumë e dinë) që kanë shkuar për të mësuar Java prej vitesh, por nuk mund të vendosin se cili është më i mirë - Eclipse ose NetBeans. Si rezultat, ata qëndruan aty ku ishin, duke mos mësuar absolutisht asgjë. Dhe gjithçka sepse ata iu afruan procesit nga ana e gabuar, duke besuar qartë se rrënja e keqkuptimit të tyre të bazave të programimit lidhet me përdorimin e një IDE të papërshtatshme.

Ju uroj përparim dhe prandaj ju kërkoj: mos e përsëritni përvojën e humbësve dhe mos e shkelni këtë grabujë të rraskapitur të të tjerëve. Mësoni dhe filloni të kodoni dhe lini temat për më vonë.

Përzgjedhja mjet i përshtatshëmështë një nga detyrat kryesore të një programuesi. Dhe para së gjithash ka të bëjë me mjedisin e zhvillimit. IDE është i ndryshëm nga redaktues i thjeshtë kod me 4 gjera:

  • Mbështetje një numër i madh gjuhë programimi. Si rregull, të gjitha brenda drejtimit (web, celular, desktop).
  • Prania e një përpiluesi, një interpretuesi për konvertimin e krijimeve në kodin e makinës.
  • Shërbimet e integruara për automatizimin e procesit: biblioteka, shabllone, fragmente, etj.
  • Debuger për zbulimin e gabimeve, gabimeve dhe rreziqeve të tjera.

Për një fillestar në programim, një redaktues që përdor 1-2 gjuhë mund të jetë i mjaftueshëm, dhe është më mirë të kapni gabime në modaliteti manual për të parë pasojat e tyre.

Por sapo të futeni në rrugën e zhvillimit "të rritur", nuk mund të bëni pa një IDE të mirë. Dhe është mirë që është falas. Këtu është një përzgjedhje e 9 top-ave subjektivisht më të mirë:

NetBeans

Platforma: Windows / Mac / Linux

Përshkrimi: NetBeans është një IDE me burim të hapur ndër-platformë i krijuar për të ekzekutuar në Java, por mbështet Python, JavaScript, Ruby, C, C ++, Ada, PHP, HTML, CSS, XML, Groovy. Mjedisi ju lejon të punoni në të tre fushat e zhvillimit.

Eklips

Platforma: Windows / Mac / Linux

Përshkrimi: Një IDE tjetër e njohur që nuk është e lidhur me sistemin operativ dhe me ndihmën e shtesave, mbështet deri në 25 gjuhë programimi. Në përgjithësi, numri i bibliotekave plug-in e bën Eclipse një nga IDE-të më funksionale.

Microsoft Visual Studio Express

Platforma: Windows

Përshkrimi: E zhveshur, por version falas Visual Studio. Për një fillestar, aftësitë e tij janë të mjaftueshme me një kokë:

  • Plotëso automatikisht IntelliSense.
  • Mbështetje për C / C ++ / C # / Python / Ruby / VB.NET / JavaScript / HTML / CSS / XML.
  • Mbështetje për sistemet e kontrollit të versionit Git dhe TFS.
  • Integrimi me Azure.

CodeLite

Platforma: Windows / Mac / Linux

Përshkrimi: IDE ndër-platformë për zhvillimin e softuerit në C / C ++, PHP dhe Node.js. Pavarësisht minimalizmit të tij, ai do të plotësojë të gjitha nevojat themelore të një zhvilluesi.

Kodi :: Blloqe

Platforma: Windows / Mac / Linux

Përshkrimi: 3 veçoritë kryesore të Kodit :: Blloqe:

  • Mbështetje për një numër të madh përpiluesish, duke përfshirë MinGW / GCC, Watcom, Clang, Digital Mars C / C ++ dhe korrigjuesit GNU GDB dhe MS CDB.
  • Mjeti wxSmith Rapid Application Development (RAD).
  • Biblioteka kryesore wxWidgets e bën më të lehtë zhvillimin ndërfaqe grafike në aplikime.

Krijuesi i Qt

Platforma: Windows / Mac / Linux

Përshkrimi: Qt Creator është i specializuar në punën me C, C ++ dhe QML, dhe mbështet të njëjtët përpilues dhe korrigjues si Code :: Blocks. Punon me të gjithë sistemet popullore kontrolli i versionit: Subversion, Mercurial, Git, CVS, Bazaar, Perforce.

Studio Aptana

Platforma: Windows / Mac / Linux

Përshkrimi: Pa biblioteka, Aptana mund të punojë vetëm me JavaScript, HTML dhe CSS. Mbështet PHP, Python dhe Ruby me to. Aptana gjithashtu lidhet me Eclipse si një shtesë, gjë që e bën atë edhe më të dobishëm për një fillestar.

WebScripter

Platforma: Mac

Përshkrimi: WebScripter është një IDE e thjeshtë dhe e drejtpërdrejtë për zhvilluesit e uebit të Apple. Nuk është zhvilluar për 5 vjet, por redaktori i integruar, debugger dhe debugger janë të mjaftueshëm për të filluar.

PSPad

Platforma: Windows

Përshkrimi: Një redaktues kodi që mbështet mbi 30 gjuhë programimi, duke përfshirë COBOL dhe Pascal. Ka aftësinë për të lidhur një përpilues të jashtëm dhe korrigjues, i cili e kthen PSPad në një IDE të vërtetë.

Disa nga këto mjete janë të mira vetëm për hapat e parë në zhvillim, por nuk duhet të shpenzoni shumë kohë për t'i mësuar ato. Të tjerët bllokojnë aftësitë e konkurrentëve më të paguar, kështu që ata mund të bëhen shoqërues për jetën, por u duhet shumë kohë për t'u zotëruar.

Çfarë zgjedhje keni bërë?

Shkrimi në Python duke përdorur IDLE ose Python Shell është mjaft i përshtatshëm kur bëhet fjalë për të gjera te thjeshta megjithatë, ndërsa projektet rriten në madhësi, programimi bëhet një dhimbje. Përdorimi i një IDE apo edhe një redaktuesi të mirë të kodit mund ta bëjë jetën tuaj shumë më të lehtë. Por pyetja është - çfarë të zgjidhni?

Në këtë artikull, ne do të ecim nëpër mjetet bazë për të shkruar në Python. Ne nuk do të zgjedhim për ju menyra me e mire, por ne do të shqyrtojmë të mirat dhe të këqijat e secilit dhe do t'ju ndihmojmë të merrni një vendim të informuar.

Çfarë është IDE dhe Redaktori i Kodit?

IDE (ose Integrated Development Environment) është një program i krijuar për zhvillim software... Siç sugjeron emri, IDE bashkon disa mjete posaçërisht për zhvillim. Këto mjete zakonisht përfshijnë një redaktues të dedikuar për të punuar me kodin (për shembull, theksimi i sintaksës dhe plotësimi automatik); mjetet e ndërtimit, ekzekutimit dhe korrigjimit të gabimeve; dhe disa forma të sistemit të kontrollit të versionit.

Shumica e IDE-ve mbështesin shumë gjuhë programimi dhe kanë shumë veçori, të cilat mund të jenë të mëdha, kërkojnë kohë për t'u shkarkuar dhe instaluar dhe kërkojnë njohuri të thelluara për t'u përdorur në mënyrë korrekte.

Nga ana tjetër, ka redaktues kodesh që janë redaktori i tekstit me theksimin e sintaksës dhe aftësitë e formatimit të kodit. Shumica redaktorë të mirë kodi mund të ekzekutojë kodin dhe të përdorë një korrigjues, dhe më të mirët madje mund të ndërveprojnë me sistemet e kontrollit të burimit. Krahasuar me një IDE, një redaktues i mirë kodi është zakonisht më i lehtë dhe më i shpejtë, por shpesh me kosto më pak funksionalitet.

Kërkesat për një mjedis të mirë zhvillimi

Pra, çfarë na nevojitet nga një mjedis zhvillimi? Grupet e funksioneve të mjediseve të ndryshme mund të ndryshojnë, por ka një sërë gjërash themelore që thjeshtojnë programimin:

  • Ruajtja e skedarëve. Nëse IDE ose redaktori nuk ju jep mundësinë të ruani punën tuaj dhe më vonë të hapni gjithçka në të njëjtën gjendje në të cilën ishte në kohën e mbylljes, atëherë kjo nuk është një IDE e tillë;
  • Ekzekutimi i kodit nga mjedisi. Po kështu, nëse ju duhet të dilni nga mjedisi për të ekzekutuar kodin tuaj, atëherë ky nuk është asgjë më shumë se një redaktues i thjeshtë teksti;
  • Mbështetje për korrigjimin e gabimeve. Aftësia për të kaluar përmes kodit është funksioni bazë të gjitha IDE-të dhe redaktuesit më të mirë të kodit;
  • Theksimi i sintaksës. Aftësia për të gjetur shpejt fjalë kyçe, variablat, e kështu me radhë e bëjnë më të lehtë leximin dhe kuptimin e kodit me një renditje të madhësisë;
  • Formatimi automatik i kodit. Çdo redaktues ose IDE që është në të vërtetë do të njohë dy pika pas një kohe ose për shprehje dhe automatikisht do të futë rreshtin tjetër.

Natyrisht, ka shumë veçori të tjera që do të dëshironit t'i përdorni, por këto janë karakteristikat kryesore që duhet të keni. ambient i mirë zhvillimin.

Tani le të hedhim një vështrim në disa nga mjetet Qëllimi i përgjithshëm që mund të përdoret për zhvillimin e Python.

Redaktorët e Python dhe IDE-të

Eclipse + PyDev

Nëse jeni afër komunitetit me burim të hapur, atëherë me siguri keni dëgjuar për Eclipse. I disponueshëm për Linux, Windows dhe OS X, Eclipse është de facto IDE me burim të hapur për zhvillimin e Java. Ka shumë shtesa dhe shtesa që e bëjnë Eclipse të dobishëm për lloje te ndryshme detyrat.

Një shtesë e tillë është PyDev, e cila ofron një tastierë interaktive Python dhe veçori për korrigjimin dhe plotësimin e kodit. Instalimi i tij është i thjeshtë: filloni Eclipse, zgjidhni Help → Eclipse Marketplace, më pas kërkoni për PyDev. Klikoni Install dhe rinisni Eclipse nëse është e nevojshme.

Përparësitë: Nëse tashmë keni të instaluar Eclipse, instalimi i PyDev do të jetë i shpejtë dhe pa probleme. Kanë përdorues me përvojë Eclipse nuk do ta ketë problem të mësojë këtë shtesë.

Të metat: Nëse sapo po filloni me Python ose zhvillimin në përgjithësi, Eclipse mund të jetë dërrmues. Mbani mend që thamë se IDE-të janë të mëdha dhe kërkojnë më shumë përvojë përdorim të plotë? E gjithë kjo mund të thuhet për Eclipse.

Tekst sublim

Një lloj: redaktori i kodit
Faqja e internetit: http://www.sublimetext.com

Sublime Text, i shkruar nga një inxhinier i Google me ëndrrën e një redaktuesi më të mirë teksti, është mjaft redaktor popullor kodi. I disponueshëm në të gjitha platformat, Sublime Text ka mbështetje të integruar për redaktimin e kodit Python, si dhe një grup të pasur shtesash të quajtura paketa që zgjerojnë aftësitë e sintaksës dhe redaktimit.

Instalimi i një pakete shtesë Python mund të jetë i ndërlikuar – të gjitha paketat Sublime Text janë të shkruara në Python, kështu që instalimi i paketave të komunitetit shpesh mund të përfshijë ekzekutimin e një skripti Python drejtpërdrejt në redaktues.

Përparësitë: në Sublime Text nje numer i madh i Tifozët. Si një redaktues kodi, Sublime Text është i shpejtë, i lehtë dhe i mbështetur mirë.

Të metat: Sublime Text nuk është falas, megjithëse mund ta përdorni periudhë prove aq sa është e nevojshme. Instalimi i shtesave mund të kthehet në një kërkim tjetër. Gjithashtu, nuk ka mbështetje për korrigjimin dhe ekzekutimin e kodit në redaktues.

Atomi

Një lloj: redaktori i kodit
Uebfaqja: https://atom.io/

I disponueshëm në të gjitha platformat, Atom është quajtur "redaktori i tekstit i hakeruar i shekullit të 21-të". Atom është shkruar duke përdorur Electron, një kornizë për ndërtimin e aplikacioneve desktop ndër-platformë duke përdorur JavaScript, HTML dhe CSS, dhe ka shumë zgjerime. Mbështetja e Python gjithashtu mund të lidhet duke përdorur një shtesë që mund të instalohet direkt në Atom.

Përparësitë: Mbështetje në të gjitha platformat falë Electron. Atom është i lehtë dhe i shpejtë për t'u shkarkuar dhe ngarkuar.

Të metat: Mbështetja e ndërtimit dhe korrigjimit nuk është e integruar, por shtohet nëpërmjet shtesave. Meqenëse Atom është shkruar me Electron, ai gjithmonë funksionon si një proces JavaScript, jo si aplikimi amtare.

GNU Emacs

Një lloj: redaktori i kodit
Faqja e internetit: https://www.gnu.org/software/emacs/

Shumë kohë përpara luftës iPhone-Android, para luftës Linux-Windows, madje edhe para luftës PC-Mac, pati një luftë redaktuese me GNU Emacs si një nga pjesëmarrësit në armiqësi. I përshkruar si "një redaktues teksti i zgjerueshëm, i personalizueshëm, vetë-dokumentues", GNU Emacs ka ekzistuar pothuajse për aq kohë sa UNIX dhe ka fituar shumë fansa.

I disponueshëm falas në çdo platformë (në një formë ose në një tjetër), GNU Emacs përdor gjuhën Lisp për personalizim. Sigurisht, ka edhe skriptet e personalizimit për Python.

Përparësitë: jeni njohur me Emacs, ju përdorni Emacs, ju pëlqen Emacs. Lisp është gjuha juaj e dytë dhe ju e dini se mund të bëni gjithçka me të.

Të metat: personalizimi nënkupton shkrimin (ose kopjimin dhe ngjitjen) e kodit Lisp në skriptet e ndryshme. Nëse nuk ka asnjë, atëherë mund t'ju duhet të mësoni Lisp për ta kuptuar atë.

Vi / Vim

Një lloj: redaktori i kodit
Uebfaqja: https://www.vim.org/

Në anën tjetër të barrikadave në luftën e redaktorit është VI / VIM. I disponueshëm si parazgjedhje në pothuajse çdo sistem UNIX dhe Mac OS X, VI ka fituar një numër të barabartë fansash. VI dhe VIM janë redaktues modalë që ndajnë shikimin e një skedari nga redaktimi i tij. VIM përfshin gjithçka që është në VI, plus disa përmirësime të tilla si disponueshmëria e shtesave. Për të gjitha llojet e detyrave të Python, mund të përdorni VIMScripts.

Përparësitë: jeni njohur me VI-në, po përdorni VI-në, ju e doni VI-në. VIMScripts nuk ju trembin, dhe ju e dini se si t'i përkulni ato sipas dëshirës tuaj.

Të metat: Ashtu si me Emacs, nuk jeni shumë të kënaqur të kërkoni ose shkruani skripta për të shtuar zhvillimin e Python, dhe nuk keni asnjërën të dhëna më të vogla si duhet të funksionojë një redaktues modal në përgjithësi.

Studio pamore

Përparësitë: Ashtu si me Eclipse, nëse tashmë keni të instaluar Visual Studio për detyra të tjera, instalimi i PTVS do të funksionojë mirë.

Të metat: Ashtu si me Eclipse, Visual Studio është pak dërrmuese nëse ju nevojitet vetëm Python. Plus, nëse jeni në Linux, nuk mund të diskutohet - Visual Studio nuk është i disponueshëm për këtë platformë.

Kodi Visual Studio

Një lloj: redaktori i kodit
Uebfaqja: https://code.visualstudio.com/
Mjetet e Python: https://marketplace.visualstudio.com/items?itemName=ms-python.python

Kodi i Visual Studio (që nuk duhet ngatërruar me Visual Studio) është një redaktues kodi me funksione të plota i disponueshëm në Windows, Linux dhe Mac OS X. VS Code është një redaktues me burim të hapur të zgjeruar që mund të personalizohet për çdo detyrë. Ashtu si Atom, VS Code është ndërtuar në Electron, kështu që ka të njëjtat avantazhe dhe disavantazhe.

Shtimi i mbështetjes së Python në VS Code është i lehtë - kërkoni në treg për "Python", klikoni Instalo dhe rinisni redaktorin nëse është e nevojshme. Kodi VS do të zbulojë automatikisht interpretuesin Python dhe bibliotekat e instaluara.

Përparësitë Falë Electron, VS Code është i disponueshëm në të gjitha platformat me funksionalitet çuditërisht të shkëlqyer. Përveç kësaj, kodi burim mund të gjendet në domenin publik.

Të metat: meqenëse Electron është i përfshirë, atëherë VS Code nuk është një aplikacion vendas. Përveç kësaj, disa njerëz mund të mos lejohen të përdorin produktet e Microsoft për shkak të fesë së tyre.

Redaktorët dhe IDE-të e krijuara për Python

PyCharm

Një nga IDE-të më të mira të Python me funksione të plota është PyCharm. Ekziston si falas me burim të hapur Opsionet (Komuniteti) dhe IDE me pagesë (Profesionale). PyCharm është i disponueshëm në Windows, Mac OS X dhe Linux.

PyCharm mbështet zhvillimin e Python jashtë kutisë drejtpërdrejt - hapur skedar i ri dhe filloni të shkruani kodin. Ju mund të ekzekutoni dhe korrigjoni kodin direkt nga PyCharm. Përveç kësaj, IDE ka mbështetjen e projektit dhe kontrollin e burimit.

Përparësitë: Ky është një IDE Python me mbështetje për gjithçka dhe këdo dhe një komunitet të mirë. Në të "jashtë kutisë" mund të modifikoni, ekzekutoni dhe korrigjoni kodin Python.

Të metat: PyCharm mund të ngarkohet ngadalë dhe cilësimet e paracaktuara mund të kenë nevojë të rregullohen për projektet ekzistuese.

Spyder

Spyder është një Python IDE me burim të hapur i optimizuar për shkencën e të dhënave. Spyder vjen me menaxherin e paketave Anaconda, kështu që është e mundur që ta keni të instaluar tashmë.

Ajo që është interesante për Spyder është se është audienca e synuar janë shkencëtarë të të dhënave që përdorin Python. Për shembull, Spyder punon mirë me bibliotekat e shkencës së të dhënave si SciPy, NumPy dhe Matplotlib.

Spyder ka të gjithë funksionalitetin që do të prisni nga një IDE standarde, si p.sh. një redaktues kodesh me theksim sintaksor, plotësimin e kodit dhe madje edhe një shfletues dokumentacioni të integruar.

Një tipar dallues i Spyder është eksploruesi i tij i ndryshueshëm. Kjo ju lejon të shikoni vlerat e variablave në formën e një tabele pikërisht brenda IDE. Integrimi me IPython / Jupyter gjithashtu funksionon mirë.

Spyder mund të thuhet se është më me këmbë në tokë se IDE-të e tjera. Mund të shihet si një mjet për një qëllim specifik e jo si mjedis primar zhvillimi. Ajo që është e mrekullueshme është se është falas, me burim të hapur dhe i disponueshëm në Windows, macOS dhe Linux.

Përparësitë: ju jeni një shkencëtar i të dhënave duke përdorur Anaconda.

Të metat: Zhvilluesit më me përvojë të Python mund të gjejnë se Spyder nuk ka funksionalitet për të puna e përditshme dhe do të bëjnë zgjedhjen e tyre në favor të një IDE ose redaktori më funksional.

Thoni

Thonny quhet një IDE për fillestarët. Shkruar dhe mirëmbajtur nga Instituti i Informatikës i Universitetit të Tartu në Estoni, Thonny është i disponueshëm në të gjitha platformat kryesore.

Si parazgjedhje, Tonny është instaluar me versionin e bashkuar të Python, kështu që nuk keni nevojë të instaloni asgjë tjetër. Përdoruesit e avancuar mund të kenë nevojë të ndryshojnë këtë cilësim në mënyrë që IDE të gjejë dhe të përdorë bibliotekat që janë instaluar tashmë.

Përparësitë: ju jeni një programues fillestar Python dhe keni nevojë për një IDE me të cilën mund të shkoni direkt në betejë.

Të metat: përdoruesit e avancuar nuk do të kenë funksionalitet të mjaftueshëm dhe do të zëvendësojnë përkthyesin e integruar. Për më tepër, duke pasur parasysh risinë e IDE, mund të shfaqen probleme, zgjidhjet e të cilave janë ky moment nr.

Pra, cilin të zgjidhni?

  • Pitonistët fillestarë duhet të marrin diçka me opsionet më të pakta të personalizimit. Sa më pak pengesa aq më mirë;
  • Nëse tashmë përdorni disa redaktues për detyra të tjera, atëherë shikoni redaktuesit e kodit;
  • Epo, nëse tashmë keni një IDE për një gjuhë tjetër, atëherë provoni të shtoni mbështetje për Python në të.

Jeni të interesuar edhe për ueb? Pastaj hidhini një sy të ngjashme tonë për zhvillimin e uebit.

Artikujt kryesorë të lidhur