připravte vývojové prostředí
první věc nejprve nastavte vývojové prostředí. Stále si pamatuji, když začnu svou cestu vývoje, nejbolestivější období bylo nastaveno vývojové prostředí, speciální jako tento druh projektu (více než 3 systémy), musíme stáhnout různé služby (jar, binární atd.), aby se to otevřít běží lokálně, ale díky za kontejnerové technologie, pomocí jednoduchého docker-compose.YML soubor, můžeme bootstrap všechny klíčové aplikace / komponenty, které jsme potřebovali.

vidíš, jak je to jednoduché?
vývoj / kódování
začněme zábavnou část, Go je můj nedávný premiérový vývojový jazyk, ale proč jsem se rozhodl jít na vývoj datového potrubí, protože jeho jednoduchost, výkony a typ bezpečné. Tady nebudu vysvětlovat přínos Go, pokud máte zájem, zkontrolujte prosím Golang.org.
jako obvykle, pokud zkontrolujete můj předchozí příspěvek
jak vytvořit MachineBox.io API se 100% jednotkovým testovacím pokrytím pomocí Go
budete vědět, že budu používat stejnou strukturu aplikace.

1. Vytvořte připojení vytvořením struktury Env

2. Pomocí rozhraní
můžete být obeznámeni s používáním rozhraní z práce přes průchod Go nebo z oficiální dokumentace. Krása použití rozhraní V Go je však, že můžete definovat sadu metod, které musí typ (často struct
) definovat, aby byl považován za implementaci tohoto rozhraní.

když některý daný typ implementuje všechny metody tohoto rozhraní, kompilátor Go automaticky ví, že je povoleno použít jako tento typ.
3. Protokolování
protokolování je těžké!
pokud jste již pracovali jako relativní funkce podpory výroby aplikací. Oceníte vývojáře, který zaznamenává informace o tom, jak aplikace běží, kdy a jak tato aplikace selhala, který soubor, která funkce. (Plus+)

používám Uber Zap libs. A také zabalím do pomocníka, který lze použít v různých projektech na různé úrovni. Pro mě, dávám přednost návratu dolní páka chyba na hlavní implementaci.

4. Unit Test
psaní unit testy mohou zajistit náš kód pracuje podle očekávání, je mnohem méně „drahé“, než v případě, že chyba nebo regrese dělá to celou cestu k vydání.
pokud si stále pamatujete implementaci rozhraní #1 a další výhodou implementace rozhraní je, že vám pomůže snadno napsat testovatelný kód.

pokrytí testem jednotek je zájem o předmět, používám dost blázen, abych sledoval 100% pokrytí, nicméně se učím své lekce, nejdůležitější o testu jednotky je:
jak jste si jisti svým kódem a ujistěte se, že automatizace CI / CD zachycuje co nejvíce regresní chyby na úrovni kódování.

konečný výsledek

fáze podpory
toto potrubí je postaveno pouze o víkendu, řekněme, 10 hodin celkového návrhu, vývoje/kódování. Kvůli pokrytí testování jednotek, protokolování a testu místní integrace. Jsem si docela jistý, že je připravena na výrobu, nicméně…
Fáze zlepšení
jediné, co zde chybí, je implementace zabezpečení, úroveň prostředí a úroveň kódu. to je nejdůležitější část, pokud chcete odeslat do výroby.
tento článek se většinou zaměřuje na návrh a sestavení. Další příspěvek se více zaměří na podporu a zlepšení. 🙂
Část 2: