forked from Syntax-Error/TradeSim
77 lines
1.6 KiB
Org Mode
77 lines
1.6 KiB
Org Mode
#+TITLE: Fejlesztői Dokumentáció
|
|
|
|
* TODO Követelmények
|
|
* TODO Use-cas-ek
|
|
* TODO Struktúrális leírás
|
|
** Osztály diagram
|
|
|
|
#+BEGIN_SRC plantuml :file class-diagram.png :exports result
|
|
@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
|
|
#+END_SRC
|
|
|
|
#+RESULTS:
|
|
[[file:class-diagram.png]]
|
|
* TODO Viselkedés leírása
|