798 читања
798 читања

Интегрирање на JavaScript во апликациите за крипто тргување: предизвици и решенија

од страна на EVEDEX5m2025/04/16
Read on Terminal Reader

Премногу долго; Да чита

EVEDEX и CleverPumpkin се занимаваа со интегрирање на TypeScript SDK во native крипто апликации, надминување на JavaScript компатибилност и native интеграција предизвици. Користење на native код за мрежни задачи, WebView за портфелни интеракции, и стандардни API како EIP-1193 обезбеди единствена логика, брз развој и стабилен перформанси - поставување на темелите за идните мобилни крипто апликации иновации.
featured image - Интегрирање на JavaScript во апликациите за крипто тргување: предизвици и решенија
EVEDEX HackerNoon profile picture
0-item


Како да се изгради мобилна крипто апликација и да се обезбеди нејзината стабилност

Модерните крипто трговци сè повеќе избираат паметни телефони како примарна алатка - според податоците од индустријата, повеќе од 60% од тргувањата се вршат преку мобилни уреди. Ова бара од програмерите да креираат не само визуелно атрактивни апликации, туку целосно функционални, безбедни и брзи трговски платформи, каде што дури и мали грешки можат да доведат до сериозни последици (од погрешни дисплеи на баланс до изгубени средства).


Изградбата на мобилна апликација за тргување со крипто не е само за пренос на веб интерфејс во апликација. Тоа е самостоен инженеринг предизвик со многу нијанси.


Клучните трендови кои го обликуваат пазарот за мобилна крипто трговија вклучуваат:


    Ѕидот
  • Премин од веб на мобилен: интерфејсите го прифаќаат мобилниот прв дизајн, а барањата за перформанси се зголемуваат.
  • Ѕидот
  • Барање за native искуства: апликациите мора да бидат брзи, безбедни и да се чувствуваат "native" за оперативниот систем.
  • Ѕидот


Во оваа статија, споделуваме како EVEDEX тимот и програмерите од CleverPumpkin интегрирале TypeScript SDK (оригинално изграден за веб) во native apps за да се одржи унифицирана деловна логика низ платформите.

Why We Chose SDK and the Challenges We Faced

Веб верзијата на EVEDEX веќе користеше прилагоден Exchange SDK, библиотека на TypeScript која го поврзува API-то за размена од страна на клиентот.Со текот на времето, разви сеопфатна деловна логика, вклучувајќи агрегирање на податоци за пазарот, потпишување на нарачки и валидација.


Клучната цел беше да се обезбеди конзистентно однесување на сите платформи. Нашата цел беше да се избегне дуплирање на логиката, да се намали бројот на грешки и да се забрза развојот.


Сепак, SDK е напишан во TypeScript и првично не беше дизајниран за употреба надвор од прелистувачот.


Ѕидот

„Разговаравме за сите можни опции за имплементација во детали.Имајќи го предвид целосниот контекст, одлучивме да се обидеме да го интегрираме целосниот TypeScript SDK во native apps.

Ѕидот


Alexander Kiaykin, CTO на CleverPumpkin

„Разговаравме за сите можни опции за имплементација во детали.Имајќи го предвид целосниот контекст, одлучивме да се обидеме да го интегрираме целосниот TypeScript SDK во native apps.


- наAlexander Kiaykin, CTO of CleverPumpkin


На iOS, имавме пристап до вградениот JavaScriptCore, но за Android моравме да бараме алтернатива.LiquidCore, независен, отворен код JS мотор.


За да се обезбеди беспрекорно интеракција со SDK од матичниот код, развивме крос-платформен обложувач кој ја олесни комуникацијата помеѓу SDK и деловната логика на апликацијата.


Challenges We Faced:

Предизвици со кои се соочуваме:


    Ѕидот
  • Не сите JS мотори го поддржуваат најновиот синтакс ECMAScript: моравме да ја намалиме целта за транпилација на TypeScript на верзија на JavaScript која е компатибилна со моторот.
  • Ѕидот


    Ѕидот
  • JS моторите немаат директен пристап до системските можности: работи како HTTP барања, WebSockets и мрежна комуникација морале да се имплементираат во матичниот код.
  • Ѕидот


Како резултат на тоа, SDK е модифициран. Сега користи надворешни интерфејси за мрежна логика, HTTP и WebSocket интеракции се обработуваат од страна на Swift / Kotlin, додека логиката за обработка останува во JavaScript. На крајот, деловната логика остана во рамките на SDK, а мрежните операции на ниско ниво беа делегирани на матичниот код. Ова ни овозможи да ја задржиме архитектонската конзистентност и да го забрзаме развојот без да го компромитираме перформансот.

Wallet Integration: Implementing Deposits and Withdrawals

Ниту една крипто размена не може да работи без функција за депозит и повлекување.Нашата цел беше да го направиме овој процес интуитивен и безбеден.

За подобрување на удобноста на корисниците, додадовме поддршка за флексибилни трансфери на средства помеѓу мрежи со користење наLI.FIуслуга, која им овозможува на корисниците да:


    Ѕидот
  • Пренос на средства од една мрежа во друга.
  • Ѕидот
  • Направете го тоа со само неколку кликања, без рачно да барате мостови или да ја разбирате комплексната логика на крос-ланец интеракции.
  • Ѕидот
  • Изберете ја најдобрата опција врз основа на преференциите за цена / брзина.
  • Ѕидот


Ние намерно се одлучи да се користиWebViewИако апликацијата е изградена со користење на природни технологии, а за операциите со SDK се користи посебен JavaScript мотор, WebView ни овозможи брзо да го интегрираме интерфејсот LI.FI без да треба повторно да го имплементираме интерфејсот на корисникот.


Во исто време, моравме да ги разгледаме спецификите на работа со крипто паричници во мобилна средина.EIP-1193Ѕидот(Ethereum Provider JavaScript API), кој е стандардот кој дефинира како апликациите можат да се интегрираат со Ethereum паричници.


Мобилната апликација поддржува неколку методи на поврзување:


    Ѕидот
  • Со помош на MetaMask
  • Ѕидот
  • Импортирање на надворешен паричник со користење на семе фраза или приватен клуч.
  • Ѕидот
  • Создавање на нов паричник директно во апликацијата.
  • Ѕидот


Без оглед на избраниот метод, апликацијата може да послужи како давател на паричник за страницата за депозит. Ова ни овозможи да го користиме постоечкиот веб интерфејс без да треба да изградиме посебен систем за мобилната апликација.


НБ*: Во сегашната фаза, EVEDEX работи само со Ethereum компатибилни мрежи, па алтернативни стандарди не се разгледуваат.

НБ

Conclusion and Key Takeaways

Интегрирањето на TypeScript SDK во матична мобилна апликација се покажа како неконвенционална и понекогаш предизвикувачка задача, но ни овозможи да обезбедиме конзистентно однесување на сите платформи, да ја елиминираме дупликацијата на логиката, да го намалиме бројот на грешки и значително да го забрзаме процесот на развој:


    Ѕидот
  • Веб SDK може да се прилагоди за мобилни средини, но бара архитектонско преиспитување и соодветна логичка декомпозиција.
  • Ѕидот


    Ѕидот
  • Одвојувањето на деловната логика од операциите на ниво на системот е од суштинско значење за одржлива архитектура. Во нашиот случај, матичниот код се занимава со мрежните операции и комуникацијата со WebSocket, додека SDK се фокусира исклучиво на деловната логика.
  • Ѕидот


    Ѕидот
  • Употребата на стандарди како EIP-1193 помага да се одржи компатибилност на паричникот и да се поедностави имплементацијата.
  • Ѕидот


    Ѕидот
  • Комбинирањето на native code, JavaScript engine и WebView ни даде вистинска рамнотежа помеѓу брзината на развој, флексибилноста и корисничкото искуство.
  • Ѕидот


Ѕидот

„Тоа не беше лесно, но сега знаеме точно како да вградите TypeScript SDK во native крипто апликација.

Ѕидот


— Влад Комисаров, ЦТО на EVEDEX

„Тоа не беше лесно, но сега знаеме точно како да вградите TypeScript SDK во native крипто апликација.


— Vlad Komissarov, CTO at EVEDEX


Развојот на мобилната апликација EVEDEX не беше само уште едно лансирање на производот, тоа беше вистински технолошки експеримент кој сега може да послужи како почетна точка за други тимови кои бараат неконвенционални решенија во крипто светот.


Напишано од:

Напишано од:

Влад Комисаров, CTO на EVEDEX

Александар Кијкин, CTO наЧистење на пумпи

L O A D I N G
. . . comments & more!

About Author

EVEDEX HackerNoon profile picture
EVEDEX@evedex
Perpetual DEX & Next-Gen Web3 financial ecosystem built on its own L3 blockchain.

ВИСЕТЕ ТАГОВИ

ОВОЈ СТАТИЈА БЕШЕ ПРЕТСТАВЕН ВО...

Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks