forked from Syntax-Error/TradeSim
1.6 KiB
1.6 KiB
Fejlesztői Dokumentáció
TODO Követelmények
TODO Use-cas-ek
TODO Struktúrális leírás
Osztály diagram
@startuml
Exchange <|--- Binance
Market <--- "-currencies 2" Currency
Exchange *--- " #markets 1..*" Market
Exchange <... Trader
TradeTracker *--- "-exchanges 1...*" Exchange
TradeTracker "-tracker 1" *--- "-traders 0..*" Trader
Market <... TradeTracker
Market <... Trader
class TradeTracker << (S,#FF7700) Singleton >> {
-round()
+start()
+getExchange(name: String): Exchange
}
abstract class Trader {
+{abstract} step()
}
note left of Trader::step()
Itt történik a trader belső logikája
end note
abstract class Exchange {
-String name
+getName(): String
+{abstract} updateAllMarkets()
+{abstract} updateMarket(id: int)
+{abstract} updateMarket(name : String)
+getMarket(id: int): Market
+getMarket(name: String): Market
+{abstract} addMarket(m: Market)
}
class Binance {
-{static} String baseURL
+updateMarket(id: int)
+updateMarket(name : String)
+updateMarkets()
}
note right of Binance
Ez csak egy példa, lehetne akár más is
end note
class Market {
-String name
-double exchange_rate
+Market(primary: Currency,secondary: Currency)
+getName(): String
+getExchangeRate(): double
+setExchangeRate(d: double)
}
class Currency {
-String name
-String symbol
+Currency(name: String,symbol: String)
+getName() : String
+getSymbol() : String
}
@enduml