Ecosyste.ms: Packages

An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

Top 3.7% on proxy.golang.org
Top 4.2% dependent packages on proxy.golang.org
Top 4.8% dependent repos on proxy.golang.org
Top 4.4% forks on proxy.golang.org
Top 1.6% docker downloads on proxy.golang.org

proxy.golang.org : github.com/hidevopsio/hiboot

Package hiboot is a web/cli app application framework Hiboot is a cloud native web and cli application framework written in Go. Hiboot integrates the popular libraries but make them simpler, easier to use. It borrowed some of the Spring features like dependency injection, aspect oriented programming, and auto configuration. You can integrate any other libraries easily by auto configuration with dependency injection support. hiboot-data is the typical project that implement customized hiboot starters. see https://godoc.org/github.com/hidevopsio/hiboot-data Overview One of the most significant feature of Hiboot is Dependency Injection. Hiboot implements JSR-330 standard. Let's say that we have two implementations of AuthenticationService, below will explain how does Hiboot work. In Hiboot the injection into fields is triggered by `inject:""` struct tag. when inject tag is present on a field, Hiboot tries to resolve the object to inject by the type of the field. If several implementations of the same service interface are available, you have to disambiguate which implementation you want to be injected. This can be done by naming the field to specific implementation. Although Field Injection is pretty convenient, but the Constructor Injection is the first-class citizen, we usually advise people to use constructor injection as it has below advantages, It's testable, easy to implement unit test. Syntax validation, with syntax validation on most of the IDEs to avoid typo. No need to use a dedicated mechanism to ensure required properties are set. type userController struct { at.RestController basicAuthenticationService AuthenticationService } // Hiboot will inject the implementation of AuthenticationService func newUserController(basicAuthenticationService AuthenticationService) { return &userController{ basicAuthenticationService: basicAuthenticationService, } } func init() { app.Register(newUserController) } Features This section will show you how to create and run a simplest hiboot application. Let’s get started! Get the source code Source Code This is a simple hello world example

Registry - Source - Documentation - JSON
purl: pkg:golang/github.com/hidevopsio/hiboot
Keywords: application, autoconfiguration, cli, cloudnative, command, command-line-tool, container, dependency-injection, di, golang, ioc, mvc, web, webapp
License: Apache-2.0
Latest release: over 1 year ago
First release: about 6 years ago
Namespace: github.com/hidevopsio
Dependent packages: 2
Dependent repositories: 1
Stars: 180 on GitHub
Forks: 27 on GitHub
Docker dependents: 2
Docker downloads: 750
See more repository details: repos.ecosyste.ms
Last synced: 13 days ago

    Loading...
    Readme
    Loading...