Bii Dada Ṣe Mu Awọn itọkasi inu ṣiṣẹ | Mewayz Blog Skip to main content
Hacker News

Bii Dada Ṣe Mu Awọn itọkasi inu ṣiṣẹ

Comments

13 min read Via smallcultfollowing.com

Mewayz Team

Editorial Team

Hacker News

Iṣoro Itọkasi ti ara ẹni ti o ni Iṣeduro Awọn ọna ṣiṣe Ebora fun Awọn ọdun mẹwa

Ti o ba ti gbiyanju lati kọ aworan kan, atokọ ti o sopọ mọ ilọpo meji, tabi ilana oluwoye ni ede ti o ni awọn ofin nini nini to muna, o mọ irora naa. Awọn ẹya ara ẹni-itọkasi data - nibiti apakan kan ti ẹya kan di itọka kan si apakan miiran ti igbekalẹ kanna - jẹ ohun ti o nira pupọ lati ṣalaye lailewu. Awọn olupilẹṣẹ ipata ti jijakadi pẹlu eyi fun awọn ọdun pupọ, de ọdọPin, awọn bulọọkiailewu, tabi awọn ipin gbagede o kan lati ṣe awoṣe awọn ilana ti o ni imọlara pe ko ṣe pataki ni awọn ede ti a kojọpọ. Dada, ede siseto adanwo ti Niko Matsakis ṣẹda, gba ọna ti o yatọ ni ipilẹ. Nipa atunwi nini nini ati awọn igbanilaaye lati ilẹ soke, Dada ngbanilaaye awọn itọkasi inu laisi rubọ aabo iranti - ati awọn ipa ti o jinna ju iwariiri ẹkọ lọ.

Kini Awọn itọkasi inu ati Kilode ti Wọn Ṣe pataki?

Itọkasi inu yoo waye nigbati aaye kan ninu igbekalẹ data tọka si aaye miiran laarin ilana kanna. Wo parser kan ti o di okun orisun mejeeji mu ati ege kan sinu okun yẹn, tabi paati UI kan ti o tọju atokọ ti awọn ẹrọ ailorukọ ọmọde pẹlu itọka si ọmọ ti o dojukọ lọwọlọwọ. Awọn ilana wọnyi han nigbagbogbo ni sọfitiwia gidi-aye: awọn eto iṣẹlẹ, awọn awoṣe iwe aṣẹ, awọn igi atunto, ati awọn ẹrọ iṣan-iṣẹ gbogbo gbarale diẹ ninu iru itọkasi ara ẹni.

Ni awọn ede bii Python tabi JavaScript, ikojọpọ idoti n ṣakoso iwe-kipamọ lairi. O ṣẹda itọkasi naa, ati pe akoko ṣiṣe n ṣe idaniloju iranti wa laaye niwọn igba ti ohunkan ba tọka si. Ṣugbọn ni awọn ede eto ti o ṣe pataki awọn abstractions iye owo odo ati iṣakoso awọn orisun ipinnu, olupilẹṣẹ nilo ẹri pe itọkasi kii yoo kọja data ti o tọka si. Eyi ni ibi ti awọn nkan ti ni idiju — ati nibiti ọpọlọpọ awọn ede ti o da lori nini fi agbara mu awọn olupolowo sinu awọn ibi-afẹde ti o buruju ti o ṣe okunkun idi ati ṣafihan awọn idun arekereke.

Ipenija naa kii ṣe imọ-jinlẹ lasan. Awọn ẹgbẹ ti n kọ awọn iru ẹrọ apọjuwọn - bii 207-module faaji lẹhinMewayz- da lori awọn itọkasi inu nigbagbogbo. Awọn igbasilẹ itọkasi module CRM laarin ipo data kanna, ẹrọ invoicing ti o so awọn nkan laini pada si iwe obi wọn, tabi dasibodu atupale ti n tọka si awọn ṣiṣan data laaye laarin ohun ipinlẹ ti o pin: gbogbo iwọnyi jẹ awọn iṣẹlẹ gidi-aye ti apẹẹrẹ itọkasi inu ti n ṣiṣẹ ni iwọn.

Bawo ni Awọn awoṣe Ohun-ini Ibile ti kuna Kuru

Ayawo ti Rust jẹ ọkan ninu awọn imotuntun ti o ṣe ayẹyẹ julọ ni apẹrẹ ede ode oni, imukuro gbogbo awọn ẹka ti awọn idun iranti ni akoko iṣakojọpọ. Sibẹ oniwun ẹyọkan ti o muna, yiya-tabi-itumọ gbigbe jẹ ki awọn itọkasi inu jẹ irora nitootọ. Ni akoko ti struct kan ti gbe sinu iranti, eyikeyi itọka inu yoo di asan. Idahun Rust — thePin API ti a ṣe ni ẹya 1.33 — n pese ẹrọ kan lati ṣe iṣeduro iye kan kii yoo gbe, ṣugbọn o fi idiju pọ si ohun ti o yẹ ki o jẹ iṣẹ-ṣiṣe awoṣe taara.

Awọn olupilẹṣẹ nigbagbogbo ṣe ijabọ lilo 30-40% ti akoko wọn ni ija oluyẹwo oluyawo lori awọn ilana ti o kan itọkasi ara-ẹni. Awọn ile-ikawe ipin gbagede biiTitẹ-arenaati awọn ọna orisun atọka (nibiti o ti fipamọ awọn itọka sinu Vec dipo awọn itọkasi gangan) jẹ adaṣe ṣugbọn awọn ojutu alaipe. Wọn ṣe iṣowo ikosile ti awọn itọkasi taara fun itọka ti olupilẹṣẹ le rii daju, ṣugbọn wọn tun ṣowo asọye fun igbomikana.

"Ẹya ede ti o dara julọ jẹ ọkan ti o jẹ ki apẹrẹ ti o tọ jẹ apẹrẹ ti o rọrun julọ lati kọ. Nigbati awọn olupilẹṣẹ ba lọ si awọn ibi-isẹ, o tumọ si awoṣe ede ati awoṣe opolo wọn ti yapa." - Niko Matsakis, lori imoye apẹrẹ lẹhin Dada

Ọna ti o da lori igbanilaaye Dada si Ohun-ini

Dada tun ṣe atunto nini nini kii ṣe bi ipinnu alakomeji ti ara-tabi-yawo ṣugbọn gẹgẹ bi spekitiriumu ti awọn igbanilaaye. Dipo gbigbe ohun-ini tabi ṣiṣẹda awọn awin igba diẹ, Dada ngbanilaaye awọn iye lati gbe awọn asọye igbanilaaye ti o ṣe apejuwe ohun ti o le ṣe pẹlu wọn - ka, kọ, tabi tirẹ - ati ni itara, awọn igbanilaaye wọnyi le wa papọ lori awọn apakan agbekọja ti eto data kanna.

Ìjìnlẹ̀ òye kọ́kọ́rọ́ ni ìrònú ti ayálégbé. Yiyalo ni Dada funni ni iraye si igba diẹ si iye kan lakoko ti oniwun atilẹba ṣe idaduro awọn ẹtọ rẹ. Ko dabi awọn yawo Rust, awọn iyalo jẹ apẹrẹ lati ṣajọ nipa ti ara pẹlu eto inu. Nigbati o ba ya aaye kan ti igbekalẹ kan, iru eto Dada loye pe iyalo naa jẹ opin si igbesi aye obi laisi nilo awọn alaye igbesi aye ti o han gbangba. Eyi yọkuro awọn ẹwọn paramita igbesi aye 'a olokiki ti o jẹ ki awọn ibuwọlu iṣẹ Rust nira lati ka.

Fun awọn itọkasi inu ni pato, Dada ṣafihan ohun ti ede n peawọn iyalo pinpin pẹlu awọn ọna inu. Ẹya kan le di iyalo kan si ọkan ninu awọn aaye tirẹ nitori alakojọ ṣe atẹle ibatan laarin eiyan ati data ti o wa ninu bi imọran kilasi akọkọ. Ko si iwulo fun Pin, ko si iwulo fun ailewu, ati pe ko si iwulo fun itọka ti o da lori atọka. O kan kọ koodu naa ni ọna ti o ronu nipa data naa, ati pe akopo naa jẹri rẹ.

Awọn Ilana Iṣeṣe Ti Di Bintin ni Dada

Pẹlu awọn itọkasi inu ṣiṣẹ ni mimọ, ọpọlọpọ awọn ilana ti o nira itan-akọọlẹ di titọ lati ṣe. Iwọnyi jẹ awọn ilana ti awọn eto iṣelọpọ pade lojoojumọ:

  • Awọn olutọpa ti ara ẹni - Atunṣe ti o ni itọkasi si gbigba ti o kọja, ti o fipamọ bi ọna kan ṣoṣo, laisi gymnastics igbesi aye
  • Awọn ilana Oluwoye — Emitter iṣẹlẹ kan ti o ṣetọju atokọ ti awọn ipe ẹhin ti n tọka si ipo tirẹ, ṣiṣe awọn siseto ifaseyin laisi Rc/RefCell wrappers
  • Awọn awoṣe iwe-ipamọ pẹlu awọn kọsọ — Ilana iwe aṣẹ olootu ọrọ ti o ni awọn mejeeji ifipamọ ninu ati ọkan tabi diẹ sii awọn ipo kọsọ ti n tọka si
  • Awọn igbimọ ti obi-ọmọ - Awọn ẹya igi nibiti awọn ọmọde ti di awọn itọkasi si ipade obi wọn, ti a ṣe apẹrẹ taara dipo nipasẹ awọn itọka alailagbara tabi awọn atọka
  • Awọn ẹrọ iṣan-iṣẹ pẹlu awọn ẹrọ ipinlẹ - Ilana opo gigun ti epo ti o tọka ipele lọwọlọwọ rẹ, awọn abajade iṣaaju, ati awọn iṣe isunmọ gbogbo laarin awoṣe data iṣọkan kan
Fun awọn ayaworan Syeed, awọn ilana wọnyi kii ṣe awọn ọran eti — wọn jẹ ẹhin sọfitiwia apọjuwọn. Nigbati ẹgbẹ imọ-ẹrọ Mewayz kọ awọn ẹya bii fifa-ati-ju awọn agbele iṣan-iṣẹ tabi ifowosowopo akoko gidi ni module iṣakoso iṣẹ akanṣe rẹ, awọn awoṣe data ti o wa labe laiseaniani pẹlu awọn ẹya ara-itọkasi. Awọn ede ati awọn ilana ti o mu awọn ilana wọnyi ni oore-ọfẹ dinku akoko idagbasoke ati dinku agbegbe oju fun awọn idun.

💡 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 →

Ipa ti o gbooro lori Itumọ Software

Ọna Dada si awọn itọkasi inu ṣe afihan aṣa ti o tobi julọ ni apẹrẹ ede siseto:Ṣiṣe awọn ilana ailewu ergonomic dipo ṣiṣe awọn ilana ti ko lewu ko ṣee ṣe. Imọye yii ni awọn abajade taara fun bi a ṣe ṣe agbekalẹ sọfitiwia ode oni. Nigbati ede kan ba jẹ ki apẹrẹ kan rọrun, awọn olupilẹṣẹ lo. Nigba ti o ba jẹ ki apẹrẹ kan jẹ irora, awọn olupilẹṣẹ yago fun rẹ - nigbamiran ni idiyele ti asọye ayaworan.

Ṣe akiyesi awọn iṣẹ microservices dipo ariyanjiyan monolith modular. Idi kan ti awọn ẹgbẹ fi fọ awọn eto sinu awọn iṣẹ lọtọ ni lati yago fun idiju ti iṣakoso ipinlẹ pinpin laarin ilana kan. Ṣugbọn ti ede naa ba jẹ ki awọn ilana ipinlẹ pinpin jẹ ailewu ati kika, ariyanjiyan fun ibajẹ ti tọjọ n dinku. Awọn ẹgbẹ le kọ iṣọpọ, awọn ọna ṣiṣe modular — pẹlu 50, 100, tabi paapaa awọn modulu isọpọ 207 - laarin ẹyọkan ti o le gbe lọ, ni iyọrisi awọn anfani iṣeto ti modularity laisi iṣẹ ṣiṣe ti awọn eto pinpin.

Eyi jẹ deede faaji ti o ṣe agbara awọn iru ẹrọ bii Mewayz, nibiti awọn modulu ti o tan CRM, risiti, isanwo isanwo, HR, iṣakoso ọkọ oju-omi kekere, ati awọn atupale gbogbo ṣiṣẹ laarin ipo data iṣọkan kan. Module kọọkan tọka si awọn nkan ti o pin - awọn olubasọrọ, awọn ajọ, awọn iṣowo - nipasẹ awọn ibatan inu ti yoo jẹ alaburuku lati ṣakoso kọja awọn aala iṣẹ ṣugbọn jẹ adayeba laarin monolith ti iṣeto daradara. Ilọsiwaju ninu apẹrẹ ede ti o rọrun awọn itọkasi inu wọnyi ni anfani taara ni kilasi sọfitiwia yii.

Kini Awọn Difelopa yẹ ki o Wo Fun

Dada jẹ adanwo, ati pe awọn imọran rẹ tun wa ni isọdọtun nipasẹ idagbasoke gbogbo eniyan ati awọn esi agbegbe. Sibẹsibẹ, ọpọlọpọ awọn imotuntun rẹ ti ni ipa lori apẹrẹ ede akọkọ. Awọn iṣẹ ti Rust ti nlọ lọwọ loriawọn oriṣi wiwoatipolonius(ayanwo oluyawo iran ti o tẹle) ya awọn imọran lati aaye iwadii kanna. Awoṣe ohun ini Swift, ti a ṣe ni Swift 5.9, bakannaa ṣawari awọn eto igbanilaaye granular diẹ sii. Paapaa iru eto TypeScript tẹsiwaju lati dagbasoke si ọna awoṣe kongẹ diẹ sii ti awọn ibatan data.

Fun awọn ẹgbẹ ti n kọ sọfitiwia iṣelọpọ loni, awọn ọna gbigbe to wulo jẹ kedere. Ni akọkọ, ṣe ojurere awọn ede ati awọn ilana ti o ṣe deede awoṣe nini wọn pẹlu awoṣe data rẹ - ija iru eto jẹ owo-ori iṣelọpọ ti o ṣajọpọ lori akoko. Ẹlẹẹkeji, ṣe idoko-owo ni oye awọn ilana ti agbegbe rẹ nilo. Ti ohun elo rẹ ba jẹ ni ipilẹṣẹ aworan ti awọn nkan ti o ni asopọ (gẹgẹbi ọpọlọpọ awọn iru ẹrọ iṣowo jẹ), yan awọn irinṣẹ ti o ṣe apẹẹrẹ awọn aworan nipa ti ara ju ki o fi ipa mu awọn ibi iṣẹ ti o ni irisi igi.

Ni ipari, tọju Dada ati iwadii ti o ṣojuuṣe. Awọn iṣoro ti o yanju - awọn itọkasi inu, akopọ igbanilaaye, aabo ergonomic - kii ṣe awọn ifiyesi onakan. Wọn jẹ awọn iṣoro gangan ti ẹgbẹ kọọkan ba pade nigba kikọ ifẹ-ọkan, sọfitiwia ti o ni asopọ ni iwọn. Boya o n ṣakoso ọkọ oju-omi titobi ti awọn ọkọ ayọkẹlẹ ifijiṣẹ, ti n ṣe agbekalẹ opo gigun ti igbanisise ọpọlọpọ-igbesẹ, tabi mimuuṣiṣẹpọ data kọja iru ẹrọ iṣowo 207-module, ọna ti awọn irinṣẹ rẹ ṣe n ṣakoso awọn ibatan inu ṣe apẹrẹ didara ohun gbogbo ti o kọ sori wọn.

Lati Ilana Ede si Otitọ Iṣowo

Iwadii ede siseto le ni rilara jijinna si otitọ ọjọ-si-ọjọ ti ṣiṣe iṣowo kan. Ṣugbọn awọn irinṣẹ ti a lo ṣe apẹrẹ awọn ọja ti a kọ, ati awọn ọja ti a kọ ṣe apẹrẹ bi awọn iṣowo ṣe n ṣiṣẹ. Ilowosi Dada si iṣoro itọkasi inu kii ṣe ami-iṣẹlẹ imọ-ẹrọ nikan — o jẹ ifihan agbara pe ile-iṣẹ n lọ si awọn irinṣẹ ti o bọwọ fun bi awọn olupilẹṣẹ ṣe ronu gangan nipa data, dipo ki wọn fi ipa mu wọn lati ronu bi alakojọ.

Fun awọn iṣowo 138,000+ ti nlo awọn iru ẹrọ bii Mewayz lati ṣakoso awọn iṣẹ wọn, ilọsiwaju yii tumọ si sọfitiwia ti o gbẹkẹle diẹ sii, ọlọrọ ẹya-ara, ati yiyara lati dagbasoke. Gbogbo ilọsiwaju ni bii awọn ede siseto ṣe n ṣakoso idiju tumọ, nikẹhin, sinu iriri ti o dara julọ fun olumulo ipari - oniwun iṣowo kekere ti o kan fẹ CRM wọn, isanwo, ati awọn ọna ṣiṣe ifiṣura lati ṣiṣẹ papọ lainidi. Aifọwọyi yẹn jẹ ọja ti ẹgbẹẹgbẹrun awọn itọka inu inu ti a ṣe apẹrẹ daradara, ati awọn ede bii Dada n jẹ ki wọn jẹ ailewu ati rọrun lati kọ ju ti tẹlẹ lọ.

Ṣatunṣe Iṣowo Rẹ pẹlu Mewayz

Mewayz mu awọn modulu iṣowo 207 wa sinu iru ẹrọ kan - CRM, risiti, iṣakoso iṣẹ akanṣe, ati diẹ sii. Darapọ mọ awọn olumulo 138,000+ ti o mu ṣiṣiṣẹ ṣiṣẹ wọn rọrun.

Bẹrẹ Ọfẹ Loni →

Awọn ibeere Nigbagbogbo

Kini gangan ni "iṣoro ifọrọhan ara ẹni"?

Iṣoro ifọkasi ti ara ẹni waye nigbati igbekalẹ data kan ni itọka si funrararẹ, bii ipade kan ninu aworan kan ti n tọka si ipade miiran laarin eto kanna. Ni awọn ede ti o ni awọn ofin nini ti o muna bi Rust, eyi ṣẹda ija: awọn iṣeduro aabo ede ko le ni rọọrun pinnu boya itọkasi naa yoo kọja data ti o tọka si. Eyi ṣe awọn ilana ti o dabi ẹnipe o rọrun, wọpọ ni awọn modulu 207+ Mewayz, iyalẹnu nira ati ailewu lati ṣe.

Bawo ni Dada ṣe yanju iṣoro yii yatọ si ipata?

Lakoko ti Rust nigbagbogbo nilo awọn iṣẹ ṣiṣe eka bii Pintabi ailewu koodu lati mu awọn itọkasi ti ara ẹni, Dada ṣe ojutu kan taara sinu awoṣe nini. Dada ṣafihan imọran ti “awọn iyalo,” eyiti o jẹ igba diẹ, awọn itọkasi ti o da lori igbanilaaye. Eyi ngbanilaaye olupilẹṣẹ lati ṣe iṣeduro aabo ti awọn itọka inu inu laisi iwulo awọn oriṣi pataki tabi fifọ ailewu iranti, ṣiṣe ni ergonomic diẹ sii fun awọn ilana ti o wọpọ wọnyi.

Njẹ MO le lo Dada fun awọn iṣẹ akanṣe mi loni?

Dada jẹ ede idanwo lọwọlọwọ ko si ti ṣetan fun lilo iṣelọpọ. O jẹ iṣẹ akanṣe iwadi ti n ṣawari awọn imọran tuntun ni nini. Fun logan, siseto awọn ọna ṣiṣe ti o ti ṣetan, ipata jẹ yiyan asiwaju. Fun awọn iwulo ohun elo ipele-giga, iṣẹ kan bii Mewayz ($ 19/mo) n pese ile-ikawe nla ti awọn modulu ti a ti kọ tẹlẹ lati yara idagbasoke laisi ija pẹlu awọn ifiyesi iranti ipele kekere.

Njẹ ọna Dada ni awọn idiwọn eyikeyi bi?

Eto iyalo Dada jẹ apẹrẹ fun kilasi kan pato ti awọn iṣoro ti o kan awọn itọkasi inu laarin igi ohun-ini kan. Lakoko ti o yangan yanju ayaworan paradigmatic ati awọn ọran ilana oluwoye, o le ma jẹ ọta ibọn fadaka fun gbogbo awọn oju iṣẹlẹ itọka idiju. Awoṣe naa tun wa labẹ idagbasoke, ati pe awọn agbara ati awọn idiwọ rẹ yoo di mimọ diẹ sii bi ede naa ṣe n dagba.

Try Mewayz Free

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

Start managing your business smarter today

Join 6,207+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 6,207+ 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