Hacker News

D Ulwimi lokuCwangcisa

D Ulwimi lokuCwangcisa Olu phononongo luphonononga kwiprogramu, luvavanya ukubaluleka kwalo kunye nefuthe elinokubakho. Iingcamango ezingundoqo zigutyungelwe Lo mxholo uphonononga: Imigaqo esisiseko kunye neethiyori Iziphumo ezisebenzayo...

6 min read Via dlang.org

Mewayz Team

Editorial Team

Hacker News

D uLwimi lokuCwangcisa: Ulwimi lweeNkqubo zala maxesha olwakhelwe imveliso

Ulwimi lokuprograma lwe-D lukwinqanaba eliphezulu, luchwetheziweyo lwenkqubo yolwimi oludibanisa amandla kunye nokusebenza kwe-C kunye nemigaqo yobunjineli besoftware yanamhlanje. Iyilwe nguWalter Bright kwaye yakhululwa okokuqala ngo-2001, i-D inika abaphuhlisi enye indlela enyanzelisayo yokwakha usetyenziso oluphezulu ngaphandle kokuncama ukucaca kwekhowudi okanye imveliso yomphuhlisi.

Yintoni uLwimi lweNkqubo yeD kwaye kwakutheni ukuze lwenziwe?

D wazalwa ngenxa yonxunguphalo kunye nobunzima beC++. UWalter Bright, umyili womdidiyeli wokuqala womthonyama we-C++, ubenombono wolwimi olugcina ukusebenza kwenqanaba lenkqubo ekrwada ngelixa esusa ukuntsonkotha okungeyomfuneko. I-D ayiyonto iphuma kulo naluphi na ulwimi olunye — luyilwa ngokutsha olusisiseko olutsala impembelelo evela kuC, C++, Java, Python, kunye neRuby.

Embindini wayo, i-D lulwimi oluhlanganisiweyo olunokhetho lokuqokelelwa kwenkunkuma, ukuchwetheza okuqinileyo, kunye nenkxaso eyakhelwe-ngaphakathi ye-metaprogramming. Ijolise kwinqanaba lentsebenzo elifanayo njenge-C kunye ne-C++ ngelixa inikezela nge-syntax ecocekileyo kakhulu kunye nethala leencwadi elisemgangathweni elaziwa ngokuba yiPhobos.

"I-D yinto ebekufanele ukuba yiyo i-C ++ - ithatha ezona ngcamango zingcono kwii-paradigms ezininzi kwaye idibanise ibe yinkqubo ehambelanayo, esebenzayo yophuhliso lwesoftware yehlabathi."

Ziziphi iimpawu ezingundoqo ezenza u-D agqame?

D ikwindawo eyodwa kubume benkqubo ngokuxhasa iiparadigms ezininzi zenkqubo ngaxeshanye. Nokuba ukhetha isinyanzeliso, into ejolise kwinto, esebenzayo, okanye inkqubo eqhelekileyo, iD iyasilungiselela isitayile sakho ngaphandle kokukunyanzelela kwipateni enye.

  • Iithempleyithi kunye ne-Compile-Time Function Execution (CTFE): Inkqubo ye-template ye-D ithathwa ngokubanzi njengento ecacileyo kwaye ifundeka ngakumbi kune-C++, eyenza i-metaprogramming enamandla ngaphandle kwe-syntax ye-cryptic.
  • Ukhuseleko lweMemori nge @safe Annotations: D ivumela abaphuhlisi ukuba baphawule imisebenzi njenge @safe, ukuthintela imisebenzi yememori engakhuselekanga ngexesha lokuqokelela - inyathelo elibalulekileyo elibhekiselele kwikhowudi yeenkqubo ezikhuselekileyo.
  • Uvavanyo lweYunithi eyakhelwe-ngaphakathi: D ibandakanya inkxaso yemveli yovavanyo lweyunithi ngokuthe ngqo kwiifayile zomthombo, ukwenza uphuhliso oluqhutywa ngovavanyo lube ngummi wodidi lokuqala lolwimi kunokuba lucinge emva koko.
  • Uluhlu kunye neMibhobho eSebenzayo: Ii-algorithms ezisekelwe kuluhlu lwe-D zenza imibhobho yokucubungula idatha ecocekileyo, edibeneyo efana neelwimi ezisebenzayo, ukunciphisa i-boilerplate kunye nokuphucula ukufundeka.
  • Intsebenziswano engenamthungo ye-C: Ngokungafaniyo neelwimi ezininzi zala maxesha, i-D inokunxibelelana ngokuthe ngqo namathala eencwadi e-C ngaphandle kokudityaniswa okanye iileya ezisongelwayo, inika abaphuhlisi ukufikelela ngokukhawuleza kwi-ecosystem enkulu ye-C.

Injani i-D xa ithelekiswa ne-C++ kunye neRust kuPhuhliso lwangoku?

Indawo yenkqubo yenkqubo iya ikhuphisana ngokunyukayo, kunye neRust ifumana amandla amakhulu ekhowudi yomgangatho ophantsi okhuselekileyo wememori kunye ne-C++ esele ilawula kwilifa kunye nophuhliso lomdlalo. D uhlala phakathi kwezi pole zimbini ngeendlela ezinomdla.

Xa kuthelekiswa ne-C ++, i-D inikezela ngokumangalisayo i-syntax ye-template elula, iqoqo lenkunkuma elakhelwe ngaphakathi (kunye nolawulo lwezandla olukhoyo), kunye nenkqubo yemodyuli efundeka ngakumbi. Amaxesha okudibanisa kwi-D nawo akhawuleza kakhulu kunokwakhiwa kwe-C++ eqhelekileyo, ebaluleke kakhulu kwiiprojekthi ezinkulu.

Xa kuthelekiswa neRust, u-D uthengisa i-Rust engqongqo yokutshekisha uboleka imodeli yenkumbulo ebhetyebhetye. Oku kwenza ukuba i-D ifundeke lula kwaye ikhawuleze ukwenza iprototype, nangona iRust ibonelela ngamandla iziqinisekiso zexesha lokuqokelela malunga nokhuseleko lwenkumbulo. Kumaqela adinga inkqubo yomgangatho wenkqubo ngaphandle kwegophe lokufunda likaRust, uD ubonisa umgangatho ophakathi onomtsalane ngokwenene.

D iphinde ixhase i-inline assembler, intrinsics ye-SIMD, kunye ne-low-level pointer manipulation - amandla ayimfuneko kuphuhliso lwe-OS, iinjini zomdlalo, i-computing yesayensi, kunye neenkqubo ezifakwe kwiinkqubo.

Ngawaphi amashishini kunye nezicelo ezixhamla kakhulu kuLwimi lwe-D?

Iprofayile yeD yendlela yokusebenza kunye nenkqubo yohlobo olucacileyo iyenza ifaneleke ngokukodwa imimandla apho isiphumo kunye nesantya sophuhlisi sibalulekile. Iingenelo zophuhliso lwe-injini yomdlalo ukusuka kwi-D yokuqokelela-ixesha lokubonisa kunye ne-zero-overhead abstractions. Uluntu olusebenzisa ikhompuyutha lwezenzululwazi luyawaxabisa amathala eencwadi e-D kunye nemijikelo yokuqokelela ngokukhawuleza ukuphinda-phinda umsebenzi wophando.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Uphuhliso lwewebhu lunokwenzeka ngokusebenzisa izikhokelo ezifana ne-Vibe.d, ebonelela nge-asynchronous I/O kunye ne-HTTP i-server ekwaziyo ukukhuphisana ne-Node.js - ngelixa ihambisa i-throughput ekrwada engcono kakhulu yokusingatha isicelo esinzima se-CPU.

Izixhobo zesistim, abaqulunqi, abahlalutyi, kunye nemibhobho yokusetyenzwa kwedatha imela okunye ukulingana kwendalo. I-D compiler ngokwayo (i-DMD, i-LDC, kunye ne-GDC) ibonisa isakhono solwimi sokwakha isoftware yekhonkco lezixhobo eziphucukileyo.

Liyintoni ikamva loLwimi lweNkqubo ye-D?

Uphuhliso lwe-D luqhutywa yi-D Language Foundation, umbutho ongenzi nzuzo ozibophelele kulawulo lweelwimi lwexesha elide. Uluntu lusebenza ngokukhutheleyo ekuphuculeni i-ikhosistim yolwimi, ukubhalwa kwamaxwebhu, kunye nezixhobo - iindawo ezazisalele emva kobugcisa bobuchule.

Inkqubo ye-DIP (D Improvement Proposal) izise ulawulo olucwangcisiweyo ekuguqukeni kolwimi, ijongana neenkxalabo malunga nozinzo lolwimi obeluthintela ukwamkelwa koshishino ngaphambili. Uphuculo kumphathi wepakethe ye-DUB, indibaniselwano ye-IDE engcono, kunye namanyathelo afana ne--preview=dip1000 yeziqinisekiso eziqinileyo zokhuseleko lwenkumbulo zibonisa inkqubo yendalo ekhulileyo elungele ukwamkelwa ngokubanzi.

Njengoko iinkqubo zesoftware zikhula nzima kwaye ixabiso lebugs liya lisanda, iilwimi ezinikezela ngeziqinisekiso eziqinileyo zexesha lokudibanisa, ukusebenza okugqwesileyo, kunye nokukhutshwa okucacileyo kuya kukhula ngokubaluleka. I-D's indibaniselwano yezi mpawu iyibeka kakuhle ekuqhubekekeni kokubaluleka kwiinkqubo zokucwangcisa, ukusebenza okuphezulu kwekhompyutha, kunye nophuhliso lwezixhobo.


Imibuzo Ebuzwa Rhoqo

Ngaba ulwimi lwenkqubo ye-D lusagcinwa?

Ewe, i-D igcinwa ngenkuthalo yiSiseko soLwimi lwe-D kunye nokukhutshwa kwe-compiler rhoqo ye-DMD (i-reference compiler), i-LDC (i-LLVM-based, i-optimization egqwesileyo), kunye ne-GDC (i-GCC backend). Ulwimi lufumana uhlaziyo oluqhubekayo, kwaye uluntu luhlala lusebenza kwiiforamu, i-GitHub, kunye ne-Discord channels ezinikezelwe kuphuhliso lwe-D.

Ngaba ulwimi lwenkqubo ye-D lulungile kubaqalayo?

D ifikeleleka ngakumbi kune-C++ yabaqalayo abanomdla kwiinkqubo zenkqubo, enkosi kwisicoci se-syntax, uvavanyo olwakhelwe ngaphakathi, kunye nemiyalezo yempazamo engcono. Nangona kunjalo, ayikhuthazwa njengolwimi lokuqala xa kuthelekiswa nePython okanye iJavaScript. Abaphuhlisi abanemvelaphi yenkqubo abafuna ukusondela kwintsimbi baya kufumana ijiko lokufunda lika-D lilawuleka kwaye linomvuzo.

Ndiluqala njani ulwimi lwenkqubo ye-D?

Ungakhuphela umqokeleli we-D kunye nekhonkco lesixhobo apha dlang.org. Ukhenketho olusemthethweni kwi-tour.dlang.org lubonelela ngentshayelelo esekwe kwisikhangeli esisebenzayo. Kulawulo lwephakheji, i-DUB iphatha ukuxhomekeka ngokufanayo kwi-npm okanye umthwalo. Uninzi lwabahleli bekhowudi abakhulu kuquka i-VS Code, i-Vim, kunye ne-Emacs bane-plugin zolwimi lwe-D ezifumanekayo zokuqaqambisa i-syntax, ukugqitywa, kunye nenkxaso yokulungisa iimpazamo.


Ukulawula iprojekti yesoftware yangoku — nokuba uyakha e-D, Python, Rust, okanye naluphi na olunye ulwimi — kufuna ngaphezu kwekhowudi elungileyo. Udinga izixhobo zokuphatha iqela lakho, abathengi, imisebenzi kunye nokukhula kwindawo enye. Mewayzyinkqubo yokusebenza yeshishini lonke elithenjwe ngabasebenzisi abangaphezu kwe-138,000, inika iimodyuli ezidibeneyo ze-207 ukulungelelanisa yonke inkalo yokuqhuba ishishini lakho - ukusuka kulawulo lwabathengi ukuya kuhlalutyo ukuya kwi-billing - ukuqala kwi-$ 19 kuphela ngenyanga.

Qalisa isilingo sakho sasimahla ku-app.mewayz.com kwaye ufumanise ukuba iMewayz ingalenza njani icala leshishini lomsebenzi wakho wophuhliso ngelixa ugxile kulwakhiwo lwesoftware olukhulu.

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime