Typescript 'modules' centraal beheren

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • henk1994
  • Registratie: November 2013
  • Laatst online: 07-10 19:43
Mijn vraag
Op dit moment loop ik stage als app-ontwikkelaar bij een bedrijf. Ik ben daar de enige app ontwikkelaar, hiervoor deed men er niet zoveel mee. Ik heb al enkele apps ontwikkelen, maar nu loop ik tegen een 'probleem' aan: Het beheren van de code.

Ik schrijf de apps met behulp van Ionic 2, Angular2 in TypeScript. Tijdens het builden wordt dit omgezet naar Javascript.
Ik heb verschillende modules gemaakt in typescript waarmee ik bijvoorbeeld een websocket opzet, data opslaat of de wifi verbinding beheer.
Veel van deze modules worden in verschillende apps gebruikt. De 'storage' module gebruik ik in alle apps.
Uiteraard gebruik ik zoveel mogelijk de Ionic Native plugins als ik dat nodig heb.

Voor al mijn apps heb ik een git project aangemaakt, en hier push ik dan ook alles naartoe. Maar als ik dan een module wil gebruiken in een nieuw project, of er zijn wijzigingen in aangebracht, dan moet ik overal handmatig de code aanpassen. Hoe kan ik dat eenvoudiger doen?


Relevante software en hardware die ik gebruik
Ik maak gebruik van Ionic 2, Angular en soms cordova plugins. Ik werk gewoonlijk in Visual Studio Code, maar hierin ben ik vrij flexibel.

Wat ik al gevonden of geprobeerd heb
Ik heb al verschillende diensten geprobeerd:
  • Github Gist. Hiermee kun je gemakkelijk snippets code bewaren, maar vervolgens moet je het alsnog overal handmatig updaten
  • Gitlab Snippets Mijn projecten staan wel in Gitlab, maar hiervoor geld (volgens mij) hetzelfde als Github Gist: Code moet je nog handmatig overal naartoe updaten
  • Eigen Git project gemaakt met daarin alle modules. Hiermee kun je wel gemakkelijk alle wijzigingen traceren maar ook hierbij moet je handmatig alle code updaten in andere projecten
  • npm: Dit komt volgens mij al aardig in de buurt: met een commando kun je de modules updaten. Maar zoals ik het zag, moet je dan alle code public zetten of betalen. Het moet als het even kan gratis en public zetten is niet altijd even handig...
Hebben jullie tips voor mij zodat ik de goede richting ingestuurd wordt? Ik zie door de bomen het bos niet meer en merk dat het nu al behoorlijk complex wordt (met nog maar 4 apps) om bij te houden welke wijzigingen er zijn doorgevoerd.

Om een lang verhaal kort te maken: Ik wil de modules die ik zelf geschreven heb makkelijk kunnen hergebruiken.

Beste antwoord (via henk1994 op 01-05-2017 15:38)


  • markieo
  • Registratie: Maart 2012
  • Laatst online: 18:40
Je kunt ook gebruik maken van git submodules. Hiervoor maak je voor elke module een apart git project en kunt deze daarna als submodule gebruiken in je huidige project. Hierdoor zijn ook de changes op een plek te maken inplaats van meerdere.

Alle reacties


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 22:22

Creepy

Tactical Espionage Splatterer

Je kan ook zelf een private NPM repo draaien. Iets als Sinopia of Nexus kunnen dat prima.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • markieo
  • Registratie: Maart 2012
  • Laatst online: 18:40
Je kunt ook gebruik maken van git submodules. Hiervoor maak je voor elke module een apart git project en kunt deze daarna als submodule gebruiken in je huidige project. Hierdoor zijn ook de changes op een plek te maken inplaats van meerdere.

Acties:
  • +1 Henk 'm!

  • henk1994
  • Registratie: November 2013
  • Laatst online: 07-10 19:43
Dankjewel! Dat was precies wat ik zocht. Ik heb nu diverse git submodules aangemaakt en die worden dan per project toegevoegd. Volgende stap is een script of programmaatje maken die het meteen in de goede map zet en waarin ik kan aanvinken welke ik wel en niet wil hebben ;)