aznum2words
aznum2words copied to clipboard
[AZ] Azərbaycan dilində ədədlərin sözlə yazılış təsviri üçün Go dilində yazılmış kitabxana. [EN] The library for converting numbers to words in the Azerbaijan language written in Go.
AzNum2Words - Azərbaycan dilində ədədlərin sözlə yazılışı(və ya təsviri) üçün nəzərdə tutulan Go dilində yazılmış, açıq qaynaqlı kitabxanadır.
Məqsəd | Goal
Azərbaycan dilində ədədlərin(və ya rəqəmlərin) sözlə yazılış təsvirinə ehtiyac yarandığı hallar olur. Proqram səviyyəsində bu kimi ehtiyacları qarşılamaq üçün vahid bir kitabxananın olması, proqramçıların işini xeyli asanlaşdırır. Kitabxana tam və ya kəsr ədədlərin Azərbaycan dilində sözlə yazılışı(və ya təsviri) üçün nəzərdə tutulub.
İstifadə formaları | Usage forms
Həm library, həm də command-line tool kimi istifadə edilə bilər. Bundan əlavə web-app kimi də istifadə edərək mövcud sisteminə integrasiya etmək mümkündür.
Bu kitabxana vasitəsilə - müsbət, mənfi tam və ya kəsr ədədlərin sözlə yazılış təsvirini əldə etmək mümkündür.
İstifadə yerləri | Use cases
Azərbaycan dilində ədədlərin təsvirinə ehtiyac duyulan hallarda istifadə oluna bilər.
- Statistik hesabatların tərtib olunması.
- Maliyyə əməliyyatları zamanı məbləğin sözlə təsvir olunması.
- Hüquqi və maliyyə sənədləri tez-tez çaşqınlığın qarşısını almaq və dəqiqliyi təmin etmək üçün rəqəmlərin ifadə sözünün istifadəsini tələb edir.
- Çek yazarkən, dəyişikliklərin və ya saxtakarlığın qarşısını almaq üçün rəqəmsal məbləğə əlavə olaraq məbləğin sözlə ifadəsini də yazmaq adi bir təcrübədir.
Özəlliklər | Features
- Tam ədədlərin sözlə təsvir olunması
- Kəsr ədədlərin sözlə təsvir olunması
- Müsbət vəya mənfi ədədlərin sözlə təsvir olunması
- Söz ilə təsvir oluna biləcək maksimum tam ədəd: 10^63
- Söz ilə təsvir oluna biləcək minumum kəsr ədəd: (10^-15)
Kitabxananın proyektə əlavə edilməsi | Add library into the project
go get github.com/egasimov/aznum2words@latest
Kitabxana kimi istifadə qaydası | Guideline for using as library
package main
import (
"fmt"
"github.com/egasimov/aznum2words"
)
func main() {
// in real use, do not discard errors, rather handle it properly :)
result1, _ := aznum2words.SpellNumber("-95412")
result2, _ := aznum2words.SpellNumber("-2.7021")
result3, _ := aznum2words.SpellNumber("5611113210")
fmt.Println(result1)
fmt.Println(result2)
fmt.Println(result3)
}
NƏTİCƏ | OUTPUT
mənfi doxsan beş min dörd yüz on iki
mənfi iki tam on mində yeddi min iyirmi bir
beş milyard altı yüz on bir milyon bir yüz on üç min iki yüz on
CLI kimi quraşdırılması | CLI-Installation
// installs the binaries into $GOPATH/bin
go install github.com/egasimov/aznum2words/cmd/aznum2words-cli@latest
CLI kimi istifadə qaydası | Guideline for using as CLI app
$ aznum2words-cli -- 12.3
on iki tam onda üç
$ aznum2words-cli -- -12.3
mənfi on iki tam onda üç
Web app kimi quraşdırılması | Web-App Installations
// Clone the repository
git clone https://github.com/egasimov/aznum2words.git@latest
Web app kimi istifadə qaydası | Guideline for using as Web app
$ cd ./cmd/aznum2words-webapp/
$ go run ./aznum2words-webapp.go
curl --location 'http://localhost:8080/api/v1/conversion/to-word' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"number": "123.45"
}'
Qeyd: open-api-spec contract istifadə edərək online swagger-ui, Postman kimi alətlər ilə REST APİ-ni interaktiv test etmək mümkündür.
Test caseləri yoxlanması | Check test cases
go test ./...
Benchmark yoxlanılması
go test -bench=. -run=^# -benchmem
Versiyalar | Releases
Kitabxananın versiyaları Semver yanaşması ilə tənzimlənir.
Lisenziya | License
Kitabxana MIT Lisenziya altında lisenziyalaşdırılmışdır. Ətraflı məlumat üçün LICENSE faylını nəzərdən keçirin.
Proyektə necə dəstək olmaq olar | How to contribute to project ?
Proyektə contribute etmək üçün aşağıdakı təlimatları nəzərə ala bilərsiniz.
Testləri olmayan vəya nəzərə alınmayan PRlar qəbul edilməyəcək
- Reponu fork et
- Yeni feature branch yarat (
git checkout -b my-new-feature
) - Dəyişiklikləri commit et (
git commit -am 'Added some feature'
) - Local branchı origin(remote repo) push et (
git push origin my-new-feature
) - Yeni Pull Request yarat
Contributorlar
Bu layihəyə aşağıdakı şəxslər töhfə verib: