You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/// Stratégie open sourcepubstructOpenSourceStrategy{pubcore_license:License,pubopen_components:Vec<OpenSourceComponent>,}pubstructOpenSourceComponent{pubname:String,pubrepository:String,pubdescription:String,publicense:License,}#[derive(Clone)]pubenumLicense{MIT,Apache2,Proprietary,}implOpenSourceStrategy{pubfnexample() -> Self{Self{// Le produit principal reste propriétairecore_license:License::Proprietary,// Mais certains composants sont open sourceopen_components:vec![OpenSourceComponent{
name:"mon-app-ui-kit".to_string(),
repository:"https://github.com/org/mon-app-ui-kit".to_string(),
description:"Composants UI réutilisables pour egui".to_string(),
license:License::MIT,},OpenSourceComponent{
name:"mon-app-plugin-sdk".to_string(),
repository:"https://github.com/org/mon-app-plugin-sdk".to_string(),
description:"SDK pour développer des plugins".to_string(),
license:License::Apache2,},],}}}
Composants réutilisables
implOpenSourceStrategy{pubfnidentify_reusable_components(&self) -> Vec<String>{vec!["Design system".to_string(),"UI components library".to_string(),"Plugin SDK".to_string(),"Database migration tools".to_string(),"License validation library".to_string(),]}pubfnopen_source_benefits() -> Vec<&'staticstr>{vec!["Visibilité et crédibilité","Contributions communautaires","Feedback et améliorations","Recrutement de talents","Écosystème autour du produit",]}}