Pradžia - Saugumas
Universalios integruotos kūrimo aplinkos. DIY IDE: dizainas Universali kūrimo aplinka

Jis yra pats paprasčiausias, nes nesuteikia tokių patogumų kaip kontekstinės užuominos pagal tipą intelektas, jis neturi pilnaverčio derintuvo, nėra profiliuotojo ir kt naudingų įrankių. Teksto rengyklės galimybės yra labai, labai kuklios. Projektai su kelių failų struktūra taip pat nėra tiesiogiai palaikomi. Tiesą sakant, viso to nereikia, nes profesionaliam tobulėjimui kompleksas programinės įrangos produktai tokia priemonė mažai naudinga. Tokiems tikslams verta panaudoti visavertę integruotą kūrimo aplinką, kuri, be mano išvardintų galimybių, teikia daug įvairių paslaugų, įskaitant infrastruktūrą bendrai plėtrai. programinės įrangos sprendimai (Team Foundation serveris, TFS).

Ką ši programa gali padaryti?, ir kokiu tikslu aš čia skelbiu jo šaltinio kodą? Programos galimybės yra tokios: vartotojas gali rašyti programos tekstą C# arba VB.NET, paleisti ją ir atlikti paprastus derinimo veiksmus (programa praneša apie klaidas ir nurodo jų vietą), kurti paleidžiamus modulius (exe) arba dinaminių saitų bibliotekas (dll ), prijunkite kitą programinės įrangos komponentai ir išsaugokite šaltinio kodą bei įdėkite parametrus tekstinius failus.

Kam gali būti naudinga tokia programavimo priemonė? Na, visų pirma, jis gali būti naudojamas viduje mokymo kursai programavimo srityje, nes jis yra nemokamas, o jo galimybių išmokyti programavimo ir algoritmavimo pagrindų visiškai pakanka. Svetainėje ši programa siūloma kaip kursas. Turėdami projekto šaltinio kodą C#, galite „sureguliuoti“ jo funkcionalumą, kad atitiktų konkretaus mokymosi proceso reikalavimus, pavyzdžiui, sujungti bibliotekas su pagrindiniai algoritmai, sukurti automatizuotą posistemį, skirtą užduočių rezultatams tikrinti ir pažymiams priskirti ir kt. Antra, dalis originalo programos kodasšis projektas gali būti naudojamas kuriant taikomųjų programų posistemes, kurių užduotys apima įvairių tipų verslo scenarijų interpretavimą, išorinių saugomų procedūrų vykdymą ir kt. Daugiau informacijos apie architektūros kūrimo užduotį parašyta.

Projekto aprašymas

Visą projektą galima suskirstyti į dvi dalis: dokumentų paslaugos programas ir jo aplinkos elementai. Dokumentų paslaugos yra atskirtos į atskirą Dokumento vardų erdvę. Pagrindinis Document vardų erdvės tipas yra pats programos dokumentas – CSSDocument klasė, apimanti vartotojo programos kodą, įvairius parametrus, nuorodas į išorinius programos komponentus ir kompiliavimo rezultatus. Pagrindinės CSSDocument klasės užduotys: dinaminis kompiliavimas, programos kodo ir programos nustatymų skaitymas ir išsaugojimas tekstiniuose failuose, generavimas exe Ir dll moduliai ir programos vykdymas derinimo režimu. Visos kitos dalys Kodavimo amatų studija- tai dokumento aplinkos elementai, kurių pagrindinė užduotis yra organizuoti sąveiką su vartotoju per . Kaip jau sakiau, projektas parašytas C# programavimo kalba. Prie šaltinio kodo pridedami komentarai, kurie, jei norite, padės suprasti jo veikimą.

Programa yra pagrįsta atspindžio technologija, kuri suteikia sąsajas, leidžiančias pasiekti įkeltos arba dinamiškai generuojamos programinės įrangos rinkinio (Assembly) elementus. Refleksijos technologija sukurta remiantis surinkimo nuskaitymo ir apdorojimo paslaugomis, apie kurias daugiau informacijos rasite medžiagoje, skirtoje virtuali mašina ir jos aplinka. Jei trumpai apibūdintume programos algoritmą, jis atrodytų taip. Pirmiausia sukuriame ir inicijuojame dinaminio kompiliavimo paslaugą (CodeDomProvider). Dinaminį kompiliavimą atliekame iškviesdami atitinkamą metodą (CompileAssemblyFromSource) ir kaip parametrus perduodame nustatymų klasės egzempliorių (CompilerParameters) ir patį programos kodą. Jei kompiliavimas buvo baigtas be klaidų, tada jo rezultatas yra surinkimas, suformuotas atmintyje. Toliau, naudodami atspindžio priemones, gautame rinkinyje ieškome aplikacijos tipo (Application class), naudodami tą patį atspindį, ieškome šio tipo įėjimo taško (Pagrindinis metodas). Tada sukuriame programos tipo egzempliorių ir paleidžiame jį iškviesdami įėjimo taško metodą. Proceso metu nuolat stebime jų atsiradimą ir tinkamai apdorojame. Viskas yra gana paprasta, o norint patvirtinti šiuos žodžius, žemiau yra CSSDocument klasės šaltinio kodo dalis, kurioje yra programos kompiliavimo ir vykdymo metodai: Compile() ir Run().

vardų sritis CodingCraftStudio ( //Pagrindinės „Coding Craft Studio“ paslaugos vardų erdvė dokumentas ( //Palaikomos programavimo kalbos viešasis enum CCSLanguage (CSharp = 0, VisualBasic = 1) //Paraiškos dokumentas (šaltinio kodas, bibliotekų sąrašas) viešosios klasės CCSDocument( //Dinaminis programos kodo kompiliavimas private void Compile (CompilerParameters _CompilerParameters, ref CompilerResults _CompilerResults) ( _CompilerParameters. CompilerOptions = this . CompilerOptions; foreach (CCSString _Reference in m_References) _CompilerParameters.Daugiaus nuoroda. _Teikėjas = null ; jungiklis (tai . Kalba) ( Case CCSLanguage: ( _Provider = naujas CSharpCodeProvider (); break ; ) atvejis CCSLanguage: ( _Provider = naujas VBCodeProvider (; break ; ) ) if (_CompilerParameters. GenerateExecuuder) if. pilerParameters . MainClass = tai. "Sąjungimo klaidos!"); } //Dinaminis surinkimas[Sistema. Komponento modelis. Browsable (false )] public Assembly CompiledAssembly ( get ( if (m_CompilerResults == null ) return null ; return m_CompilerResults. CompiledAssembly; ) ) //Gaukite dinaminį surinkimo tipą pagal pavadinimą[Sistema. Komponento modelis. Naršoma (false )] public Tipas CompiledType (eilutės _pavadinimas) ( if (m_CompilerResults == null ) return null ; if (_Name == string . Empty) return null ; return m_CompilerResults. CompiledAssembly. GetType (_Name); ) //Sukurkite tipo egzempliorių viešasis objektas CreateInstance (Type _Type) ( return _Type. GetConstructor (Type. EmptyTypes). Invoke (null); ) //Paleiskite programą public void Run() ( if (string . IsNullOrEmpty ( this . ApplicationTypeName )) mesti naują CCSSettingsException ( "Programos klasė nenurodyta: ApplicationTypeName!"); tai. Kompiliuoti (); Tipas_tipas; _type = tai . CompiledType(this . NameSpace + "." + this . ApplicationTypeName); if (_type == null ) throw new CCSRunTimeException ( "Class " + this . ApplicationTypeName + " notdefined!" ); MethodInfo_entryPoint; _entryPoint = tai . SudarytaAssembly. EntryPoint; if (_entryPoint == null ) mesti naują CCSRunTimeException ( } } }

"Įėjimo taškas nenustatytas!"

);

objektas_objektas;

_objektas = tai . CreateInstance(_type); if (_object == null ) mesti naują CCSRunTimeException (

„Nepavyko sukurti egzemplioriaus“+ tai. ApplicationTypeName + "!" ); try ( _type. InvokeMember ( _entryPoint. Name, BindingFlags. InvokeMethod, null , _object, null ); ) catch (Exception ex) ( mesti naują CCSRunTimeException („Nepavyko iškviesti įėjimo taško metodo“

+ _entryPoint. Pavadinimas + "programos" + tai. „ApplicationTypeName“ + „!“ + pvz. Žinutė, buvęs);

) )


...trūksta dalies šaltinio kodo... Jei vis dar domitės tema, atsisiųskite. Beje, „JavaScript“ palaikymas buvo įtrauktas į „Google Summer of Code“ projektą 2009 m. Ši aplinka programoje yra daugiausia reikalingų įrankių patogiam programavimui: programos vedlys, derintuvas, šaltinio kodo redaktorius su sintaksės paryškinimo palaikymu.

NetBeans

Pagrindinis puslapis NetBeans


Integruota programų kūrimo aplinka, veikianti Java, Python, PHP, JavaScript, C, C++, ADA ir pan. Šį projektą remia „Oracle“, tačiau jį kuria nepriklausoma kūrėjų komanda. Savo galimybėmis „NetBeans“ nenusileidžia geriausiai apmokamoms komercinėms kūrimo aplinkoms. NetBeans apima galimybę pertvarkyti, profiliuoti, paryškinti sintaksines struktūras spalvomis, automatiškai pasirinkti konstrukcijas ir daugybę šablonų.

Užtemimas

Užtemimas darbe

Nemokama, tai yra nemokama integruota programavimo aplinka, skirta kurti kelių platformų programas. „Eclipse“ pirmiausia yra plėtinių kūrimo platforma, o bet kuris kūrėjas gali į „Eclipse“ įterpti savo plėtinius. Eclipse leidžia programuoti C, Java, ADA, PHP, COBOL ir pan.

KDevelop

KDevelop veikia

Vėlgi, nemokama integruota kūrimo aplinka. Plėtra prasidėjo 1998 m. Kompiliatoriaus nėra, bet koks trečiosios šalies kompiliatorius naudojamas mašinos kodui generuoti. Norėdami redaguoti šaltinio kodą, prisijunkite teksto redaktorius, kaip atskiras komponentas. Funkcijos apima sintaksės paryškinimą, projekto vadovą, įmontuotą asistentą ir kodo užbaigimo sistemą. Ši aplinka palaiko daugybę programavimo kalbų, tokių kaip C, C++, Perl, Python, PHP, Java, Ruby, SQL, ADA, Pascal ir Fortran.

XCode

XCode veikia

Integruota kūrimo aplinka, sukurta OS X ir iOS. Sukūrė Apple Corporation. Pati pirmoji šios aplinkos versija buvo išleista 2001 m. Naujausios versijos plinta ir šiandien. Ši sistema visų pirma skirta grafinei sąsajai sukurti. Palaiko C, Java, AppleScript, Python ir Ruby kalbas.

Kai kurie IDE yra nemokami, kiti mokami. Kai kurie iš jų yra gana paprasti, o kiti daro beveik viską, ką galite įsivaizduoti. Pasirinkimų yra daug, vadinasi, tikrai rasite tai, kas jums tinka.

Šiame straipsnyje mes padėsime jums pasirinkti, atidžiau pažvelgdami į penkis populiarius žiniatinklio kūrimo IDE.

Pirmiausia išsiaiškinkime, kas yra IDE? Pasak Vikipedijos, IDE yra ir integruota kūrimo aplinka (angl. Integrated Development Environment) – programinė įranga, kurią programuotojai naudoja kūrimui programinė įranga.

Galima apsvarstyti IDEKaip Šveicarijos armijos peilis programinės įrangos kūrimui! Geras IDE suteiks jums viską, ko reikia produktyviam.

Skirtingai nuo daugelio redaktorių, IDE paprastai palaiko visaverčius projektus, o ne tik galimybę apdoroti atskirus šaltinio kodo failus. Net jei redaktorius gali redaguoti kelis failus, jis negali palaikyti projekto, apimančio visą aplanką, pilną failų, kūrimo ir konkrečių to projekto parametrų. Šios projekto parinktys gali apimti nuorodas į išorines programinės įrangos bibliotekas, redaktoriaus tinkinimą, versijų valdymą ir derinimo parinktis.

Nuspręsti, kurią IDE naudoti, yra labai subjektyvu, nes tai iš tikrųjų priklauso nuo ieškomų funkcijų, tai gali būti:

  • Kelių kalbų palaikymas
  • Automatinis užbaigimas
  • Refaktoringas
  • Foninis apšvietimas
  • Derintuvas
  • SVN/Git integracija
  • Atitikties standartams patikrinimas
  • Kompiliatorius
  • Vertėjas
  • Duomenų bazių valdymas ir redagavimas

Nėra griežtų taisyklių, kas yra IDE, o kas ne. Kuo daugiau funkcijų iš anksčiau pateikto sąrašo yra programoje ir pasiekiama kaip priedas, tuo ji bus artimesnė IDE.

Galite pastebėti, kad kai kurie IDE, kuriuos aptariame šiame straipsnyje vadovėlis, iš tikrųjų nėra IDE, jie yra redaktoriai, artimi IDE.

Taigi kodėl netgi įtraukti juos į mūsų sąrašą? Šie redaktoriai tapo itin populiarūs žiniatinklio kūrimo erdvėje ir turi dideles vartotojų bendruomenes, kurie juos kuria su daugybe paketų, plėtinių ir priedų, kurie žymiai palengvina kūrimą ir paverčia juos iš tiesiog redaktorių į labai naudingas IDE. Pagalvokite apie juos kaip apie lengvus IDE. Greitas, patikimas ir pritaikomas. Prisiminkite mūsų ankstesnę Šveicarijos armijos peilio analogiją? Prabangus tekstas 3, Coda 2 ir Atom yra puikūs tokių IDE pavyzdžiai. Jie nėra tradiciniai IDE, bet teisingas nustatymas

Pasirinkus lengvą redaktorių, palyginti su visiškai nusistovėjusiu tradiciniu IDE, pranašumai yra tai, kad jie greičiau atidaromi ir paleidžiami. Pamatysite, ką turiu omenyje, jei kada nors atidarysite IDE su dideliu projektu, turėsite šiek tiek palaukti, kol programa atsidarys ir suindeksuos visus failus, kad galėtumėte pradėti redaguoti.

Palyginkite tai su „lengva“ redaktoriumi, tik su jūsų pridėtomis funkcijomis. Taip sukuriama IDE, kurioje nėra daug funkcijų, kurių niekada negalėsite naudoti. Tai padeda greitai pradėti ir vykdyti plėtrą. Tačiau jei esate labai greitas automobilis, galite nepastebėti per didelio skirtumo tarp pilno IDE ir labai pritaikyto redaktoriaus kasdienio kūrimo. Tačiau, jei neturite tokios prabangos, IDE našumas gali būti labai svarbus veiksnys jūsų kasdieniam vystymuisi.

Dėl šių priežasčių nusprendėme šiek tiek sumaišyti sąrašą ir įtraukti visaverčius ir „lengvus“ IDE, kurie bus labai naudingi žiniatinklio kūrėjams.

Pradėkime savo žiniatinklio kūrimo IDE turą su PhpStorm.

PhpStorm

„PhpStorm“ yra komercinis „JetBrains“ IDE, turintis įspūdingą naudingų funkcijų rinkinį.

Tačiau naujam vartotojui didžiulis „PhpStorm“ funkcijų skaičius gali atrodyti šiek tiek stulbinantis. Neišsigąskite, nes „PhpStorm“ oficialioje svetainėje turi puikių dokumentų ir vaizdo įrašų vadovėlių.

Kadangi „PhpStorm“ yra labai funkcionalus, gali prireikti šiek tiek laiko įkelti. Tačiau visiškai įkeltas „PhpStorm“ jaučiasi puikiai ir redaguojant failus nėra pastebimų vėlavimų. Viena iš svarbiausių „PhpStorm“ savybių yra reguliarūs atnaujinimai, klaidų pataisymai ir naujos funkcijos.

PhpStorm skirtas ne tik PHP kūrimui (beje, jis visiškai palaiko PHP 7). Jis taip pat puikiai palaiko HTML, JavaScript ir CSS.

Svetainė: https://www.jetbrains.com/phpstorm/
Kaina: nemokamas 30 dienų bandomasis laikotarpis
Išleidimas: 2009 m
Reguliariai atnaujinama: taip
Palaikomi plėtiniai: papildiniai
Parašyta: Java

Puikus tekstas 3

Kitas mūsų sąraše yra „Sublime Text 3“, sukurtas Johno Skinnerio. Po daugelio metų jis tapo galingu ir labai greitu vartotojo redaktoriumi. Jis taip pat gerai žinomas dėl to, kad yra ypač stabilus ir gali lengvai tvarkyti labai didelius failus.

Įdomu tai, kad „Sublime Text 3“ jau keletą metų nematė didelio išleidimo. Nors jis atnaujinamas reguliariai, atnaujinimuose dažniausiai yra klaidų pataisymų, nedidelių patobulinimų ir naujų funkcijų. „Sublime Text 3“ vis dar yra beta versijos, nors ji buvo išleista kaip beta versija 2013 m.! Ir šiuo metu nėra jokių žinių apie naują pagrindinį leidimą.

„Sublime Text 3“ paleidžiamas labai greitai. Tiesą sakant, tai įvyksta beveik akimirksniu. Jis veikia itin greitai, be vėlavimo ar trikdžių, todėl kodo redagavimas yra itin sklandus ir efektyvus. Jis yra gana minimalistinis ir turi paketų tvarkyklę, leidžiančią įdiegti priedus (parašytus Python) nepaleidžiant iš naujo.

Kaip minėta aukščiau, jis apdoroja failus dideli dydžiai Labai gerai. Yra daugybė galingų priedų (vadinamų paketais), dėl kurių „Sublime Text“ yra labai lankstus ir universalus. Sunku paneigti, kad „Sublime Text“ yra malonumas.

Taip pat galite rasti daugybę vadovėlių ir vaizdo įrašų apie „Sublime Text 3“. Tai įrodo, kad „Sublime Text 3“ vis dar yra labai populiarus ir kasdien plačiai naudojamas daugelio žiniatinklio kūrėjų, o tai liudija šio fantastiško mažylio kokybę. redaktorius.

Nors „Sublime Text“ vis dar yra labai populiarus, per ateinančius kelerius metus jis gali pradėti prarasti pozicijas. Tačiau jei „Sublime Text 3“ paketų biblioteka ir toliau klestės, trumpuoju laikotarpiu galima nepastebėti pagrindinės leidimo nebuvimo.

  • Svetainė: https://www.sublimetext.com/
  • Kaina: 70 USD, yra nemokama versija
  • Išleidimas: 2008 m
  • Reguliariai atnaujinama: ne
  • Parašyta: C++, Python
  • Kelių platformų palaikymas: taip

Atom

„GitHub“ komandos sukurtas „Atom“ yra naujas vaikinas tarp populiarių IDE mūsų sąraše. Išleistas 2014 m., tai vienas iš labiausiai... populiarūs redaktoriaišiuo metu ir turi sparčiai augančią bendruomenę.

Šį populiarumą bent iš dalies lėmė tai, kad „Atom“ yra atvirojo kodo šaltinio kodas ir yra visiškai bendruomeninis.

„Atom“ taip pat turi didžiulę papildomą biblioteką, kurioje yra daugiau nei 6000 paketų.

Panašiai kaip „Sublime Text“, „Atom“ visiškai palaiko projektus ir atskirų failų redagavimą. Yra integruotas „Git“ palaikymas, o tai nenuostabu, nes „Atom“ sukūrė „GitHub“ komanda.

Atnaujinimai išleidžiami reguliariai, bet kadangi redaktorius yra palyginti naujas, vargu ar jų lauksite.

Daugelis vartotojų skundžiasi, kad redaguojant yra lėtas pakrovimas ir netolygus veikimas, ypač dirbant su dideli failai. Taip gali būti dėl to, kad „Atom“ sukurtas „JavaScript“, o „Sublime Text“ – C++, kuri iš prigimties yra greitesnė. Tik laikas parodys, ar būsimos „Atom“ versijos galės išspręsti šias problemas. Tačiau verta prisiminti, kad „Atom“ yra palyginti jaunas ir turi daug laiko subręsti.

Apskritai „Atom“ yra puikus redaktorius, kurį galima lengvai pritaikyti žiniatinklio kūrimui. Nenuostabu, kad „Atom“ jau įgijo tiek daug traukos, ir bus tikrai įdomu pamatyti, kaip jis subręs per ateinančius kelerius metus. Tai tikrai yra kažkas, į ką reikia atkreipti dėmesį!

  • Svetainė: https://atom.io/
  • Kaina: 100% nemokama
  • Išleidimas: 2014 m
  • Reguliarūs atnaujinimai: taip
  • Palaikomi plėtiniai: paketai
  • Parašyta: JavaScript
  • Kelių platformų palaikymas: taip

Koda 2

„Coda“ pirmą kartą buvo išleista 2007 m., likus vos metams iki „Sublime Text“. Bėgant metams jis buvo labai stiprus žaidėjas, dalijasi didžiąja žiniatinklio kūrimo rinkos dalimi su Sublime Text, autorė Mac kompiuteriai. Tai pagrindinis trūkumas„Coda“ – net praėjus dešimčiai metų nuo pirminio išleidimo, „Windows“ versijos nėra. Tai vienintelis ne kelių platformų redaktorius mūsų apžvalgoje.

Redagavimo priemonėje yra integruotas terminalas ir šaltinio valdymo klientas, taip pat FTP klientas ir integruotas MySQL redaktorius.

Nors „Coda 2“ yra reguliariai atnaujinama, dažniausiai tai yra klaidų pataisymai ir daug metų nebuvo išleista jokių naujų versijų.

Nesuklyskite, „Coda 2“ yra labai geras geras pasirinkimas. Tai vis tiek gali pasirodyti, bet vis tiek tikrai rekomenduoju tai patikrinti prieš priimant galutinį sprendimą. Ypač jei esate „MacOS“ vartotojas!

  • Svetainė:
  • Kaina: 25 USD (7 dienų nemokama bandomoji versija)
  • Išleidimas: 2007 m
  • Reguliariai atnaujinama: taip
  • Palaikomi plėtiniai: papildiniai
  • Kelių platformų palaikymas: ne

NetBeans

Yra daug C++ kūrimo aplinkų ir kiekvienas tikslas turi savo specialų IDE. Čia yra 10 populiariausių C++ kūrimo aplinkų ir šaltinio kodo redaktorių.

Jei Xcode yra jūsų mėgstamiausia kūrimo aplinka Apple, Tai Visual Studio yra „Microsoft“ kūrimo aplinka. „Visual Studio“ daugiausia žinoma kaip programų, kuriose yra .NET, rašymas. Tai visas įrankių rinkinys, leidžiantis tiksliai sureguliuoti programą. Yra ir bendruomenės, ir PRO versija.

„Visual Studio“ sukurta ne tik C++ kūrėjams, bet ir palaiko daugybę kitų populiarių kalbų, tokių kaip C#, Visual Basic ir F#.

„Visual Studio“ siūlo daugybę funkcijų, iš kurių kai kurios yra:

  • protingas kodo užbaigimas;
  • grafinių formų dizaineris (GUI);
  • paprasta naudoti navigacijos sistema.

Kurdami galite naudoti IDE kompiuterines programasMicrosoft Windows, taip pat svetaines, žiniatinklio programas ir žiniatinklio paslaugas.

Galite sužinoti daugiau.

2 - Xcode

„Xcode“ yra ne tik integruota kūrimo aplinka, bet ir visas „Apple“ sukurtas programinės įrangos kūrimo įrankių rinkinys, skirtas „macOS“, „iOS“, „WatchOS“ ir „tvOS“ programinei įrangai kurti.

„Xcode“ yra geriausias „Mac“ IDE, jei tik todėl, kad jį sukūrė operacinės sistemos kūrėjai. Todėl, jei esate Apple platformų kūrėjai, ši aplinka kaip tik jums.

Xcode funkcijos:

  • kurti programas visoms Apple platformoms;
  • kodo užbaigimas;
  • patogus darbas su GUI.

Galite sužinoti daugiau.

3 – NetBeans

Nors „NetBeans“ garsėja „Java“ kūrimu, ji taip pat yra viena geriausių C++ kūrimo aplinkų, skirtų „Windows“ ir „Mac“ su Linux.

NetBeans taip pat turi daug paruoštų C ir C++ šablonų projektų, kuriuos galite naudoti kaip savo programų pagrindą. NetBeans buvo parašytas naudojant Java ir taip pat gali būti naudojamas PHP ir HTML5 projektams. Idealiai tinka pradedantiesiems, tačiau dažnai jį naudoja patyrę programuotojai.

NetBeans privalumai:

  • Ši programinė įranga yra atvirojo kodo;
  • sukurta ir palaikoma Oracle;
  • vizualizuoto GUI sąsajų kūrimo palaikymas;
  • Qt Toolkit palaikymas;
  • parama nuotolinei plėtrai;
  • lengvas failų naršymas.

Galite sužinoti daugiau.

4 – užtemimas

„Eclipse“ yra dar vienas lengvai naudojamas, tačiau galingas IDE, skirtas C ir C++. Tarp „Eclipse“ ir „NetBeans“ yra nedaug skirtumų, tačiau „Eclipse“ vis tiek yra greitesnė kūrimo aplinka.

Eclipse privalumai:

  • montavimo ir naudojimo paprastumas;
  • nemokamas ir atviras šaltinis;
  • kelių platformų palaikymas;
  • galingas variklis GUI sąsajoms kurti;
  • adresu nuotolinis sistemos tyrinėtojas.

Galite sužinoti daugiau.

5 – CodeLite

CodeLite yra dar vienas nemokamas ir greitas IDE, skirtas C ir C++ programavimui. CodeLite taip pat palaiko PHP ir JavaScript kūrimą.

CodeLite funkcijos:

  • kelių platformų palaikymas;
  • įmontuotas GCC/clang/VC++ palaikymas;
  • CodeLite yra nuostabiai greitas ir galingas įrankis kodo užbaigimo terminasnuosavas analizatorius;
  • parama profiliavimui, pertvarkymui;
  • statinė kodo analizė ir klasių naršyklė.

Galite sužinoti daugiau.

6 – Qt kūrėjas

Qt Creator yra garsiausia grafinių programų kūrimo aplinka. Jei ketinate kurti gera programėlė su GUI, Qt Creator yra puikus pasirinkimas jums.

Problema ta, kad ji mokama. Nesijaudinkite, yra atvirojo kodo versija, kuri yra nemokama. Jei esate pradedantysis, vargu ar jį platinsite už pinigus, o tada mokamos licencijos tiesiog nereikia.

Kai kurios Qt Creator funkcijos:

  • paprastas ir patogus GUI formų dizaineris;
  • kelių platformų;
  • Derinimo, kompiliavimo, profiliavimo, kodo užbaigimo ir pertvarkymo palaikymas;
  • statinio kodo analizės palaikymas;
  • greitas Qt kompiliatorius;
  • Qt duomenų vizualizacija;
  • Qt Quick 2D Renderer;
  • Qt WebView;
  • Qt virtuali klaviatūra.

Galite sužinoti daugiau.

7 - Kodas::Blocks

Codeblocks yra dar vienas nemokamas ir atviras IDE, skirtas C ir C++, parašytas naudojant GNU C++. Pagrindinis privalumas yra įvairios platformos programos pobūdis. CodeBlocks taip pat gali būti naudojamas C ir Fortran kalboms.

Kai kurios „CodeBlocks“ funkcijos:

  • paprastas ir greitas montavimas;
  • nešiojamos versijos prieinamumas;
  • patogus GUI formų dizaineris;
  • Integruota galimybė kurti struktūrines schemas.

Galite sužinoti daugiau.

8 – Dev-C++

„Dev-C++“ yra nemokama atvirojo kodo integruota kūrimo aplinka, parašyta „Delphi“, skirta „Windows“. Tai lengvas IDE, kurį įdiegti užtrunka vos kelias minutes. Tai geriausia kūrimo aplinka pradedantiesiems, kur galite įdiegti įskiepį, skirtą GUI sąsajoms kurti naudojant vilkimo metodus.

Kai kurios „Dev-C++“ funkcijos:

  • lengvas svoris;
  • n Lengva naudoti įrankių juostą;
  • kodo užbaigimas;
  • G Kompiliavimo ir vykdymo spartieji klavišai, pvz., F9 ir F10;
  • n augantis įrengimas.

Galite sužinoti daugiau.

9 - CLion

Tai puiki C++ kūrimo aplinka, kurią sukūrė gerai žinoma įmonė JetBrains. Jame yra keletas puikių funkcijų, tokių kaip išmanusis redaktorius, kodo analizė, įterptasis terminalas.

CLion - mokama programa, neturėdamas nemokama versija, bet jūs galite gauti bandomoji versija per 30 dienų jį patikrinti.

CLion savybės:

  • patogus vizualizuotų sąsajų kūrimas;
  • patogių kodų kūrimo ir derinimo įrankių prieinamumas;
  • galimybė įdiegti papildinius;
  • Kodo klaidų radimas tiesioginiu režimu.

Galite sužinoti daugiau.

10 - Geany

Norėčiau dar kartą iškelti šią gana prieštaringą temą.

Nuo tada, kai pradėjau programuoti, šis klausimas mane persekiojo, o daugybė temų forumuose ir centruose nedavė jokio aiškumo. Be to, man atrodo, kad kai kurie argumentai abiem pusėms nebuvo pateikti. O tiems, kurie duoti, prioritetai nustatyti neteisingai ir trūksta konteksto.

Šiame straipsnyje pabandysiu ištaisyti šį praleidimą ir šiek tiek daugiau tašku "e".

Kviečiu visus dalyvauti idealaus instrumento paieškose.

Apie mano patirtį

Pradėjau programuoti DOS. ant Turbo Pascal. Be to, dėl tam tikrų priežasčių mes tada naudojome IDE tik derinimui, o tada gana retai. Norėdami parašyti kodą, jie norėjo naudoti bevardį edit.exe be jokio sintaksės paryškinimo kartu su Volkov Commander. Ir to užteko. Vėliau tuo pačiu metodu studijavau asemblerį ir iš dalies C++.

Tęsdamas C++ studijas, perėjau prie Windows ir atitinkamai Visual Studio – kur būčiau be jos? Radau versijas, jei neklystu, nuo 5 iki 7. Po paprasto redaktoriaus tai buvo kažkas - kodo generavimas ir automatinis užbaigimas buvo malonumas. Tiesa, viso to generuojamo gėrio buvo beveik neįmanoma suprasti, bet tai atrodė nesvarbu.

Po kurio laiko perėjau prie Linux ir pradėjau kurti žiniatinklio kūrimą PHP. Čia tuo pat metu studijavau vim ir kūrimui naudojau ZendStudio. Tam tikru momentu viskam pradėjau naudoti tik „Vim“ - pagal daugybę pamokų paverčiau jį mažu ide. Čia parašiau savo pirmąją dviračių TVS PHP.

Pastebiu, kad iki tol programavimas nebuvo pagrindinė mano veikla. Taip, rašiau įvairias smulkias komunalines programas darbui, kūriau temas WordPress, bet pagrindinė mano veikla buvo administravimas.

Kai tik pradėjau tobulėti profesionaliai, vim galimybių man nebeužteko. Iš pradžių buvo užtemimas, paskui netbeans, dabar – phpstorm.

Pastarąjį pusmetį didvyriškai bandau įvaldyti emacs, įsk. kaip pagrindinę darbo aplinką.

Taigi turiu su kuo palyginti ir, tikiuosi, mano nuomonė bus pakankamai pagrįsta ir argumentuota.

IDE? IDE...

Ilgai galvojau, kokia forma pateikti partijų privalumų ir trūkumų palyginimą. Sąrašas tam nelabai tinkamas, nes... paprastas sąrašas nevisiškai atspindi problemos esmę. Redaktorius ir IDE yra ne priešingybės, o įrankiai, kurių programos tam tikroje srityje sutampa. Redagavimo priemonės privalumai ne visada yra aplinkos trūkumai ir atvirkščiai. Dėl šios priežasties vyksta daugiau ar mažiau struktūrizuotos diskusijos šia tema.

Pradėsiu, ko gero, nuo vieno iš neginčijamų redaktoriaus privalumų – jos turtingų galimybių dirbti su tekstu ir galimybe viską daryti neatitraukiant rankų nuo klaviatūros. Dauguma aplinkų to nedaro. Bet ar tokios funkcijos būtinos rašant kodą? Rašant straipsnį ar laišką, manau, patogu vienu klavišo paspaudimu sukeisti 2 žodžius arba perkelti pastraipą į puslapio viršų. Tačiau programos tekste tai daugeliu atvejų neturi prasmės ir reikalauja pertvarkymo. Ir jūs turite už tai sumokėti arba su pirštais žudančiomis emacs klaviatūros klavišais, arba su ne mažiau smegenis laužančiomis komandomis vim. Bet visa tai reikia atsiminti! Tai, ką galima paprasčiausiai išspręsti vienu pelės judesiu, pavyzdžiui, perkeliant langą ar pakeisti jo dydį, virsta visa užduotimi. Taip, pele pasirinkti tekstą dar paprasčiau – tiksliau, greičiau ir nereikės skaičiuoti, kiek žodžių yra iki norimos teksto vietos. Ne, programuotojas taip pat galiŠios funkcijos gali būti naudingos, tačiau faktas yra tas, kad laikas, skirtas realiai redaguoti kodą, yra nereikšmingas, todėl naudos iš laiko praktiškai nebus. Tačiau akivaizdi reikšminga instrumento komplikacija.

Programuotojas praleidžia 80% savo laiko, kad suprastų parašytą kodą ir judėtų juo. Be to, juda būtent pagal kodą, o ne pagal tekstą! Ir čia redaktorius visiškai nieko negali jam padėti. Metodo parametrų sąrašas nebus rodomas patarime, jis neleis pereiti prie metodo apibrėžimo, o sintaksė nebus tikrinama. Ir IDE, net patys paprasčiausi, su tuo susitvarko paprastai ir elegantiškai. Neseniai praleidau apie 10 minučių ieškodamas metodo apibrėžimo projekte, naudodamas emacs silversearcher. Paaiškėjo, kad klasė apibrėžta kitame modulyje ir pan. 10 minučių vietoj vieno pelės paspaudimo! Žinoma, nesu pakankamai patyręs emacs, todėl tebūnie 5 minutės, net minutė. Tačiau santykis vis tiek įspūdingas.

Ir čia IDE parodo savo bene vienintelį, bet labai reikšmingą pranašumą – programavimo kalbos analizatoriaus buvimą. Aplinka „supranta“, kad redaguoja kodą. Redaktorius – ne. Tai apima automatinį užbaigimą, naršymą ir sintaksinių ir kartais semantinių klaidų paryškinimą. Atrodo, perteklius, maloni smulkmena, nuolaidumas. Bet tai virsta būtinybe, kai projekto dydis peržengia tam tikrą ribą. Ir atsižvelgiant į didelius šiuolaikinius rėmus, ši riba ateina beveik iš karto.

Taip, projekte, kuriame yra keliolika failų ir pora tūkstančių eilučių, šis pliusas nepasireiškia visa savo šlove. Redaktorius taip pat gali atlikti tą patį automatinį užbaigimą, tačiau jis niekada nepanaikins beprasmių parinkčių. Ir jei projekto dydis artėja prie 100 tūkstančių eilučių ir susideda iš tūkstančių failų, neskaičiuojant bibliotekų, tada tampa problematiška pasirinkti norimą pavadinimą iš kintamųjų pavadinimų, kitų klasių metodų ir tik žodžių iš komentarų ( Aš tai turėjau vim, nežinau, galbūt jie tai sutvarkė). Išmanios užuominos pašalina poreikį atsiminti vardus reikalingos funkcijos ir jų parametrus. Dažnai tai tiesiog fiziškai neįmanoma.

Kalbant apie projektus. Visi IDE turi šią koncepciją. Prie jo pridedami nustatymai, ištekliai, galima ieškoti ir pan. Redaktoriuose tai geriausiu atveju yra atviras katalogas failų sistema. Kartais šiek tiek daugiau.

Integracija su derintuvu redaktoriuose taip pat palieka daug norimų rezultatų. Vienetų testavimas ir registravimas tam tikru mastu išsaugo situaciją, tačiau kartais to negalite padaryti be derinimo priemonės.

Kažkas gali ginčytis, kad šiuolaikiniai redaktoriai jau įgyvendina daugelį šių funkcijų ir jokiu būdu nėra prastesni už sudėtingiausius IDE. Aš nesutinku. Pirma, nėra visaverčių įgyvendinimų. Jie neveikia taip, kaip turėtų. Antra, visa tai įdiegti jau yra gana sudėtinga užduotis. Taip, net ir vidinių redaktoriaus funkcijų konfigūracija jau nebanali. Pabandykite, tarkime, emacs įjungti eilučių numeravimą! Be to, dažnai reikiamą funkcionalumą įgyvendina dešimtys įskiepių, neaišku, kaip jie sąveikauja tarpusavyje. Ir dažnai jie taip pat turi dešimtis versijų ir šakų, kurios ne visada suderinamos, yra keistai sukonfigūruotos ir pan. Žinoma, galite praleisti mėnesį viskam nustatydami ir įdiegdami (tai taip pat yra entuziastų daug), tačiau tai tik priartins redaktorių prie IDE lygio. Pavyzdžiui, grįžkime prie tų pačių projektų – bandžiau Project under vim ir projectile pagal emacs ir kai kuriuos kitus įskiepius. Jei projektas daugiau ar mažiau atitinka mano reikalavimus (nors naujausia versija Iš viso nepavyko sukurti projekto dėl klaidų), tada sviedinys paliko itin neigiamą įspūdį.

Ir vis dėlto redaktoriai turi keletą taikymo sričių, kuriose jie yra bent jau verti kūrimo aplinkos konkurentai.

Pirma, jie geriau atlieka mažus projektus. Nėra prasmės įkelti IDE kombainą darbui su 10-20 failų projektu. Redaktoryje lengviau pataisyti 3-4 eilutes.

Antra, kai kuriose konkrečiose srityse visi IDE pranašumai yra išlyginti. Pavyzdžiui, žemo lygio Linux kūrimas. Aš to nedariau, bet sprendžiant pagal kodo struktūrą ir kūrėjų pageidavimus (apie 70% - emacs ir klonai, 25% - vim, 5% - kažkokia egzotika, pavyzdžiui, jed), IDE neturi nieko. ten daryti. Visas darbui reikalingas kodas yra surenkamas, dažniausiai viename ar dviejuose failuose, ir nereikia šokinėti per visą projektą. O automatinis užbaigimas nelabai padės renkantis iš keliolikos ar dviejų funkcijų beveik vienodais pavadinimais.

Trečia, redaktoriai gali dirbti ne tik su kodu. Visa jų galia gali būti naudojama dirbant su csv arba xml failus. Arba kažkas, kas kartais tampa būtina, pavyzdžiui, straipsnis ar laiškas. Ir jums nereikia mokytis iš naujo, ieškoti patogi programa arba prisiminkite sparčiuosius klavišus – viskas po ranka, viskas taip pat.

Ketvirta, galimybė dirbti su kalbomis, kurioms nėra tinkamo IDE. Tarkime, su tuo pačiu rubinu aplinka man nelabai padėjo. SublimeText pasirodė pakankamai. Nors nedirbau su dideliu rubino projektu, galbūt IDE ten būtų pasirodęs.

Ir penkta, pagarsėjusi galimybė plėstis. Su gerais įskiepiais redaktorius tampa labai patogus! Be to, ypatingas malonumas nuolat derinti pagrindinį instrumentą ir visiškos jo kontrolės jausmas yra labai vertingas.

Iš viso

Nelabai mėgstu IDE, nors iš ankstesnio teksto taip gali atrodyti. Manau, kad jie yra gana monstriški, su krūva nereikalingų funkcijų, lėti ir reikalaujantys daug resursų. Ir geriausi iš jų yra gana brangūs. Be to, tikiu naudojant IDE atpalaiduoja ir pririša prie savęs. Redaktoriams – atvirkščiai. Be to, prieinamumas ir galimybė koreguoti pagal jūsų poreikius. Bent jau vim ir emacs. Galų gale man jie tiesiog patinka. Pavyzdžiui, aš rašau šį straipsnį „Emacs“.

Tačiau pramonė (ir vadyba) diktuoja savo reikalavimus. Jei nenaudosite IDE, našumas labai sumažės. Tačiau niekas jums neduos pusvalandžio, kad surastumėte trūkstamą kablelį 10 tūkstančių kodo eilučių. Visa tai turėtų būti daroma automatiškai ir ištaisyta automatiškai. Taip pat kartais mėgstu įsigilinti į kodą be jokių įrankių – bet darbe tai yra nepriimtinas laiko švaistymas.

Po visų bandymų ir klaidų padariau tokią išvadą – red Gali naudoti plėtrai, bet su IDE, po tam tikros ribos nelygina ir naudoti redaktorių tam, už ką mokama, yra neįperkama prabanga. Taip, jei naudojate teisingą kūrimo praktiką, teisingai kuriate / dokumento kodą ir laikotės standartų, galite išlyginti būdingus redaktorių trūkumus. Tačiau mes negyvename idealiame pasaulyje, todėl naudoti IDE yra būtinybė, nepaisant mūsų noro.



 


Skaityti:



IP televizijos žiūrėjimas per TV Iptv priedėlį, skirtas televizoriui, kaip tai veikia

IP televizijos žiūrėjimas per TV Iptv priedėlį, skirtas televizoriui, kaip tai veikia

Interaktyvioji televizija pastaruoju metu tampa vis populiaresnė ir tampa gera alternatyva ne tik analoginei, bet ir kabelinei ar...

Kaip pašalinti kortelės numerį iš Aliexpress Kaip atsegti kortelę iš Aliexpress

Kaip pašalinti kortelės numerį iš Aliexpress Kaip atsegti kortelę iš Aliexpress

Vis daugiau žmonių perka Aliexpress svetainėje. Ši virtuali parduotuvė patraukli tuo, kad už prekes galima atsiskaityti...

Ką gali padaryti biudžetinis „Xiaomi“ darbuotojas

Ką gali padaryti biudžetinis „Xiaomi“ darbuotojas

Nusprendžiau parašyti kitokį tekstą. Rimčiau. Tai gerbiamas „Xiaomi“ prekės ženklas. Nepaisant to, kad w3bsit3-dns.com gausu temų apie santuoką, o patys įrenginiai...

Vienas iš nepažįstamųjų: duomenų atkūrimas iš FAT, NTFS ir UFS nepaliekant Linux Kaip atkurti fat32 failų sistemą

Vienas iš nepažįstamųjų: duomenų atkūrimas iš FAT, NTFS ir UFS nepaliekant Linux Kaip atkurti fat32 failų sistemą

Failų sistema naudojama failams diske indeksuoti ir tvarkyti. Įrašai failų sistemoje yra aiškiai apibrėžtose...

tiekimo vaizdas RSS