Oyun Kitabı
Remix + OpenZeppelin: Hardhat Olmadan Teslimat (Remix Openzeppelin Hardhat Olmadan Teslimat)
Bare Crypto protokolu Remix IDE ve OpenZeppelin v4.1 GitHub importlariyla Hardhat/Foundry olmadan nasil derlenip deploy edildi? ADR ve trade-offlar.
Bare Crypto Solidity Marketplace Protokolu
Bolum 1 / 5
Remix IDE ve OpenZeppelin v4.1 GitHub importlariyla Hardhat/Foundry olmadan BareNFT, rezerv, Ingiliz artirmali acik artirma ve NFT-gated BareToken emisyon mimarisi; ADR, zayif RNG ve acil yetki trade-offlari.
Toolchain yoklugunda sozlesme teslimati
Bare Crypto marketplace protokolu, lokal Hardhat veya Foundry pipeline'i kurmadan Remix IDE icinde dogrudan OpenZeppelin v4.1.0 sozlesmelerini GitHub URL'leriyle import ederek derlendi. Bu, 2021 doneminde hizli deneme ve tek operator deploy icin bilincli bir ADR idi: hiz ve surum pin'i kazanildi, tekrarlanabilir CI ve tip-guvenli test kaybedildi.
Remix IDE
├─ BareNFT.sol
├─ BareNFTReserve.sol
├─ BareNFTAuction.sol
└─ BareToken.sol
|
v
https://github.com/OpenZeppelin/.../v4.1.0/...
|
v
injected Web3 / MetaMask deploy
Bu bolum, Bare Crypto'nun neden Hardhat'siz bir teslimat modeli sectigini ve bu secimin hangi basarisizlik senaryolarini aciga cikardigini sabitler.
Kavramlar ilk geçtiği yerde
📦 Remix IDE
Tarayici tabanli Solidity derleyici ve deploy yuzeyi; lokal node_modules gerektirmez.
📦 GitHub import pin
OpenZeppelin sozlesmelerini v4.1.0 blob URL'siyle sabitleyerek surum kaymasini onleme.
📦 ADR
Mimari karar kaydi: ne secildi, neden, hangi sonuc kabul edildi.
📦 Tekrarlanabilir build
Ayni kaynaklarin farkli makinelerde ayni bytecode'u uretmesi; Remix'te zayif nokta.
Remix + pinned GitHub import, 'hizli dogru' ile 'CI dogru' arasinda bilinçli bir trade-off'tur; pin yoksa her derleme farkli bagimlilik cekebilir.
ADR: Hardhat yok, Remix var
Karar: protokol sozlesmeleri Remix'te tutulsun, OpenZeppelin v4.1.0 GitHub'dan import edilsin, deploy MetaMask uzerinden yapilsin. Gerekce: kucuk ekip, tek operator, hizli iterasyon. Kabul edilen bedel: otomatik test suite, coverage, gas reporter ve deterministic artifact arsivi yoktur. Bu ADR, 'marketplace canliya ciksin' baskisi altinda CI borcunu bilerek erteledi.
Pin'lenmis OpenZeppelin yuzeyi
BareNFT ve BareToken, OpenZeppelin ERC721/ERC20/AccessControl/Pausable yuzeylerini https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.1.0/... yollariyla ceker. Tag pin, minor surum kaymasini keser; ancak Remix cache ve .deps klasoru, takimin 'hangi bytecode yayinda?' sorusunu lokal Hardhat artifact'i kadar net cevaplamaz.
import OZ v4.1.0
ERC721 + Enumerable + Burnable + Pausable
AccessControlEnumerable
SafeMath / IERC20
|
v
Remix .deps/github mirror
Basarisizlik: kayan bagimlilik ve sessiz fork
Bir operator blob URL'deki tag'i yanlislikla master'a cevirirse veya Remix farkli bir compiler pragma ile yeniden derlerse, ayni kaynak 'gibi' gorunen ama farkli bytecode ureten bir fork dogar. Marketplace UI eski ABI ile konusurken claim/bid cagrilari revert eder; incident 'frontend bug' sanilir, kok neden toolchain disiplinsizligidir. Performans acisindan da Remix'te buyuk OZ agaci her derlemede yeniden cozulur — lokal cache'siz CI'dan daha yavas ve kirilgan bir feedback loop.
Bu bölümde en çok karışan eşleştirmeler
❌ Remix = sadece oyuncak, production'da kullanilmaz
✓ Remix + pinned OZ, kucuk operator marketplace'lerinde gecerli bir ADR olabilir; bedeli dokumante edilmelidir
❌ GitHub import otomatik olarak guvenlidir
✓ Tag pin olmadan import, tedarik zinciri kaymasidir; v4.1.0 blob sabitlemesi zorunlu disiplindir
❌ Hardhat yoksa audit edilemez
✓ Audit kaynak ve bytecode uzerinden yapilir; eksik olan tekrarlanabilir pipeline ve regresyon testidir
Kendi sisteminizi denetleme listesi
- OpenZeppelin import URL'lerinizde surum tag'i (ornegin v4.1.0) var mi?
- Ayni commit'ten iki Remix derlemesi ayni bytecode hash'ini veriyor mu?
- Deploy edilen adreslerin ABI'si hangi artifact'ten geliyor — Remix mi, elle kopya mi?
- Compiler version ve optimization ayarlari bir ADR veya README'de sabit mi?
- Bir bagimlilik kayarsa marketplace UI hangi semptomu gosterir, kim fark eder?
Bu bölümden aklında kalması gerekenler
- Bare Crypto, Hardhat'siz Remix teslimatini hiz icin secmis; tekrarlanabilirligi bilerek borc olarak birakmistir.
- OpenZeppelin v4.1 GitHub pin'i, toolchain yoklugunda tek gercek surum kilididir.
- Bytecode kaymasi, UI'da 'garip revert' olarak gorunur; kok neden cogu zaman frontend degildir.
Hizli teslimat bir ozelliktir; pin'siz import ise sessiz bir fork fabrikasidir.
SSS
Sık sorulan sorular
Remix IDE nedir?
Tarayici tabanli Solidity derleyici ve deploy yuzeyi; lokal node_modules gerektirmez.
GitHub import pin nedir?
OpenZeppelin sozlesmelerini v4.1.0 blob URL'siyle sabitleyerek surum kaymasini onleme.
"Remix = sadece oyuncak, production'da kullanilmaz" doğru mu?
Remix + pinned OZ, kucuk operator marketplace'lerinde gecerli bir ADR olabilir; bedeli dokumante edilmelidir
Bu bölüm neyi sabitler?
Bu bolum, Bare Crypto'nun neden Hardhat'siz bir teslimat modeli sectigini ve bu secimin hangi basarisizlik senaryolarini aciga cikardigini sabitler. Bare Crypto marketplace protokolu, lokal Hardhat veya Foundry pipeline'i kurmadan Remix IDE icinde dogrudan OpenZeppelin v4.1.0 sozlesmelerini GitHub URL'leriyle import ederek derlendi. Bu, 2021 doneminde hizli deneme ve tek operator deploy icin bilincli bir ADR idi: hiz ve surum pin'i kazanildi, tekrarlanabilir CI ve tip-guvenli test kaybedildi.
Ogrenilen Muhendislik Prensipleri
- Toolchain ADR'si, ekip boyutu ve operator guven modeliyle birlikte yazilmalidir.
- GitHub importlari tag ile pinlenmeden production deploy yapilmamalidir.
- Tekrarlanabilir bytecode olmadan incident kok neden analizi spekulasyondur.
Okumaya devam et
Okumaya devam et
Seride sonraki yazi
BareNFT: Roller, Pausable ve Token URI
BareNFT, ERC721 Enumerable/Burnable/Pausable ve AccessControl ile role-gated mint(to,id,uri) sunar. Per-token URI ve pause trade-offlari.
Ayni seriden
BareNFTReserve: Escrow, RandomBuy ve Zayif RNG
Owner-only createNewListing, buy ve randomBuy — keccak256(revealNonce, block.difficulty, msg.sender) % 3.…
Ayni seriden
BareNFTAuction: Claim, Iade ve Acil Yetkiler
Ingiliz artirmali acik artirma: bid, claim, cancel, rezerv altinda iade ve owner emergency transferNft/transferFunds trade-offlari.